@nova-design-system/nova-webcomponents 3.0.0-beta.38 → 3.0.0-beta.40

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 (696) hide show
  1. package/dist/cjs/app-globals-3a1e7e63.js +7 -0
  2. package/dist/cjs/app-globals-3a1e7e63.js.map +1 -0
  3. package/dist/cjs/{constants-69b40456.js → constants-79d2cdfc.js} +25 -5
  4. package/dist/cjs/constants-79d2cdfc.js.map +1 -0
  5. package/dist/cjs/dom.utils-4d43f69a.js +170 -0
  6. package/dist/cjs/dom.utils-4d43f69a.js.map +1 -0
  7. package/dist/cjs/index-5910ba06.js +8 -36
  8. package/dist/cjs/index.cjs.js +3 -1
  9. package/dist/cjs/index.cjs.js.map +1 -1
  10. package/dist/cjs/loader.cjs.js +2 -2
  11. package/dist/cjs/native.cjs.js +2 -2
  12. package/dist/cjs/nv-alert.cjs.entry.js +32 -9
  13. package/dist/cjs/nv-alert.cjs.entry.js.map +1 -1
  14. package/dist/cjs/nv-avatar.cjs.entry.js +2 -2
  15. package/dist/cjs/nv-badge_2.cjs.entry.js +3 -3
  16. package/dist/cjs/nv-base.cjs.entry.js +1 -1
  17. package/dist/cjs/nv-breadcrumb.cjs.entry.js +1 -1
  18. package/dist/cjs/nv-breadcrumbs.cjs.entry.js +1 -1
  19. package/dist/cjs/nv-button.cjs.entry.js +34 -12
  20. package/dist/cjs/nv-button.cjs.entry.js.map +1 -1
  21. package/dist/cjs/nv-calendar.cjs.entry.js +984 -0
  22. package/dist/cjs/nv-calendar.cjs.entry.js.map +1 -0
  23. package/dist/cjs/nv-col.cjs.entry.js +1 -1
  24. package/dist/cjs/nv-datagrid.cjs.entry.js +325 -165
  25. package/dist/cjs/nv-datagrid.cjs.entry.js.map +1 -1
  26. package/dist/cjs/nv-datagridcolumn.cjs.entry.js +1 -5
  27. package/dist/cjs/nv-datagridcolumn.cjs.entry.js.map +1 -1
  28. package/dist/cjs/nv-dialog.cjs.entry.js +21 -10
  29. package/dist/cjs/nv-dialog.cjs.entry.js.map +1 -1
  30. package/dist/cjs/nv-dialogfooter_2.cjs.entry.js +17 -12
  31. package/dist/cjs/nv-dialogfooter_2.cjs.entry.js.map +1 -1
  32. package/dist/cjs/nv-fieldcheckbox.cjs.entry.js +10 -4
  33. package/dist/cjs/nv-fieldcheckbox.cjs.entry.js.map +1 -1
  34. package/dist/cjs/nv-fielddropdown.cjs.entry.js +146 -223
  35. package/dist/cjs/nv-fielddropdown.cjs.entry.js.map +1 -1
  36. package/dist/cjs/nv-fielddropdownitem.cjs.entry.js +37 -32
  37. package/dist/cjs/nv-fielddropdownitem.cjs.entry.js.map +1 -1
  38. package/dist/cjs/nv-fieldmultiselect.cjs.entry.js +12 -11
  39. package/dist/cjs/nv-fieldmultiselect.cjs.entry.js.map +1 -1
  40. package/dist/cjs/nv-fieldnumber.cjs.entry.js +9 -3
  41. package/dist/cjs/nv-fieldnumber.cjs.entry.js.map +1 -1
  42. package/dist/cjs/nv-fieldpassword.cjs.entry.js +9 -3
  43. package/dist/cjs/nv-fieldpassword.cjs.entry.js.map +1 -1
  44. package/dist/cjs/nv-fieldradio.cjs.entry.js +9 -3
  45. package/dist/cjs/nv-fieldradio.cjs.entry.js.map +1 -1
  46. package/dist/cjs/nv-fieldselect.cjs.entry.js +11 -5
  47. package/dist/cjs/nv-fieldselect.cjs.entry.js.map +1 -1
  48. package/dist/cjs/nv-fieldtext.cjs.entry.js +9 -3
  49. package/dist/cjs/nv-fieldtext.cjs.entry.js.map +1 -1
  50. package/dist/cjs/nv-fieldtextarea.cjs.entry.js +9 -3
  51. package/dist/cjs/nv-fieldtextarea.cjs.entry.js.map +1 -1
  52. package/dist/cjs/nv-fieldtime.cjs.entry.js +20 -12
  53. package/dist/cjs/nv-fieldtime.cjs.entry.js.map +1 -1
  54. package/dist/cjs/nv-icon.cjs.entry.js +20 -13
  55. package/dist/cjs/nv-icon.cjs.entry.js.map +1 -1
  56. package/dist/cjs/nv-iconbutton.cjs.entry.js +1 -1
  57. package/dist/cjs/nv-loader.cjs.entry.js +1 -1
  58. package/dist/cjs/nv-menu.cjs.entry.js +2 -2
  59. package/dist/cjs/nv-menu.cjs.entry.js.map +1 -1
  60. package/dist/cjs/nv-menuitem.cjs.entry.js +1 -1
  61. package/dist/cjs/nv-popover.cjs.entry.js +2 -2
  62. package/dist/cjs/nv-popover.cjs.entry.js.map +1 -1
  63. package/dist/cjs/nv-row.cjs.entry.js +1 -1
  64. package/dist/cjs/nv-stack.cjs.entry.js +1 -1
  65. package/dist/cjs/nv-table.cjs.entry.js +267 -81
  66. package/dist/cjs/nv-table.cjs.entry.js.map +1 -1
  67. package/dist/cjs/nv-tablecolumn.cjs.entry.js +1 -21
  68. package/dist/cjs/nv-tablecolumn.cjs.entry.js.map +1 -1
  69. package/dist/cjs/nv-toggle.cjs.entry.js +2 -2
  70. package/dist/cjs/nv-tooltip.cjs.entry.js +1 -1
  71. package/dist/cjs/uri.utils-8523ad2b.js +26 -0
  72. package/dist/cjs/uri.utils-8523ad2b.js.map +1 -0
  73. package/dist/collection/collection-manifest.json +3 -11
  74. package/dist/collection/components/nv-alert/nv-alert.docs.js +5 -0
  75. package/dist/collection/components/nv-alert/nv-alert.docs.js.map +1 -1
  76. package/dist/collection/components/nv-alert/nv-alert.js +51 -8
  77. package/dist/collection/components/nv-alert/nv-alert.js.map +1 -1
  78. package/dist/collection/components/nv-avatar/nv-avatar.js +1 -1
  79. package/dist/collection/components/nv-badge/nv-badge.js +2 -2
  80. package/dist/collection/components/nv-base/nv-base.js +1 -1
  81. package/dist/collection/components/nv-breadcrumb/nv-breadcrumb.js +1 -1
  82. package/dist/collection/components/nv-breadcrumbs/nv-breadcrumbs.js +1 -1
  83. package/dist/collection/components/nv-button/nv-button.docs.js +4 -0
  84. package/dist/collection/components/nv-button/nv-button.docs.js.map +1 -1
  85. package/dist/collection/components/nv-button/nv-button.js +54 -13
  86. package/dist/collection/components/nv-button/nv-button.js.map +1 -1
  87. package/dist/collection/components/nv-calendar/nv-calendar.css +341 -0
  88. package/dist/collection/components/nv-calendar/nv-calendar.docs.js +401 -0
  89. package/dist/collection/components/nv-calendar/nv-calendar.docs.js.map +1 -0
  90. package/dist/collection/components/nv-calendar/nv-calendar.js +1328 -0
  91. package/dist/collection/components/nv-calendar/nv-calendar.js.map +1 -0
  92. package/dist/collection/components/nv-col/nv-col.js +1 -1
  93. package/dist/collection/components/nv-datagrid/nv-datagrid.css +30 -0
  94. package/dist/collection/components/nv-datagrid/nv-datagrid.docs.js +25 -77
  95. package/dist/collection/components/nv-datagrid/nv-datagrid.docs.js.map +1 -1
  96. package/dist/collection/components/nv-datagrid/nv-datagrid.js +396 -194
  97. package/dist/collection/components/nv-datagrid/nv-datagrid.js.map +1 -1
  98. package/dist/collection/components/nv-datagridcolumn/nv-datagridcolumn.js +7 -16
  99. package/dist/collection/components/nv-datagridcolumn/nv-datagridcolumn.js.map +1 -1
  100. package/dist/collection/components/nv-dialog/nv-dialog.css +2 -0
  101. package/dist/collection/components/nv-dialog/nv-dialog.docs.js +6 -9
  102. package/dist/collection/components/nv-dialog/nv-dialog.docs.js.map +1 -1
  103. package/dist/collection/components/nv-dialog/nv-dialog.js +20 -29
  104. package/dist/collection/components/nv-dialog/nv-dialog.js.map +1 -1
  105. package/dist/collection/components/nv-dialogfooter/nv-dialogfooter.js +71 -21
  106. package/dist/collection/components/nv-dialogfooter/nv-dialogfooter.js.map +1 -1
  107. package/dist/collection/components/nv-dialogheader/nv-dialogheader.js +1 -1
  108. package/dist/collection/components/nv-fieldcheckbox/nv-fieldcheckbox.docs.js +8 -0
  109. package/dist/collection/components/nv-fieldcheckbox/nv-fieldcheckbox.docs.js.map +1 -1
  110. package/dist/collection/components/nv-fieldcheckbox/nv-fieldcheckbox.js +30 -4
  111. package/dist/collection/components/nv-fieldcheckbox/nv-fieldcheckbox.js.map +1 -1
  112. package/dist/collection/components/nv-fielddropdown/nv-fielddropdown.docs.js +11 -3
  113. package/dist/collection/components/nv-fielddropdown/nv-fielddropdown.docs.js.map +1 -1
  114. package/dist/collection/components/nv-fielddropdown/nv-fielddropdown.js +197 -252
  115. package/dist/collection/components/nv-fielddropdown/nv-fielddropdown.js.map +1 -1
  116. package/dist/collection/components/nv-fielddropdown/{nv-fielddropdown.css → styles/nv-fielddropdown.css} +0 -3
  117. package/dist/collection/components/nv-fielddropdownitem/nv-fielddropdownitem.js +55 -47
  118. package/dist/collection/components/nv-fielddropdownitem/nv-fielddropdownitem.js.map +1 -1
  119. package/dist/collection/components/nv-fielddropdownitem/{nv-fielddropdownitem.css → styles/nv-fielddropdownitem.css} +5 -3
  120. package/dist/collection/components/nv-fielddropdownitemcheck/nv-fielddropdownitemcheck.js +1 -1
  121. package/dist/collection/components/nv-fieldmultiselect/nv-fieldmultiselect.css +0 -2
  122. package/dist/collection/components/nv-fieldmultiselect/nv-fieldmultiselect.docs.js +10 -2
  123. package/dist/collection/components/nv-fieldmultiselect/nv-fieldmultiselect.docs.js.map +1 -1
  124. package/dist/collection/components/nv-fieldmultiselect/nv-fieldmultiselect.js +34 -33
  125. package/dist/collection/components/nv-fieldmultiselect/nv-fieldmultiselect.js.map +1 -1
  126. package/dist/collection/components/nv-fieldnumber/nv-fieldnumber.docs.js +8 -0
  127. package/dist/collection/components/nv-fieldnumber/nv-fieldnumber.docs.js.map +1 -1
  128. package/dist/collection/components/nv-fieldnumber/nv-fieldnumber.js +29 -3
  129. package/dist/collection/components/nv-fieldnumber/nv-fieldnumber.js.map +1 -1
  130. package/dist/collection/components/nv-fieldpassword/nv-fieldpassword.docs.js +8 -0
  131. package/dist/collection/components/nv-fieldpassword/nv-fieldpassword.docs.js.map +1 -1
  132. package/dist/collection/components/nv-fieldpassword/nv-fieldpassword.js +30 -4
  133. package/dist/collection/components/nv-fieldpassword/nv-fieldpassword.js.map +1 -1
  134. package/dist/collection/components/nv-fieldradio/nv-fieldradio.docs.js +8 -0
  135. package/dist/collection/components/nv-fieldradio/nv-fieldradio.docs.js.map +1 -1
  136. package/dist/collection/components/nv-fieldradio/nv-fieldradio.js +29 -3
  137. package/dist/collection/components/nv-fieldradio/nv-fieldradio.js.map +1 -1
  138. package/dist/collection/components/nv-fieldselect/nv-fieldselect.docs.js +8 -19
  139. package/dist/collection/components/nv-fieldselect/nv-fieldselect.docs.js.map +1 -1
  140. package/dist/collection/components/nv-fieldselect/nv-fieldselect.js +31 -5
  141. package/dist/collection/components/nv-fieldselect/nv-fieldselect.js.map +1 -1
  142. package/dist/collection/components/nv-fieldtext/nv-fieldtext.docs.js +8 -0
  143. package/dist/collection/components/nv-fieldtext/nv-fieldtext.docs.js.map +1 -1
  144. package/dist/collection/components/nv-fieldtext/nv-fieldtext.js +30 -4
  145. package/dist/collection/components/nv-fieldtext/nv-fieldtext.js.map +1 -1
  146. package/dist/collection/components/nv-fieldtextarea/nv-fieldtextarea.docs.js +8 -0
  147. package/dist/collection/components/nv-fieldtextarea/nv-fieldtextarea.docs.js.map +1 -1
  148. package/dist/collection/components/nv-fieldtextarea/nv-fieldtextarea.js +29 -3
  149. package/dist/collection/components/nv-fieldtextarea/nv-fieldtextarea.js.map +1 -1
  150. package/dist/collection/components/nv-fieldtime/nv-fieldtime.css +20 -17
  151. package/dist/collection/components/nv-fieldtime/nv-fieldtime.docs.js +8 -0
  152. package/dist/collection/components/nv-fieldtime/nv-fieldtime.docs.js.map +1 -1
  153. package/dist/collection/components/nv-fieldtime/nv-fieldtime.js +38 -10
  154. package/dist/collection/components/nv-fieldtime/nv-fieldtime.js.map +1 -1
  155. package/dist/collection/components/nv-icon/nv-icon.js +21 -19
  156. package/dist/collection/components/nv-icon/nv-icon.js.map +1 -1
  157. package/dist/collection/components/nv-icon/nv-icons.js.map +1 -1
  158. package/dist/collection/components/nv-iconbutton/nv-iconbutton.js +1 -1
  159. package/dist/collection/components/nv-loader/nv-loader.js +1 -1
  160. package/dist/collection/components/nv-menu/nv-menu.docs.js +1 -1
  161. package/dist/collection/components/nv-menu/nv-menu.docs.js.map +1 -1
  162. package/dist/collection/components/nv-menu/nv-menu.js +3 -3
  163. package/dist/collection/components/nv-menu/nv-menu.js.map +1 -1
  164. package/dist/collection/components/nv-menuitem/nv-menuitem.js +3 -3
  165. package/dist/collection/components/nv-popover/nv-popover.css +3 -0
  166. package/dist/collection/components/nv-popover/nv-popover.js +1 -1
  167. package/dist/collection/components/nv-row/nv-row.js +1 -1
  168. package/dist/collection/components/nv-stack/nv-stack.js +1 -1
  169. package/dist/collection/components/nv-table/nv-table.css +30 -0
  170. package/dist/collection/components/nv-table/nv-table.docs.js +69 -74
  171. package/dist/collection/components/nv-table/nv-table.docs.js.map +1 -1
  172. package/dist/collection/components/nv-table/nv-table.js +349 -137
  173. package/dist/collection/components/nv-table/nv-table.js.map +1 -1
  174. package/dist/collection/components/nv-tablecolumn/nv-tablecolumn.js +11 -111
  175. package/dist/collection/components/nv-tablecolumn/nv-tablecolumn.js.map +1 -1
  176. package/dist/collection/components/nv-toggle/nv-toggle.js +2 -2
  177. package/dist/collection/components/nv-tooltip/nv-tooltip.js +1 -1
  178. package/dist/collection/index.js +2 -0
  179. package/dist/collection/index.js.map +1 -1
  180. package/dist/collection/interfaces/ColumnConfig.js +2 -0
  181. package/dist/collection/interfaces/ColumnConfig.js.map +1 -0
  182. package/dist/collection/interfaces/actionEvent.js +2 -0
  183. package/dist/collection/interfaces/actionEvent.js.map +1 -0
  184. package/dist/collection/interfaces/calendarShortcut.js +2 -0
  185. package/dist/collection/interfaces/calendarShortcut.js.map +1 -0
  186. package/dist/collection/interfaces/dateRange.js +2 -0
  187. package/dist/collection/interfaces/dateRange.js.map +1 -0
  188. package/dist/collection/interfaces/localization.js +2 -0
  189. package/dist/collection/interfaces/localization.js.map +1 -0
  190. package/dist/collection/templates/navigation.docs.js +5 -0
  191. package/dist/collection/templates/navigation.docs.js.map +1 -1
  192. package/dist/collection/utils/constants.js +18 -0
  193. package/dist/collection/utils/constants.js.map +1 -1
  194. package/dist/collection/utils/dom.utils.js +164 -0
  195. package/dist/collection/utils/dom.utils.js.map +1 -0
  196. package/dist/collection/utils/test/class.utils.test.js +25 -0
  197. package/dist/collection/utils/test/class.utils.test.js.map +1 -0
  198. package/dist/collection/utils/test/dom.utils.test.js +102 -0
  199. package/dist/collection/utils/test/dom.utils.test.js.map +1 -0
  200. package/dist/collection/utils/test/uri.utils.test.js +21 -0
  201. package/dist/collection/utils/test/uri.utils.test.js.map +1 -0
  202. package/dist/collection/utils/uri.utils.js +15 -0
  203. package/dist/collection/utils/uri.utils.js.map +1 -0
  204. package/dist/components/index.js +3 -2
  205. package/dist/components/index.js.map +1 -1
  206. package/dist/components/nv-alert.js +35 -11
  207. package/dist/components/nv-alert.js.map +1 -1
  208. package/dist/components/nv-avatar.js +3 -3
  209. package/dist/components/nv-badge.js +1 -1
  210. package/dist/components/nv-base.js +1 -1
  211. package/dist/components/nv-breadcrumb.js +3 -3
  212. package/dist/components/nv-breadcrumbs.js +1 -1
  213. package/dist/components/nv-button.js +1 -1
  214. package/dist/components/{nv-tablerow.d.ts → nv-calendar.d.ts} +4 -4
  215. package/dist/components/nv-calendar.js +1046 -0
  216. package/dist/components/nv-calendar.js.map +1 -0
  217. package/dist/components/nv-col.js +1 -1
  218. package/dist/components/nv-datagrid.js +332 -173
  219. package/dist/components/nv-datagrid.js.map +1 -1
  220. package/dist/components/nv-datagridcolumn.js +3 -7
  221. package/dist/components/nv-datagridcolumn.js.map +1 -1
  222. package/dist/components/nv-dialog.js +26 -16
  223. package/dist/components/nv-dialog.js.map +1 -1
  224. package/dist/components/nv-dialogfooter.js +1 -1
  225. package/dist/components/nv-dialogheader.js +1 -1
  226. package/dist/components/nv-fieldcheckbox.js +1 -1
  227. package/dist/components/nv-fielddropdown.js +154 -230
  228. package/dist/components/nv-fielddropdown.js.map +1 -1
  229. package/dist/components/nv-fielddropdownitem.js +1 -1
  230. package/dist/components/nv-fielddropdownitemcheck.js +1 -1
  231. package/dist/components/nv-fieldmultiselect.js +21 -19
  232. package/dist/components/nv-fieldmultiselect.js.map +1 -1
  233. package/dist/components/nv-fieldnumber.js +12 -5
  234. package/dist/components/nv-fieldnumber.js.map +1 -1
  235. package/dist/components/nv-fieldpassword.js +13 -6
  236. package/dist/components/nv-fieldpassword.js.map +1 -1
  237. package/dist/components/nv-fieldradio.js +11 -4
  238. package/dist/components/nv-fieldradio.js.map +1 -1
  239. package/dist/components/nv-fieldselect.js +13 -6
  240. package/dist/components/nv-fieldselect.js.map +1 -1
  241. package/dist/components/nv-fieldtext.js +12 -5
  242. package/dist/components/nv-fieldtext.js.map +1 -1
  243. package/dist/components/nv-fieldtextarea.js +11 -4
  244. package/dist/components/nv-fieldtextarea.js.map +1 -1
  245. package/dist/components/nv-fieldtime.js +25 -16
  246. package/dist/components/nv-fieldtime.js.map +1 -1
  247. package/dist/components/nv-icon.js +1 -1
  248. package/dist/components/nv-iconbutton.js +1 -1
  249. package/dist/components/nv-loader.js +1 -1
  250. package/dist/components/nv-menu.js +5 -5
  251. package/dist/components/nv-menu.js.map +1 -1
  252. package/dist/components/nv-menuitem.js +1 -1
  253. package/dist/components/nv-popover.js +1 -1
  254. package/dist/components/nv-row.js +1 -1
  255. package/dist/components/nv-stack.js +1 -1
  256. package/dist/components/nv-table.js +279 -91
  257. package/dist/components/nv-table.js.map +1 -1
  258. package/dist/components/nv-tablecolumn.js +5 -28
  259. package/dist/components/nv-tablecolumn.js.map +1 -1
  260. package/dist/components/nv-toggle.js +2 -2
  261. package/dist/components/nv-tooltip.js +1 -1
  262. package/dist/components/{p-1c83f303.js → p-11cc38e0.js} +4 -4
  263. package/dist/components/{p-1c83f303.js.map → p-11cc38e0.js.map} +1 -1
  264. package/dist/components/{p-802c9204.js → p-1657eba4.js} +23 -16
  265. package/dist/components/p-1657eba4.js.map +1 -0
  266. package/dist/components/{p-79bf6acb.js → p-33f9bdb1.js} +4 -4
  267. package/dist/components/{p-79bf6acb.js.map → p-33f9bdb1.js.map} +1 -1
  268. package/dist/components/p-4b184820.js +95 -0
  269. package/dist/components/p-4b184820.js.map +1 -0
  270. package/dist/components/{p-b877a150.js → p-4bb5eb79.js} +3 -3
  271. package/dist/components/{p-b877a150.js.map → p-4bb5eb79.js.map} +1 -1
  272. package/dist/components/{p-ab87be7f.js → p-69543282.js} +3 -3
  273. package/dist/components/{p-ab87be7f.js.map → p-69543282.js.map} +1 -1
  274. package/dist/components/p-7e58e7d1.js +23 -0
  275. package/dist/components/p-7e58e7d1.js.map +1 -0
  276. package/dist/components/{p-98ff0e5f.js → p-96605453.js} +13 -6
  277. package/dist/components/p-96605453.js.map +1 -0
  278. package/dist/components/{p-2768d2c0.js → p-a633892a.js} +2 -2
  279. package/dist/components/{p-2768d2c0.js.map → p-a633892a.js.map} +1 -1
  280. package/dist/{esm/constants-0181211f.js → components/p-b316c35d.js} +22 -3
  281. package/dist/components/p-b316c35d.js.map +1 -0
  282. package/dist/components/{p-91bf0cb6.js → p-ba145f46.js} +38 -15
  283. package/dist/components/p-ba145f46.js.map +1 -0
  284. package/dist/components/p-c1765831.js +89 -0
  285. package/dist/components/p-c1765831.js.map +1 -0
  286. package/dist/components/p-cb34aa4f.js +167 -0
  287. package/dist/components/p-cb34aa4f.js.map +1 -0
  288. package/dist/components/{p-a9a52105.js → p-d17558a8.js} +1178 -5
  289. package/dist/components/p-d17558a8.js.map +1 -0
  290. package/dist/components/{p-18d221e3.js → p-f201db34.js} +2 -2
  291. package/dist/components/{p-18d221e3.js.map → p-f201db34.js.map} +1 -1
  292. package/dist/components/{p-d20958c4.js → p-f77c3072.js} +22 -16
  293. package/dist/components/p-f77c3072.js.map +1 -0
  294. package/dist/components/{p-16badb3b.js → p-fad78896.js} +3 -3
  295. package/dist/components/{p-16badb3b.js.map → p-fad78896.js.map} +1 -1
  296. package/dist/docs.json +1331 -935
  297. package/dist/esm/app-globals-0f993ce5.js +5 -0
  298. package/dist/esm/app-globals-0f993ce5.js.map +1 -0
  299. package/dist/{components/p-56f71851.js → esm/constants-75e6d7f0.js} +22 -3
  300. package/dist/esm/constants-75e6d7f0.js.map +1 -0
  301. package/dist/esm/dom.utils-ac71e0ef.js +167 -0
  302. package/dist/esm/dom.utils-ac71e0ef.js.map +1 -0
  303. package/dist/esm/index-fac2d5d2.js +8 -36
  304. package/dist/esm/index.js +2 -1
  305. package/dist/esm/index.js.map +1 -1
  306. package/dist/esm/loader.js +2 -2
  307. package/dist/esm/native.js +2 -2
  308. package/dist/esm/nv-alert.entry.js +32 -9
  309. package/dist/esm/nv-alert.entry.js.map +1 -1
  310. package/dist/esm/nv-avatar.entry.js +2 -2
  311. package/dist/esm/nv-badge_2.entry.js +3 -3
  312. package/dist/esm/nv-base.entry.js +1 -1
  313. package/dist/esm/nv-breadcrumb.entry.js +1 -1
  314. package/dist/esm/nv-breadcrumbs.entry.js +1 -1
  315. package/dist/esm/nv-button.entry.js +34 -12
  316. package/dist/esm/nv-button.entry.js.map +1 -1
  317. package/dist/esm/nv-calendar.entry.js +980 -0
  318. package/dist/esm/nv-calendar.entry.js.map +1 -0
  319. package/dist/esm/nv-col.entry.js +1 -1
  320. package/dist/esm/nv-datagrid.entry.js +326 -166
  321. package/dist/esm/nv-datagrid.entry.js.map +1 -1
  322. package/dist/esm/nv-datagridcolumn.entry.js +1 -5
  323. package/dist/esm/nv-datagridcolumn.entry.js.map +1 -1
  324. package/dist/esm/nv-dialog.entry.js +21 -10
  325. package/dist/esm/nv-dialog.entry.js.map +1 -1
  326. package/dist/esm/nv-dialogfooter_2.entry.js +17 -12
  327. package/dist/esm/nv-dialogfooter_2.entry.js.map +1 -1
  328. package/dist/esm/nv-fieldcheckbox.entry.js +10 -4
  329. package/dist/esm/nv-fieldcheckbox.entry.js.map +1 -1
  330. package/dist/esm/nv-fielddropdown.entry.js +146 -223
  331. package/dist/esm/nv-fielddropdown.entry.js.map +1 -1
  332. package/dist/esm/nv-fielddropdownitem.entry.js +37 -32
  333. package/dist/esm/nv-fielddropdownitem.entry.js.map +1 -1
  334. package/dist/esm/nv-fieldmultiselect.entry.js +12 -11
  335. package/dist/esm/nv-fieldmultiselect.entry.js.map +1 -1
  336. package/dist/esm/nv-fieldnumber.entry.js +9 -3
  337. package/dist/esm/nv-fieldnumber.entry.js.map +1 -1
  338. package/dist/esm/nv-fieldpassword.entry.js +9 -3
  339. package/dist/esm/nv-fieldpassword.entry.js.map +1 -1
  340. package/dist/esm/nv-fieldradio.entry.js +9 -3
  341. package/dist/esm/nv-fieldradio.entry.js.map +1 -1
  342. package/dist/esm/nv-fieldselect.entry.js +11 -5
  343. package/dist/esm/nv-fieldselect.entry.js.map +1 -1
  344. package/dist/esm/nv-fieldtext.entry.js +9 -3
  345. package/dist/esm/nv-fieldtext.entry.js.map +1 -1
  346. package/dist/esm/nv-fieldtextarea.entry.js +9 -3
  347. package/dist/esm/nv-fieldtextarea.entry.js.map +1 -1
  348. package/dist/esm/nv-fieldtime.entry.js +20 -12
  349. package/dist/esm/nv-fieldtime.entry.js.map +1 -1
  350. package/dist/esm/nv-icon.entry.js +20 -13
  351. package/dist/esm/nv-icon.entry.js.map +1 -1
  352. package/dist/esm/nv-iconbutton.entry.js +1 -1
  353. package/dist/esm/nv-loader.entry.js +1 -1
  354. package/dist/esm/nv-menu.entry.js +2 -2
  355. package/dist/esm/nv-menu.entry.js.map +1 -1
  356. package/dist/esm/nv-menuitem.entry.js +1 -1
  357. package/dist/esm/nv-popover.entry.js +2 -2
  358. package/dist/esm/nv-popover.entry.js.map +1 -1
  359. package/dist/esm/nv-row.entry.js +1 -1
  360. package/dist/esm/nv-stack.entry.js +1 -1
  361. package/dist/esm/nv-table.entry.js +268 -82
  362. package/dist/esm/nv-table.entry.js.map +1 -1
  363. package/dist/esm/nv-tablecolumn.entry.js +2 -22
  364. package/dist/esm/nv-tablecolumn.entry.js.map +1 -1
  365. package/dist/esm/nv-toggle.entry.js +2 -2
  366. package/dist/esm/nv-tooltip.entry.js +1 -1
  367. package/dist/esm/uri.utils-4c2a1e4c.js +23 -0
  368. package/dist/esm/uri.utils-4c2a1e4c.js.map +1 -0
  369. package/dist/native/index.esm.js +1 -1
  370. package/dist/native/index.esm.js.map +1 -1
  371. package/dist/native/native.css +1 -1
  372. package/dist/native/native.esm.js +1 -1
  373. package/dist/native/native.esm.js.map +1 -1
  374. package/dist/native/p-0a2a9f8b.entry.js +2 -0
  375. package/dist/native/p-0a2a9f8b.entry.js.map +1 -0
  376. package/dist/native/p-12d08abc.entry.js +2 -0
  377. package/dist/native/p-12d08abc.entry.js.map +1 -0
  378. package/dist/native/{p-211f7b19.entry.js → p-15be3d96.entry.js} +2 -2
  379. package/dist/native/p-184cd119.entry.js +2 -0
  380. package/dist/native/{p-8ee30013.entry.js.map → p-184cd119.entry.js.map} +1 -1
  381. package/dist/native/{p-87083363.entry.js → p-1a3d2a74.entry.js} +2 -2
  382. package/dist/native/{p-87083363.entry.js.map → p-1a3d2a74.entry.js.map} +1 -1
  383. package/dist/native/{p-4f11286d.entry.js → p-27ad7af2.entry.js} +2 -2
  384. package/dist/native/p-27ad7af2.entry.js.map +1 -0
  385. package/dist/native/p-2b2a10f9.entry.js +2 -0
  386. package/dist/native/p-2b2a10f9.entry.js.map +1 -0
  387. package/dist/native/{p-a06bafad.entry.js → p-359f0f53.entry.js} +2 -2
  388. package/dist/native/p-3b65037c.entry.js +2 -0
  389. package/dist/native/p-3b65037c.entry.js.map +1 -0
  390. package/dist/native/p-3be2c9a1.entry.js +2 -0
  391. package/dist/native/p-4283f375.entry.js +2 -0
  392. package/dist/native/p-4283f375.entry.js.map +1 -0
  393. package/dist/native/p-487b81bd.entry.js +2 -0
  394. package/dist/native/p-487b81bd.entry.js.map +1 -0
  395. package/dist/native/{p-d24586ed.entry.js → p-491f4605.entry.js} +2 -2
  396. package/dist/native/{p-e3827605.entry.js → p-554f7b44.entry.js} +2 -2
  397. package/dist/native/p-554f7b44.entry.js.map +1 -0
  398. package/dist/native/p-69fb1c9d.entry.js +2 -0
  399. package/dist/native/p-69fb1c9d.entry.js.map +1 -0
  400. package/dist/native/{p-1bb5a6bd.entry.js → p-729c9d45.entry.js} +2 -2
  401. package/dist/native/p-729c9d45.entry.js.map +1 -0
  402. package/dist/native/{p-130f6c47.entry.js → p-78f08578.entry.js} +2 -2
  403. package/dist/native/p-78f08578.entry.js.map +1 -0
  404. package/dist/native/p-7e58e7d1.js +2 -0
  405. package/dist/native/p-7e58e7d1.js.map +1 -0
  406. package/dist/native/p-8664ab16.entry.js +7 -0
  407. package/dist/native/p-8664ab16.entry.js.map +1 -0
  408. package/dist/native/p-87bd53df.entry.js +2 -0
  409. package/dist/native/p-87bd53df.entry.js.map +1 -0
  410. package/dist/native/{p-96902bb3.entry.js → p-8d6516a3.entry.js} +2 -2
  411. package/dist/native/p-951baf95.entry.js +2 -0
  412. package/dist/native/p-9795090f.entry.js +2 -0
  413. package/dist/native/p-9795090f.entry.js.map +1 -0
  414. package/dist/native/p-af60740c.entry.js +2 -0
  415. package/dist/native/p-af60740c.entry.js.map +1 -0
  416. package/dist/native/{p-56f71851.js → p-b316c35d.js} +2 -2
  417. package/dist/native/p-b316c35d.js.map +1 -0
  418. package/dist/native/p-b58c661b.entry.js +2 -0
  419. package/dist/native/p-b58c661b.entry.js.map +1 -0
  420. package/dist/native/p-b7bc918b.entry.js +2 -0
  421. package/dist/native/p-b7bc918b.entry.js.map +1 -0
  422. package/dist/native/p-cb34aa4f.js +2 -0
  423. package/dist/native/p-cb34aa4f.js.map +1 -0
  424. package/dist/native/{p-a998f8df.entry.js → p-cda56476.entry.js} +2 -2
  425. package/dist/native/p-d1bf4d77.entry.js +2 -0
  426. package/dist/native/{p-54df2174.entry.js → p-d7665a07.entry.js} +2 -2
  427. package/dist/native/p-d7665a07.entry.js.map +1 -0
  428. package/dist/native/{p-3c004551.entry.js → p-daeb7e22.entry.js} +2 -2
  429. package/dist/native/p-daeb7e22.entry.js.map +1 -0
  430. package/dist/native/p-e1255160.js +2 -0
  431. package/dist/native/p-e1255160.js.map +1 -0
  432. package/dist/native/{p-61d2cb2e.entry.js → p-e36e956b.entry.js} +2 -2
  433. package/dist/native/{p-99e7a452.entry.js → p-e9e77494.entry.js} +2 -2
  434. package/dist/native/p-e9e77494.entry.js.map +1 -0
  435. package/dist/native/{p-0bf35abc.entry.js → p-edee1c1f.entry.js} +2 -2
  436. package/dist/native/{p-e192c25c.entry.js → p-f1585fc2.entry.js} +2 -2
  437. package/dist/native/p-f3579407.entry.js +2 -0
  438. package/dist/native/p-f3579407.entry.js.map +1 -0
  439. package/dist/native/p-fca807b4.entry.js +13 -0
  440. package/dist/native/p-fca807b4.entry.js.map +1 -0
  441. package/dist/native/{p-d67b7502.entry.js → p-fde56f9c.entry.js} +2 -2
  442. package/dist/types/components/nv-alert/nv-alert.d.ts +14 -0
  443. package/dist/types/components/nv-base/nv-base.docs.d.ts +1 -1
  444. package/dist/types/components/nv-button/nv-button.d.ts +16 -5
  445. package/dist/types/components/nv-calendar/nv-calendar.d.ts +383 -0
  446. package/dist/types/components/{nv-tablerow/nv-tablerow.docs.d.ts → nv-calendar/nv-calendar.docs.d.ts} +2 -2
  447. package/dist/types/components/nv-datagrid/nv-datagrid.d.ts +48 -31
  448. package/dist/types/components/nv-datagridcolumn/nv-datagridcolumn.d.ts +3 -2
  449. package/dist/types/components/nv-dialog/nv-dialog.d.ts +1 -7
  450. package/dist/types/components/nv-dialogfooter/nv-dialogfooter.d.ts +19 -10
  451. package/dist/types/components/nv-fieldcheckbox/nv-fieldcheckbox.d.ts +6 -0
  452. package/dist/types/components/nv-fielddropdown/nv-fielddropdown.d.ts +45 -62
  453. package/dist/types/components/nv-fielddropdownitem/nv-fielddropdownitem.d.ts +27 -13
  454. package/dist/types/components/nv-fieldmultiselect/nv-fieldmultiselect.d.ts +7 -10
  455. package/dist/types/components/nv-fieldnumber/nv-fieldnumber.d.ts +6 -0
  456. package/dist/types/components/nv-fieldpassword/nv-fieldpassword.d.ts +6 -0
  457. package/dist/types/components/nv-fieldradio/nv-fieldradio.d.ts +6 -0
  458. package/dist/types/components/nv-fieldselect/nv-fieldselect.d.ts +6 -0
  459. package/dist/types/components/nv-fieldtext/nv-fieldtext.d.ts +6 -0
  460. package/dist/types/components/nv-fieldtextarea/nv-fieldtextarea.d.ts +6 -0
  461. package/dist/types/components/nv-fieldtime/nv-fieldtime.d.ts +6 -0
  462. package/dist/types/components/nv-icon/nv-icon.d.ts +6 -4
  463. package/dist/types/components/nv-table/nv-table.d.ts +51 -39
  464. package/dist/types/components/nv-tablecolumn/nv-tablecolumn.d.ts +4 -42
  465. package/dist/types/components.d.ts +428 -284
  466. package/dist/types/index.d.ts +4 -0
  467. package/dist/types/interfaces/ColumnConfig.d.ts +13 -0
  468. package/dist/types/interfaces/actionEvent.d.ts +13 -0
  469. package/dist/types/interfaces/calendarShortcut.d.ts +17 -0
  470. package/dist/types/interfaces/dateRange.d.ts +13 -0
  471. package/dist/types/interfaces/localization.d.ts +9 -0
  472. package/dist/types/utils/constants.d.ts +2 -0
  473. package/dist/types/utils/dom.utils.d.ts +12 -0
  474. package/dist/types/utils/test/uri.utils.test.d.ts +1 -0
  475. package/dist/types/utils/uri.utils.d.ts +6 -0
  476. package/hydrate/index.js +3134 -1824
  477. package/hydrate/index.mjs +3134 -1824
  478. package/package.json +19 -27
  479. package/dist/blazor-docs.json +0 -14813
  480. package/dist/cjs/app-globals-bd4d701e.js +0 -11
  481. package/dist/cjs/app-globals-bd4d701e.js.map +0 -1
  482. package/dist/cjs/constants-69b40456.js.map +0 -1
  483. package/dist/cjs/nv-datagridbody.cjs.entry.js +0 -24
  484. package/dist/cjs/nv-datagridbody.cjs.entry.js.map +0 -1
  485. package/dist/cjs/nv-datagriddatacell.cjs.entry.js +0 -25
  486. package/dist/cjs/nv-datagriddatacell.cjs.entry.js.map +0 -1
  487. package/dist/cjs/nv-datagridhead.cjs.entry.js +0 -24
  488. package/dist/cjs/nv-datagridhead.cjs.entry.js.map +0 -1
  489. package/dist/cjs/nv-datagridrow.cjs.entry.js +0 -24
  490. package/dist/cjs/nv-datagridrow.cjs.entry.js.map +0 -1
  491. package/dist/cjs/nv-tablebody.cjs.entry.js +0 -24
  492. package/dist/cjs/nv-tablebody.cjs.entry.js.map +0 -1
  493. package/dist/cjs/nv-tabledatacell.cjs.entry.js +0 -43
  494. package/dist/cjs/nv-tabledatacell.cjs.entry.js.map +0 -1
  495. package/dist/cjs/nv-tablehead.cjs.entry.js +0 -24
  496. package/dist/cjs/nv-tablehead.cjs.entry.js.map +0 -1
  497. package/dist/cjs/nv-tablerow.cjs.entry.js +0 -24
  498. package/dist/cjs/nv-tablerow.cjs.entry.js.map +0 -1
  499. package/dist/collection/components/nv-datagridbody/nv-datagridbody.css +0 -0
  500. package/dist/collection/components/nv-datagridbody/nv-datagridbody.docs.js +0 -8
  501. package/dist/collection/components/nv-datagridbody/nv-datagridbody.docs.js.map +0 -1
  502. package/dist/collection/components/nv-datagridbody/nv-datagridbody.js +0 -23
  503. package/dist/collection/components/nv-datagridbody/nv-datagridbody.js.map +0 -1
  504. package/dist/collection/components/nv-datagridcolumn/nv-datagridcolumn.css +0 -0
  505. package/dist/collection/components/nv-datagriddatacell/nv-datagriddatacell.css +0 -0
  506. package/dist/collection/components/nv-datagriddatacell/nv-datagriddatacell.docs.js +0 -6
  507. package/dist/collection/components/nv-datagriddatacell/nv-datagriddatacell.docs.js.map +0 -1
  508. package/dist/collection/components/nv-datagriddatacell/nv-datagriddatacell.js +0 -50
  509. package/dist/collection/components/nv-datagriddatacell/nv-datagriddatacell.js.map +0 -1
  510. package/dist/collection/components/nv-datagridhead/nv-datagridhead.css +0 -0
  511. package/dist/collection/components/nv-datagridhead/nv-datagridhead.docs.js +0 -8
  512. package/dist/collection/components/nv-datagridhead/nv-datagridhead.docs.js.map +0 -1
  513. package/dist/collection/components/nv-datagridhead/nv-datagridhead.js +0 -23
  514. package/dist/collection/components/nv-datagridhead/nv-datagridhead.js.map +0 -1
  515. package/dist/collection/components/nv-datagridrow/nv-datagridrow.css +0 -0
  516. package/dist/collection/components/nv-datagridrow/nv-datagridrow.docs.js +0 -8
  517. package/dist/collection/components/nv-datagridrow/nv-datagridrow.docs.js.map +0 -1
  518. package/dist/collection/components/nv-datagridrow/nv-datagridrow.js +0 -23
  519. package/dist/collection/components/nv-datagridrow/nv-datagridrow.js.map +0 -1
  520. package/dist/collection/components/nv-fielddropdownitem/DropdownItemSelectedEventDetail.js +0 -2
  521. package/dist/collection/components/nv-fielddropdownitem/DropdownItemSelectedEventDetail.js.map +0 -1
  522. package/dist/collection/components/nv-tablebody/nv-tablebody.css +0 -0
  523. package/dist/collection/components/nv-tablebody/nv-tablebody.docs.js +0 -8
  524. package/dist/collection/components/nv-tablebody/nv-tablebody.docs.js.map +0 -1
  525. package/dist/collection/components/nv-tablebody/nv-tablebody.js +0 -23
  526. package/dist/collection/components/nv-tablebody/nv-tablebody.js.map +0 -1
  527. package/dist/collection/components/nv-tablecolumn/nv-tablecolumn.css +0 -0
  528. package/dist/collection/components/nv-tabledatacell/nv-tabledatacell.css +0 -0
  529. package/dist/collection/components/nv-tabledatacell/nv-tabledatacell.docs.js +0 -6
  530. package/dist/collection/components/nv-tabledatacell/nv-tabledatacell.docs.js.map +0 -1
  531. package/dist/collection/components/nv-tabledatacell/nv-tabledatacell.js +0 -116
  532. package/dist/collection/components/nv-tabledatacell/nv-tabledatacell.js.map +0 -1
  533. package/dist/collection/components/nv-tablehead/nv-tablehead.css +0 -0
  534. package/dist/collection/components/nv-tablehead/nv-tablehead.docs.js +0 -8
  535. package/dist/collection/components/nv-tablehead/nv-tablehead.docs.js.map +0 -1
  536. package/dist/collection/components/nv-tablehead/nv-tablehead.js +0 -23
  537. package/dist/collection/components/nv-tablehead/nv-tablehead.js.map +0 -1
  538. package/dist/collection/components/nv-tablerow/nv-tablerow.css +0 -0
  539. package/dist/collection/components/nv-tablerow/nv-tablerow.docs.js +0 -8
  540. package/dist/collection/components/nv-tablerow/nv-tablerow.docs.js.map +0 -1
  541. package/dist/collection/components/nv-tablerow/nv-tablerow.js +0 -23
  542. package/dist/collection/components/nv-tablerow/nv-tablerow.js.map +0 -1
  543. package/dist/collection/dev/dev-components.js +0 -3
  544. package/dist/collection/dev/dev-components.js.map +0 -1
  545. package/dist/collection/dev/dev-forms.js +0 -3
  546. package/dist/collection/dev/dev-forms.js.map +0 -1
  547. package/dist/collection/dev/dev-root.js +0 -23
  548. package/dist/collection/dev/dev-root.js.map +0 -1
  549. package/dist/collection/dev/dev-utils.js +0 -54
  550. package/dist/collection/dev/dev-utils.js.map +0 -1
  551. package/dist/collection/global.js +0 -6
  552. package/dist/collection/global.js.map +0 -1
  553. package/dist/components/nv-datagridbody.d.ts +0 -11
  554. package/dist/components/nv-datagridbody.js +0 -38
  555. package/dist/components/nv-datagridbody.js.map +0 -1
  556. package/dist/components/nv-datagriddatacell.d.ts +0 -11
  557. package/dist/components/nv-datagriddatacell.js +0 -41
  558. package/dist/components/nv-datagriddatacell.js.map +0 -1
  559. package/dist/components/nv-datagridhead.d.ts +0 -11
  560. package/dist/components/nv-datagridhead.js +0 -38
  561. package/dist/components/nv-datagridhead.js.map +0 -1
  562. package/dist/components/nv-datagridrow.d.ts +0 -11
  563. package/dist/components/nv-datagridrow.js +0 -38
  564. package/dist/components/nv-datagridrow.js.map +0 -1
  565. package/dist/components/nv-tablebody.d.ts +0 -11
  566. package/dist/components/nv-tablebody.js +0 -38
  567. package/dist/components/nv-tablebody.js.map +0 -1
  568. package/dist/components/nv-tabledatacell.d.ts +0 -11
  569. package/dist/components/nv-tabledatacell.js +0 -61
  570. package/dist/components/nv-tabledatacell.js.map +0 -1
  571. package/dist/components/nv-tablehead.d.ts +0 -11
  572. package/dist/components/nv-tablehead.js +0 -38
  573. package/dist/components/nv-tablehead.js.map +0 -1
  574. package/dist/components/nv-tablerow.js +0 -38
  575. package/dist/components/nv-tablerow.js.map +0 -1
  576. package/dist/components/p-17714233.js +0 -1263
  577. package/dist/components/p-17714233.js.map +0 -1
  578. package/dist/components/p-56f71851.js.map +0 -1
  579. package/dist/components/p-802c9204.js.map +0 -1
  580. package/dist/components/p-91bf0cb6.js.map +0 -1
  581. package/dist/components/p-98ff0e5f.js.map +0 -1
  582. package/dist/components/p-a9a52105.js.map +0 -1
  583. package/dist/components/p-d20958c4.js.map +0 -1
  584. package/dist/components/p-dd34b97d.js +0 -90
  585. package/dist/components/p-dd34b97d.js.map +0 -1
  586. package/dist/esm/app-globals-0a94217b.js +0 -9
  587. package/dist/esm/app-globals-0a94217b.js.map +0 -1
  588. package/dist/esm/constants-0181211f.js.map +0 -1
  589. package/dist/esm/nv-datagridbody.entry.js +0 -20
  590. package/dist/esm/nv-datagridbody.entry.js.map +0 -1
  591. package/dist/esm/nv-datagriddatacell.entry.js +0 -21
  592. package/dist/esm/nv-datagriddatacell.entry.js.map +0 -1
  593. package/dist/esm/nv-datagridhead.entry.js +0 -20
  594. package/dist/esm/nv-datagridhead.entry.js.map +0 -1
  595. package/dist/esm/nv-datagridrow.entry.js +0 -20
  596. package/dist/esm/nv-datagridrow.entry.js.map +0 -1
  597. package/dist/esm/nv-tablebody.entry.js +0 -20
  598. package/dist/esm/nv-tablebody.entry.js.map +0 -1
  599. package/dist/esm/nv-tabledatacell.entry.js +0 -39
  600. package/dist/esm/nv-tabledatacell.entry.js.map +0 -1
  601. package/dist/esm/nv-tablehead.entry.js +0 -20
  602. package/dist/esm/nv-tablehead.entry.js.map +0 -1
  603. package/dist/esm/nv-tablerow.entry.js +0 -20
  604. package/dist/esm/nv-tablerow.entry.js.map +0 -1
  605. package/dist/native/p-02bb8184.entry.js +0 -2
  606. package/dist/native/p-09850aa9.entry.js +0 -2
  607. package/dist/native/p-09850aa9.entry.js.map +0 -1
  608. package/dist/native/p-10ba289c.entry.js +0 -2
  609. package/dist/native/p-10ba289c.entry.js.map +0 -1
  610. package/dist/native/p-1208abf2.entry.js +0 -2
  611. package/dist/native/p-1208abf2.entry.js.map +0 -1
  612. package/dist/native/p-130f6c47.entry.js.map +0 -1
  613. package/dist/native/p-180c45ff.entry.js +0 -2
  614. package/dist/native/p-180c45ff.entry.js.map +0 -1
  615. package/dist/native/p-1bb5a6bd.entry.js.map +0 -1
  616. package/dist/native/p-273d55e5.entry.js +0 -2
  617. package/dist/native/p-273d55e5.entry.js.map +0 -1
  618. package/dist/native/p-2aebf31b.entry.js +0 -2
  619. package/dist/native/p-2aebf31b.entry.js.map +0 -1
  620. package/dist/native/p-2f62f097.entry.js +0 -2
  621. package/dist/native/p-2f62f097.entry.js.map +0 -1
  622. package/dist/native/p-3c004551.entry.js.map +0 -1
  623. package/dist/native/p-46553ffd.entry.js +0 -2
  624. package/dist/native/p-46553ffd.entry.js.map +0 -1
  625. package/dist/native/p-4f11286d.entry.js.map +0 -1
  626. package/dist/native/p-51ad8bcd.entry.js +0 -2
  627. package/dist/native/p-51ad8bcd.entry.js.map +0 -1
  628. package/dist/native/p-54df2174.entry.js.map +0 -1
  629. package/dist/native/p-56f71851.js.map +0 -1
  630. package/dist/native/p-5f1a7e6e.entry.js +0 -2
  631. package/dist/native/p-892052c2.entry.js +0 -2
  632. package/dist/native/p-892052c2.entry.js.map +0 -1
  633. package/dist/native/p-8c1a6aa6.entry.js +0 -2
  634. package/dist/native/p-8c1a6aa6.entry.js.map +0 -1
  635. package/dist/native/p-8ee30013.entry.js +0 -2
  636. package/dist/native/p-8f4788b9.entry.js +0 -13
  637. package/dist/native/p-8f4788b9.entry.js.map +0 -1
  638. package/dist/native/p-99e7a452.entry.js.map +0 -1
  639. package/dist/native/p-aa2834e2.entry.js +0 -2
  640. package/dist/native/p-aa2834e2.entry.js.map +0 -1
  641. package/dist/native/p-ab5a8ce5.entry.js +0 -2
  642. package/dist/native/p-ab5a8ce5.entry.js.map +0 -1
  643. package/dist/native/p-bd6d9237.entry.js +0 -7
  644. package/dist/native/p-bd6d9237.entry.js.map +0 -1
  645. package/dist/native/p-beab7cbd.entry.js +0 -2
  646. package/dist/native/p-c398cdb4.entry.js +0 -2
  647. package/dist/native/p-c398cdb4.entry.js.map +0 -1
  648. package/dist/native/p-d776ed48.entry.js +0 -2
  649. package/dist/native/p-d776ed48.entry.js.map +0 -1
  650. package/dist/native/p-dc9dd5a7.entry.js +0 -2
  651. package/dist/native/p-dc9dd5a7.entry.js.map +0 -1
  652. package/dist/native/p-e3827605.entry.js.map +0 -1
  653. package/dist/native/p-e5a7596b.entry.js +0 -2
  654. package/dist/native/p-e5a7596b.entry.js.map +0 -1
  655. package/dist/native/p-e6f45df2.entry.js +0 -2
  656. package/dist/native/p-e6f45df2.entry.js.map +0 -1
  657. package/dist/native/p-ed47a702.entry.js +0 -2
  658. package/dist/native/p-ed47a702.entry.js.map +0 -1
  659. package/dist/native/p-f30ce086.entry.js +0 -2
  660. package/dist/native/p-f30ce086.entry.js.map +0 -1
  661. package/dist/native/p-f3fbdea6.js +0 -2
  662. package/dist/native/p-f3fbdea6.js.map +0 -1
  663. package/dist/types/components/nv-datagridbody/nv-datagridbody.d.ts +0 -7
  664. package/dist/types/components/nv-datagridbody/nv-datagridbody.docs.d.ts +0 -4
  665. package/dist/types/components/nv-datagriddatacell/nv-datagriddatacell.d.ts +0 -14
  666. package/dist/types/components/nv-datagriddatacell/nv-datagriddatacell.docs.d.ts +0 -4
  667. package/dist/types/components/nv-datagridhead/nv-datagridhead.d.ts +0 -7
  668. package/dist/types/components/nv-datagridhead/nv-datagridhead.docs.d.ts +0 -4
  669. package/dist/types/components/nv-datagridrow/nv-datagridrow.d.ts +0 -7
  670. package/dist/types/components/nv-datagridrow/nv-datagridrow.docs.d.ts +0 -4
  671. package/dist/types/components/nv-fielddropdownitem/DropdownItemSelectedEventDetail.d.ts +0 -21
  672. package/dist/types/components/nv-tablebody/nv-tablebody.d.ts +0 -7
  673. package/dist/types/components/nv-tablebody/nv-tablebody.docs.d.ts +0 -4
  674. package/dist/types/components/nv-tabledatacell/nv-tabledatacell.d.ts +0 -30
  675. package/dist/types/components/nv-tabledatacell/nv-tabledatacell.docs.d.ts +0 -4
  676. package/dist/types/components/nv-tablehead/nv-tablehead.d.ts +0 -7
  677. package/dist/types/components/nv-tablehead/nv-tablehead.docs.d.ts +0 -4
  678. package/dist/types/components/nv-tablerow/nv-tablerow.d.ts +0 -7
  679. package/dist/types/dev/dev-components.d.ts +0 -2
  680. package/dist/types/dev/dev-forms.d.ts +0 -2
  681. package/dist/types/dev/dev-utils.d.ts +0 -17
  682. package/dist/vscode-data.json +0 -4283
  683. /package/dist/native/{p-211f7b19.entry.js.map → p-15be3d96.entry.js.map} +0 -0
  684. /package/dist/native/{p-a06bafad.entry.js.map → p-359f0f53.entry.js.map} +0 -0
  685. /package/dist/native/{p-beab7cbd.entry.js.map → p-3be2c9a1.entry.js.map} +0 -0
  686. /package/dist/native/{p-d24586ed.entry.js.map → p-491f4605.entry.js.map} +0 -0
  687. /package/dist/native/{p-96902bb3.entry.js.map → p-8d6516a3.entry.js.map} +0 -0
  688. /package/dist/native/{p-5f1a7e6e.entry.js.map → p-951baf95.entry.js.map} +0 -0
  689. /package/dist/native/{p-a998f8df.entry.js.map → p-cda56476.entry.js.map} +0 -0
  690. /package/dist/native/{p-02bb8184.entry.js.map → p-d1bf4d77.entry.js.map} +0 -0
  691. /package/dist/native/{p-61d2cb2e.entry.js.map → p-e36e956b.entry.js.map} +0 -0
  692. /package/dist/native/{p-0bf35abc.entry.js.map → p-edee1c1f.entry.js.map} +0 -0
  693. /package/dist/native/{p-e192c25c.entry.js.map → p-f1585fc2.entry.js.map} +0 -0
  694. /package/dist/native/{p-d67b7502.entry.js.map → p-fde56f9c.entry.js.map} +0 -0
  695. /package/dist/types/{dev/dev-root.d.ts → utils/test/class.utils.test.d.ts} +0 -0
  696. /package/dist/types/{global.d.ts → utils/test/dom.utils.test.d.ts} +0 -0
@@ -0,0 +1,164 @@
1
+ /* eslint-disable @typescript-eslint/no-explicit-any */
2
+ /**
3
+ * All properties that should be excluded from the deep copy of an HTML element.
4
+ */
5
+ export const excludedProps = new Set([
6
+ // Text and content-related properties
7
+ 'textContent',
8
+ 'innerText',
9
+ 'outerText',
10
+ 'innerHTML',
11
+ 'outerHTML',
12
+ 'text',
13
+ // Form element properties
14
+ 'value',
15
+ 'defaultValue',
16
+ 'checked',
17
+ 'defaultChecked',
18
+ 'selectionStart',
19
+ 'selectionEnd',
20
+ 'selectionDirection',
21
+ 'form',
22
+ 'willValidate',
23
+ 'validity',
24
+ 'validationMessage',
25
+ 'labels',
26
+ 'list',
27
+ 'maxLength',
28
+ 'minLength',
29
+ 'valueAsDate',
30
+ 'valueAsNumber',
31
+ // Editability and namespaces
32
+ 'contentEditable',
33
+ 'isContentEditable',
34
+ 'namespaceURI',
35
+ // Child-related properties (handled recursively)
36
+ 'attributes',
37
+ 'children',
38
+ 'childNodes',
39
+ 'firstChild',
40
+ 'lastChild',
41
+ // Blazor-related properties
42
+ 'origin',
43
+ 'dataset',
44
+ 'attributeStyleMap',
45
+ 'prefix',
46
+ 'localName',
47
+ 'tagName',
48
+ 'shadowRoot',
49
+ 'assignedSlot',
50
+ 'scrollWidth',
51
+ 'scrollHeight',
52
+ 'clientTop',
53
+ 'clientLeft',
54
+ 'clientWidth',
55
+ 'clientHeight',
56
+ 'firstElementChild',
57
+ 'lastElementChild',
58
+ 'childElementCount',
59
+ 'previousElementSibling',
60
+ 'nextElementSibling',
61
+ 'currentCSSZoom',
62
+ 'nodeType',
63
+ 'nodeName',
64
+ 'baseURI',
65
+ 'isConnected',
66
+ 'ownerDocument',
67
+ 'parentNode',
68
+ 'parentElement',
69
+ 'previousSibling',
70
+ 'nextSibling',
71
+ 'ELEMENT_NODE',
72
+ 'ATTRIBUTE_NODE',
73
+ 'TEXT_NODE',
74
+ 'CDATA_SECTION_NODE',
75
+ 'ENTITY_REFERENCE_NODE',
76
+ 'ENTITY_NODE',
77
+ 'PROCESSING_INSTRUCTION_NODE',
78
+ 'COMMENT_NODE',
79
+ 'DOCUMENT_NODE',
80
+ 'DOCUMENT_TYPE_NODE',
81
+ 'DOCUMENT_FRAGMENT_NODE',
82
+ 'NOTATION_NODE',
83
+ 'DOCUMENT_POSITION_DISCONNECTED',
84
+ 'DOCUMENT_POSITION_PRECEDING',
85
+ 'DOCUMENT_POSITION_FOLLOWING',
86
+ 'DOCUMENT_POSITION_CONTAINS',
87
+ 'DOCUMENT_POSITION_CONTAINED_BY',
88
+ 'DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC',
89
+ ]);
90
+ /**
91
+ * Deep copy an HTML element with all its attributes, properties, and child nodes.
92
+ * This method is useful for creating a clone of an element that can be safely modified without affecting the original.
93
+ * @param {HTMLElement} element - The HTML element to copy.
94
+ * @returns {HTMLElement} - A deep copy of the HTML element.
95
+ * @example const copy = deepCopyElement(document.getElementById('myElement'));
96
+ */
97
+ export function deepCopyElement(element) {
98
+ const copy = document.createElement(element.tagName);
99
+ // ✅ Copy attributes
100
+ Array.from(element.attributes).forEach(attr => {
101
+ copy.setAttribute(attr.name, attr.value);
102
+ });
103
+ // ✅ Dynamically extract relevant properties
104
+ const properties = new Set();
105
+ // Collect only own enumerable properties
106
+ Object.keys(element).forEach(key => properties.add(key));
107
+ // Collect inherited properties from prototypes (HTMLElement -> Element -> Node)
108
+ let proto = Object.getPrototypeOf(element);
109
+ while (proto && proto !== HTMLElement.prototype) {
110
+ Object.keys(proto).forEach(key => properties.add(key));
111
+ proto = Object.getPrototypeOf(proto);
112
+ }
113
+ // ✅ Filter and copy only non-function properties (methods are excluded) and non-event listeners
114
+ properties.forEach(prop => {
115
+ if (typeof element[prop] !== 'function' && // Ignore methods
116
+ !prop.startsWith('on') && // Ignore event listeners (onclick, oninput, etc.)
117
+ !excludedProps.has(prop) // 🚨 Prevent text duplication and irrelevant props
118
+ ) {
119
+ try {
120
+ copy[prop] = element[prop];
121
+ }
122
+ catch (error) {
123
+ console.warn(`Could not copy property ${prop}:`, error.message);
124
+ }
125
+ }
126
+ });
127
+ // ✅ Copy dataset separately
128
+ Object.assign(copy.dataset, element.dataset);
129
+ // ✅ Handle form elements specifically
130
+ if (element instanceof HTMLInputElement) {
131
+ copy.value = element.value;
132
+ copy.checked = element.checked;
133
+ copy.defaultValue = element.defaultValue;
134
+ copy.defaultChecked = element.defaultChecked;
135
+ copy.selectionStart = element.selectionStart;
136
+ copy.selectionEnd = element.selectionEnd;
137
+ copy.selectionDirection = element.selectionDirection;
138
+ }
139
+ else if (element instanceof HTMLTextAreaElement) {
140
+ copy.value = element.value;
141
+ copy.defaultValue = element.defaultValue;
142
+ copy.selectionStart = element.selectionStart;
143
+ copy.selectionEnd = element.selectionEnd;
144
+ copy.selectionDirection =
145
+ element.selectionDirection;
146
+ }
147
+ else if (element instanceof HTMLSelectElement) {
148
+ copy.value = element.value;
149
+ copy.selectedIndex = element.selectedIndex;
150
+ }
151
+ // ✅ Recursively copy child nodes (prevent duplicates)
152
+ element.childNodes.forEach(child => {
153
+ let childCopy;
154
+ if (child.nodeType === Node.ELEMENT_NODE) {
155
+ childCopy = deepCopyElement(child);
156
+ }
157
+ else {
158
+ childCopy = child.cloneNode(true);
159
+ }
160
+ copy.appendChild(childCopy);
161
+ });
162
+ return copy;
163
+ }
164
+ //# sourceMappingURL=dom.utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dom.utils.js","sourceRoot":"","sources":["../../src/utils/dom.utils.ts"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\n/**\n * All properties that should be excluded from the deep copy of an HTML element.\n */\nexport const excludedProps = new Set([\n // Text and content-related properties\n 'textContent',\n 'innerText',\n 'outerText',\n 'innerHTML',\n 'outerHTML',\n 'text',\n\n // Form element properties\n 'value',\n 'defaultValue',\n 'checked',\n 'defaultChecked',\n 'selectionStart',\n 'selectionEnd',\n 'selectionDirection',\n 'form',\n 'willValidate',\n 'validity',\n 'validationMessage',\n 'labels',\n 'list',\n 'maxLength',\n 'minLength',\n 'valueAsDate',\n 'valueAsNumber',\n\n // Editability and namespaces\n 'contentEditable',\n 'isContentEditable',\n 'namespaceURI',\n\n // Child-related properties (handled recursively)\n 'attributes',\n 'children',\n 'childNodes',\n 'firstChild',\n 'lastChild',\n\n // Blazor-related properties\n 'origin',\n 'dataset',\n 'attributeStyleMap',\n 'prefix',\n 'localName',\n 'tagName',\n 'shadowRoot',\n 'assignedSlot',\n 'scrollWidth',\n 'scrollHeight',\n 'clientTop',\n 'clientLeft',\n 'clientWidth',\n 'clientHeight',\n 'firstElementChild',\n 'lastElementChild',\n 'childElementCount',\n 'previousElementSibling',\n 'nextElementSibling',\n 'currentCSSZoom',\n 'nodeType',\n 'nodeName',\n 'baseURI',\n 'isConnected',\n 'ownerDocument',\n 'parentNode',\n 'parentElement',\n 'previousSibling',\n 'nextSibling',\n 'ELEMENT_NODE',\n 'ATTRIBUTE_NODE',\n 'TEXT_NODE',\n 'CDATA_SECTION_NODE',\n 'ENTITY_REFERENCE_NODE',\n 'ENTITY_NODE',\n 'PROCESSING_INSTRUCTION_NODE',\n 'COMMENT_NODE',\n 'DOCUMENT_NODE',\n 'DOCUMENT_TYPE_NODE',\n 'DOCUMENT_FRAGMENT_NODE',\n 'NOTATION_NODE',\n 'DOCUMENT_POSITION_DISCONNECTED',\n 'DOCUMENT_POSITION_PRECEDING',\n 'DOCUMENT_POSITION_FOLLOWING',\n 'DOCUMENT_POSITION_CONTAINS',\n 'DOCUMENT_POSITION_CONTAINED_BY',\n 'DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC',\n]);\n\n/**\n * Deep copy an HTML element with all its attributes, properties, and child nodes.\n * This method is useful for creating a clone of an element that can be safely modified without affecting the original.\n * @param {HTMLElement} element - The HTML element to copy.\n * @returns {HTMLElement} - A deep copy of the HTML element.\n * @example const copy = deepCopyElement(document.getElementById('myElement'));\n */\nexport function deepCopyElement(element: HTMLElement): HTMLElement {\n const copy = document.createElement(element.tagName);\n\n // ✅ Copy attributes\n Array.from(element.attributes).forEach(attr => {\n copy.setAttribute(attr.name, attr.value);\n });\n\n // ✅ Dynamically extract relevant properties\n const properties = new Set<string>();\n\n // Collect only own enumerable properties\n Object.keys(element).forEach(key => properties.add(key));\n\n // Collect inherited properties from prototypes (HTMLElement -> Element -> Node)\n let proto = Object.getPrototypeOf(element);\n while (proto && proto !== HTMLElement.prototype) {\n Object.keys(proto).forEach(key => properties.add(key));\n proto = Object.getPrototypeOf(proto);\n }\n\n // ✅ Filter and copy only non-function properties (methods are excluded) and non-event listeners\n properties.forEach(prop => {\n if (\n typeof (element as any)[prop] !== 'function' && // Ignore methods\n !prop.startsWith('on') && // Ignore event listeners (onclick, oninput, etc.)\n !excludedProps.has(prop) // 🚨 Prevent text duplication and irrelevant props\n ) {\n try {\n (copy as any)[prop] = (element as any)[prop];\n } catch (error) {\n console.warn(`Could not copy property ${prop}:`, error.message);\n }\n }\n });\n\n // ✅ Copy dataset separately\n Object.assign(copy.dataset, element.dataset);\n\n // ✅ Handle form elements specifically\n if (element instanceof HTMLInputElement) {\n (copy as HTMLInputElement).value = element.value;\n (copy as HTMLInputElement).checked = element.checked;\n (copy as HTMLInputElement).defaultValue = element.defaultValue;\n (copy as HTMLInputElement).defaultChecked = element.defaultChecked;\n (copy as HTMLInputElement).selectionStart = element.selectionStart;\n (copy as HTMLInputElement).selectionEnd = element.selectionEnd;\n (copy as HTMLInputElement).selectionDirection = element.selectionDirection;\n } else if (element instanceof HTMLTextAreaElement) {\n (copy as HTMLTextAreaElement).value = element.value;\n (copy as HTMLTextAreaElement).defaultValue = element.defaultValue;\n (copy as HTMLTextAreaElement).selectionStart = element.selectionStart;\n (copy as HTMLTextAreaElement).selectionEnd = element.selectionEnd;\n (copy as HTMLTextAreaElement).selectionDirection =\n element.selectionDirection;\n } else if (element instanceof HTMLSelectElement) {\n (copy as HTMLSelectElement).value = element.value;\n (copy as HTMLSelectElement).selectedIndex = element.selectedIndex;\n }\n\n // ✅ Recursively copy child nodes (prevent duplicates)\n element.childNodes.forEach(child => {\n let childCopy;\n if (child.nodeType === Node.ELEMENT_NODE) {\n childCopy = deepCopyElement(child as HTMLElement);\n } else {\n childCopy = child.cloneNode(true);\n }\n copy.appendChild(childCopy);\n });\n\n return copy;\n}\n"]}
@@ -0,0 +1,25 @@
1
+ /* eslint-disable @typescript-eslint/no-explicit-any */
2
+ import { describe, expect, test } from "vitest";
3
+ import { nameof } from "../class.utils";
4
+ class Person {
5
+ }
6
+ describe('nameof', () => {
7
+ test.each([
8
+ [nameof(x => x.firstName), 'firstName'],
9
+ [nameof(x => x.lastName), 'lastName'],
10
+ [nameof(x => x.age), 'age'],
11
+ [nameof(x => x.model), 'model'],
12
+ [nameof(x => x.year), 'year'],
13
+ [
14
+ nameof(x => x.foo),
15
+ 'foo',
16
+ ],
17
+ [
18
+ nameof(x => x.bar),
19
+ 'bar',
20
+ ],
21
+ ])('should return correct property name', (actual, expected) => {
22
+ expect(actual).toEqual(expected);
23
+ });
24
+ });
25
+ //# sourceMappingURL=class.utils.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"class.utils.test.js","sourceRoot":"","sources":["../../../src/utils/test/class.utils.test.ts"],"names":[],"mappings":"AAAA,uDAAuD;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAExC,MAAM,MAAM;CAIX;AAgBD,QAAQ,CAAC,QAAQ,EAAE,GAAG,EAAE;IACtB,IAAI,CAAC,IAAI,CAAC;QACR,CAAC,MAAM,CAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,WAAW,CAAC;QAC/C,CAAC,MAAM,CAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,UAAU,CAAC;QAC7C,CAAC,MAAM,CAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC;QACnC,CAAC,MAAM,CAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;QACpC,CAAC,MAAM,CAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAClC;YACE,MAAM,CASH,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;YACd,KAAK;SACN;QACD;YACE,MAAM,CASH,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;YACd,KAAK;SACN;KACF,CAAC,CAAC,qCAAqC,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,EAAE;QAC7D,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC","sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { describe, expect, test } from 'vitest';\nimport { nameof } from '../class.utils';\n\nclass Person {\n firstName!: string;\n lastName!: string;\n age!: number;\n}\n\n/**\n * Car interface.\n */\ninterface Car {\n /**\n * Car model.\n */\n model: string;\n /**\n * Car year.\n */\n year: number;\n}\n\ndescribe('nameof', () => {\n test.each([\n [nameof<Person>(x => x.firstName), 'firstName'],\n [nameof<Person>(x => x.lastName), 'lastName'],\n [nameof<Person>(x => x.age), 'age'],\n [nameof<Car>(x => x.model), 'model'],\n [nameof<Car>(x => x.year), 'year'],\n [\n nameof<{\n /**\n * Foo property.\n */\n foo: number;\n /**\n * Bar property.\n */\n bar: string;\n }>(x => x.foo),\n 'foo',\n ],\n [\n nameof<{\n /**\n * Foo property.\n */\n foo: number;\n /**\n * Bar property.\n */\n bar: string;\n }>(x => x.bar),\n 'bar',\n ],\n ])('should return correct property name', (actual, expected) => {\n expect(actual).toEqual(expected);\n });\n});\n"]}
@@ -0,0 +1,102 @@
1
+ /* eslint-disable @typescript-eslint/no-explicit-any */
2
+ import { describe, test, expect, vi } from "vitest";
3
+ import { deepCopyElement } from "../dom.utils";
4
+ // Ensure JSDOM is loaded
5
+ import { JSDOM } from "jsdom";
6
+ // Setup JSDOM if window and document are missing
7
+ if (typeof window === 'undefined' || typeof document === 'undefined') {
8
+ const dom = new JSDOM(`<!DOCTYPE html><html><body></body></html>`);
9
+ global.window = dom.window;
10
+ global.document = dom.window.document;
11
+ global.HTMLElement = dom.window.HTMLElement; // ✅ Define HTMLElement
12
+ global.HTMLInputElement = dom.window.HTMLInputElement; // ✅ Define HTMLInputElement
13
+ global.HTMLTextAreaElement = dom.window.HTMLTextAreaElement; // ✅ Define HTMLTextAreaElement
14
+ global.HTMLSelectElement = dom.window.HTMLSelectElement; // ✅ Define HTMLSelectElement
15
+ global.Node = dom.window.Node; // ✅ Fixes "Node is not defined" error
16
+ global.Text = dom.window.Text;
17
+ global.Comment = dom.window.Comment;
18
+ global.DocumentFragment = dom.window.DocumentFragment;
19
+ }
20
+ /**
21
+ * Create a test element with various attributes and child nodes.
22
+ * @returns {HTMLElement} - A test element.
23
+ */
24
+ function createTestElement() {
25
+ const element = document.createElement('div');
26
+ element.id = 'testElement';
27
+ element.className = 'test-class';
28
+ element.setAttribute('data-test', '123');
29
+ element.style.color = 'red';
30
+ element.dataset.example = 'exampleData';
31
+ element.textContent = 'Hello World';
32
+ // Add a child element
33
+ const child = document.createElement('span');
34
+ child.textContent = 'Child text';
35
+ element.appendChild(child);
36
+ return element;
37
+ }
38
+ describe('deepCopyElement', () => {
39
+ test('should create a deep copy of an element', () => {
40
+ const original = createTestElement();
41
+ const copy = deepCopyElement(original);
42
+ expect(copy).not.toBe(original);
43
+ expect(copy.tagName).toBe(original.tagName);
44
+ expect(copy.id).toBe(original.id);
45
+ expect(copy.className).toBe(original.className);
46
+ expect(copy.getAttribute('data-test')).toBe(original.getAttribute('data-test'));
47
+ expect(copy.style.color).toBe(original.style.color);
48
+ expect(copy.dataset.example).toBe(original.dataset.example);
49
+ expect(copy.textContent).toBe(original.textContent);
50
+ expect(copy.childNodes.length).toBe(original.childNodes.length);
51
+ expect(copy.childNodes[0].textContent).toBe(original.childNodes[0].textContent);
52
+ });
53
+ test('should copy nested child elements', () => {
54
+ const parent = document.createElement('div');
55
+ const child = document.createElement('p');
56
+ child.textContent = 'Nested Child';
57
+ parent.appendChild(child);
58
+ const copy = deepCopyElement(parent);
59
+ expect(copy.childNodes.length).toBe(1);
60
+ expect(copy.childNodes[0].textContent).toBe(child.textContent);
61
+ });
62
+ test('should not copy event listeners', () => {
63
+ const button = document.createElement('button');
64
+ const mockFn = vi.fn();
65
+ button.addEventListener('click', mockFn);
66
+ const copy = deepCopyElement(button);
67
+ copy.click();
68
+ expect(mockFn).not.toHaveBeenCalled();
69
+ });
70
+ test('should handle elements without attributes', () => {
71
+ const element = document.createElement('div');
72
+ const copy = deepCopyElement(element);
73
+ expect(copy.tagName).toBe('DIV');
74
+ expect(copy.attributes.length).toBe(1); // Contains the "align" attribute
75
+ });
76
+ test('should not copy methods input', () => {
77
+ const input = document.createElement('input');
78
+ input.value = 'test';
79
+ input.focus = vi.fn(); // Mocking the focus method
80
+ const copy = deepCopyElement(input);
81
+ expect(copy.value).toBe('test'); // ✅ Correctly copied
82
+ expect(copy.focus).not.toBe(input.focus); // ✅ The mocked function should NOT be copied
83
+ });
84
+ test('should not copy methods textarea', () => {
85
+ const input = document.createElement('textarea');
86
+ input.value = 'test';
87
+ input.focus = vi.fn(); // Mocking the focus method
88
+ const copy = deepCopyElement(input);
89
+ expect(copy.value).toBe('test'); // ✅ Correctly copied
90
+ expect(copy.focus).not.toBe(input.focus); // ✅ The mocked function should NOT be copied
91
+ });
92
+ test('should not copy methods select', () => {
93
+ const input = document.createElement('select');
94
+ input.innerHTML = '<option>Option 1</option><option>Option 2</option>';
95
+ input.selectedIndex = 1;
96
+ input.focus = vi.fn(); // Mocking the focus method
97
+ const copy = deepCopyElement(input);
98
+ expect(copy.selectedIndex).toBe(1); // ✅ Correctly copied
99
+ expect(copy.focus).not.toBe(input.focus); // ✅ The mocked function should NOT be copied
100
+ });
101
+ });
102
+ //# sourceMappingURL=dom.utils.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dom.utils.test.js","sourceRoot":"","sources":["../../../src/utils/test/dom.utils.test.ts"],"names":[],"mappings":"AAAA,uDAAuD;AACvD,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE/C,yBAAyB;AACzB,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC;AAE9B,iDAAiD;AACjD,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE,CAAC;IACrE,MAAM,GAAG,GAAG,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;IACnE,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC,MAA+C,CAAC;IACpE,MAAM,CAAC,QAAQ,GAAG,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC;IACtC,MAAM,CAAC,WAAW,GAAG,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,uBAAuB;IACpE,MAAM,CAAC,gBAAgB,GAAG,GAAG,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,4BAA4B;IACnF,MAAM,CAAC,mBAAmB,GAAG,GAAG,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC,+BAA+B;IAC5F,MAAM,CAAC,iBAAiB,GAAG,GAAG,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,6BAA6B;IACtF,MAAM,CAAC,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,sCAAsC;IACrE,MAAM,CAAC,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC;IAC9B,MAAM,CAAC,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC;IACpC,MAAM,CAAC,gBAAgB,GAAG,GAAG,CAAC,MAAM,CAAC,gBAAgB,CAAC;AACxD,CAAC;AAED;;;GAGG;AACH,SAAS,iBAAiB;IACxB,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC9C,OAAO,CAAC,EAAE,GAAG,aAAa,CAAC;IAC3B,OAAO,CAAC,SAAS,GAAG,YAAY,CAAC;IACjC,OAAO,CAAC,YAAY,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;IACzC,OAAO,CAAC,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC;IAC5B,OAAO,CAAC,OAAO,CAAC,OAAO,GAAG,aAAa,CAAC;IACxC,OAAO,CAAC,WAAW,GAAG,aAAa,CAAC;IAEpC,sBAAsB;IACtB,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAC7C,KAAK,CAAC,WAAW,GAAG,YAAY,CAAC;IACjC,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IAE3B,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;IAC/B,IAAI,CAAC,yCAAyC,EAAE,GAAG,EAAE;QACnD,MAAM,QAAQ,GAAG,iBAAiB,EAAE,CAAC;QACrC,MAAM,IAAI,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;QAEvC,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAChC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC5C,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QAClC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAChD,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CACzC,QAAQ,CAAC,YAAY,CAAC,WAAW,CAAC,CACnC,CAAC;QACF,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACpD,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC5D,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QACpD,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAChE,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,IAAI,CACzC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,WAAW,CACnC,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,mCAAmC,EAAE,GAAG,EAAE;QAC7C,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC7C,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;QAC1C,KAAK,CAAC,WAAW,GAAG,cAAc,CAAC;QACnC,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAE1B,MAAM,IAAI,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;QACrC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACvC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IACjE,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,iCAAiC,EAAE,GAAG,EAAE;QAC3C,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAChD,MAAM,MAAM,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QACvB,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAEzC,MAAM,IAAI,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;QACrC,IAAI,CAAC,KAAK,EAAE,CAAC;QAEb,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;IACxC,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,2CAA2C,EAAE,GAAG,EAAE;QACrD,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC9C,MAAM,IAAI,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;QAEtC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACjC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,iCAAiC;IAC3E,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,+BAA+B,EAAE,GAAG,EAAE;QACzC,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QAC9C,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC;QACrB,KAAK,CAAC,KAAK,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,2BAA2B;QAElD,MAAM,IAAI,GAAG,eAAe,CAAC,KAAK,CAAqB,CAAC;QAExD,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,qBAAqB;QACtD,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,6CAA6C;IACzF,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,kCAAkC,EAAE,GAAG,EAAE;QAC5C,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;QACjD,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC;QACrB,KAAK,CAAC,KAAK,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,2BAA2B;QAElD,MAAM,IAAI,GAAG,eAAe,CAAC,KAAK,CAAwB,CAAC;QAE3D,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,qBAAqB;QACtD,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,6CAA6C;IACzF,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,gCAAgC,EAAE,GAAG,EAAE;QAC1C,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAC/C,KAAK,CAAC,SAAS,GAAG,oDAAoD,CAAC;QACvE,KAAK,CAAC,aAAa,GAAG,CAAC,CAAC;QACxB,KAAK,CAAC,KAAK,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,2BAA2B;QAElD,MAAM,IAAI,GAAG,eAAe,CAAC,KAAK,CAAsB,CAAC;QAEzD,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,qBAAqB;QACzD,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,6CAA6C;IACzF,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC","sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport { describe, test, expect, vi } from 'vitest';\nimport { deepCopyElement } from '../dom.utils';\n\n// Ensure JSDOM is loaded\nimport { JSDOM } from 'jsdom';\n\n// Setup JSDOM if window and document are missing\nif (typeof window === 'undefined' || typeof document === 'undefined') {\n const dom = new JSDOM(`<!DOCTYPE html><html><body></body></html>`);\n global.window = dom.window as unknown as Window & typeof globalThis;\n global.document = dom.window.document;\n global.HTMLElement = dom.window.HTMLElement; // ✅ Define HTMLElement\n global.HTMLInputElement = dom.window.HTMLInputElement; // ✅ Define HTMLInputElement\n global.HTMLTextAreaElement = dom.window.HTMLTextAreaElement; // ✅ Define HTMLTextAreaElement\n global.HTMLSelectElement = dom.window.HTMLSelectElement; // ✅ Define HTMLSelectElement\n global.Node = dom.window.Node; // ✅ Fixes \"Node is not defined\" error\n global.Text = dom.window.Text;\n global.Comment = dom.window.Comment;\n global.DocumentFragment = dom.window.DocumentFragment;\n}\n\n/**\n * Create a test element with various attributes and child nodes.\n * @returns {HTMLElement} - A test element.\n */\nfunction createTestElement() {\n const element = document.createElement('div');\n element.id = 'testElement';\n element.className = 'test-class';\n element.setAttribute('data-test', '123');\n element.style.color = 'red';\n element.dataset.example = 'exampleData';\n element.textContent = 'Hello World';\n\n // Add a child element\n const child = document.createElement('span');\n child.textContent = 'Child text';\n element.appendChild(child);\n\n return element;\n}\n\ndescribe('deepCopyElement', () => {\n test('should create a deep copy of an element', () => {\n const original = createTestElement();\n const copy = deepCopyElement(original);\n\n expect(copy).not.toBe(original);\n expect(copy.tagName).toBe(original.tagName);\n expect(copy.id).toBe(original.id);\n expect(copy.className).toBe(original.className);\n expect(copy.getAttribute('data-test')).toBe(\n original.getAttribute('data-test'),\n );\n expect(copy.style.color).toBe(original.style.color);\n expect(copy.dataset.example).toBe(original.dataset.example);\n expect(copy.textContent).toBe(original.textContent);\n expect(copy.childNodes.length).toBe(original.childNodes.length);\n expect(copy.childNodes[0].textContent).toBe(\n original.childNodes[0].textContent,\n );\n });\n\n test('should copy nested child elements', () => {\n const parent = document.createElement('div');\n const child = document.createElement('p');\n child.textContent = 'Nested Child';\n parent.appendChild(child);\n\n const copy = deepCopyElement(parent);\n expect(copy.childNodes.length).toBe(1);\n expect(copy.childNodes[0].textContent).toBe(child.textContent);\n });\n\n test('should not copy event listeners', () => {\n const button = document.createElement('button');\n const mockFn = vi.fn();\n button.addEventListener('click', mockFn);\n\n const copy = deepCopyElement(button);\n copy.click();\n\n expect(mockFn).not.toHaveBeenCalled();\n });\n\n test('should handle elements without attributes', () => {\n const element = document.createElement('div');\n const copy = deepCopyElement(element);\n\n expect(copy.tagName).toBe('DIV');\n expect(copy.attributes.length).toBe(1); // Contains the \"align\" attribute\n });\n\n test('should not copy methods input', () => {\n const input = document.createElement('input');\n input.value = 'test';\n input.focus = vi.fn(); // Mocking the focus method\n\n const copy = deepCopyElement(input) as HTMLInputElement;\n\n expect(copy.value).toBe('test'); // ✅ Correctly copied\n expect(copy.focus).not.toBe(input.focus); // ✅ The mocked function should NOT be copied\n });\n\n test('should not copy methods textarea', () => {\n const input = document.createElement('textarea');\n input.value = 'test';\n input.focus = vi.fn(); // Mocking the focus method\n\n const copy = deepCopyElement(input) as HTMLTextAreaElement;\n\n expect(copy.value).toBe('test'); // ✅ Correctly copied\n expect(copy.focus).not.toBe(input.focus); // ✅ The mocked function should NOT be copied\n });\n\n test('should not copy methods select', () => {\n const input = document.createElement('select');\n input.innerHTML = '<option>Option 1</option><option>Option 2</option>';\n input.selectedIndex = 1;\n input.focus = vi.fn(); // Mocking the focus method\n\n const copy = deepCopyElement(input) as HTMLSelectElement;\n\n expect(copy.selectedIndex).toBe(1); // ✅ Correctly copied\n expect(copy.focus).not.toBe(input.focus); // ✅ The mocked function should NOT be copied\n });\n});\n"]}
@@ -0,0 +1,21 @@
1
+ // dataURIToString.test.ts
2
+ import { describe, it, expect } from "vitest";
3
+ import { dataURIToString } from "../uri.utils";
4
+ describe('dataURIToString', () => {
5
+ it('decodes a base64 encoded data URI correctly', () => {
6
+ const dataURI = 'data:text/plain;base64,SGVsbG8sIHdvcmxkIQ==';
7
+ const result = dataURIToString(dataURI);
8
+ expect(result).toBe('Hello, world!');
9
+ });
10
+ it('decodes a URL encoded data URI correctly', () => {
11
+ const dataURI = 'data:text/plain,Hello%2C%20world!';
12
+ const result = dataURIToString(dataURI);
13
+ expect(result).toBe('Hello, world!');
14
+ });
15
+ it('returns an empty string if data part is empty', () => {
16
+ const dataURI = 'data:text/plain;base64,';
17
+ const result = dataURIToString(dataURI);
18
+ expect(result).toBe('');
19
+ });
20
+ });
21
+ //# sourceMappingURL=uri.utils.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"uri.utils.test.js","sourceRoot":"","sources":["../../../src/utils/test/uri.utils.test.ts"],"names":[],"mappings":"AAAA,0BAA0B;AAC1B,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE/C,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;IAC/B,EAAE,CAAC,6CAA6C,EAAE,GAAG,EAAE;QACrD,MAAM,OAAO,GAAG,6CAA6C,CAAC;QAC9D,MAAM,MAAM,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;QACxC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IACvC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0CAA0C,EAAE,GAAG,EAAE;QAClD,MAAM,OAAO,GAAG,mCAAmC,CAAC;QACpD,MAAM,MAAM,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;QACxC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IACvC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+CAA+C,EAAE,GAAG,EAAE;QACvD,MAAM,OAAO,GAAG,yBAAyB,CAAC;QAC1C,MAAM,MAAM,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;QACxC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC1B,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC","sourcesContent":["// dataURIToString.test.ts\nimport { describe, it, expect } from 'vitest';\nimport { dataURIToString } from '../uri.utils';\n\ndescribe('dataURIToString', () => {\n it('decodes a base64 encoded data URI correctly', () => {\n const dataURI = 'data:text/plain;base64,SGVsbG8sIHdvcmxkIQ==';\n const result = dataURIToString(dataURI);\n expect(result).toBe('Hello, world!');\n });\n\n it('decodes a URL encoded data URI correctly', () => {\n const dataURI = 'data:text/plain,Hello%2C%20world!';\n const result = dataURIToString(dataURI);\n expect(result).toBe('Hello, world!');\n });\n\n it('returns an empty string if data part is empty', () => {\n const dataURI = 'data:text/plain;base64,';\n const result = dataURIToString(dataURI);\n expect(result).toBe('');\n });\n});\n"]}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Converts a Data URI to a string.
3
+ * @param {string} dataURI - The data URI (base64-encoded string) representing data.
4
+ * @returns {string} - The original string representation of the data.
5
+ */
6
+ export function dataURIToString(dataURI) {
7
+ const [header, data] = dataURI.split(',');
8
+ // If the header indicates base64 encoding, decode it.
9
+ if (header.includes('base64')) {
10
+ return atob(data);
11
+ }
12
+ // Otherwise, decode URI components if necessary.
13
+ return decodeURIComponent(data);
14
+ }
15
+ //# sourceMappingURL=uri.utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"uri.utils.js","sourceRoot":"","sources":["../../src/utils/uri.utils.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAAC,OAAe;IAC7C,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAE1C,sDAAsD;IACtD,IAAI,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC9B,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC;IACpB,CAAC;IAED,iDAAiD;IACjD,OAAO,kBAAkB,CAAC,IAAI,CAAC,CAAC;AAClC,CAAC","sourcesContent":["/**\n * Converts a Data URI to a string.\n * @param {string} dataURI - The data URI (base64-encoded string) representing data.\n * @returns {string} - The original string representation of the data.\n */\nexport function dataURIToString(dataURI: string): string {\n const [header, data] = dataURI.split(',');\n\n // If the header indicates base64 encoding, decode it.\n if (header.includes('base64')) {\n return atob(data);\n }\n\n // Otherwise, decode URI components if necessary.\n return decodeURIComponent(data);\n}\n"]}
@@ -1,10 +1,11 @@
1
- import { u as useGrow } from './p-17714233.js';
2
1
  export { g as getAssetPath, s as setAssetPath, a as setNonce, b as setPlatformOptions } from './p-77d0fedc.js';
3
- export { c as constants } from './p-56f71851.js';
2
+ export { c as constants } from './p-b316c35d.js';
4
3
  export { e as eventUtils } from './p-d429a343.js';
5
4
  export { s as stringUtils } from './p-a5c8eee9.js';
5
+ export { u as uriUtils } from './p-7e58e7d1.js';
6
6
  import { u as useCollapse, t as timeline } from './p-42301d8f.js';
7
7
  import { u as useFade } from './p-1daca48a.js';
8
+ import { u as useGrow } from './p-c1765831.js';
8
9
 
9
10
  /* eslint-disable @typescript-eslint/no-explicit-any */
10
11
  /**
@@ -1 +1 @@
1
- {"file":"index.js","mappings":"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","names":[],"sources":["src/utils/class.utils.ts","src/components/nv-icon/nv-icons.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\n\n/**\n * Get the name of a property in an object or class instance.\n * @param {function} key The key of the property.\n * @returns {string} The name of the property.\n */\nexport function nameof<T>(key: (x: T) => any): string {\n const proxy = new Proxy(\n {},\n {\n get(_target, prop) {\n return prop;\n },\n },\n );\n return key(proxy as T);\n}\n","/** Available icons */\n\nexport const iconNames = [\n 'access-point-off',\n 'access-point',\n 'accessible',\n 'activity',\n 'address-book',\n 'adjustments-horizontal',\n 'adjustments-up',\n 'adjustments',\n 'affiliate',\n 'air-conditioning',\n 'alert-circle',\n 'align-center',\n 'align-left',\n 'align-right',\n 'app-window',\n 'apps',\n 'archive',\n 'areas',\n 'arrow-back-up',\n 'arrow-back',\n 'arrow-down-left',\n 'arrow-down-right',\n 'arrow-down',\n 'arrow-forward-up',\n 'arrow-forward',\n 'arrow-left',\n 'arrow-right',\n 'arrow-up-left',\n 'arrow-up-right',\n 'arrow-up',\n 'arrows-exchange',\n 'arrows-move',\n 'aspect-ratio',\n 'atom',\n 'basket',\n 'battery-1',\n 'battery-2',\n 'battery-3',\n 'battery-4',\n 'battery-automotive',\n 'battery-charging',\n 'battery-eco',\n 'battery-off',\n 'battery',\n 'bell-off',\n 'bell-ringing',\n 'bell',\n 'bike',\n 'bluetooth-connected',\n 'bluetooth-off',\n 'bluetooth',\n 'bolt',\n 'book',\n 'bookmark-off',\n 'bookmark',\n 'bookmarks',\n 'box-align-top',\n 'box-multiple',\n 'briefcase',\n 'brightness-down',\n 'brightness-up',\n 'browser-check',\n 'browser-plus',\n 'browser-x',\n 'browser',\n 'brush',\n 'building-bank',\n 'building-factory',\n 'building-lighthouse',\n 'building-store',\n 'building',\n 'bulb-off',\n 'bulb',\n 'cake',\n 'calendar-time',\n 'calendar',\n 'camera-off',\n 'camera',\n 'car-crane',\n 'car',\n 'caravan',\n 'cash-banknote',\n 'cash',\n 'cast',\n 'cell',\n 'charging-pile',\n 'chart-arcs',\n 'chart-area-line',\n 'chart-area',\n 'chart-arrows-vertical',\n 'chart-arrows',\n 'chart-bar',\n 'chart-bubble',\n 'chart-circles',\n 'chart-donut',\n 'chart-dots',\n 'chart-line',\n 'chart-pie',\n 'chart-radar',\n 'check',\n 'checkbox',\n 'checklist',\n 'checks',\n 'chevron-down',\n 'chevron-left',\n 'chevron-right',\n 'chevron-top',\n 'chevrons-left',\n 'chevrons-right',\n 'circle-caret-right',\n 'circle-check',\n 'circle-x',\n 'circuit-alternate',\n 'circuit-ground-digital',\n 'clipboard-check',\n 'clipboard-list',\n 'clipboard-plus',\n 'clipboard-text',\n 'clipboard-x',\n 'clipboard',\n 'clock-edit',\n 'clock',\n 'cloud-data-connection',\n 'cloud-download',\n 'cloud-rain',\n 'cloud-snow',\n 'cloud-upload',\n 'cloud',\n 'color-picker',\n 'color-swatch',\n 'compass',\n 'contract',\n 'copy',\n 'cpu',\n 'crane',\n 'credit-card',\n 'crop',\n 'cross',\n 'crown',\n 'currency-bitcoin',\n 'currency-dollar',\n 'currency-ethereum',\n 'currency-euro',\n 'cut',\n 'dashboard',\n 'database',\n 'device-desktop',\n 'device-floppy',\n 'device-gamepad',\n 'device-laptop',\n 'device-mobile-rotated',\n 'device-mobile',\n 'device-tablet',\n 'device-watch',\n 'devices',\n 'dialpad',\n 'direction-horizontal',\n 'direction-sign',\n 'direction',\n 'discount',\n 'door-enter',\n 'door-exit',\n 'door-off',\n 'dots-vertical',\n 'dots',\n 'download',\n 'drone',\n 'droplet-filled',\n 'droplet-half',\n 'droplet',\n 'droplets',\n 'edit',\n 'engine',\n 'external-link',\n 'eye-off',\n 'eye',\n 'face-id',\n 'feather',\n 'file-alert',\n 'file-analytics',\n 'file-check',\n 'file-code',\n 'file-download',\n 'file-export',\n 'file-horizontal',\n 'file-import',\n 'file-plus',\n 'file-search',\n 'file-text-bookmark',\n 'file-text',\n 'file-type-bmp',\n 'file-type-css',\n 'file-type-csv',\n 'file-type-doc',\n 'file-type-html',\n 'file-type-jpg',\n 'file-type-js',\n 'file-type-pdf',\n 'file-type-png',\n 'file-type-ppt',\n 'file-type-xls',\n 'file-type-xml',\n 'file-type-zip',\n 'file-upload',\n 'file-x',\n 'file-zip',\n 'file',\n 'files-off',\n 'files',\n 'filter-off',\n 'filter-sort',\n 'filter',\n 'fingerprint',\n 'fire-extinguisher',\n 'flag',\n 'flame',\n 'flip-horizontal',\n 'flip-vertical',\n 'folder-minus',\n 'folder-off',\n 'folder-plus',\n 'folder-x',\n 'folder',\n 'folders',\n 'frame',\n 'gas-station',\n 'gauge-off',\n 'gauge',\n 'gift',\n 'gps',\n 'grid-dots',\n 'grip-horizontal',\n 'grip-vertical',\n 'hand-stop',\n 'hand-waving',\n 'hash',\n 'haze',\n 'headphones-off',\n 'headphones',\n 'headset',\n 'helicopter',\n 'help',\n 'history',\n 'home',\n 'hourglass-empty',\n 'hourglass-high',\n 'hourglass-low',\n 'hourglass-off',\n 'hourglass',\n 'inbox',\n 'info-circle',\n 'keyboard-hide',\n 'keyboard-show',\n 'keyboard',\n 'layout-board-split',\n 'layout-dashboard',\n 'layout-grid',\n 'layout-sidebar-left-collapse',\n 'layout-sidebar-left-expand',\n 'layout-sidebar-right-collapse',\n 'layout-sidebar-right-expand',\n 'layout',\n 'leaf',\n 'lifebuoy',\n 'link',\n 'list-search',\n 'list',\n 'loader',\n 'location',\n 'lock-off',\n 'lock-open',\n 'lock',\n 'login',\n 'logout',\n 'mail-forward',\n 'mail-opened',\n 'mail',\n 'map-pin-off',\n 'map-pin',\n 'map',\n 'menu',\n 'message-dots',\n 'message-off',\n 'message',\n 'messages',\n 'microphone-off',\n 'microphone',\n 'minus',\n 'mist',\n 'moon',\n 'motorbike',\n 'mouse',\n 'movie',\n 'network',\n 'news',\n 'note',\n 'notebook',\n 'notes',\n 'offshore-station',\n 'package',\n 'palette',\n 'paperclip',\n 'pencil',\n 'phone-call',\n 'phone-calling',\n 'phone-check',\n 'phone-incoming',\n 'phone-off',\n 'phone-outgoing',\n 'phone',\n 'photo-off',\n 'photo',\n 'pig',\n 'pin',\n 'pinned-off',\n 'pinned',\n 'plane-off',\n 'plane',\n 'plant',\n 'player-pause',\n 'player-play',\n 'player-skip-back',\n 'player-skip-forward',\n 'player-stop',\n 'player-track-next',\n 'player-track-prev',\n 'plug-connected',\n 'plug',\n 'plus',\n 'power-ac',\n 'power-dc',\n 'power',\n 'presentation-analytics',\n 'presentation',\n 'printer',\n 'propeller',\n 'published',\n 'puzzle-2',\n 'puzzle',\n 'pylon',\n 'qrcode',\n 'radar',\n 'radio',\n 'radioactive',\n 'receipt-dollar',\n 'receipt-euro',\n 'receipt',\n 'recharging',\n 'recycle',\n 'refresh-alert',\n 'refresh',\n 'repeat-once',\n 'repeat',\n 'replace',\n 'report-analytics',\n 'report-medical',\n 'report-search',\n 'report',\n 'ripple-off',\n 'ripple',\n 'rocket',\n 'rotate-2',\n 'rotate-clockwise-2',\n 'rotate-clockwise',\n 'rotate-dot',\n 'rotate',\n 'router',\n 'ruler-measure',\n 'satellite',\n 'scale',\n 'school',\n 'scissors',\n 'scooter-electric',\n 'screenshot',\n 'search',\n 'seeding',\n 'select',\n 'selector',\n 'send',\n 'server',\n 'settings',\n 'shape',\n 'share-2',\n 'share',\n 'shield-check',\n 'shield-lock',\n 'shield-off',\n 'shield-x',\n 'shield',\n 'ship-off',\n 'ship',\n 'shopping-cart',\n 'slash',\n 'smart-home',\n 'snowflake',\n 'solar-panel',\n 'sort-ascending-letters',\n 'sort-ascending-numbers',\n 'sort-descending-letters',\n 'sort-descending-numbers',\n 'spacing-horizontal',\n 'spacing-vertical',\n 'speakerphone',\n 'stack',\n 'stairs',\n 'star',\n 'sun',\n 'sunrise',\n 'sunset',\n 'switch-horizontal',\n 'switch-vertical',\n 'table',\n 'tag',\n 'tank-empty-fill',\n 'tank-full-fill',\n 'tank-medium-fill',\n 'temperature-off',\n 'temperature',\n 'template',\n 'terminal',\n 'text-size',\n 'text',\n 'thumb-down',\n 'thumb-up',\n 'ticket',\n 'timeline',\n 'tir',\n 'tool',\n 'tools',\n 'train',\n 'trash-off',\n 'trash',\n 'tree',\n 'trees',\n 'truck-delivery',\n 'truck',\n 'umbrella',\n 'unlink',\n 'upload',\n 'user-circle',\n 'user-minus',\n 'user-plus',\n 'user-worker',\n 'user',\n 'users',\n 'versions',\n 'video-minus',\n 'video-off',\n 'video-plus',\n 'video',\n 'volume-2',\n 'volume-3',\n 'volume',\n 'wallet',\n 'wand',\n 'wave',\n 'waves',\n 'wifi-off',\n 'wifi',\n 'wind-direction',\n 'wind',\n 'windmill',\n 'wood',\n 'world',\n 'writing',\n 'x',\n 'zoom-reset',\n] as const;\nexport type IconName = (typeof iconNames)[number];\n"],"version":3}
1
+ {"file":"index.js","mappings":"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","names":[],"sources":["src/utils/class.utils.ts","src/components/nv-icon/nv-icons.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\n\n/**\n * Get the name of a property in an object or class instance.\n * @param {function} key The key of the property.\n * @returns {string} The name of the property.\n */\nexport function nameof<T>(key: (x: T) => any): string {\n const proxy = new Proxy(\n {},\n {\n get(_target, prop) {\n return prop;\n },\n },\n );\n return key(proxy as T);\n}\n","/** Available icons */\nexport const iconNames = [\n 'access-point-off',\n 'access-point',\n 'accessible',\n 'activity',\n 'address-book',\n 'adjustments-horizontal',\n 'adjustments-up',\n 'adjustments',\n 'affiliate',\n 'air-conditioning',\n 'alert-circle',\n 'align-center',\n 'align-left',\n 'align-right',\n 'app-window',\n 'apps',\n 'archive',\n 'areas',\n 'arrow-back-up',\n 'arrow-back',\n 'arrow-down-left',\n 'arrow-down-right',\n 'arrow-down',\n 'arrow-forward-up',\n 'arrow-forward',\n 'arrow-left',\n 'arrow-right',\n 'arrow-up-left',\n 'arrow-up-right',\n 'arrow-up',\n 'arrows-exchange',\n 'arrows-move',\n 'aspect-ratio',\n 'atom',\n 'basket',\n 'battery-1',\n 'battery-2',\n 'battery-3',\n 'battery-4',\n 'battery-automotive',\n 'battery-charging',\n 'battery-eco',\n 'battery-off',\n 'battery',\n 'bell-off',\n 'bell-ringing',\n 'bell',\n 'bike',\n 'bluetooth-connected',\n 'bluetooth-off',\n 'bluetooth',\n 'bolt',\n 'book',\n 'bookmark-off',\n 'bookmark',\n 'bookmarks',\n 'box-align-top',\n 'box-multiple',\n 'briefcase',\n 'brightness-down',\n 'brightness-up',\n 'browser-check',\n 'browser-plus',\n 'browser-x',\n 'browser',\n 'brush',\n 'building-bank',\n 'building-factory',\n 'building-lighthouse',\n 'building-store',\n 'building',\n 'bulb-off',\n 'bulb',\n 'cake',\n 'calendar-time',\n 'calendar',\n 'camera-off',\n 'camera',\n 'car-crane',\n 'car',\n 'caravan',\n 'cash-banknote',\n 'cash',\n 'cast',\n 'cell',\n 'charging-pile',\n 'chart-arcs',\n 'chart-area-line',\n 'chart-area',\n 'chart-arrows-vertical',\n 'chart-arrows',\n 'chart-bar',\n 'chart-bubble',\n 'chart-circles',\n 'chart-donut',\n 'chart-dots',\n 'chart-line',\n 'chart-pie',\n 'chart-radar',\n 'check',\n 'checkbox',\n 'checklist',\n 'checks',\n 'chevron-down',\n 'chevron-left',\n 'chevron-right',\n 'chevron-top',\n 'chevrons-left',\n 'chevrons-right',\n 'circle-caret-right',\n 'circle-check',\n 'circle-x',\n 'circuit-alternate',\n 'circuit-ground-digital',\n 'clipboard-check',\n 'clipboard-list',\n 'clipboard-plus',\n 'clipboard-text',\n 'clipboard-x',\n 'clipboard',\n 'clock-edit',\n 'clock',\n 'cloud-data-connection',\n 'cloud-download',\n 'cloud-rain',\n 'cloud-snow',\n 'cloud-upload',\n 'cloud',\n 'color-picker',\n 'color-swatch',\n 'compass',\n 'contract',\n 'copy',\n 'cpu',\n 'crane',\n 'credit-card',\n 'crop',\n 'cross',\n 'crown',\n 'currency-bitcoin',\n 'currency-dollar',\n 'currency-ethereum',\n 'currency-euro',\n 'cut',\n 'dashboard',\n 'database',\n 'device-desktop',\n 'device-floppy',\n 'device-gamepad',\n 'device-laptop',\n 'device-mobile-rotated',\n 'device-mobile',\n 'device-tablet',\n 'device-watch',\n 'devices',\n 'dialpad',\n 'direction-horizontal',\n 'direction-sign',\n 'direction',\n 'discount',\n 'door-enter',\n 'door-exit',\n 'door-off',\n 'dots-vertical',\n 'dots',\n 'download',\n 'drone',\n 'droplet-filled',\n 'droplet-half',\n 'droplet',\n 'droplets',\n 'edit',\n 'engine',\n 'external-link',\n 'eye-off',\n 'eye',\n 'face-id',\n 'feather',\n 'file-alert',\n 'file-analytics',\n 'file-check',\n 'file-code',\n 'file-download',\n 'file-export',\n 'file-horizontal',\n 'file-import',\n 'file-plus',\n 'file-search',\n 'file-text-bookmark',\n 'file-text',\n 'file-type-bmp',\n 'file-type-css',\n 'file-type-csv',\n 'file-type-doc',\n 'file-type-html',\n 'file-type-jpg',\n 'file-type-js',\n 'file-type-pdf',\n 'file-type-png',\n 'file-type-ppt',\n 'file-type-xls',\n 'file-type-xml',\n 'file-type-zip',\n 'file-upload',\n 'file-x',\n 'file-zip',\n 'file',\n 'files-off',\n 'files',\n 'filter-off',\n 'filter-sort',\n 'filter',\n 'fingerprint',\n 'fire-extinguisher',\n 'flag',\n 'flame',\n 'flip-horizontal',\n 'flip-vertical',\n 'folder-minus',\n 'folder-off',\n 'folder-plus',\n 'folder-x',\n 'folder',\n 'folders',\n 'frame',\n 'gas-station',\n 'gauge-off',\n 'gauge',\n 'gift',\n 'gps',\n 'grid-dots',\n 'grip-horizontal',\n 'grip-vertical',\n 'hand-stop',\n 'hand-waving',\n 'hash',\n 'haze',\n 'headphones-off',\n 'headphones',\n 'headset',\n 'helicopter',\n 'help',\n 'history',\n 'home',\n 'hourglass-empty',\n 'hourglass-high',\n 'hourglass-low',\n 'hourglass-off',\n 'hourglass',\n 'inbox',\n 'info-circle',\n 'keyboard-hide',\n 'keyboard-show',\n 'keyboard',\n 'layout-board-split',\n 'layout-dashboard',\n 'layout-grid',\n 'layout-sidebar-left-collapse',\n 'layout-sidebar-left-expand',\n 'layout-sidebar-right-collapse',\n 'layout-sidebar-right-expand',\n 'layout',\n 'leaf',\n 'lifebuoy',\n 'link',\n 'list-search',\n 'list',\n 'loader',\n 'location',\n 'lock-off',\n 'lock-open',\n 'lock',\n 'login',\n 'logout',\n 'mail-forward',\n 'mail-opened',\n 'mail',\n 'map-pin-off',\n 'map-pin',\n 'map',\n 'menu',\n 'message-dots',\n 'message-off',\n 'message',\n 'messages',\n 'microphone-off',\n 'microphone',\n 'minus',\n 'mist',\n 'moon',\n 'motorbike',\n 'mouse',\n 'movie',\n 'network',\n 'news',\n 'note',\n 'notebook',\n 'notes',\n 'offshore-station',\n 'package',\n 'palette',\n 'paperclip',\n 'pencil',\n 'phone-call',\n 'phone-calling',\n 'phone-check',\n 'phone-incoming',\n 'phone-off',\n 'phone-outgoing',\n 'phone',\n 'photo-off',\n 'photo',\n 'pig',\n 'pin',\n 'pinned-off',\n 'pinned',\n 'plane-off',\n 'plane',\n 'plant',\n 'player-pause',\n 'player-play',\n 'player-skip-back',\n 'player-skip-forward',\n 'player-stop',\n 'player-track-next',\n 'player-track-prev',\n 'plug-connected',\n 'plug',\n 'plus',\n 'power-ac',\n 'power-dc',\n 'power',\n 'presentation-analytics',\n 'presentation',\n 'printer',\n 'propeller',\n 'published',\n 'puzzle-2',\n 'puzzle',\n 'pylon',\n 'qrcode',\n 'radar',\n 'radio',\n 'radioactive',\n 'receipt-dollar',\n 'receipt-euro',\n 'receipt',\n 'recharging',\n 'recycle',\n 'refresh-alert',\n 'refresh',\n 'repeat-once',\n 'repeat',\n 'replace',\n 'report-analytics',\n 'report-medical',\n 'report-search',\n 'report',\n 'ripple-off',\n 'ripple',\n 'rocket',\n 'rotate-2',\n 'rotate-clockwise-2',\n 'rotate-clockwise',\n 'rotate-dot',\n 'rotate',\n 'router',\n 'ruler-measure',\n 'satellite',\n 'scale',\n 'school',\n 'scissors',\n 'scooter-electric',\n 'screenshot',\n 'search',\n 'seeding',\n 'select',\n 'selector',\n 'send',\n 'server',\n 'settings',\n 'shape',\n 'share-2',\n 'share',\n 'shield-check',\n 'shield-lock',\n 'shield-off',\n 'shield-x',\n 'shield',\n 'ship-off',\n 'ship',\n 'shopping-cart',\n 'slash',\n 'smart-home',\n 'snowflake',\n 'solar-panel',\n 'sort-ascending-letters',\n 'sort-ascending-numbers',\n 'sort-descending-letters',\n 'sort-descending-numbers',\n 'spacing-horizontal',\n 'spacing-vertical',\n 'speakerphone',\n 'stack',\n 'stairs',\n 'star',\n 'sun',\n 'sunrise',\n 'sunset',\n 'switch-horizontal',\n 'switch-vertical',\n 'table',\n 'tag',\n 'tank-empty-fill',\n 'tank-full-fill',\n 'tank-medium-fill',\n 'temperature-off',\n 'temperature',\n 'template',\n 'terminal',\n 'text-size',\n 'text',\n 'thumb-down',\n 'thumb-up',\n 'ticket',\n 'timeline',\n 'tir',\n 'tool',\n 'tools',\n 'train',\n 'trash-off',\n 'trash',\n 'tree',\n 'trees',\n 'truck-delivery',\n 'truck',\n 'umbrella',\n 'unlink',\n 'upload',\n 'user-circle',\n 'user-minus',\n 'user-plus',\n 'user-worker',\n 'user',\n 'users',\n 'versions',\n 'video-minus',\n 'video-off',\n 'video-plus',\n 'video',\n 'volume-2',\n 'volume-3',\n 'volume',\n 'wallet',\n 'wand',\n 'wave',\n 'waves',\n 'wifi-off',\n 'wifi',\n 'wind-direction',\n 'wind',\n 'windmill',\n 'wood',\n 'world',\n 'writing',\n 'x',\n 'zoom-reset',\n] as const;\nexport type IconName = (typeof iconNames)[number];\n"],"version":3}
@@ -1,9 +1,9 @@
1
1
  import { p as proxyCustomElement, H, c as createEvent, h, d as Host } from './p-77d0fedc.js';
2
2
  import { c as clsx } from './p-8a1a6e56.js';
3
- import { F as FeedbackColors } from './p-56f71851.js';
3
+ import { F as FeedbackColors } from './p-b316c35d.js';
4
4
  import { u as useCollapse, t as timeline } from './p-42301d8f.js';
5
5
  import { u as useFade } from './p-1daca48a.js';
6
- import { d as defineCustomElement$2 } from './p-d20958c4.js';
6
+ import { d as defineCustomElement$2 } from './p-f77c3072.js';
7
7
 
8
8
  const nvAlertCss = "nv-alert{display:flex !important;align-items:flex-start;position:relative;gap:var(--alert-gap-x);border-radius:var(--alert-radius);font-family:\"TT Norms Pro\", \"Montserrat\", sans-serif}nv-alert>nv-icon{margin-left:var(--alert-icon-position-x);margin-top:var(--alert-icon-position-y)}nv-alert.feedback-information{background-color:var(--components-alert-information-background);border:1px solid var(--components-alert-information-border) !important}nv-alert.feedback-information>.close:focus,nv-alert.feedback-information>.close:focus-within{outline:none}nv-alert.feedback-information>.close:focus-visible,nv-alert.feedback-information>.close:has(:focus-visible){outline:calc(var(--focus-outline-stroke) * 1) solid var(--components-alert-information-border);outline-offset:calc(var(--focus-outline-offset) * 1)}nv-alert.feedback-warning{background-color:var(--components-alert-warning-background);border:1px solid var(--components-alert-warning-border) !important}nv-alert.feedback-warning>.close:focus,nv-alert.feedback-warning>.close:focus-within{outline:none}nv-alert.feedback-warning>.close:focus-visible,nv-alert.feedback-warning>.close:has(:focus-visible){outline:calc(var(--focus-outline-stroke) * 1) solid var(--components-alert-warning-border);outline-offset:calc(var(--focus-outline-offset) * 1)}nv-alert.feedback-error{background-color:var(--components-alert-error-background);border:1px solid var(--components-alert-error-border) !important}nv-alert.feedback-error>.close:focus,nv-alert.feedback-error>.close:focus-within{outline:none}nv-alert.feedback-error>.close:focus-visible,nv-alert.feedback-error>.close:has(:focus-visible){outline:calc(var(--focus-outline-stroke) * 1) solid var(--components-alert-error-border);outline-offset:calc(var(--focus-outline-offset) * 1)}nv-alert.feedback-success{background-color:var(--components-alert-success-background);border:1px solid var(--components-alert-success-border) !important}nv-alert.feedback-success>.close:focus,nv-alert.feedback-success>.close:focus-within{outline:none}nv-alert.feedback-success>.close:focus-visible,nv-alert.feedback-success>.close:has(:focus-visible){outline:calc(var(--focus-outline-stroke) * 1) solid var(--components-alert-success-border);outline-offset:calc(var(--focus-outline-offset) * 1)}nv-alert.feedback-neutral{background-color:var(--components-alert-neutral-background);border:1px solid var(--components-alert-neutral-border) !important}nv-alert.feedback-neutral>.close:focus,nv-alert.feedback-neutral>.close:focus-within{outline:none}nv-alert.feedback-neutral>.close:focus-visible,nv-alert.feedback-neutral>.close:has(:focus-visible){outline:calc(var(--focus-outline-stroke) * 1) solid var(--components-alert-neutral-border);outline-offset:calc(var(--focus-outline-offset) * 1)}nv-alert>nv-icon.icon-information{color:var(--components-alert-information-icon)}nv-alert>nv-icon.icon-warning{color:var(--components-alert-warning-icon)}nv-alert>nv-icon.icon-error{color:var(--components-alert-error-icon)}nv-alert>nv-icon.icon-success{color:var(--components-alert-success-icon)}nv-alert>nv-icon.icon-neutral{color:var(--components-alert-neutral-icon)}nv-alert>.content{display:flex;padding:var(--alert-padding);padding-left:0;flex-direction:column;gap:var(--alert-gap-y)}nv-alert>.content>.heading{color:var(--components-alert-content-title);font-size:var(--alert-heading-font-size);line-height:var(--alert-heading-line-height);font-weight:var(--alert-heading-font-weight)}nv-alert>.content>.message{color:var(--components-alert-content-description);font-size:var(--alert-message-font-size);line-height:var(--alert-message-line-height)}nv-alert>.close{border-radius:var(--alert-radius);position:absolute;display:flex;top:var(--alert-icon-position-y);right:var(--alert-icon-position-x);padding:0;border:none;background:none;cursor:pointer}";
9
9
  const NvAlertStyle0 = nvAlertCss;
@@ -36,6 +36,10 @@ const NvAlert$1 = /*@__PURE__*/ proxyCustomElement(class NvAlert extends H {
36
36
  * Controls the visibility of the alert. Will animate with fade and collapse.
37
37
  */
38
38
  this.hidden = false; // eslint-disable-line @stencil-community/reserved-member-names
39
+ /**
40
+ * When true, the alert will not animate when it is hidden or shown.
41
+ */
42
+ this.hasNoAnimations = false;
39
43
  //#endregion WATCHERS
40
44
  /****************************************************************************/
41
45
  //#region METHODS
@@ -98,13 +102,35 @@ const NvAlert$1 = /*@__PURE__*/ proxyCustomElement(class NvAlert extends H {
98
102
  */
99
103
  async handleHiddenChange(hidden) {
100
104
  this.hiddenChanged.emit(hidden);
105
+ await this.updateVisibility(hidden);
106
+ this.hiddenChangedComplete.emit(hidden);
107
+ }
108
+ /**
109
+ * Updates the visibility state of the alert with optional animations
110
+ * @param {boolean} hidden - Whether the alert should be hidden
111
+ */
112
+ async updateVisibility(hidden) {
113
+ if (this.hasNoAnimations) {
114
+ this.toggleHiddenClass(hidden);
115
+ return;
116
+ }
101
117
  const { fadeIn, fadeOut } = useFade(this.ref, { duration: 150 });
102
118
  const { collapse, expand } = useCollapse(this.ref, { duration: 150 });
103
- if (hidden === true)
119
+ if (hidden) {
104
120
  await timeline(fadeOut, collapse).start();
105
- if (hidden === false)
121
+ this.toggleHiddenClass(true);
122
+ }
123
+ else {
124
+ this.toggleHiddenClass(false);
106
125
  await timeline(expand, fadeIn).start();
107
- this.hiddenChangedComplete.emit(hidden);
126
+ }
127
+ }
128
+ /**
129
+ * Toggles the 'hidden' class on the element
130
+ * @param {boolean} hidden - Whether to add or remove the hidden class
131
+ */
132
+ toggleHiddenClass(hidden) {
133
+ this.ref.classList.toggle('hidden', hidden);
108
134
  }
109
135
  //#endregion METHODS
110
136
  /****************************************************************************/
@@ -126,10 +152,7 @@ const NvAlert$1 = /*@__PURE__*/ proxyCustomElement(class NvAlert extends H {
126
152
  }
127
153
  }
128
154
  if (this.hidden) {
129
- const { setCollapsed } = useCollapse(this.ref);
130
- const { setFadeOut } = useFade(this.ref);
131
- setCollapsed();
132
- setFadeOut();
155
+ this.ref.classList.add('hidden');
133
156
  }
134
157
  }
135
158
  //#endregion LIFECYCLE
@@ -137,7 +160,7 @@ const NvAlert$1 = /*@__PURE__*/ proxyCustomElement(class NvAlert extends H {
137
160
  //#region RENDER
138
161
  render() {
139
162
  var _a;
140
- return (h(Host, { key: 'e14c9a07c3127a8ac3b1881e055526b82a93ff83', role: "alert", class: clsx('root', `feedback-${this.feedback}`) }, h("nv-icon", { key: 'c4aaf00e4b18891dd6053f1529f7a6267386c647', name: (_a = this.icon) !== null && _a !== void 0 ? _a : this.getDefaultIcon(), class: `icon-${this.feedback}`, size: "md" }), h("div", { key: '9df1b181179cd21361bae2ae347a02dbe07cee63', class: "content" }, this.heading && h("p", { key: '53a21fe4139260bd9aca34cefbb194024a3a1afb', class: "heading" }, this.heading), this.message && h("p", { key: 'eb58482e492f4aff15ccb300f3e89c70544c66d9', class: "message" }, this.message), h("slot", { key: '2762850b8d37f8c53447321a80f2d12d81c8b6f6' })), this.dismissible && (h("button", { key: '8827d5cbffe2f3757111f09806672514c10f7942', class: "close", type: "button", onClick: this.handleDismiss }, h("nv-icon", { key: '398ee6b8fc57eb994b30d7194ea69cd251ae5076', name: "x", size: "sm" })))));
163
+ return (h(Host, { key: 'e81f265d69ba269ea5a7433465f68862cf4444d2', role: "alert", class: clsx('root', `feedback-${this.feedback}`) }, h("nv-icon", { key: 'e0e21d84a214a51e0b303055e4aa280e0467dfe0', name: (_a = this.icon) !== null && _a !== void 0 ? _a : this.getDefaultIcon(), class: `icon-${this.feedback}`, size: "md" }), h("div", { key: '705d079e0abe159e4398f5d53ecec0c6649bcf6d', class: "content" }, this.heading && h("p", { key: 'cff1fa5c3caf736d332b2389168030b7263997c1', class: "heading" }, this.heading), this.message && h("p", { key: '6f492a02c068c1ffab48aeae7dd619c1a73b1c19', class: "message" }, this.message), h("slot", { key: 'e79556d3c7c10b8771e7e6262d4e4086bf895de9' })), this.dismissible && (h("button", { key: '2754a1237501c458b32a84f2f3166109dba9c3e2', class: "close", type: "button", onClick: this.handleDismiss }, h("nv-icon", { key: '9563b22ee4689d7e4d35ca4d882827004b334671', name: "x", size: "sm" })))));
141
164
  }
142
165
  get ref() { return this; }
143
166
  static get watchers() { return {
@@ -152,7 +175,8 @@ const NvAlert$1 = /*@__PURE__*/ proxyCustomElement(class NvAlert extends H {
152
175
  "icon": [513],
153
176
  "dismissible": [516],
154
177
  "preventAutoClose": [516, "prevent-auto-close"],
155
- "hidden": [1540]
178
+ "hidden": [1540],
179
+ "hasNoAnimations": [516, "has-no-animations"]
156
180
  }, undefined, {
157
181
  "hidden": ["handleHiddenChange"]
158
182
  }]);