@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
@@ -3,6 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-5910ba06.js');
6
+ const dom_utils = require('./dom.utils-4d43f69a.js');
6
7
 
7
8
  /**
8
9
  * table-core
@@ -2957,22 +2958,29 @@ function getCoreRowModel() {
2957
2958
  }, getMemoOptions(table.options, 'debugTable', 'getRowModel', () => table._autoResetPageIndex()));
2958
2959
  }
2959
2960
 
2960
- const nvDatagridCss = "nv-datagrid table{border-collapse:collapse;border-color:inherit;text-indent:0}";
2961
+ const nvDatagridCss = "nv-datagrid{display:block}nv-datagrid .hidden{display:none}nv-datagrid table{border-collapse:collapse;border-color:inherit;text-indent:0;width:100%}nv-datagrid th{text-align:left;border-bottom:1px solid var(--components-datagrid-border-header);height:var(--spacing-12);padding:var(--spacing-3) var(--spacing-4);font-size:var(--font-size-md);font-weight:700;color:var(--components-datagrid-content-header)}nv-datagrid td{border-bottom:1px solid var(--components-datagrid-border-body);height:var(--spacing-12);max-height:var(--spacing-14);padding:var(--spacing-2) var(--spacing-4);font-size:var(--font-size-md);font-weight:400;color:var(--components-datagrid-content-text);white-space:nowrap;text-overflow:ellipsis}nv-datagrid tbody>tr:hover{background:var(--color-interaction-container-neutral-background-hover)}";
2961
2962
  const NvDatagridStyle0 = nvDatagridCss;
2962
2963
 
2963
2964
  const NvDatagrid = class {
2964
2965
  constructor(hostRef) {
2965
2966
  index.registerInstance(this, hostRef);
2967
+ this.action = index.createEvent(this, "action", 7);
2968
+ this.templateCache = new Map();
2969
+ this.headerTemplateCache = new Map();
2966
2970
  /****************************************************************************/
2967
2971
  //#region STATES
2968
2972
  this.table = null;
2969
2973
  this.parsedColumns = []; // Parsed array
2970
2974
  this.parsedData = []; // Parsed array
2971
- this.hasSlotHead = false;
2972
- this.hasSlotBody = false;
2973
2975
  //#endregion STATES
2974
2976
  /****************************************************************************/
2975
2977
  //#region PROPERTIES
2978
+ /**
2979
+ * The data to display in the data grid.
2980
+ * @example [{ "name": "Alice", "age": 25 }, { "name": "Bob", "age": 30 }]
2981
+ * @default []
2982
+ */
2983
+ this.data = [];
2976
2984
  /**
2977
2985
  * The columns to display in the data grid.
2978
2986
  * @example
@@ -2985,11 +2993,10 @@ const NvDatagrid = class {
2985
2993
  */
2986
2994
  this.columns = [];
2987
2995
  /**
2988
- * The data to display in the data grid.
2989
- * @example [{ "name": "Alice", "age": 25 }, { "name": "Bob", "age": 30 }]
2990
- * @default []
2996
+ * Fallback value to be displayed when data is not available
2997
+ * @default 'N/A'
2991
2998
  */
2992
- this.data = [];
2999
+ this.fallbackValue = 'N/A';
2993
3000
  /**
2994
3001
  * The message to display when there is no data available.
2995
3002
  * @default 'No data available'
@@ -3003,39 +3010,94 @@ const NvDatagrid = class {
3003
3010
  }
3004
3011
  //#endregion PROPERTIES
3005
3012
  /****************************************************************************/
3006
- //#region WATCHERS
3007
- parseColumns(newValue, oldValue) {
3008
- this.parseColumnsArray(newValue, oldValue);
3013
+ //#region METHODS
3014
+ /**
3015
+ * Caches templates for cells and headers upfront to improve performance.
3016
+ */
3017
+ cacheTemplates() {
3018
+ const columns = Array.from(this.el.querySelectorAll('nv-datagridcolumn'));
3019
+ columns.forEach((col) => {
3020
+ const key = col.accessor;
3021
+ const cellSlot = col.querySelector('[slot="cell"]');
3022
+ if (cellSlot) {
3023
+ const element = dom_utils.deepCopyElement(cellSlot);
3024
+ this.templateCache.set(key, element);
3025
+ }
3026
+ const headerSlot = col.querySelector('[slot="header"]');
3027
+ if (headerSlot) {
3028
+ const element = dom_utils.deepCopyElement(headerSlot);
3029
+ this.headerTemplateCache.set(key, element);
3030
+ }
3031
+ else {
3032
+ const header = col.header;
3033
+ if (header) {
3034
+ const headerDiv = document.createElement('div');
3035
+ headerDiv.textContent = header;
3036
+ this.headerTemplateCache.set(key, headerDiv);
3037
+ }
3038
+ }
3039
+ });
3009
3040
  }
3010
- parseJsonColumns(newValue) {
3011
- try {
3012
- const newItems = newValue ? JSON.parse(newValue) : [];
3013
- this.parseColumnsArray(newItems, this.parsedColumns);
3041
+ parseDataAndColumns() {
3042
+ if (this.dataJson) {
3043
+ this.parseJsonData(this.dataJson);
3014
3044
  }
3015
- catch (e) {
3016
- console.error('Invalid JSON format for columnsJson:', e.message);
3017
- this.parsedColumns = [];
3045
+ else if (this.data && this.data.length > 0) {
3046
+ this.parseDataArray(this.data, this.parsedData);
3047
+ }
3048
+ if (this.columnsJson) {
3049
+ this.parseJsonColumns(this.columnsJson, this.parsedColumns);
3050
+ }
3051
+ else if (this.columns && this.columns.length > 0) {
3052
+ this.parseColumnsArray(this.columns, this.parsedColumns);
3053
+ }
3054
+ else if (this.headerTemplateCache.size > 0) {
3055
+ const headerKeys = Array.from(this.headerTemplateCache.keys());
3056
+ const arrayColumnsConfig = headerKeys.map(key => (Object.assign({}, { accessor: key, header: key ? key.charAt(0).toUpperCase() + key.slice(1) : '' })));
3057
+ this.parseColumnsArray(arrayColumnsConfig, this.parsedColumns);
3058
+ }
3059
+ else if (this.parsedData.length > 0) {
3060
+ const firstRow = this.parsedData[0];
3061
+ const arrayColumnsConfig = Object.keys(firstRow).map(key => ({
3062
+ accessor: key,
3063
+ header: key.charAt(0).toUpperCase() + key.slice(1),
3064
+ }));
3065
+ this.parseColumnsArray(arrayColumnsConfig, this.parsedColumns);
3018
3066
  }
3019
3067
  }
3020
- parseData(newValue, oldValue) {
3021
- this.parseDataArray(newValue, oldValue);
3068
+ deepEqual(a, b) {
3069
+ return JSON.stringify(a) === JSON.stringify(b);
3022
3070
  }
3023
- parseJsonData(newValue) {
3024
- try {
3025
- const newItems = newValue ? JSON.parse(newValue) : [];
3026
- this.parseDataArray(newItems, this.parsedData);
3027
- }
3028
- catch (e) {
3029
- console.error('Invalid JSON format for dataJson:', e.message);
3030
- this.parsedData = [];
3071
+ /**
3072
+ * Parses the data array and sets the state accordingly
3073
+ * @param {any[]} newValue - The new value of the data array.
3074
+ * @param {any[]} oldValue - The old value of the data array.
3075
+ */
3076
+ parseDataArray(newValue, oldValue) {
3077
+ // Ensure both are arrays for proper comparison
3078
+ const safeNewValue = Array.isArray(newValue) ? newValue : [];
3079
+ const safeOldValue = Array.isArray(oldValue) ? oldValue : [];
3080
+ if (this.deepEqual(safeNewValue, safeOldValue)) {
3081
+ return; // Deep comparison
3031
3082
  }
3083
+ this.parsedData = Array.isArray(newValue) ? newValue : [];
3032
3084
  }
3033
- handleParsedChange() {
3034
- this.initializeTable();
3085
+ /**
3086
+ * Parses the columns array and sets the state accordingly
3087
+ * @param {Column[]} newValue - The new value of the columns array.
3088
+ * @param {Column[]} oldValue - The old value of the columns array.
3089
+ */
3090
+ parseColumnsArray(newValue, oldValue) {
3091
+ // Ensure both are arrays for proper comparison
3092
+ const safeNewValue = Array.isArray(newValue) ? newValue : [];
3093
+ const safeOldValue = Array.isArray(oldValue) ? oldValue : [];
3094
+ // Use a proper deep comparison function (e.g., Lodash's isEqual)
3095
+ if (this.deepEqual(safeNewValue, safeOldValue)) {
3096
+ return;
3097
+ }
3098
+ // Assign only after confirming changes
3099
+ this.parsedColumns = safeNewValue;
3035
3100
  }
3036
- //#endregion WATCHERS
3037
- /****************************************************************************/
3038
- //#region METHODS
3039
3101
  initializeTable() {
3040
3102
  // Clear the previous table instance (if any)
3041
3103
  this.table = null;
@@ -3070,170 +3132,268 @@ const NvDatagrid = class {
3070
3132
  }, // Default: no column sizing info
3071
3133
  },
3072
3134
  };
3073
- // Validate and generate column definitions
3074
- const validColumns = this.parsedColumns.filter(column => (column === null || column === void 0 ? void 0 : column.accessor) && (column === null || column === void 0 ? void 0 : column.header));
3075
- // Helper function to generate column definitions
3076
- const generateColumns = () => {
3077
- const columnHelper = createColumnHelper();
3078
- if (validColumns.length > 0) {
3079
- // Use defined columns
3080
- return validColumns.map(column => columnHelper.accessor(column.accessor, {
3081
- header: column.header,
3082
- cell: info => info.getValue(),
3083
- }));
3084
- }
3085
- else if (tableOptions.data && tableOptions.data.length > 0) {
3086
- // Generate columns from data keys
3087
- const sampleRow = tableOptions.data[0];
3088
- return Object.keys(sampleRow).map(key => columnHelper.accessor(key, {
3089
- header: key.charAt(0).toUpperCase() + key.slice(1), // Capitalize key for header
3090
- cell: info => info.getValue(),
3091
- }));
3092
- }
3093
- else {
3094
- // No columns and no data
3095
- return [];
3096
- }
3097
- };
3098
- const setTableData = () => {
3099
- if (this.parsedData &&
3135
+ if (this.parsedColumns.length > 0) {
3136
+ // Validate and generate column definitions
3137
+ const validColumns = this.parsedColumns.filter(column => (column === null || column === void 0 ? void 0 : column.accessor) && (column === null || column === void 0 ? void 0 : column.header));
3138
+ // Update tableOptions based on parsed data and columns
3139
+ const hasColumns = validColumns && Array.isArray(validColumns) && validColumns.length > 0;
3140
+ const hasData = this.parsedData &&
3100
3141
  Array.isArray(this.parsedData) &&
3101
- this.parsedData.length > 0) {
3102
- return [...this.parsedData];
3142
+ this.parsedData.length > 0;
3143
+ if (!hasColumns && !hasData) ;
3144
+ else if (hasColumns && !hasData) {
3145
+ tableOptions.columns = this.generateColumns(validColumns, tableOptions);
3103
3146
  }
3104
3147
  else {
3105
- return [];
3148
+ // Both columns and data are available
3149
+ // No columns and data is available
3150
+ tableOptions.data = this.getTableData();
3151
+ tableOptions.columns = this.generateColumns(validColumns, tableOptions);
3106
3152
  }
3107
- };
3108
- // Update tableOptions based on parsed data and columns
3109
- const hasColumns = validColumns && Array.isArray(validColumns) && validColumns.length > 0;
3110
- const hasData = (this.parsedData &&
3111
- Array.isArray(this.parsedData) &&
3112
- this.parsedData.length > 0) ||
3113
- this.hasSlotBody;
3114
- if (!hasColumns && !hasData) ;
3115
- else if (hasColumns && !hasData) {
3116
- tableOptions.columns = generateColumns();
3117
- }
3118
- else {
3119
- // Both columns and data are available
3120
- // No columns and data is available
3121
- tableOptions.data = setTableData();
3122
- tableOptions.columns = generateColumns();
3123
3153
  }
3124
3154
  // Initialize the table
3125
3155
  this.table = createTable(tableOptions);
3126
3156
  }
3127
- /**
3128
- * Parses the columns array.
3129
- * @param {Column[]} newValue - The new value of the columns array.
3130
- * @param {Column[]} oldValue - The old value of the columns array.
3131
- */
3132
- parseColumnsArray(newValue, oldValue) {
3133
- if (JSON.stringify(newValue) === JSON.stringify(oldValue))
3134
- return; // Deep comparison
3135
- this.parsedColumns = Array.isArray(newValue) ? newValue : [];
3157
+ // Helper function to generate column definitions
3158
+ generateColumns(validColumns, tableOptions) {
3159
+ const columnHelper = createColumnHelper();
3160
+ if (validColumns.length > 0) {
3161
+ // Use defined columns
3162
+ return validColumns.map(column => columnHelper.accessor(column.accessor, {
3163
+ header: column.header,
3164
+ cell: info => info.getValue(),
3165
+ }));
3166
+ }
3167
+ else if (tableOptions.data && tableOptions.data.length > 0) {
3168
+ // Generate columns from data keys
3169
+ const sampleRow = tableOptions.data[0];
3170
+ return Object.keys(sampleRow).map(key => columnHelper.accessor(key, {
3171
+ header: key.charAt(0).toUpperCase() + key.slice(1), // Capitalize key for header
3172
+ cell: info => info.getValue(),
3173
+ }));
3174
+ }
3175
+ else {
3176
+ // No columns and no data
3177
+ return [];
3178
+ }
3136
3179
  }
3137
- /**
3138
- * Parses the data array.
3139
- * @param {any[]} newValue - The new value of the data array.
3140
- * @param {any[]} oldValue - The old value of the data array.
3141
- */
3142
- parseDataArray(newValue, oldValue) {
3143
- if (JSON.stringify(newValue) === JSON.stringify(oldValue))
3144
- return; // Deep comparison
3145
- this.parsedData = Array.isArray(newValue) ? newValue : [];
3180
+ getTableData() {
3181
+ if (this.parsedData &&
3182
+ Array.isArray(this.parsedData) &&
3183
+ this.parsedData.length > 0) {
3184
+ return [...this.parsedData];
3185
+ }
3186
+ else {
3187
+ return [];
3188
+ }
3146
3189
  }
3147
- //#endregion METHODS
3148
- /****************************************************************************/
3149
- //#region LIFECYCLE
3150
- componentWillLoad() {
3151
- this.hasSlotHead = !!this.el.querySelector('[slot="head"]');
3152
- if (this.hasSlotHead) {
3153
- const headSlot = this.el.querySelector('[slot="head"]');
3154
- const headSlotRows = this.hasSlotHead
3155
- ? Array.from(headSlot.querySelectorAll('nv-datagridrow'))
3156
- : [];
3157
- const mappedRows = headSlotRows.map(row => {
3158
- const cells = Array.from(row.querySelectorAll('nv-datagridcolumn'));
3159
- return cells.map(cell => ({
3160
- header: cell.getAttribute('header') || '',
3161
- accessor: cell.getAttribute('accessor') || '',
3162
- }));
3163
- });
3164
- // Flatten the nested arrays into a single array of columns
3165
- const flatMappedColumns = mappedRows.flat();
3166
- this.parsedColumns = flatMappedColumns;
3190
+ renderTemplate(template, cellValue, row) {
3191
+ if (!template) {
3192
+ return null;
3167
3193
  }
3168
- this.hasSlotBody = !!this.el.querySelector('[slot="body"]');
3169
- if (this.hasSlotBody) {
3170
- const bodySlot = this.el.querySelector('[slot="body"]');
3171
- const bodySlotRows = this.hasSlotBody
3172
- ? Array.from(bodySlot.querySelectorAll('nv-datagridrow'))
3173
- : [];
3174
- const mappedRows = bodySlotRows.map(row => {
3175
- const cells = Array.from(row.querySelectorAll('nv-datagriddatacell'));
3176
- return cells.map(cell => {
3177
- return {
3178
- accessor: cell.accessor,
3179
- value: cell.innerHTML,
3180
- };
3181
- });
3194
+ // Handle <template> elements correctly
3195
+ const templateContent = template instanceof HTMLTemplateElement ? template.content : template;
3196
+ const element = dom_utils.deepCopyElement(templateContent);
3197
+ // Replace placeholders in text content, attributes, and properties
3198
+ element.querySelectorAll('*').forEach(el => {
3199
+ // Replace placeholders in text content
3200
+ this.replacePlaceholdersTextContent(el, cellValue);
3201
+ // Replace placeholders in attributes
3202
+ this.replacePlaceholdersAttributes(el, cellValue);
3203
+ // Replace placeholders in properties
3204
+ this.replacePlaceholdersProperties(el, cellValue);
3205
+ });
3206
+ // Handle `data-bind-event`
3207
+ element.querySelectorAll('[data-bind-event]').forEach(el => {
3208
+ const bindEvent = el.getAttribute('data-bind-event') || '';
3209
+ const splitted = bindEvent.split(':');
3210
+ if (!bindEvent.includes(':') || splitted.length < 2) {
3211
+ console.warn('Invalid data-bind-event format:', bindEvent);
3212
+ return;
3213
+ }
3214
+ const eventType = splitted[0];
3215
+ const keyAction = splitted[1];
3216
+ const details = splitted.length > 2 ? splitted[2] : null;
3217
+ el.addEventListener(eventType, () => {
3218
+ var _a;
3219
+ const keys = (_a = details === null || details === void 0 ? void 0 : details.split(',')) !== null && _a !== void 0 ? _a : [];
3220
+ // Convert keys into a single object instead of an array of objects
3221
+ const keyValue = keys.reduce((acc, key) => {
3222
+ var _a;
3223
+ if (row === null || row === void 0 ? void 0 : row.original) {
3224
+ if (key in row.original) {
3225
+ acc[key] = (_a = row.original) === null || _a === void 0 ? void 0 : _a[key];
3226
+ }
3227
+ }
3228
+ return acc;
3229
+ }, {});
3230
+ const action = { keyAction, details: keyValue };
3231
+ this.action.emit(action);
3232
+ });
3233
+ });
3234
+ // Ensure Web Components are properly connected
3235
+ setTimeout(() => {
3236
+ element.querySelectorAll('*').forEach(child => {
3237
+ if (typeof child.connectedCallback === 'function') {
3238
+ child.connectedCallback();
3239
+ }
3182
3240
  });
3183
- // Flatten the nested arrays into a single array of data
3184
- const flatMappedData = mappedRows.map(row => row.reduce((acc, cell) => {
3185
- acc[cell.accessor] = cell.value;
3186
- return acc;
3187
- }, {}));
3188
- this.parsedData = flatMappedData;
3241
+ }, 0);
3242
+ return (index.h("div", { ref: el => {
3243
+ if (el) {
3244
+ el.innerHTML = ''; // Remove existing content
3245
+ el.appendChild(element); // Append new element
3246
+ }
3247
+ } }));
3248
+ }
3249
+ replaceKeyWithValue(key, cellValue) {
3250
+ var _a;
3251
+ // Handle undefined or null values by returning the fallback
3252
+ if (cellValue === undefined || cellValue === null) {
3253
+ return this.fallbackValue;
3189
3254
  }
3190
- if (this.columnsJson) {
3191
- this.parseJsonColumns(this.columnsJson);
3255
+ // If cellValue is an object, attempt to retrieve the value
3256
+ if (typeof cellValue === 'object') {
3257
+ // Handle nested key paths (e.g., "user.name")
3258
+ if (key.includes('.')) {
3259
+ const resolvedValue = key.split('.').reduce((acc, keyPart) => {
3260
+ if (acc && acc[keyPart] !== undefined) {
3261
+ return acc[keyPart];
3262
+ }
3263
+ else {
3264
+ return undefined;
3265
+ }
3266
+ }, cellValue);
3267
+ if (resolvedValue !== undefined) {
3268
+ return String(resolvedValue);
3269
+ }
3270
+ else {
3271
+ const firstLevelKey = key.split('.')[0];
3272
+ const rest = key.substring(firstLevelKey.length + 1);
3273
+ const response = this.replaceKeyWithValue(rest, cellValue);
3274
+ if (response !== this.fallbackValue) {
3275
+ return response;
3276
+ }
3277
+ }
3278
+ }
3279
+ // Handle single-level key lookup
3280
+ return key in cellValue ? String(cellValue[key]) : this.fallbackValue;
3192
3281
  }
3193
- else if (this.columns && this.columns.length > 0) {
3194
- this.parseColumns(this.columns, this.parsedColumns);
3282
+ // If cellValue is a primitive (string, number, boolean, etc.), return it as a string
3283
+ return (_a = cellValue === null || cellValue === void 0 ? void 0 : cellValue.toString()) !== null && _a !== void 0 ? _a : this.fallbackValue;
3284
+ }
3285
+ replacePlaceholdersTextContent(element, cellValue) {
3286
+ // ✅ Replace placeholders in text content
3287
+ element.childNodes.forEach(node => {
3288
+ if (node.nodeType === Node.TEXT_NODE) {
3289
+ node.textContent = node.textContent.replace(/__([\w.]+)__/g, (_, key) => this.replaceKeyWithValue(key, cellValue));
3290
+ }
3291
+ });
3292
+ }
3293
+ replacePlaceholdersAttributes(element, cellValue) {
3294
+ // ✅ Replace placeholders in attributes
3295
+ Array.from(element.attributes).forEach(attr => {
3296
+ if (attr.value.includes('__')) {
3297
+ attr.value = attr.value.replace(/__([\w.]+)__/g, (_, key) => this.replaceKeyWithValue(key, cellValue));
3298
+ }
3299
+ });
3300
+ }
3301
+ replacePlaceholdersProperties(element, cellValue) {
3302
+ // ✅ Dynamically extract relevant properties
3303
+ const properties = new Set();
3304
+ // Collect only own enumerable properties
3305
+ Object.keys(element).forEach(key => properties.add(key));
3306
+ // Collect inherited properties from prototypes (HTMLElement -> Element -> Node)
3307
+ let proto = Object.getPrototypeOf(element);
3308
+ while (proto && proto !== HTMLElement.prototype) {
3309
+ Object.keys(proto).forEach(key => properties.add(key));
3310
+ proto = Object.getPrototypeOf(proto);
3195
3311
  }
3196
- if (this.dataJson) {
3197
- this.parseJsonData(this.dataJson);
3312
+ // Filter and copy only non-function properties and exclude irrelevant ones
3313
+ properties.forEach(prop => {
3314
+ if (typeof element[prop] !== 'function' && // Ignore methods
3315
+ !prop.startsWith('on') && // Ignore event listeners (onclick, oninput, etc.)
3316
+ !dom_utils.excludedProps.has(prop) // 🚨 Prevent text duplication and irrelevant props
3317
+ ) {
3318
+ try {
3319
+ const propValue = element[prop];
3320
+ // ✅ Replace placeholders only if the value is a string
3321
+ if (typeof propValue === 'string' && propValue.includes('__')) {
3322
+ element[prop] = propValue.replace(/__([\w.]+)__/g, (_, key) => this.replaceKeyWithValue(key, cellValue)); // ✅ TypeScript safe
3323
+ }
3324
+ }
3325
+ catch (error) {
3326
+ console.warn(`Could not assign property ${prop}:`, error.message);
3327
+ }
3328
+ }
3329
+ });
3330
+ }
3331
+ //#endregion METHODS
3332
+ /****************************************************************************/
3333
+ //#region WATCHERS
3334
+ parseColumns(newValue, oldValue = []) {
3335
+ this.parseColumnsArray(newValue, oldValue);
3336
+ }
3337
+ parseJsonColumns(newValue, oldValue) {
3338
+ try {
3339
+ const newItems = newValue ? JSON.parse(newValue) : [];
3340
+ this.parseColumnsArray(newItems, oldValue);
3198
3341
  }
3199
- else if (this.data && this.data.length > 0) {
3200
- this.parseData(this.data, this.parsedData);
3342
+ catch (e) {
3343
+ console.error('Invalid JSON format for columnsJson:', e.message);
3344
+ this.parsedColumns = [];
3201
3345
  }
3202
3346
  }
3203
- componentDidLoad() {
3347
+ parseData(newValue, oldValue = []) {
3348
+ this.parseDataArray(newValue, oldValue);
3349
+ }
3350
+ parseJsonData(newValue) {
3351
+ try {
3352
+ const newItems = newValue ? JSON.parse(newValue) : [];
3353
+ this.parseDataArray(newItems, this.parsedData);
3354
+ }
3355
+ catch (e) {
3356
+ console.error('Invalid JSON format for dataJson:', e.message);
3357
+ this.parsedData = [];
3358
+ }
3359
+ }
3360
+ handleParsedChange() {
3204
3361
  this.initializeTable();
3205
3362
  }
3206
- //#endregion LIFECYCLE
3363
+ //#endregion WATCHERS
3364
+ /****************************************************************************/
3365
+ //#region LIFECYCLE
3366
+ componentWillLoad() {
3367
+ this.cacheTemplates();
3368
+ this.parseDataAndColumns();
3369
+ }
3370
+ //#endregion EVENTS
3207
3371
  /****************************************************************************/
3208
3372
  //#region RENDER
3209
3373
  render() {
3210
3374
  var _a, _b, _c;
3211
- const headerGroups = !this.table ||
3212
- this.table === undefined ||
3213
- (this.parsedColumns.length === 0 && !this.hasSlotHead)
3375
+ const headerGroups = !this.table || this.table === undefined || this.parsedColumns.length === 0
3214
3376
  ? []
3215
3377
  : (_a = this.table) === null || _a === void 0 ? void 0 : _a.getHeaderGroups();
3216
- const rows = !this.table ||
3217
- this.table === undefined ||
3218
- (this.parsedData.length === 0 && !this.hasSlotBody)
3378
+ const rows = !this.table || this.table === undefined || this.parsedData.length === 0
3219
3379
  ? []
3220
3380
  : (_c = (_b = this.table) === null || _b === void 0 ? void 0 : _b.getRowModel()) === null || _c === void 0 ? void 0 : _c.rows;
3221
- return (index.h(index.Host, { key: '41f852144ab2d361e162c866ff54975ecb49df93' }, index.h("div", { key: '64e60253351a03777d2b41dfdaabd2e70146d942', class: "hidden" }, index.h("slot", { key: '316d4131a7c2570676737524a7b718ce753e9996' }), index.h("slot", { key: '841d657c02cacd67593278d0c69f7d49c3ae165c', name: "head" }), index.h("slot", { key: '7ddb24bdbb5a0293e37470efce61ad7f5763ed40', name: "body" })), index.h("slot", { key: 'f18f18e56ab636965976e533fc5010e37517a3af', name: "before" }), this.parsedColumns.length === 0 &&
3222
- this.parsedData.length === 0 &&
3223
- !this.hasSlotHead &&
3224
- !this.hasSlotBody ? (index.h("p", null, this.noColumnsNoDataMessage)) : (index.h("table", null, this.parsedColumns.length > 0 && headerGroups.length > 0 && (index.h("thead", null, this.parsedColumns.length > 0 && headerGroups
3225
- ? headerGroups === null || headerGroups === void 0 ? void 0 : headerGroups.map(headerGroup => (index.h("tr", { key: headerGroup.id }, headerGroup.headers.map(header => (index.h("th", { key: header.id }, header.isPlaceholder
3226
- ? null
3227
- : header.column.columnDef.header))))))
3228
- : null)), index.h("tbody", null, !rows || rows.length === 0 ? (index.h("tr", null, index.h("td", { colSpan: this.parsedColumns.length || 12 }, this.noDataMessage))) : (rows.map(row => {
3381
+ return (index.h(index.Host, { key: '03dc8123cf740c6b5eeb59f10443a2ec1b279f28' }, index.h("div", { key: '263fef353246dba3adb0a44b4e80ff5a4c2e97eb', class: "hidden" }, index.h("slot", { key: '3d2f02044ad8e09fb010cb0486f63b48e1048acf' })), index.h("slot", { key: 'e5b458c755eb6887d1fdb959b8883f4d48c5b2f9', name: "before" }), this.parsedColumns.length === 0 && this.parsedData.length === 0 ? (index.h("div", { class: "no-data" }, this.noColumnsNoDataMessage)) : (index.h("table", null, this.parsedColumns.length > 0 && headerGroups.length > 0 && (index.h("thead", null, this.parsedColumns.length > 0 && headerGroups
3382
+ ? headerGroups === null || headerGroups === void 0 ? void 0 : headerGroups.map(headerGroup => (index.h("tr", { key: headerGroup.id }, headerGroup.headers.map(header => {
3383
+ return (index.h("th", { key: header.id }, header.isPlaceholder
3384
+ ? null
3385
+ : this.renderTemplate(this.headerTemplateCache.get(header.id), {}) || header.column.columnDef.header));
3386
+ }))))
3387
+ : null)), index.h("tbody", null, !rows || rows.length === 0 || this.parsedData.length === 0 ? (index.h("tr", null, index.h("td", { colSpan: this.parsedColumns.length || 12, class: "no-data" }, this.noDataMessage))) : (rows.map(row => {
3229
3388
  const rowId = row.id;
3230
3389
  const visibleCells = row === null || row === void 0 ? void 0 : row.getVisibleCells();
3231
- const cells = visibleCells === null || visibleCells === void 0 ? void 0 : visibleCells.map(cell => {
3390
+ return (index.h("tr", { key: rowId }, visibleCells.map(cell => {
3391
+ const cellAccessors = cell.column.id;
3232
3392
  const cellValue = cell.getValue();
3233
- return `<td key="${cell.id}" data-row-id="${rowId}">${cellValue}</td>`;
3234
- }).join('');
3235
- return index.h("tr", { key: rowId, innerHTML: cells });
3236
- }))))), index.h("slot", { key: 'a13b0a8d309124f5042659b22d99832e251e1e7b', name: "after" })));
3393
+ return (index.h("td", { key: cell.id, "data-row-id": rowId }, this.renderTemplate(this.templateCache.get(cellAccessors), cellValue, row) ||
3394
+ (cellValue !== null && cellValue !== void 0 ? cellValue : this.fallbackValue)));
3395
+ })));
3396
+ }))))), index.h("slot", { key: 'e80f9b8a5dbda4c05b719a99c173e2f106449668', name: "after" })));
3237
3397
  }
3238
3398
  get el() { return index.getElement(this); }
3239
3399
  static get watchers() { return {