@nova-design-system/nova-webcomponents 3.26.0 → 3.27.0

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 (320) hide show
  1. package/dist/cjs/{index-BQjqJTJB.js → index-Cfkoz1kc.js} +5 -1
  2. package/dist/cjs/loader.cjs.js +2 -2
  3. package/dist/cjs/native.cjs.js +2 -2
  4. package/dist/cjs/nv-accordion-item.cjs.entry.js +1 -1
  5. package/dist/cjs/nv-accordion.cjs.entry.js +1 -1
  6. package/dist/cjs/nv-alert.cjs.entry.js +1 -1
  7. package/dist/cjs/nv-avatar.cjs.entry.js +1 -1
  8. package/dist/cjs/nv-badge_2.cjs.entry.js +1 -1
  9. package/dist/cjs/nv-breadcrumb.cjs.entry.js +1 -1
  10. package/dist/cjs/nv-breadcrumbs.cjs.entry.js +1 -1
  11. package/dist/cjs/nv-button.cjs.entry.js +1 -1
  12. package/dist/cjs/nv-buttongroup.cjs.entry.js +1 -1
  13. package/dist/cjs/nv-calendar.cjs.entry.js +1 -1
  14. package/dist/cjs/nv-col.cjs.entry.js +1 -1
  15. package/dist/cjs/nv-datagrid.cjs.entry.js +1 -1
  16. package/dist/cjs/nv-datagridcolumn.cjs.entry.js +1 -1
  17. package/dist/cjs/nv-dialog.cjs.entry.js +16 -3
  18. package/dist/cjs/nv-dialogfooter_2.cjs.entry.js +1 -1
  19. package/dist/cjs/nv-drawer.cjs.entry.js +1 -1
  20. package/dist/cjs/nv-drawerfooter_2.cjs.entry.js +1 -1
  21. package/dist/cjs/nv-fieldcheckbox.cjs.entry.js +1 -1
  22. package/dist/cjs/nv-fielddate.cjs.entry.js +1 -1
  23. package/dist/cjs/nv-fielddaterange.cjs.entry.js +1 -1
  24. package/dist/cjs/nv-fielddropdown.cjs.entry.js +1 -1
  25. package/dist/cjs/nv-fielddropdownitem.cjs.entry.js +1 -1
  26. package/dist/cjs/nv-fieldmultiselect.cjs.entry.js +1 -1
  27. package/dist/cjs/nv-fieldnumber.cjs.entry.js +1 -1
  28. package/dist/cjs/nv-fieldpassword.cjs.entry.js +1 -1
  29. package/dist/cjs/nv-fieldradio.cjs.entry.js +1 -1
  30. package/dist/cjs/nv-fieldselect.cjs.entry.js +1 -1
  31. package/dist/cjs/nv-fieldslider.cjs.entry.js +1 -1
  32. package/dist/cjs/nv-fieldtext.cjs.entry.js +1 -1
  33. package/dist/cjs/nv-fieldtextarea.cjs.entry.js +1 -1
  34. package/dist/cjs/nv-fieldtime.cjs.entry.js +1 -1
  35. package/dist/cjs/nv-icon.cjs.entry.js +2 -2
  36. package/dist/cjs/nv-iconbutton_2.cjs.entry.js +1 -1
  37. package/dist/cjs/nv-menu.cjs.entry.js +1 -1
  38. package/dist/cjs/nv-menuitem.cjs.entry.js +1 -1
  39. package/dist/cjs/nv-notification-bullet.cjs.entry.js +1 -1
  40. package/dist/cjs/nv-notification.cjs.entry.js +1 -1
  41. package/dist/cjs/nv-notificationcontainer.cjs.entry.js +1 -1
  42. package/dist/cjs/nv-pagination-nav.cjs.entry.js +198 -0
  43. package/dist/cjs/nv-paginationtable.cjs.entry.js +2 -2
  44. package/dist/cjs/nv-popover.cjs.entry.js +2 -2
  45. package/dist/cjs/nv-row.cjs.entry.js +2 -2
  46. package/dist/cjs/nv-sidebar.cjs.entry.js +2 -2
  47. package/dist/cjs/nv-sidebarcontent.cjs.entry.js +2 -2
  48. package/dist/cjs/nv-sidebardivider.cjs.entry.js +2 -2
  49. package/dist/cjs/nv-sidebarfooter.cjs.entry.js +2 -2
  50. package/dist/cjs/nv-sidebargroup.cjs.entry.js +2 -2
  51. package/dist/cjs/nv-sidebarheader.cjs.entry.js +2 -2
  52. package/dist/cjs/nv-sidebarlogo.cjs.entry.js +2 -2
  53. package/dist/cjs/nv-sidebarnavitem.cjs.entry.js +12 -5
  54. package/dist/cjs/nv-sidebarnavsubitem.cjs.entry.js +2 -2
  55. package/dist/cjs/nv-split.cjs.entry.js +2 -2
  56. package/dist/cjs/nv-stack.cjs.entry.js +2 -2
  57. package/dist/cjs/nv-table.cjs.entry.js +2 -2
  58. package/dist/cjs/nv-tableheader.cjs.entry.js +2 -2
  59. package/dist/cjs/nv-toggle.cjs.entry.js +3 -3
  60. package/dist/cjs/nv-togglebutton.cjs.entry.js +2 -2
  61. package/dist/cjs/nv-togglebuttongroup.cjs.entry.js +2 -2
  62. package/dist/cjs/nv-tooltip.cjs.entry.js +2 -2
  63. package/dist/collection/collection-manifest.json +1 -0
  64. package/dist/collection/components/nv-dialog/nv-dialog.js +15 -2
  65. package/dist/collection/components/nv-pagination-nav/nv-pagination-nav.css +37 -0
  66. package/dist/collection/components/nv-pagination-nav/nv-pagination-nav.docs.js +278 -0
  67. package/dist/collection/components/nv-pagination-nav/nv-pagination-nav.js +359 -0
  68. package/dist/collection/components/nv-pagination-nav/nv-pagination-nav.utils.js +70 -0
  69. package/dist/collection/components/nv-pagination-nav/test/nv-pagination-nav.utils.test.js +66 -0
  70. package/dist/collection/components/nv-paginationtable/nv-paginationtable.js +1 -1
  71. package/dist/collection/components/nv-popover/nv-popover.js +1 -1
  72. package/dist/collection/components/nv-row/nv-row.js +1 -1
  73. package/dist/collection/components/nv-sidebar/nv-sidebar.js +1 -1
  74. package/dist/collection/components/nv-sidebarcontent/nv-sidebarcontent.js +1 -1
  75. package/dist/collection/components/nv-sidebardivider/nv-sidebardivider.js +1 -1
  76. package/dist/collection/components/nv-sidebarfooter/nv-sidebarfooter.js +1 -1
  77. package/dist/collection/components/nv-sidebargroup/nv-sidebargroup.js +1 -1
  78. package/dist/collection/components/nv-sidebarheader/nv-sidebarheader.js +1 -1
  79. package/dist/collection/components/nv-sidebarlogo/nv-sidebarlogo.js +3 -1
  80. package/dist/collection/components/nv-sidebarnavitem/nv-sidebarnavitem.js +11 -4
  81. package/dist/collection/components/nv-sidebarnavsubitem/nv-sidebarnavsubitem.js +1 -1
  82. package/dist/collection/components/nv-split/nv-split.js +1 -1
  83. package/dist/collection/components/nv-stack/nv-stack.js +1 -1
  84. package/dist/collection/components/nv-table/nv-table.js +1 -1
  85. package/dist/collection/components/nv-tableheader/nv-tableheader.js +1 -1
  86. package/dist/collection/components/nv-toggle/nv-toggle.js +2 -2
  87. package/dist/collection/components/nv-togglebutton/nv-togglebutton.js +1 -1
  88. package/dist/collection/components/nv-togglebuttongroup/nv-togglebuttongroup.js +1 -1
  89. package/dist/collection/components/nv-tooltip/nv-tooltip.js +1 -1
  90. package/dist/components/index.js +1 -1
  91. package/dist/components/nv-accordion-item.js +1 -1
  92. package/dist/components/nv-accordion.js +1 -1
  93. package/dist/components/nv-alert.js +1 -1
  94. package/dist/components/nv-avatar.js +1 -1
  95. package/dist/components/nv-badge.js +1 -1
  96. package/dist/components/nv-breadcrumb.js +1 -1
  97. package/dist/components/nv-breadcrumbs.js +1 -1
  98. package/dist/components/nv-button.js +1 -1
  99. package/dist/components/nv-buttongroup.js +1 -1
  100. package/dist/components/nv-calendar.js +1 -1
  101. package/dist/components/nv-col.js +1 -1
  102. package/dist/components/nv-datagrid.js +1 -1
  103. package/dist/components/nv-datagridcolumn.js +1 -1
  104. package/dist/components/nv-dialog.js +1 -1
  105. package/dist/components/nv-dialogfooter.js +1 -1
  106. package/dist/components/nv-dialogheader.js +1 -1
  107. package/dist/components/nv-drawer.js +1 -1
  108. package/dist/components/nv-drawerfooter.js +1 -1
  109. package/dist/components/nv-drawerheader.js +1 -1
  110. package/dist/components/nv-fieldcheckbox.js +1 -1
  111. package/dist/components/nv-fielddate.js +1 -1
  112. package/dist/components/nv-fielddaterange.js +1 -1
  113. package/dist/components/nv-fielddropdown.js +1 -1
  114. package/dist/components/nv-fielddropdownitem.js +1 -1
  115. package/dist/components/nv-fielddropdownitemcheck.js +1 -1
  116. package/dist/components/nv-fieldmultiselect.js +1 -1
  117. package/dist/components/nv-fieldnumber.js +1 -1
  118. package/dist/components/nv-fieldpassword.js +1 -1
  119. package/dist/components/nv-fieldradio.js +1 -1
  120. package/dist/components/nv-fieldselect.js +1 -1
  121. package/dist/components/nv-fieldslider.js +1 -1
  122. package/dist/components/nv-fieldtext.js +1 -1
  123. package/dist/components/nv-fieldtextarea.js +1 -1
  124. package/dist/components/nv-fieldtime.js +1 -1
  125. package/dist/components/nv-icon.js +1 -1
  126. package/dist/components/nv-iconbutton.js +1 -1
  127. package/dist/components/nv-loader.js +1 -1
  128. package/dist/components/nv-menu.js +1 -1
  129. package/dist/components/nv-menuitem.js +1 -1
  130. package/dist/components/nv-notification-bullet.js +1 -1
  131. package/dist/components/nv-notification.js +1 -1
  132. package/dist/components/nv-notificationcontainer.js +1 -1
  133. package/dist/components/nv-pagination-nav.d.ts +11 -0
  134. package/dist/components/nv-pagination-nav.js +1 -0
  135. package/dist/components/nv-paginationtable.js +1 -1
  136. package/dist/components/nv-popover.js +1 -1
  137. package/dist/components/nv-row.js +1 -1
  138. package/dist/components/nv-sidebar.js +1 -1
  139. package/dist/components/nv-sidebarcontent.js +1 -1
  140. package/dist/components/nv-sidebardivider.js +1 -1
  141. package/dist/components/nv-sidebarfooter.js +1 -1
  142. package/dist/components/nv-sidebargroup.js +1 -1
  143. package/dist/components/nv-sidebarheader.js +1 -1
  144. package/dist/components/nv-sidebarlogo.js +1 -1
  145. package/dist/components/nv-sidebarnavitem.js +1 -1
  146. package/dist/components/nv-sidebarnavsubitem.js +1 -1
  147. package/dist/components/nv-split.js +1 -1
  148. package/dist/components/nv-stack.js +1 -1
  149. package/dist/components/nv-table.js +1 -1
  150. package/dist/components/nv-tableheader.js +1 -1
  151. package/dist/components/nv-toggle.js +1 -1
  152. package/dist/components/nv-togglebutton.js +1 -1
  153. package/dist/components/nv-togglebuttongroup.js +1 -1
  154. package/dist/components/nv-tooltip.js +1 -1
  155. package/dist/components/{p-iXsbKJzR.js → p-6nAIGZFL.js} +1 -1
  156. package/dist/components/{p-DhDxhFz-.js → p-BBy1Mdgv.js} +1 -1
  157. package/dist/components/{p-BAlaMmS4.js → p-BMpkyzCW.js} +1 -1
  158. package/dist/components/{p-DqU-wS_x.js → p-Ba1zVklG.js} +1 -1
  159. package/dist/components/{p-nmQOuX7R.js → p-BvxuoODv.js} +1 -1
  160. package/dist/components/{p-yHGZRC6Q.js → p-BwYt1BAb.js} +1 -1
  161. package/dist/components/{p-CEI7jWvn.js → p-CAGzfU3O.js} +1 -1
  162. package/dist/components/{p-jZF_Ggmx.js → p-CV12ukSl.js} +1 -1
  163. package/dist/components/{p-D15RdWEG.js → p-CZkFkVd8.js} +1 -1
  164. package/dist/components/{p-FSPz8FER.js → p-CcmfuwSa.js} +1 -1
  165. package/dist/components/{p-BPufjY85.js → p-CqJqzGJS.js} +1 -1
  166. package/dist/components/{p-RUeDcouW.js → p-D-MnI-R8.js} +1 -1
  167. package/dist/components/{p-Bh6WGsHA.js → p-D0bGRzSN.js} +1 -1
  168. package/dist/components/{p-laRga5dw.js → p-DC_2597n.js} +1 -1
  169. package/dist/components/{p-DDqZBSGn.js → p-Db4JZxyy.js} +1 -1
  170. package/dist/components/{p-BfaMgLx7.js → p-DlOgBZa8.js} +2 -2
  171. package/dist/components/{p-DHNSuxz-.js → p-DrgqO3gF.js} +1 -1
  172. package/dist/components/{p-C9p4yTS2.js → p-Ho_7-x5W.js} +1 -1
  173. package/dist/components/{p-C2J7j_fw.js → p-IzPWk8zx.js} +1 -1
  174. package/dist/components/{p-B5KLppep.js → p-S18SgvAW.js} +1 -1
  175. package/dist/components/{p-CAKTe96z.js → p-T-bBxAoT.js} +1 -1
  176. package/dist/components/{p-CZcMM7Lh.js → p-kMTGXpRx.js} +1 -1
  177. package/dist/components/{p-Ce1IBFTa.js → p-uAXqRBhx.js} +1 -1
  178. package/dist/esm/{index-S-IZ4AN_.js → index-BCjiE1MF.js} +5 -1
  179. package/dist/esm/loader.js +3 -3
  180. package/dist/esm/native.js +3 -3
  181. package/dist/esm/nv-accordion-item.entry.js +1 -1
  182. package/dist/esm/nv-accordion.entry.js +1 -1
  183. package/dist/esm/nv-alert.entry.js +1 -1
  184. package/dist/esm/nv-avatar.entry.js +1 -1
  185. package/dist/esm/nv-badge_2.entry.js +1 -1
  186. package/dist/esm/nv-breadcrumb.entry.js +1 -1
  187. package/dist/esm/nv-breadcrumbs.entry.js +1 -1
  188. package/dist/esm/nv-button.entry.js +1 -1
  189. package/dist/esm/nv-buttongroup.entry.js +1 -1
  190. package/dist/esm/nv-calendar.entry.js +1 -1
  191. package/dist/esm/nv-col.entry.js +1 -1
  192. package/dist/esm/nv-datagrid.entry.js +1 -1
  193. package/dist/esm/nv-datagridcolumn.entry.js +1 -1
  194. package/dist/esm/nv-dialog.entry.js +16 -3
  195. package/dist/esm/nv-dialogfooter_2.entry.js +1 -1
  196. package/dist/esm/nv-drawer.entry.js +1 -1
  197. package/dist/esm/nv-drawerfooter_2.entry.js +1 -1
  198. package/dist/esm/nv-fieldcheckbox.entry.js +1 -1
  199. package/dist/esm/nv-fielddate.entry.js +1 -1
  200. package/dist/esm/nv-fielddaterange.entry.js +1 -1
  201. package/dist/esm/nv-fielddropdown.entry.js +1 -1
  202. package/dist/esm/nv-fielddropdownitem.entry.js +1 -1
  203. package/dist/esm/nv-fieldmultiselect.entry.js +1 -1
  204. package/dist/esm/nv-fieldnumber.entry.js +1 -1
  205. package/dist/esm/nv-fieldpassword.entry.js +1 -1
  206. package/dist/esm/nv-fieldradio.entry.js +1 -1
  207. package/dist/esm/nv-fieldselect.entry.js +1 -1
  208. package/dist/esm/nv-fieldslider.entry.js +1 -1
  209. package/dist/esm/nv-fieldtext.entry.js +1 -1
  210. package/dist/esm/nv-fieldtextarea.entry.js +1 -1
  211. package/dist/esm/nv-fieldtime.entry.js +1 -1
  212. package/dist/esm/nv-icon.entry.js +2 -2
  213. package/dist/esm/nv-iconbutton_2.entry.js +1 -1
  214. package/dist/esm/nv-menu.entry.js +1 -1
  215. package/dist/esm/nv-menuitem.entry.js +1 -1
  216. package/dist/esm/nv-notification-bullet.entry.js +1 -1
  217. package/dist/esm/nv-notification.entry.js +1 -1
  218. package/dist/esm/nv-notificationcontainer.entry.js +1 -1
  219. package/dist/esm/nv-pagination-nav.entry.js +196 -0
  220. package/dist/esm/nv-paginationtable.entry.js +2 -2
  221. package/dist/esm/nv-popover.entry.js +2 -2
  222. package/dist/esm/nv-row.entry.js +2 -2
  223. package/dist/esm/nv-sidebar.entry.js +2 -2
  224. package/dist/esm/nv-sidebarcontent.entry.js +2 -2
  225. package/dist/esm/nv-sidebardivider.entry.js +2 -2
  226. package/dist/esm/nv-sidebarfooter.entry.js +2 -2
  227. package/dist/esm/nv-sidebargroup.entry.js +2 -2
  228. package/dist/esm/nv-sidebarheader.entry.js +2 -2
  229. package/dist/esm/nv-sidebarlogo.entry.js +2 -2
  230. package/dist/esm/nv-sidebarnavitem.entry.js +12 -5
  231. package/dist/esm/nv-sidebarnavsubitem.entry.js +2 -2
  232. package/dist/esm/nv-split.entry.js +2 -2
  233. package/dist/esm/nv-stack.entry.js +2 -2
  234. package/dist/esm/nv-table.entry.js +2 -2
  235. package/dist/esm/nv-tableheader.entry.js +2 -2
  236. package/dist/esm/nv-toggle.entry.js +3 -3
  237. package/dist/esm/nv-togglebutton.entry.js +2 -2
  238. package/dist/esm/nv-togglebuttongroup.entry.js +2 -2
  239. package/dist/esm/nv-tooltip.entry.js +2 -2
  240. package/dist/native/native.css +1 -1
  241. package/dist/native/native.esm.js +1 -1
  242. package/dist/native/{p-7c413f8b.entry.js → p-03cc1f2c.entry.js} +1 -1
  243. package/dist/native/{p-1bf1a213.entry.js → p-0fe84123.entry.js} +1 -1
  244. package/dist/native/{p-bdaab534.entry.js → p-148c1d3e.entry.js} +1 -1
  245. package/dist/native/{p-fba55e2f.entry.js → p-157c5ac8.entry.js} +1 -1
  246. package/dist/native/{p-1a5db5e9.entry.js → p-18bdc07a.entry.js} +1 -1
  247. package/dist/native/{p-945ca1db.entry.js → p-1aea6fe0.entry.js} +1 -1
  248. package/dist/native/{p-79d8c26b.entry.js → p-1c97c353.entry.js} +1 -1
  249. package/dist/native/p-1e0ca4df.entry.js +1 -0
  250. package/dist/native/{p-3a04a563.entry.js → p-1f8cc03a.entry.js} +1 -1
  251. package/dist/native/p-23f0ca96.entry.js +1 -0
  252. package/dist/native/{p-bd143e7b.entry.js → p-24ce0c8d.entry.js} +1 -1
  253. package/dist/native/{p-7a8e2ef3.entry.js → p-24f69387.entry.js} +1 -1
  254. package/dist/native/{p-d46ea49a.entry.js → p-25ef7329.entry.js} +1 -1
  255. package/dist/native/{p-3fb1a188.entry.js → p-31ba86b3.entry.js} +1 -1
  256. package/dist/native/{p-c3ea1eca.entry.js → p-34e19b6e.entry.js} +1 -1
  257. package/dist/native/{p-0e8b544b.entry.js → p-39366f18.entry.js} +1 -1
  258. package/dist/native/{p-bef3d325.entry.js → p-3a35cf46.entry.js} +1 -1
  259. package/dist/native/{p-31301f1e.entry.js → p-46267895.entry.js} +1 -1
  260. package/dist/native/{p-043d500e.entry.js → p-539c04ad.entry.js} +1 -1
  261. package/dist/native/{p-e937d495.entry.js → p-56593bf0.entry.js} +1 -1
  262. package/dist/native/{p-70abbe4f.entry.js → p-591f3dcc.entry.js} +1 -1
  263. package/dist/native/p-597cac0f.entry.js +1 -0
  264. package/dist/native/{p-dc0d1690.entry.js → p-5a7e46ad.entry.js} +1 -1
  265. package/dist/native/{p-e1021e2c.entry.js → p-5c003e50.entry.js} +1 -1
  266. package/dist/native/{p-1dd3da3b.entry.js → p-5ce3d30b.entry.js} +1 -1
  267. package/dist/native/p-5f42a7f1.entry.js +1 -0
  268. package/dist/native/{p-a9a20f37.entry.js → p-6742f88f.entry.js} +1 -1
  269. package/dist/native/{p-5cbf5973.entry.js → p-67e0680e.entry.js} +1 -1
  270. package/dist/native/{p-6a9363a6.entry.js → p-6f3c3e2a.entry.js} +1 -1
  271. package/dist/native/{p-17f2525a.entry.js → p-7aac0b1a.entry.js} +1 -1
  272. package/dist/native/{p-f22d2ad9.entry.js → p-7d49e88d.entry.js} +1 -1
  273. package/dist/native/{p-06a17aba.entry.js → p-7ec28d5d.entry.js} +1 -1
  274. package/dist/native/{p-89f7d483.entry.js → p-855f7be1.entry.js} +1 -1
  275. package/dist/native/{p-04956305.entry.js → p-87758615.entry.js} +1 -1
  276. package/dist/native/{p-11eb959b.entry.js → p-8a0dc37b.entry.js} +1 -1
  277. package/dist/native/{p-6b655545.entry.js → p-8f76e030.entry.js} +1 -1
  278. package/dist/native/{p-b0d97496.entry.js → p-90b8b889.entry.js} +1 -1
  279. package/dist/native/{p-a8bc3b92.entry.js → p-927b655d.entry.js} +1 -1
  280. package/dist/native/{p-a9a07a8d.entry.js → p-9709c7d5.entry.js} +1 -1
  281. package/dist/native/{p-97a5f8d5.entry.js → p-99726dd4.entry.js} +1 -1
  282. package/dist/native/{p-0ec34d19.entry.js → p-9fda1976.entry.js} +1 -1
  283. package/dist/native/{p-S-IZ4AN_.js → p-BCjiE1MF.js} +1 -1
  284. package/dist/native/{p-aa232a20.entry.js → p-a16f8a14.entry.js} +1 -1
  285. package/dist/native/{p-bdbc92d9.entry.js → p-a6b3256b.entry.js} +1 -1
  286. package/dist/native/{p-702a6646.entry.js → p-b3964a1c.entry.js} +1 -1
  287. package/dist/native/{p-85c8be32.entry.js → p-bb43a3b4.entry.js} +1 -1
  288. package/dist/native/{p-e05b6008.entry.js → p-c0b05d6f.entry.js} +1 -1
  289. package/dist/native/p-c214e4af.entry.js +1 -0
  290. package/dist/native/{p-8dadc0c9.entry.js → p-c29dc907.entry.js} +1 -1
  291. package/dist/native/{p-48e7b457.entry.js → p-d12a2841.entry.js} +1 -1
  292. package/dist/native/p-d46bd21a.entry.js +1 -0
  293. package/dist/native/p-d6e2e120.entry.js +1 -0
  294. package/dist/native/p-ddedc9c1.entry.js +1 -0
  295. package/dist/native/{p-8ce17efd.entry.js → p-eb8ba7a2.entry.js} +1 -1
  296. package/dist/native/{p-0819a7b1.entry.js → p-ebff7ddb.entry.js} +1 -1
  297. package/dist/native/p-ecce3e66.entry.js +1 -0
  298. package/dist/native/{p-64104dbd.entry.js → p-f9612edf.entry.js} +1 -1
  299. package/dist/native/{p-a92e2ad8.entry.js → p-f9e4daf7.entry.js} +1 -1
  300. package/dist/native/{p-2106dfbd.entry.js → p-fb34fc7d.entry.js} +1 -1
  301. package/dist/native/{p-98ea927d.entry.js → p-fd5e27ae.entry.js} +1 -1
  302. package/dist/types/components/nv-dialog/nv-dialog.d.ts +9 -0
  303. package/dist/types/components/nv-pagination-nav/nv-pagination-nav.d.ts +82 -0
  304. package/dist/types/components/nv-pagination-nav/nv-pagination-nav.docs.d.ts +4 -0
  305. package/dist/types/components/nv-pagination-nav/nv-pagination-nav.utils.d.ts +26 -0
  306. package/dist/types/components/nv-pagination-nav/test/nv-pagination-nav.utils.test.d.ts +1 -0
  307. package/dist/types/components/nv-sidebarlogo/nv-sidebarlogo.d.ts +2 -0
  308. package/dist/types/components.d.ts +149 -0
  309. package/dist/vscode-data.json +49 -0
  310. package/hydrate/index.js +268 -29
  311. package/hydrate/index.mjs +268 -29
  312. package/package.json +5 -1
  313. package/dist/native/p-0bfd188c.entry.js +0 -1
  314. package/dist/native/p-87a1b06c.entry.js +0 -1
  315. package/dist/native/p-ae4fc02a.entry.js +0 -1
  316. package/dist/native/p-c825c542.entry.js +0 -1
  317. package/dist/native/p-ce2c17dc.entry.js +0 -1
  318. package/dist/native/p-f2a32774.entry.js +0 -1
  319. package/dist/native/p-f5eff2b2.entry.js +0 -1
  320. package/dist/native/p-f64f1bea.entry.js +0 -1
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-BQjqJTJB.js');
3
+ var index = require('./index-Cfkoz1kc.js');
4
4
 
5
5
  /**
6
6
  * Table utility functions and constants for nv-table component
@@ -233,7 +233,7 @@ const NvTable = class {
233
233
  /****************************************************************************/
234
234
  //#region RENDER
235
235
  render() {
236
- return (index.h(index.Host, { key: '0d5518a54b41c67bdd7c73d5147fd954fb53d388' }, index.h("slot", { key: '8ab65d5dd1ce751fd357b275b84db042b1d9ce2e' })));
236
+ return (index.h(index.Host, { key: '43a288ca58eb82de6308dd98ac30abb3fc971f1e' }, index.h("slot", { key: '3a0b986f015777d2ca95b8ce7aebab7133b5d054' })));
237
237
  }
238
238
  get host() { return index.getElement(this); }
239
239
  };
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-BQjqJTJB.js');
3
+ var index = require('./index-Cfkoz1kc.js');
4
4
 
5
5
  const nvTableheaderCss = () => `nv-tableheader{display:inline-flex;width:100%;align-items:center;gap:var(--spacing-2)}nv-tableheader:focus-visible:focus,nv-tableheader:focus-visible:focus-within{outline:none}nv-tableheader:focus-visible:focus-visible,nv-tableheader:focus-visible:has(:focus-visible){outline:calc(var(--focus-outline-stroke) * 1) solid var(--color-focus-brand);outline-offset:calc(var(--focus-outline-offset) * 1)}nv-tableheader:focus-visible{border-radius:var(--radius-rounded-sm)}nv-tableheader nv-iconbutton{transition:transform 120ms ease, opacity 120ms ease}nv-tableheader nv-iconbutton svg{transition:transform 240ms ease}nv-tableheader nv-iconbutton.is-none{opacity:0.5}nv-tableheader nv-iconbutton.is-desc svg{transform:rotate(180deg)}`;
6
6
 
@@ -59,7 +59,7 @@ const NvTableheader = class {
59
59
  /****************************************************************************/
60
60
  //#region RENDER
61
61
  render() {
62
- return (index.h(index.Host, { key: '95447cd8ccde74d09226bcdbf645eed309be0fa8', role: "columnheader", "aria-sort": this.ariaSort, tabindex: this.sortable ? 0 : undefined, onKeyDown: this.handleKeyDown.bind(this), onClick: this.cycleSortDirection.bind(this) }, index.h("slot", { key: '4e26aa21f080cf23ce42fb72d6777463bd079991' }), this.sortable && (index.h("span", { key: '666254c197e97226d2f1c6830d1216b9457c4acc', class: "sort-icon-wrap", "aria-hidden": "true" }, index.h("nv-iconbutton", { key: '11b2de5c4c270740857094ec8a39f1d392d7246a', disableTabindex: true, name: "arrow-up", size: "xs", emphasis: this.sortDirection === 'none' ? 'lower' : 'low',
62
+ return (index.h(index.Host, { key: '809cf43ff3c9d3977a60a30e350fe6f4457c39f4', role: "columnheader", "aria-sort": this.ariaSort, tabindex: this.sortable ? 0 : undefined, onKeyDown: this.handleKeyDown.bind(this), onClick: this.cycleSortDirection.bind(this) }, index.h("slot", { key: 'ba569a25aa09bb3b18d39e463474698efe6cff40' }), this.sortable && (index.h("span", { key: '77a948313d5dfc746c142eaf448df609ae0bf2b3', class: "sort-icon-wrap", "aria-hidden": "true" }, index.h("nv-iconbutton", { key: 'f18fa1d05c5d4eac8c057a7f350c270eaacc7055', disableTabindex: true, name: "arrow-up", size: "xs", emphasis: this.sortDirection === 'none' ? 'lower' : 'low',
63
63
  // prevent mousedown from selecting text
64
64
  onMouseDown: (e) => e.preventDefault(), class: {
65
65
  'is-none': this.sortDirection === 'none',
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-BQjqJTJB.js');
3
+ var index = require('./index-Cfkoz1kc.js');
4
4
  var clsx = require('./clsx-BtxeOLZW.js');
5
5
  var v4 = require('./v4-C1vaJ4yP.js');
6
6
 
@@ -63,8 +63,8 @@ const NvToggle = class {
63
63
  /****************************************************************************/
64
64
  //#region RENDER
65
65
  render() {
66
- return (index.h(index.Host, { key: '38dd2a460c82599e2c2bfd6b039eafff0dc6fc67', class: clsx.clsx(this.labelPlacement === 'before' && 'label-placement-before') }, index.h("div", { key: '4d6bf742f548cc5f92ae84497f12569d9680dcef', class: "input-container" }, index.h("input", { key: '97f54363c17cde48ec226680ee58da012e590b69', type: "checkbox", id: this.inputId, name: this.name, autocomplete: "off", value: this.value, checked: Boolean(this.checked), disabled: this.disabled || this.readonly, readonly: this.readonly })), index.h("div", { key: 'e4576a0884f02731a3e6d2d20537cfabf411a8fe', class: "text-container" }, (this.label || this.el.querySelector('[slot="label"]')) && (index.h("label", { key: '4744036b0d1e73f350bbc4b6f6e7664bb9361d1e', htmlFor: this.inputId, class: clsx.clsx(this.hideLabel && 'visually-hidden') }, index.h("slot", { key: '44a2aeb86c840246473bc47e0ba01269af77ef06', name: "label" }, this.label))), (this.description ||
67
- this.el.querySelector('[slot="description"]')) && (index.h("div", { key: '6e5c3d1721c9db3cffd019c9274294c40793daf0', class: "description" }, index.h("slot", { key: '87c3d35c78ded085cd1ddb5b2874dfae7bd99842', name: "description" }, this.description))))));
66
+ return (index.h(index.Host, { key: '626c2acc6992a641c5fd94509fd0ef171fd6d1c6', class: clsx.clsx(this.labelPlacement === 'before' && 'label-placement-before') }, index.h("div", { key: 'a9e4b73d740032520f6094bcada1f835b4bac16c', class: "input-container" }, index.h("input", { key: '1856dfa88421fecee06bdf098dcad22e69f34c00', type: "checkbox", id: this.inputId, name: this.name, autocomplete: "off", value: this.value, checked: Boolean(this.checked), disabled: this.disabled || this.readonly, readonly: this.readonly })), index.h("div", { key: '4c46bc519d38a66fdecf75cb15caf6d577d92856', class: "text-container" }, (this.label || this.el.querySelector('[slot="label"]')) && (index.h("label", { key: 'fd61979a72a2b4e3254987beafd4b024fe1c6bae', htmlFor: this.inputId, class: clsx.clsx(this.hideLabel && 'visually-hidden') }, index.h("slot", { key: '0e32e3e03ffda0633f881f41d2372a3d92d82f10', name: "label" }, this.label))), (this.description ||
67
+ this.el.querySelector('[slot="description"]')) && (index.h("div", { key: '688d4160a48d85fa5049556de27f0a26f10ec549', class: "description" }, index.h("slot", { key: '006a61b40a49426bc7c70f1fe830aeb38ecdbf3b', name: "description" }, this.description))))));
68
68
  }
69
69
  static get formAssociated() { return true; }
70
70
  get el() { return index.getElement(this); }
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-BQjqJTJB.js');
3
+ var index = require('./index-Cfkoz1kc.js');
4
4
 
5
5
  const nvTogglebuttonCss = () => `nv-togglebutton{display:inline-flex;justify-content:center;align-items:center}nv-togglebutton:focus-visible,nv-togglebutton:has(:focus-visible){z-index:1}nv-togglebutton[size=xs]{padding:var(--button-xs-padding-y) var(--button-xs-padding-x);gap:var(--button-xs-gap);border-radius:var(--button-xs-border-radius);line-height:var(--button-xs-line-height);height:var(--button-xs-height);font-size:var(--button-xs-font-size)}nv-togglebutton[size=xs] nv-icon>svg{width:var(--spacing-3);height:var(--spacing-3);stroke-width:1.2px}nv-togglebutton[size=xs]{padding-top:calc(var(--togglegroup-xs-button-padding-y) - var(--togglegroup-stroke));padding-bottom:calc(var(--togglegroup-xs-button-padding-y) - var(--togglegroup-stroke));border-radius:var(--togglegroup-xs-button-radius);height:calc((var(--togglegroup-xs-height)) - var(--togglegroup-inner-space));border-width:0}nv-togglebutton[size=sm]{padding:var(--button-sm-padding-y) var(--button-sm-padding-x);gap:var(--button-sm-gap);border-radius:var(--button-sm-border-radius);line-height:var(--button-sm-line-height);height:var(--button-sm-height);font-size:var(--button-sm-font-size)}nv-togglebutton[size=sm] nv-icon>svg{width:var(--spacing-4);height:var(--spacing-4);stroke-width:1.5px}nv-togglebutton[size=sm]{padding-top:calc(var(--togglegroup-sm-button-padding-y) - var(--togglegroup-stroke));padding-bottom:calc(var(--togglegroup-sm-button-padding-y) - var(--togglegroup-stroke));border-radius:calc(var(--togglegroup-sm-button-radius) + 1px);height:calc((var(--togglegroup-sm-height)) - var(--togglegroup-inner-space));border-width:0}nv-togglebutton[size=md]{padding:var(--button-md-padding-y) var(--button-md-padding-x);gap:var(--button-md-gap);border-radius:var(--button-md-border-radius);line-height:var(--button-md-line-height);height:var(--button-md-height);font-size:var(--button-md-font-size)}nv-togglebutton[size=md] nv-icon>svg{width:var(--spacing-5);height:var(--spacing-5);stroke-width:1.6px}nv-togglebutton[size=md]{padding-top:calc(var(--togglegroup-md-button-padding-y) - var(--togglegroup-stroke));padding-bottom:calc(var(--togglegroup-md-button-padding-y) - var(--togglegroup-stroke));border-radius:calc(var(--togglegroup-md-button-radius) + 1px);height:calc((var(--togglegroup-md-height)) - var(--togglegroup-inner-space));border-width:0}nv-togglebutton[size=lg]{padding:var(--button-lg-padding-y) var(--button-lg-padding-x);gap:var(--button-lg-gap);border-radius:var(--button-lg-border-radius);line-height:var(--button-lg-line-height);height:var(--button-lg-height);font-size:var(--button-lg-font-size)}nv-togglebutton[size=lg] nv-icon>svg{width:var(--spacing-6);height:var(--spacing-6);stroke-width:1.8px}nv-togglebutton[size=lg]{padding-top:calc(var(--togglegroup-lg-button-padding-y) - var(--togglegroup-stroke));padding-bottom:calc(var(--togglegroup-lg-button-padding-y) - var(--togglegroup-stroke));border-radius:calc(var(--togglegroup-lg-button-radius) + 1px);height:calc((var(--togglegroup-lg-height)) - var(--togglegroup-inner-space));border-width:0}nv-togglebutton[emphasis=high]{background:var(--components-button-low-background);border:1px solid var(--components-button-low-border);color:var(--components-button-low-text)}nv-togglebutton[emphasis=high]:hover{background:var(--components-button-low-background-hover);border:1px solid var(--components-button-low-border);color:var(--components-button-low-text-hover)}nv-togglebutton[emphasis=high]:active{background:var(--components-button-low-background-active);border:1px solid var(--components-button-low-border-active);color:var(--components-button-low-text-active)}nv-togglebutton[emphasis=high]:focus,nv-togglebutton[emphasis=high]:focus-within{outline:none}nv-togglebutton[emphasis=high]:focus-visible,nv-togglebutton[emphasis=high]:has(:focus-visible){outline:calc(var(--focus-outline-stroke) * 1) solid var(--color-focus-brand);outline-offset:calc(var(--focus-outline-offset) * 1)}nv-togglebutton[emphasis=high]:disabled:not([disabled=false]){opacity:0.5;cursor:not-allowed;box-shadow:none}nv-togglebutton[emphasis=high][active]:not([active=false]){background:var(--components-button-low-background-active);border:1px solid var(--components-button-low-border-active);color:var(--components-button-low-text-active)}nv-togglebutton[emphasis=low]{background:var(--components-button-lower-background);border:1px solid var(--components-button-lower-border);color:var(--components-button-lower-text)}nv-togglebutton[emphasis=low]:hover{background:var(--components-button-lower-background-hover);border:1px solid var(--components-button-lower-border);color:var(--components-button-lower-text-hover)}nv-togglebutton[emphasis=low]:active{background:var(--components-button-lower-background-active);border:1px solid var(--components-button-lower-border-active);color:var(--components-button-lower-text-active)}nv-togglebutton[emphasis=low]:focus,nv-togglebutton[emphasis=low]:focus-within{outline:none}nv-togglebutton[emphasis=low]:focus-visible,nv-togglebutton[emphasis=low]:has(:focus-visible){outline:calc(var(--focus-outline-stroke) * 1) solid var(--color-focus-brand);outline-offset:calc(var(--focus-outline-offset) * 1)}nv-togglebutton[emphasis=low]:disabled:not([disabled=false]){opacity:0.5;cursor:not-allowed;box-shadow:none}nv-togglebutton[emphasis=low][active]:not([active=false]),nv-togglebutton[emphasis=low]:active{background:var(--components-button-lower-background-hover);border:1px solid var(--components-button-lower-border);color:var(--components-button-lower-text-hover)}`;
6
6
 
@@ -54,7 +54,7 @@ const NvTogglebutton = class {
54
54
  /****************************************************************************/
55
55
  //#region RENDER
56
56
  render() {
57
- return (index.h(index.Host, { key: '4af1293d9eb69a3a20d8f30c6b2876c6c29ddc03', role: "button", tabindex: "0", "aria-pressed": String(this.active), onClick: this.handleClick }, index.h("slot", { key: '783fad27c525553cd404c1ffed0ae1305d330de8' })));
57
+ return (index.h(index.Host, { key: 'd619862ae9db76a7ce34b05c4974d40e731a576e', role: "button", tabindex: "0", "aria-pressed": String(this.active), onClick: this.handleClick }, index.h("slot", { key: '5bb9a32e26c3c404a9d2bab2bf7d573a501296a5' })));
58
58
  }
59
59
  get el() { return index.getElement(this); }
60
60
  };
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-BQjqJTJB.js');
3
+ var index = require('./index-Cfkoz1kc.js');
4
4
 
5
5
  const nvTogglebuttongroupCss = () => `nv-togglebuttongroup{display:flex;gap:var(--togglegroup-lg-gap);border-radius:var(--togglegroup-lg-radius);width:fit-content;padding:var(--togglegroup-lg-gap)}nv-togglebuttongroup[emphasis=high]{border:1px solid var(--components-togglegroup-high-border)}nv-togglebuttongroup[emphasis=low]{border:1px solid var(--components-togglegroup-low-border)}nv-togglebuttongroup[size=xs]{padding:calc(var(--togglegroup-xs-padding) - 1px);gap:var(--togglegroup-xs-gap);border-radius:var(--togglegroup-xs-radius);height:var(--togglegroup-xs-height)}nv-togglebuttongroup[size=sm]{padding:calc(var(--togglegroup-sm-padding) - 1px);gap:var(--togglegroup-sm-gap);border-radius:var(--togglegroup-sm-radius);height:var(--togglegroup-sm-height)}nv-togglebuttongroup[size=md]{padding:calc(var(--togglegroup-md-padding) - 1px);gap:var(--togglegroup-md-gap);border-radius:var(--togglegroup-md-radius);height:var(--togglegroup-md-height)}nv-togglebuttongroup[size=lg]{padding:calc(var(--togglegroup-lg-padding) - 1px);gap:var(--togglegroup-lg-gap);border-radius:var(--togglegroup-lg-radius);height:var(--togglegroup-lg-height)}`;
6
6
 
@@ -153,7 +153,7 @@ const NvTogglebuttongroup = class {
153
153
  /****************************************************************************/
154
154
  //#region RENDER
155
155
  render() {
156
- return (index.h(index.Host, { key: '1116872815229d09e1e286dd1f12a9787218e207' }, index.h("slot", { key: 'fa5363ec707f38830065718b2423dd8493acdd4e' })));
156
+ return (index.h(index.Host, { key: '93a5693197f8b41b18ecef0132168e7f209ec86a' }, index.h("slot", { key: '3085cde261575115286c295eb416063ef14a7bf2' })));
157
157
  }
158
158
  get el() { return index.getElement(this); }
159
159
  static get watchers() { return {
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-BQjqJTJB.js');
3
+ var index = require('./index-Cfkoz1kc.js');
4
4
 
5
5
  const nvTooltipCss = () => `nv-tooltip{display:inline-block;vertical-align:top;position:relative;user-select:none}nv-tooltip:has([fluid]:not([fluid=false])){display:block}nv-tooltip nv-popover{display:block;height:0;min-height:0;overflow:visible}nv-tooltip nv-popover>[data-scope=popover]{background:var(--components-tooltip-background);color:var(--components-tooltip-text);font-weight:var(--font-weight-medium-emphasis);padding:var(--tooltip-padding-y) var(--tooltip-padding-x);font-size:var(--tooltip-font-size);border-radius:var(--tooltip-radius);border:none;box-shadow:0px var(--shadow-y-axis-lg-1) var(--shadow-blur-lg-1) var(--shadow-spread-lg-1) var(--shadow-color-opacity-1), 0px var(--shadow-y-axis-lg-2) var(--shadow-blur-lg-2) var(--shadow-spread-lg-2) var(--shadow-color-opacity-2)}nv-tooltip nv-popover>[data-scope=popover] [data-scope=arrow]{background:var(--components-tooltip-background);box-shadow:none;border:none}`;
6
6
 
@@ -44,7 +44,7 @@ const NvTooltip = class {
44
44
  /****************************************************************************/
45
45
  //#region RENDER
46
46
  render() {
47
- return (index.h(index.Host, { key: 'bda9ba58186add585457f8fdf4a8e1d6389da01a' }, index.h("nv-popover", { key: 'ac67ea44cebbc8abb9ff4e190668093bb7179222', ref: el => (this.popoverElement = el), triggerMode: "hover", hasArrow: true, placement: this.placement, strategy: this.strategy, triggerElement: this.triggerElement, groupName: 'tooltip', enterDelay: this.enterDelay, onOpenChanged: e => this.openChanged.emit(e.detail) }, index.h("p", { key: 'b677689d4a73462b7d16ff7d9f31bfd61e7f47eb', slot: "content" }, this.message), index.h("slot", { key: 'bd1540db065fdeceb89d09d69e1dbf7ad4de728d', name: "content" })), index.h("slot", { key: '648d3c3125b0528cd8e88675122d775ad7cc40d9', ref: el => (this.defaultSlot = el) })));
47
+ return (index.h(index.Host, { key: 'f01e67c6f67c35beba40681c4bcd109886bbdbcf' }, index.h("nv-popover", { key: '47cd75161715752aeeae29223606e21c617a271a', ref: el => (this.popoverElement = el), triggerMode: "hover", hasArrow: true, placement: this.placement, strategy: this.strategy, triggerElement: this.triggerElement, groupName: 'tooltip', enterDelay: this.enterDelay, onOpenChanged: e => this.openChanged.emit(e.detail) }, index.h("p", { key: 'fe5b09a6c0e4a67a50c9f43cb8344cee68e197f5', slot: "content" }, this.message), index.h("slot", { key: '4ef23e294baa1d5e60236ffec4a26439610030c1', name: "content" })), index.h("slot", { key: '5d8486923cd7cf99da69f4fa4d319dd5b5999cfa', ref: el => (this.defaultSlot = el) })));
48
48
  }
49
49
  get el() { return index.getElement(this); }
50
50
  };
@@ -42,6 +42,7 @@
42
42
  "components/nv-notification/nv-notification.js",
43
43
  "components/nv-notification-bullet/nv-notification-bullet.js",
44
44
  "components/nv-notificationcontainer/nv-notificationcontainer.js",
45
+ "components/nv-pagination-nav/nv-pagination-nav.js",
45
46
  "components/nv-paginationtable/nv-paginationtable.js",
46
47
  "components/nv-popover/nv-popover.js",
47
48
  "components/nv-row/nv-row.js",
@@ -14,6 +14,7 @@ import { v4 as uuidv4 } from "uuid";
14
14
  export class NvDialog {
15
15
  constructor() {
16
16
  this.eventsAttached = false;
17
+ this.pointerDownTarget = null;
17
18
  this.triggerClickEvents = [
18
19
  ['click', this.show],
19
20
  [
@@ -73,8 +74,18 @@ export class NvDialog {
73
74
  this.close();
74
75
  }
75
76
  };
77
+ /**
78
+ * Records the pointer down target to distinguish intentional outside clicks
79
+ * from drag-out gestures (press inside, release outside).
80
+ * @param {PointerEvent} event - The pointerdown event.
81
+ */
82
+ this.handleDialogPointerDown = (event) => {
83
+ this.pointerDownTarget = event.target;
84
+ };
76
85
  /**
77
86
  * Handles the click event to close the dialog when clickOutside is true.
87
+ * Only closes if both pointerdown and click originated on the backdrop,
88
+ * preventing accidental closes from drag-out gestures.
78
89
  * @param {MouseEvent} event - The click event.
79
90
  */
80
91
  this.handleDialogClick = (event) => {
@@ -82,11 +93,13 @@ export class NvDialog {
82
93
  return;
83
94
  if (this.checkForOpenPopovers())
84
95
  return;
85
- if (event.target === this.backdropElement) {
96
+ if (event.target === this.backdropElement &&
97
+ this.pointerDownTarget === this.backdropElement) {
86
98
  this.close();
87
99
  event.preventDefault();
88
100
  event.stopPropagation();
89
101
  }
102
+ this.pointerDownTarget = null;
90
103
  };
91
104
  this.checkForOpenPopovers = () => {
92
105
  let hasOpenPopover = false;
@@ -278,7 +291,7 @@ export class NvDialog {
278
291
  //#region RENDER
279
292
  render() {
280
293
  const hasForm = this.form || this.el.querySelector('form');
281
- return (h(Host, { key: 'd8d44a128d01fd7a9b62d42f08f7eb5b85e4e5b2' }, h("slot", { key: '7157a6121fea5e8828dd2c0c3db4998c0cb5d0d2', name: "trigger" }), h("dialog", { key: '22674ade1de7b50439ffe77ad2a20e6473929c34', ref: el => (this.dialogElement = el), onClose: this.handleDialogClose, onClick: this.handleDialogClick, role: "dialog", "aria-modal": "true", "aria-labelledby": "dialog-header", "aria-describedby": "dialog-content", class: clsx({ full: this.full }) }, h("div", { key: '4f851e286f94be5972ebb417bef891e29714cb44', class: "backdrop", ref: el => (this.backdropElement = el) }, h("div", { key: '881171acec6e40b627a544b716302d576b836487', class: "content", ref: el => (this.contentElement = el) }, !this.undismissable && (h("nv-button", { key: '9691520158952a35da536f94073e8ff5fd6041f0', class: "close-button", emphasis: "lower", size: "sm", onClick: this.handleDialogClose, "aria-label": "Close dialog" }, h("nv-icon", { key: '8392a7d6ec89d08391904c94f10296223c4d6012', name: "x", size: "sm" }))), this.headerElement ? (h("slot", { name: "header" })) : (h("nv-dialogheader", { id: "dialog-header" })), h("div", { key: '7fa62a9d5e8f1fe3f42872af3fc753e2fb175a9a', class: "content-body", id: "dialog-content" }, h("slot", { key: '5ec44365b70f6ec2762896ce242a264fb4ffb05a' })), this.footerElement ? (h("slot", { name: "footer" })) : (h("nv-dialogfooter", { form: this.form, primaryButtonType: hasForm ? ButtonType.Submit : ButtonType.Button, onDialogCanceled: this.handleDialogClose, undismissable: this.undismissable })))))));
294
+ return (h(Host, { key: '402dda24aab32637cbfd4a2967297fab760e6389' }, h("slot", { key: '3744313bc37f3bbf4fabe235004d1e99a6d82ffd', name: "trigger" }), h("dialog", { key: '8d34a090d52e729c8dbed18270900d8ef46c6a7a', ref: el => (this.dialogElement = el), onClose: this.handleDialogClose, onPointerDown: this.handleDialogPointerDown, onClick: this.handleDialogClick, role: "dialog", "aria-modal": "true", "aria-labelledby": "dialog-header", "aria-describedby": "dialog-content", class: clsx({ full: this.full }) }, h("div", { key: '9539f8682b25f4cf52f4a6fc554d1c314f015655', class: "backdrop", ref: el => (this.backdropElement = el) }, h("div", { key: '3d74eb9b30bd5d39afd76a20d229adc0f3343f8c', class: "content", ref: el => (this.contentElement = el) }, !this.undismissable && (h("nv-button", { key: 'd061699ef943f1178e985cfca832918b05e914be', class: "close-button", emphasis: "lower", size: "sm", onClick: this.handleDialogClose, "aria-label": "Close dialog" }, h("nv-icon", { key: 'f60991a49b800d6a5f3af15ddc27fcbf77310a0d', name: "x", size: "sm" }))), this.headerElement ? (h("slot", { name: "header" })) : (h("nv-dialogheader", { id: "dialog-header" })), h("div", { key: 'b3e76c96245728cd574d7d357ec0507525ba9ed5', class: "content-body", id: "dialog-content" }, h("slot", { key: 'be5a36d7e816f5be9c624c13d5ee03126e1d97cf' })), this.footerElement ? (h("slot", { name: "footer" })) : (h("nv-dialogfooter", { form: this.form, primaryButtonType: hasForm ? ButtonType.Submit : ButtonType.Button, onDialogCanceled: this.handleDialogClose, undismissable: this.undismissable })))))));
282
295
  }
283
296
  static get is() { return "nv-dialog"; }
284
297
  static get originalStyleUrls() {
@@ -0,0 +1,37 @@
1
+ nv-pagination-nav {
2
+ display: block;
3
+ }
4
+ nv-pagination-nav [data-scope=pagination-nav] {
5
+ display: flex;
6
+ align-items: center;
7
+ justify-content: center;
8
+ gap: var(--spacing-2);
9
+ flex-wrap: wrap;
10
+ }
11
+ nv-pagination-nav [data-scope=page-list] {
12
+ display: flex;
13
+ align-items: center;
14
+ gap: var(--spacing-2);
15
+ list-style: none;
16
+ margin: 0;
17
+ padding: 0;
18
+ }
19
+ nv-pagination-nav [data-scope=page-button] {
20
+ display: flex;
21
+ align-items: center;
22
+ }
23
+ nv-pagination-nav [data-scope=page-button] nv-button,
24
+ nv-pagination-nav [data-scope=page-button] nv-iconbutton {
25
+ min-width: var(--spacing-8);
26
+ justify-content: center;
27
+ }
28
+ nv-pagination-nav [data-scope=ellipsis] {
29
+ display: flex;
30
+ align-items: center;
31
+ justify-content: center;
32
+ min-width: var(--spacing-8);
33
+ height: var(--spacing-8);
34
+ color: var(--color-content-lower-text);
35
+ font-size: var(--font-size-sm);
36
+ user-select: none;
37
+ }
@@ -0,0 +1,278 @@
1
+ import { h } from "@stencil/core";
2
+ import { nameof } from "../../utils/class.utils";
3
+ const NvPaginationNavDocs = {
4
+ component: 'nv-pagination-nav',
5
+ subcomponents: ['nv-button', 'nv-iconbutton', 'nv-icon'],
6
+ badge: 'beta',
7
+ stories: [
8
+ // Default
9
+ {
10
+ name: 'Default',
11
+ description: 'Basic pagination navigation with default settings. Shows a sliding window of page numbers with Previous/Next buttons. The component automatically handles button states and provides a clean, accessible navigation experience.',
12
+ args: {
13
+ currentPage: 1,
14
+ totalCount: 100,
15
+ pageSize: 10,
16
+ previousButtonLabel: 'Previous',
17
+ nextButtonLabel: 'Next',
18
+ },
19
+ template: h("nv-pagination-nav", { "data-storybook-args": true }),
20
+ },
21
+ // currentPage
22
+ {
23
+ name: nameof(x => x.currentPage),
24
+ description: 'The currently active page number (1-based index). The active page is visually highlighted with an active state. Use this prop to control which page is selected, typically bound to your application state.',
25
+ args: {
26
+ currentPage: 5,
27
+ totalCount: 100,
28
+ pageSize: 10,
29
+ },
30
+ template: h("nv-pagination-nav", { "data-storybook-args": true }),
31
+ },
32
+ // totalCount
33
+ {
34
+ name: nameof(x => x.totalCount),
35
+ description: 'Total number of items to paginate. Works with pageSize to calculate the total number of pages (totalCount / pageSize). In this example: 250 items ÷ 10 per page = 25 pages.',
36
+ args: {
37
+ currentPage: 1,
38
+ totalCount: 250,
39
+ pageSize: 10,
40
+ },
41
+ template: h("nv-pagination-nav", { "data-storybook-args": true }),
42
+ },
43
+ // pageSize
44
+ {
45
+ name: nameof(x => x.pageSize),
46
+ description: 'Number of items per page. Works with totalCount to determine total pages. Smaller values create more pages. In this example: 100 items ÷ 25 per page = 4 pages.',
47
+ args: {
48
+ currentPage: 1,
49
+ totalCount: 100,
50
+ pageSize: 25,
51
+ },
52
+ template: h("nv-pagination-nav", { "data-storybook-args": true }),
53
+ },
54
+ // previousButtonLabel
55
+ {
56
+ name: nameof(x => x.previousButtonLabel),
57
+ description: 'Customize the label for the previous navigation button. Use this for internationalization (i18n) to display text in different languages. Default is "Previous".',
58
+ args: {
59
+ currentPage: 5,
60
+ totalCount: 100,
61
+ pageSize: 10,
62
+ previousButtonLabel: 'Précédent',
63
+ nextButtonLabel: 'Suivant',
64
+ },
65
+ template: h("nv-pagination-nav", { "data-storybook-args": true }),
66
+ },
67
+ // nextButtonLabel
68
+ {
69
+ name: nameof(x => x.nextButtonLabel),
70
+ description: 'Customize the label for the next navigation button. Use this for internationalization (i18n) to display text in different languages. Default is "Next".',
71
+ args: {
72
+ currentPage: 5,
73
+ totalCount: 100,
74
+ pageSize: 10,
75
+ previousButtonLabel: 'Zurück',
76
+ nextButtonLabel: 'Weiter',
77
+ },
78
+ template: h("nv-pagination-nav", { "data-storybook-args": true }),
79
+ },
80
+ // numStartZoneButtons
81
+ {
82
+ name: nameof(x => x.numStartZoneButtons),
83
+ description: 'Number of page buttons to show at the start of the pagination. Combined with numEndZoneButtons, this determines the total number of visible page buttons (default: 2). Increasing this value shows more pages at the beginning.',
84
+ args: {
85
+ currentPage: 10,
86
+ totalCount: 200,
87
+ pageSize: 10,
88
+ numStartZoneButtons: 3,
89
+ numEndZoneButtons: 2,
90
+ numMiddleButtons: 3,
91
+ },
92
+ template: h("nv-pagination-nav", { "data-storybook-args": true }),
93
+ },
94
+ // numEndZoneButtons
95
+ {
96
+ name: nameof(x => x.numEndZoneButtons),
97
+ description: 'Number of page buttons to show at the end of the pagination. Combined with numStartZoneButtons, this determines the total number of visible page buttons (default: 2). Increasing this value shows more pages at the end.',
98
+ args: {
99
+ currentPage: 10,
100
+ totalCount: 200,
101
+ pageSize: 10,
102
+ numStartZoneButtons: 2,
103
+ numEndZoneButtons: 3,
104
+ numMiddleButtons: 3,
105
+ },
106
+ template: h("nv-pagination-nav", { "data-storybook-args": true }),
107
+ },
108
+ // numMiddleButtons
109
+ {
110
+ name: nameof(x => x.numMiddleButtons),
111
+ description: 'Number of page buttons to show in the middle zone around the current page (only used when showMiddleZone is true)',
112
+ args: {
113
+ currentPage: 10,
114
+ totalCount: 200,
115
+ pageSize: 10,
116
+ numStartZoneButtons: 2,
117
+ numEndZoneButtons: 2,
118
+ numMiddleButtons: 5,
119
+ showMiddleZone: true,
120
+ },
121
+ template: h("nv-pagination-nav", { "data-storybook-args": true }),
122
+ },
123
+ // isOnlyIcon
124
+ {
125
+ name: nameof(x => x.isOnlyIcon),
126
+ description: 'Display Previous/Next navigation buttons as icon buttons for a more compact layout. Page number buttons always use regular buttons.',
127
+ args: {
128
+ currentPage: 5,
129
+ totalCount: 100,
130
+ pageSize: 10,
131
+ isOnlyIcon: true,
132
+ },
133
+ template: h("nv-pagination-nav", { "data-storybook-args": true }),
134
+ },
135
+ // showMiddleZone
136
+ {
137
+ name: nameof(x => x.showMiddleZone),
138
+ description: 'When true, shows a middle zone with the current page and two ellipses. When false (default), uses a sliding window that keeps a constant number of buttons while ensuring the current page is always visible.',
139
+ args: {
140
+ currentPage: 15,
141
+ totalCount: 500,
142
+ pageSize: 10,
143
+ showMiddleZone: true,
144
+ numMiddleButtons: 3,
145
+ },
146
+ template: h("nv-pagination-nav", { "data-storybook-args": true }),
147
+ },
148
+ // SlidingWindow
149
+ {
150
+ name: 'SlidingWindow',
151
+ description: 'Default behavior with sliding window (showMiddleZone=false). The pagination window slides to keep the current page visible while maintaining a constant number of buttons.',
152
+ args: {
153
+ currentPage: 15,
154
+ totalCount: 500,
155
+ pageSize: 10,
156
+ showMiddleZone: false,
157
+ },
158
+ template: h("nv-pagination-nav", { "data-storybook-args": true }),
159
+ },
160
+ // ManyPages
161
+ {
162
+ name: 'ManyPages',
163
+ description: 'Pagination with many pages showing the sliding window behavior (default). The window slides to include the current page while keeping a constant number of buttons.',
164
+ args: {
165
+ currentPage: 15,
166
+ totalCount: 500,
167
+ pageSize: 10,
168
+ },
169
+ template: h("nv-pagination-nav", { "data-storybook-args": true }),
170
+ },
171
+ // FewPages
172
+ {
173
+ name: 'FewPages',
174
+ description: 'When the total number of pages is small (4 pages or fewer), all page numbers are displayed without ellipses. This provides direct access to all pages without any truncation.',
175
+ args: {
176
+ currentPage: 2,
177
+ totalCount: 35,
178
+ pageSize: 10,
179
+ },
180
+ template: h("nv-pagination-nav", { "data-storybook-args": true }),
181
+ },
182
+ // FirstPage
183
+ {
184
+ name: 'FirstPage',
185
+ description: 'Edge case demonstrating the first page state. The Previous button is automatically disabled to prevent navigation beyond the first page, providing a clear visual indicator that users are at the start.',
186
+ args: {
187
+ currentPage: 1,
188
+ totalCount: 100,
189
+ pageSize: 10,
190
+ },
191
+ template: h("nv-pagination-nav", { "data-storybook-args": true }),
192
+ },
193
+ // LastPage
194
+ {
195
+ name: 'LastPage',
196
+ description: 'Edge case demonstrating the last page state. The Next button is automatically disabled to prevent navigation beyond the last page, providing a clear visual indicator that users are at the end.',
197
+ args: {
198
+ currentPage: 10,
199
+ totalCount: 100,
200
+ pageSize: 10,
201
+ },
202
+ template: h("nv-pagination-nav", { "data-storybook-args": true }),
203
+ },
204
+ // SinglePage
205
+ {
206
+ name: 'SinglePage',
207
+ description: 'Edge case with only one page of data. Both Previous and Next buttons are disabled since there are no other pages to navigate to. This is common when filtering reduces results to a single page.',
208
+ args: {
209
+ currentPage: 1,
210
+ totalCount: 8,
211
+ pageSize: 10,
212
+ },
213
+ template: h("nv-pagination-nav", { "data-storybook-args": true }),
214
+ },
215
+ // CustomZones
216
+ {
217
+ name: 'CustomZones',
218
+ description: 'Advanced example with minimal zone configuration (1 start + 1 end button). This creates a very compact pagination display, showing only 2 page buttons at a time plus the current page when sliding. Useful for space-constrained layouts.',
219
+ args: {
220
+ currentPage: 12,
221
+ totalCount: 300,
222
+ pageSize: 10,
223
+ numStartZoneButtons: 1,
224
+ numEndZoneButtons: 1,
225
+ numMiddleButtons: 5,
226
+ },
227
+ template: h("nv-pagination-nav", { "data-storybook-args": true }),
228
+ },
229
+ // LargeDataset
230
+ {
231
+ name: 'LargeDataset',
232
+ description: 'Demonstrates pagination with a very large dataset (10,000 items across 100 pages). The sliding window behavior efficiently handles large page counts by showing only a small, constant number of page buttons while maintaining easy navigation.',
233
+ args: {
234
+ currentPage: 50,
235
+ totalCount: 10000,
236
+ pageSize: 100,
237
+ },
238
+ template: h("nv-pagination-nav", { "data-storybook-args": true }),
239
+ },
240
+ // SmallPageSize
241
+ {
242
+ name: 'SmallPageSize',
243
+ description: 'Shows how a smaller page size creates more pages from the same dataset. 100 items with 5 per page creates 20 pages instead of 10. Useful for scenarios where you want to display fewer items at once (mobile views, detailed cards, etc.).',
244
+ args: {
245
+ currentPage: 5,
246
+ totalCount: 100,
247
+ pageSize: 5,
248
+ },
249
+ template: h("nv-pagination-nav", { "data-storybook-args": true }),
250
+ },
251
+ // Internationalization
252
+ {
253
+ name: 'Internationalization',
254
+ description: 'Complete example showing how to localize the pagination component for different languages. Use previousButtonLabel and nextButtonLabel props to translate the navigation buttons. This example uses French labels.',
255
+ args: {
256
+ currentPage: 5,
257
+ totalCount: 100,
258
+ pageSize: 10,
259
+ previousButtonLabel: 'Précédent',
260
+ nextButtonLabel: 'Suivant',
261
+ },
262
+ template: h("nv-pagination-nav", { "data-storybook-args": true }),
263
+ },
264
+ // IconButtonMode
265
+ {
266
+ name: 'IconButtonMode',
267
+ description: 'Compact navigation with Previous/Next as icon buttons. Page numbers remain as regular buttons for readability.',
268
+ args: {
269
+ currentPage: 5,
270
+ totalCount: 100,
271
+ pageSize: 10,
272
+ isOnlyIcon: true,
273
+ },
274
+ template: h("nv-pagination-nav", { "data-storybook-args": true }),
275
+ },
276
+ ],
277
+ };
278
+ export default NvPaginationNavDocs;