@nova-design-system/nova-react 3.26.0 → 3.28.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 (80) hide show
  1. package/dist/cjs/generated/components.server.js +43 -0
  2. package/dist/cjs/index-Kxp9mv-Q.js +10119 -0
  3. package/dist/cjs/index.js +5 -1
  4. package/dist/cjs/nova-datetime-CyL2J6O4-0Y9g3rfI.js +10531 -0
  5. package/dist/cjs/{nv-accordion-item.entry-DtzjLTCo.js → nv-accordion-item.entry-fds_kk_3.js} +1 -1
  6. package/dist/cjs/{nv-accordion.entry-DRcTfezT.js → nv-accordion.entry-BLs4N5ZL.js} +1 -1
  7. package/dist/cjs/{nv-alert.entry-86bfoXVx.js → nv-alert.entry-Bx1BiC8F.js} +1 -1
  8. package/dist/cjs/{nv-avatar.entry-mp2LJ6RA.js → nv-avatar.entry-DS88LME3.js} +1 -1
  9. package/dist/cjs/{nv-badge_2.entry-BrDaHeqh.js → nv-badge_2.entry-vBPxmUmg.js} +2 -2
  10. package/dist/cjs/{nv-breadcrumb.entry-B2q7jJy2.js → nv-breadcrumb.entry-BOo3hA5y.js} +1 -1
  11. package/dist/cjs/{nv-breadcrumbs.entry-DKzST1uS.js → nv-breadcrumbs.entry-igHC_6Bd.js} +1 -1
  12. package/dist/cjs/{nv-button.entry-CVgcU-bi.js → nv-button.entry-BRQPmQbs.js} +1 -1
  13. package/dist/cjs/{nv-buttongroup.entry-CvuBGaGK.js → nv-buttongroup.entry-D3tG2EZ1.js} +1 -1
  14. package/dist/cjs/{nv-calendar.entry-BCcGhxzJ.js → nv-calendar.entry-BpNHMTKr.js} +1 -1
  15. package/dist/cjs/{nv-col.entry-CzTahRVr.js → nv-col.entry-lyIZqDsW.js} +1 -1
  16. package/dist/cjs/{nv-datagrid.entry-DWZxNqTE.js → nv-datagrid.entry-BeemONKu.js} +1 -1
  17. package/dist/cjs/{nv-datagridcolumn.entry-CzCzmdQl.js → nv-datagridcolumn.entry-B6kE4eVC.js} +1 -1
  18. package/dist/cjs/nv-datetest.entry-C1uuC-ZG.js +69 -0
  19. package/dist/cjs/nv-datetimetest.entry-Hthxbjj9.js +57 -0
  20. package/dist/cjs/{nv-dialog.entry-ByVD02QB.js → nv-dialog.entry-Cr9zwMPo.js} +16 -3
  21. package/dist/cjs/{nv-dialogfooter_2.entry-BmQcYJsD.js → nv-dialogfooter_2.entry-DaaKojyE.js} +3 -3
  22. package/dist/cjs/{nv-drawer.entry-C15JRJ3N.js → nv-drawer.entry-0UaYxCjh.js} +2 -2
  23. package/dist/cjs/{nv-drawerfooter_2.entry-DuDac_Os.js → nv-drawerfooter_2.entry-CqtuC7xP.js} +3 -3
  24. package/dist/cjs/{nv-fieldcheckbox.entry-CwDOQzSW.js → nv-fieldcheckbox.entry-DK3aO8C8.js} +5 -5
  25. package/dist/cjs/{nv-fielddate.entry-DKICGwc0.js → nv-fielddate.entry-BY-xF3KN.js} +7 -7
  26. package/dist/cjs/{nv-fielddaterange.entry-DGEK8F9p.js → nv-fielddaterange.entry-BT6qCQc3.js} +7 -7
  27. package/dist/cjs/{nv-fielddropdown.entry-BLS7lRzD.js → nv-fielddropdown.entry-CsVD067i.js} +5 -5
  28. package/dist/cjs/{nv-fielddropdownitem.entry-Bbfi3A8C.js → nv-fielddropdownitem.entry-Crtfwlx7.js} +2 -2
  29. package/dist/cjs/{nv-fieldmultiselect.entry-Cpy7HzlZ.js → nv-fieldmultiselect.entry-C2uoE60e.js} +1 -1
  30. package/dist/cjs/{nv-fieldnumber.entry-SbNb4hKr.js → nv-fieldnumber.entry-DzW5SiiZ.js} +5 -5
  31. package/dist/cjs/{nv-fieldpassword.entry-CPsgagjY.js → nv-fieldpassword.entry-D4r9Qxos.js} +5 -5
  32. package/dist/cjs/{nv-fieldradio.entry-DLP-rmKU.js → nv-fieldradio.entry-DX0Ghx--.js} +4 -4
  33. package/dist/cjs/{nv-fieldselect.entry-DOOO03kM.js → nv-fieldselect.entry-_CglE66i.js} +6 -6
  34. package/dist/cjs/{nv-fieldslider.entry-CpVbxkpo.js → nv-fieldslider.entry-6zt75uDU.js} +4 -4
  35. package/dist/cjs/{nv-fieldtext.entry-BpbG4WHv.js → nv-fieldtext.entry-B4X110wn.js} +5 -5
  36. package/dist/cjs/{nv-fieldtextarea.entry-BA_RApYN.js → nv-fieldtextarea.entry-CeAMhA8Y.js} +4 -4
  37. package/dist/cjs/{nv-fieldtime.entry-DaJfwQtC.js → nv-fieldtime.entry-BvzncwNd.js} +4 -4
  38. package/dist/cjs/nv-icon.entry-C2md2kmq.js +80 -0
  39. package/dist/cjs/{nv-iconbutton_2.entry-B4xB5WtE.js → nv-iconbutton_2.entry-D-zRpLjT.js} +3 -3
  40. package/dist/cjs/{nv-menu.entry-DHWhkWeB.js → nv-menu.entry-DN_DkosX.js} +2 -2
  41. package/dist/cjs/{nv-menuitem.entry-CQApuT2D.js → nv-menuitem.entry-Cj6w33rq.js} +2 -2
  42. package/dist/cjs/{nv-notification-bullet.entry-CnYVWE_Z.js → nv-notification-bullet.entry-DagStJ3K.js} +1 -1
  43. package/dist/cjs/{nv-notification.entry-DraOvzsu.js → nv-notification.entry-oV69FpxE.js} +2 -2
  44. package/dist/cjs/{nv-notificationcontainer.entry-BDo-rQLL.js → nv-notificationcontainer.entry-gQGHHeer.js} +2 -14
  45. package/dist/cjs/nv-pagination-nav.entry-BYvcVj1M.js +201 -0
  46. package/dist/cjs/{nv-paginationtable.entry-CS7BhAVe.js → nv-paginationtable.entry-CwCFQwbl.js} +2 -2
  47. package/dist/cjs/{nv-popover.entry-DSyKCLtF.js → nv-popover.entry-DySToeSB.js} +2 -2
  48. package/dist/cjs/{nv-row.entry-D21zN2Vr.js → nv-row.entry-46ghuEeG.js} +2 -2
  49. package/dist/cjs/{nv-sidebar.entry-DpKgnjsJ.js → nv-sidebar.entry-B6opNG2r.js} +2 -2
  50. package/dist/cjs/{nv-sidebarcontent.entry-BWFDcui8.js → nv-sidebarcontent.entry-Pb8c2QoA.js} +2 -2
  51. package/dist/cjs/{nv-sidebardivider.entry-BSzLq-h3.js → nv-sidebardivider.entry-LCCO53Z5.js} +2 -2
  52. package/dist/cjs/{nv-sidebarfooter.entry-C3DLHPSQ.js → nv-sidebarfooter.entry-DG5fkLHd.js} +2 -2
  53. package/dist/cjs/{nv-sidebargroup.entry-BMYLbCql.js → nv-sidebargroup.entry-DRqkSyQi.js} +2 -2
  54. package/dist/cjs/{nv-sidebarheader.entry-CkUGD-Tw.js → nv-sidebarheader.entry-D6WvH2wG.js} +2 -2
  55. package/dist/cjs/{nv-sidebarlogo.entry-BX1-1S1v.js → nv-sidebarlogo.entry-BorScwI-.js} +2 -2
  56. package/dist/cjs/{nv-sidebarnavitem.entry-CPwt0Njh.js → nv-sidebarnavitem.entry-BEW74Rw3.js} +12 -5
  57. package/dist/cjs/{nv-sidebarnavsubitem.entry-HZOTB6Tl.js → nv-sidebarnavsubitem.entry-EgaIlUfP.js} +2 -2
  58. package/dist/cjs/{nv-split.entry-DdtzktvN.js → nv-split.entry-CEC5Tuwz.js} +2 -2
  59. package/dist/cjs/{nv-stack.entry-BMLt30Nt.js → nv-stack.entry-BR8lYaoI.js} +2 -2
  60. package/dist/cjs/{nv-table.entry-RTiqKRKM.js → nv-table.entry-CISZFst5.js} +2 -2
  61. package/dist/cjs/{nv-tableheader.entry-Ci4qo8eY.js → nv-tableheader.entry-DbdpTJGC.js} +2 -2
  62. package/dist/cjs/nv-timetest.entry-Dg1JEgAv.js +75 -0
  63. package/dist/cjs/{nv-toggle.entry-s8B7-8P7.js → nv-toggle.entry-DDfRpC1R.js} +3 -3
  64. package/dist/cjs/{nv-togglebutton.entry-CyHgU4Wl.js → nv-togglebutton.entry-D7NkdIXP.js} +2 -2
  65. package/dist/cjs/{nv-togglebuttongroup.entry-Bn_9DsdP.js → nv-togglebuttongroup.entry-L8gitSUS.js} +2 -2
  66. package/dist/cjs/{nv-tooltip.entry-D6kxXLO-.js → nv-tooltip.entry-BElnrEqE.js} +9 -4
  67. package/dist/components/NvDatatable/NvDatatable.js +293 -63
  68. package/dist/components/NvDatatable/selectionState.js +45 -0
  69. package/dist/components/NvDatatable/selectionState.test.js +74 -0
  70. package/dist/generated/components.js +46 -0
  71. package/dist/generated/components.server.js +39 -0
  72. package/dist/types/components/NvDatatable/NvDatatable.d.ts +1 -1
  73. package/dist/types/components/NvDatatable/selectionState.d.ts +21 -0
  74. package/dist/types/components/NvDatatable/selectionState.test.d.ts +1 -0
  75. package/dist/types/components/NvDatatable/types.d.ts +17 -0
  76. package/dist/types/generated/components.d.ts +56 -1
  77. package/dist/types/generated/components.server.d.ts +56 -1
  78. package/package.json +6 -4
  79. package/dist/cjs/index-BeFrXZol.js +0 -9699
  80. package/dist/cjs/nv-icon.entry-DIi792yJ.js +0 -80
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-BeFrXZol.js');
3
+ var index = require('./index-Kxp9mv-Q.js');
4
4
  var clsxChV9xqsO = require('./clsx-ChV9xqsO-BtxeOLZW.js');
5
5
  require('@stencil/react-output-target/runtime');
6
6
  require('react');
@@ -128,7 +128,7 @@ const NvIconbutton = class {
128
128
  /****************************************************************************/
129
129
  //#region RENDER
130
130
  render() {
131
- return (index.h(index.Host, { key: 'e63c932f14d3b673d43ed48f61bb37a48605338d', role: "button", type: this.type, tabindex: this.disableTabindex ? -1 : 0, disabled: this.disabled ? true : undefined, class: clsxChV9xqsO.clsx('root', `size-${this.size}`, `emphasis-${this.emphasis}`, this.loading && 'loading', `shape-${this.shape}`), onClick: this.handleClick }, this.loading && index.h("nv-loader", { key: '22ea154dce89eae701d873674a8bc6b2cecbcab9', size: this.size }), !this.loading && index.h("nv-icon", { key: 'f05c05c455e62d27aed57de09efd32230f68c450', name: this.name, size: this.size }), index.h("slot", { key: 'a1a163e56c8c027d0df2a019f77c187c6abbd91a' })));
131
+ return (index.h(index.Host, { key: 'b746b8c5f6e25d2fd0c3759f9bcb5451d18ac29c', role: "button", type: this.type, tabindex: this.disableTabindex ? -1 : 0, disabled: this.disabled ? true : undefined, class: clsxChV9xqsO.clsx('root', `size-${this.size}`, `emphasis-${this.emphasis}`, this.loading && 'loading', `shape-${this.shape}`), onClick: this.handleClick }, this.loading && index.h("nv-loader", { key: '5bb5ab5b49b0e1b19695e00846e462dc6a5b6093', size: this.size }), !this.loading && index.h("nv-icon", { key: '825f0532eea39531c63c669bac307a2c45478cbb', name: this.name, size: this.size }), index.h("slot", { key: '394a9f1b5fd16037fcd5bebb3075f363bfe4fa62' })));
132
132
  }
133
133
  static get formAssociated() { return true; }
134
134
  get el() { return index.getElement(this); }
@@ -162,7 +162,7 @@ const NvLoader = class {
162
162
  //#region RENDER
163
163
  /* <slot> empty to force rendering change */
164
164
  render() {
165
- return (index.h(index.Host, { key: '5449f31fff78e9aabb1a6af11b99247cdf9fd4f3', class: clsxChV9xqsO.clsx(this.size && `size-${this.size}`, this.color && `color-${this.color}`) }));
165
+ return (index.h(index.Host, { key: 'a80c59f9585654352e1b48e1a245e94172e1e533', class: clsxChV9xqsO.clsx(this.size && `size-${this.size}`, this.color && `color-${this.color}`) }));
166
166
  }
167
167
  };
168
168
  NvLoader.style = nvLoaderCss();
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-BeFrXZol.js');
3
+ var index = require('./index-Kxp9mv-Q.js');
4
4
  require('@stencil/react-output-target/runtime');
5
5
  require('react');
6
6
  require('react-dom');
@@ -192,7 +192,7 @@ const NvMenu = class {
192
192
  this.triggerElement = this.el.querySelector('[slot="trigger"]');
193
193
  }
194
194
  render() {
195
- return (index.h(index.Host, { key: '470d14ed698cc0064a24bf02e5fac3b32d64601a' }, index.h("slot", { key: '2dd81fbe5a23b5225fc464fe528ff08983959b7f', name: "trigger" }), index.h("nv-popover", { key: '68634d33954033dbd997c8a7f7ed711c6a17470b', ref: el => (this.popoverElement = el), triggerMode: "click", triggerElement: this.triggerElement, placement: this.placement, nested: this.nested, open: this.open, onOpenChanged: this.handleOpenChanged.bind(this) }, this.items ? (index.h("ul", { slot: "content" }, this.renderMenuItems())) : (index.h("slot", { name: "content" })))));
195
+ return (index.h(index.Host, { key: 'b8154f4e215984b0dbb106b44dcad72eacb140e1' }, index.h("slot", { key: 'cddcea9afd3324d39168f3879cdbb0839f3e432a', name: "trigger" }), index.h("nv-popover", { key: '2e20e3b97279c27e16b0eef4eb2d327a1e22c3b3', ref: el => (this.popoverElement = el), triggerMode: "click", triggerElement: this.triggerElement, placement: this.placement, nested: this.nested, open: this.open, onOpenChanged: this.handleOpenChanged.bind(this) }, this.items ? (index.h("ul", { slot: "content" }, this.renderMenuItems())) : (index.h("slot", { name: "content" })))));
196
196
  }
197
197
  get el() { return index.getElement(this); }
198
198
  };
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-BeFrXZol.js');
3
+ var index = require('./index-Kxp9mv-Q.js');
4
4
  require('@stencil/react-output-target/runtime');
5
5
  require('react');
6
6
  require('react-dom');
@@ -50,7 +50,7 @@ const NvMenuitem = class {
50
50
  /****************************************************************************/
51
51
  //#region RENDER
52
52
  render() {
53
- return (index.h(index.Host, { key: 'aac708fbf246c1083c3c4666e97b421485dd44a6', role: "menuitem", tabindex: this.disabled ? '-1' : '0' }, this.icon && index.h("nv-icon", { key: '3b37a8661321152859dbc4247b299e60e909fe34', name: this.icon }), index.h("slot", { key: 'e690d7574f8960c44bee2e3f20b1150b578a49da' }), this.label && index.h("span", { key: '32d487f8ec9c1d6a910734c825382899982a23a5', "data-scope": "text" }, this.label), this.shortcut && !this.hasSubmenu && index.h("kbd", { key: 'cefcda06f7cb217348e5027ee6a38f8731421d6e' }, this.shortcut), this.hasSubmenu && index.h("nv-icon", { key: '1085e47ae40ac38f87fca10dfbecbf32db95bace', name: "chevron-right" })));
53
+ return (index.h(index.Host, { key: 'b377cf654cd4d0cc7e257c10606977db86087e31', role: "menuitem", tabindex: this.disabled ? '-1' : '0' }, this.icon && index.h("nv-icon", { key: '409b0902ea54323d4dd778816a244f4ea64d986d', name: this.icon }), index.h("slot", { key: 'd5c5c4a9ab1e3c70ba6fe052e11cfff212bf93aa' }), this.label && index.h("span", { key: '0b1e3892dfb16bd1f1d19f72b29f4d4dd396ccdf', "data-scope": "text" }, this.label), this.shortcut && !this.hasSubmenu && index.h("kbd", { key: 'a099a45ed14e3922c3fe25d3b0e1f0d257101e4b' }, this.shortcut), this.hasSubmenu && index.h("nv-icon", { key: '6c61d48ac2f3927ad7b33673bc9ed196f733e30a', name: "chevron-right" })));
54
54
  }
55
55
  get el() { return index.getElement(this); }
56
56
  };
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-BeFrXZol.js');
3
+ var index = require('./index-Kxp9mv-Q.js');
4
4
  require('@stencil/react-output-target/runtime');
5
5
  require('react');
6
6
  require('react-dom');
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-BeFrXZol.js');
3
+ var index = require('./index-Kxp9mv-Q.js');
4
4
  var constantsBReL3Lsa = require('./constants-BReL3Lsa-DpB_ghPF.js');
5
5
  var collapse_animationDZDm0vSK = require('./collapse.animation-DZDm0vSK-C2TOIhIK.js');
6
6
  var fade_animationDcRL9lcm = require('./fade.animation-DcRL9lcm-DAZeHoKN.js');
@@ -167,7 +167,7 @@ const NvNotification = class {
167
167
  /****************************************************************************/
168
168
  //#region RENDER
169
169
  render() {
170
- return (index.h(index.Host, { key: '3c5025f664fcfc1e68856c003cd31ff10b8efdd9', role: this.getAriaRole(), "aria-live": this.getAriaLive(), "aria-atomic": true, "aria-labelledby": this.getHeadingId() ?? null, "aria-describedby": this.getMessageId() ?? null, tabindex: "-1" }, index.h("div", { key: 'a26032a0b0ac9818b5da1f6e815a8c96f096ed46', "data-scope": "container", ref: el => (this.container = el) }, this.dismissible && (index.h("button", { key: 'f660bc8b5e5d8df073b69fb60d1ed0b11ec75c6f', "data-scope": "dismiss", type: "button", onClick: this.dismiss.bind(this) }, index.h("nv-icon", { key: 'dbeea84ab7f1c965eae3a8ae74b7afca98453705', name: "x", size: "sm" }))), index.h("nv-icon", { key: '0cbcee4f8667579b38ea205bdd747aabf6bdca8c', name: this.icon ?? this.getDefaultIcon(), size: "md", "data-scope": "icon" }), index.h("div", { key: 'aed13fae98256180ff8d453c9f9d108eab429952', "data-scope": "content" }, (this.heading || this.headingSlot) && (index.h("p", { key: 'a2964d1c4dc744765ed916fe74d6cc167164eaf4', id: this.getHeadingId(), "data-scope": "heading" }, index.h("slot", { key: '2eee0bd4a73fd92ea283ae6cd50af2d1edc01f0c', name: "heading" }, this.heading))), (this.message || this.messageSlot) && (index.h("p", { key: '2f7e9b5429b9fa27bc4088b5d26955b8360695c1', id: this.getMessageId(), "data-scope": "message" }, index.h("slot", { key: 'f1b3dbe8722c8750231b4fb18fdc120ecfd04c54', name: "content" }, this.message))), this.actionsSlot && (index.h("div", { key: '56a881b3a53bb68a214f8db560805c726930b8d4', "data-scope": "actions" }, index.h("slot", { key: 'ece50671721f12e58dfd03df09545cb456d00a9c', name: "actions" })))))));
170
+ return (index.h(index.Host, { key: '6d78033613b4f5d8c90fd3f0228e90f28272a7ca', role: this.getAriaRole(), "aria-live": this.getAriaLive(), "aria-atomic": true, "aria-labelledby": this.getHeadingId() ?? null, "aria-describedby": this.getMessageId() ?? null, tabindex: "-1" }, index.h("div", { key: '0a2e82809525643861c44462bbf85bb670b56bb9', "data-scope": "container", ref: el => (this.container = el) }, this.dismissible && (index.h("button", { key: '46ce066fba0d63bce346697b512051e9fdbf939c', "data-scope": "dismiss", type: "button", onClick: this.dismiss.bind(this) }, index.h("nv-icon", { key: '25ce721523d04886ff700923310b0fea3e6eeea5', name: "x", size: "sm" }))), index.h("nv-icon", { key: '060dfd8b52e92af64a6f5d80f18b520e3fa2db4e', name: this.icon ?? this.getDefaultIcon(), size: "md", "data-scope": "icon" }), index.h("div", { key: '0b60d8005cd53a7bb4f8cbb7d1e2c67337f5b73d', "data-scope": "content" }, (this.heading || this.headingSlot) && (index.h("p", { key: '549d7ee40542d3579e13c6e31dc313ba3a261f81', id: this.getHeadingId(), "data-scope": "heading" }, index.h("slot", { key: 'c5c067b17e2b7456b6ddf7a7747e51c9924cd50f', name: "heading" }, this.heading))), (this.message || this.messageSlot) && (index.h("p", { key: '3de5ab6bf9a77bb0843cd04b945f40b3b16417db', id: this.getMessageId(), "data-scope": "message" }, index.h("slot", { key: '5bcc2b2842907f35d3e8b9f1be3c2045c5ad8a0f', name: "content" }, this.message))), this.actionsSlot && (index.h("div", { key: 'e06454ce135e9869b9c7a9faea3e6f082ddc0e8a', "data-scope": "actions" }, index.h("slot", { key: 'eed113cd7f2d9ae51493f2cd8b9a175db6e7f4aa', name: "actions" })))))));
171
171
  }
172
172
  get el() { return index.getElement(this); }
173
173
  };
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-BeFrXZol.js');
3
+ var index = require('./index-Kxp9mv-Q.js');
4
4
  require('@stencil/react-output-target/runtime');
5
5
  require('react');
6
6
  require('react-dom');
@@ -19,21 +19,9 @@ const NvNotificationContainer = class {
19
19
  }
20
20
  //#endregion PROPERTIES
21
21
  /****************************************************************************/
22
- //#region METHODS
23
- //#endregion METHODS
24
- /****************************************************************************/
25
- //#region WATCHERS
26
- //#endregion WATCHERS
27
- /****************************************************************************/
28
- //#region LIFECYCLE
29
- //#endregion LIFECYCLE
30
- /****************************************************************************/
31
- //#region EVENTS
32
- //#endregion EVENTS
33
- /****************************************************************************/
34
22
  //#region RENDER
35
23
  render() {
36
- return (index.h(index.Host, { key: '97882d6391db2e1c9db884a84469db78136765e4', class: `position-${this.position}` }, index.h("slot", { key: '0a0c52f26006ebd186862634b7b5470c7410c976' })));
24
+ return (index.h(index.Host, { key: 'd2c471aaac0f76edade303331718d2b0f7c6bb39', class: `position-${this.position}` }, index.h("slot", { key: '48bbc563523bfb107bbbd2cc60561ccb87f9968c' })));
37
25
  }
38
26
  };
39
27
  NvNotificationContainer.style = nvNotificationcontainerCss();
@@ -0,0 +1,201 @@
1
+ 'use strict';
2
+
3
+ var index = require('./index-Kxp9mv-Q.js');
4
+ require('@stencil/react-output-target/runtime');
5
+ require('react');
6
+ require('react-dom');
7
+
8
+ /**
9
+ * Generates a pagination range with page numbers and ellipsis items.
10
+ * @param {PaginationRangeConfig} config Pagination configuration.
11
+ * @returns {PaginationRangeItem[]} Ordered range items.
12
+ */
13
+ function calculatePaginationRange({ currentPage, totalCount, pageSize, numStartZoneButtons, numEndZoneButtons, numMiddleButtons, showMiddleZone, }) {
14
+ const totalPageCount = Math.ceil(totalCount / pageSize);
15
+ const paginationRange = [];
16
+ const totalVisibleButtons = numStartZoneButtons + numEndZoneButtons;
17
+ if (totalPageCount <= totalVisibleButtons) {
18
+ for (let i = 1; i <= totalPageCount; i++) {
19
+ paginationRange.push(i);
20
+ }
21
+ return paginationRange;
22
+ }
23
+ const startZoneEnd = numStartZoneButtons;
24
+ const endZoneStart = totalPageCount - numEndZoneButtons + 1;
25
+ if (!showMiddleZone) {
26
+ const isInNaturalStartZone = currentPage <= numStartZoneButtons;
27
+ const isInNaturalEndZone = currentPage >= totalPageCount - numEndZoneButtons + 1;
28
+ if (!isInNaturalStartZone && !isInNaturalEndZone) {
29
+ const middlePoint = Math.floor(totalPageCount / 2);
30
+ if (currentPage <= middlePoint) {
31
+ const startIndex = currentPage - numStartZoneButtons + 1;
32
+ for (let i = startIndex; i <= currentPage; i++) {
33
+ paginationRange.push(i);
34
+ }
35
+ paginationRange.push('...');
36
+ for (let i = endZoneStart; i <= totalPageCount; i++) {
37
+ paginationRange.push(i);
38
+ }
39
+ return paginationRange;
40
+ }
41
+ for (let i = 1; i <= numStartZoneButtons; i++) {
42
+ paginationRange.push(i);
43
+ }
44
+ paginationRange.push('...');
45
+ const endIndex = Math.min(currentPage + numEndZoneButtons - 1, totalPageCount);
46
+ for (let i = currentPage; i <= endIndex; i++) {
47
+ paginationRange.push(i);
48
+ }
49
+ return paginationRange;
50
+ }
51
+ }
52
+ const isInStartZone = currentPage <= startZoneEnd;
53
+ const isInEndZone = currentPage >= endZoneStart;
54
+ for (let i = 1; i <= startZoneEnd; i++) {
55
+ paginationRange.push(i);
56
+ }
57
+ if (showMiddleZone &&
58
+ !isInStartZone &&
59
+ !isInEndZone &&
60
+ endZoneStart > startZoneEnd + 1) {
61
+ paginationRange.push('...');
62
+ const halfMiddle = Math.floor(numMiddleButtons / 2);
63
+ const middleStart = Math.max(startZoneEnd + 1, currentPage - halfMiddle);
64
+ const middleEnd = Math.min(endZoneStart - 1, currentPage + halfMiddle);
65
+ for (let i = middleStart; i <= middleEnd; i++) {
66
+ paginationRange.push(i);
67
+ }
68
+ paginationRange.push('...');
69
+ }
70
+ else if (endZoneStart > startZoneEnd + 1) {
71
+ paginationRange.push('...');
72
+ }
73
+ for (let i = endZoneStart; i <= totalPageCount; i++) {
74
+ paginationRange.push(i);
75
+ }
76
+ return paginationRange;
77
+ }
78
+
79
+ const nvPaginationNavCss = () => `nv-pagination-nav{display:block}nv-pagination-nav [data-scope=pagination-nav]{display:flex;align-items:center;justify-content:center;gap:var(--spacing-2);flex-wrap:wrap}nv-pagination-nav [data-scope=page-list]{display:flex;align-items:center;gap:var(--spacing-2);list-style:none;margin:0;padding:0}nv-pagination-nav [data-scope=page-button]{display:flex;align-items:center}nv-pagination-nav [data-scope=page-button] nv-button,nv-pagination-nav [data-scope=page-button] nv-iconbutton{min-width:var(--spacing-8);justify-content:center}nv-pagination-nav [data-scope=ellipsis]{display:flex;align-items:center;justify-content:center;min-width:var(--spacing-8);height:var(--spacing-8);color:var(--color-content-lower-text);font-size:var(--font-size-sm);user-select:none}`;
80
+
81
+ const NvPaginationNav = class {
82
+ constructor(hostRef) {
83
+ index.registerInstance(this, hostRef);
84
+ this.currentPageChanged = index.createEvent(this, "currentPageChanged", 3);
85
+ /****************************************************************************/
86
+ //#region PROPERTIES
87
+ /**
88
+ * Label for the previous button.
89
+ */
90
+ this.previousButtonLabel = 'Previous';
91
+ /**
92
+ * Label for the next button.
93
+ */
94
+ this.nextButtonLabel = 'Next';
95
+ /**
96
+ * Number of page buttons to show at the start of the pagination range.
97
+ */
98
+ this.numStartZoneButtons = 2;
99
+ /**
100
+ * Number of page buttons to show at the end of the pagination range.
101
+ */
102
+ this.numEndZoneButtons = 2;
103
+ /**
104
+ * Number of page buttons to show in the middle zone around the current page.
105
+ */
106
+ this.numMiddleButtons = 1;
107
+ /**
108
+ * Current page number (1-based index).
109
+ */
110
+ this.currentPage = 1;
111
+ /**
112
+ * Total number of items to paginate.
113
+ */
114
+ this.totalCount = 100;
115
+ /**
116
+ * Number of items per page.
117
+ */
118
+ this.pageSize = 10;
119
+ /**
120
+ * If true, the Previous/Next navigation buttons will be displayed as icon buttons.
121
+ * Page number buttons always use regular buttons.
122
+ */
123
+ this.isOnlyIcon = false;
124
+ /**
125
+ * If true, shows the middle zone with the current page when it's not in start/end zones.
126
+ * If false (default), only shows one ellipsis between start and end zones (simpler pagination).
127
+ */
128
+ this.showMiddleZone = false;
129
+ /**
130
+ * Handles page change events.
131
+ * @param {number} pageNumber The page number to navigate to.
132
+ */
133
+ this.handlePageChange = (pageNumber) => {
134
+ if (pageNumber < 1 ||
135
+ pageNumber > this.totalPages ||
136
+ pageNumber === this.currentPage) {
137
+ return;
138
+ }
139
+ this.currentPage = pageNumber;
140
+ };
141
+ }
142
+ //#endregion PROPERTIES
143
+ /****************************************************************************/
144
+ //#region METHODS
145
+ /**
146
+ * Calculates the total number of pages based on totalCount and pageSize.
147
+ * @returns {number} The total number of pages.
148
+ */
149
+ get totalPages() {
150
+ return Math.ceil(this.totalCount / this.pageSize);
151
+ }
152
+ //#endregion METHODS
153
+ /****************************************************************************/
154
+ //#region WATCHERS
155
+ /**
156
+ * Watches for changes to currentPage and emits the currentPageChanged event.
157
+ * @param {number} newValue The new current page value.
158
+ */
159
+ onCurrentPageChange(newValue) {
160
+ // Validate and constrain currentPage
161
+ const constrainedValue = Math.max(1, Math.min(newValue, this.totalPages));
162
+ if (constrainedValue !== newValue) {
163
+ this.currentPage = constrainedValue;
164
+ return;
165
+ }
166
+ this.currentPageChanged.emit(newValue);
167
+ }
168
+ //#endregion EVENTS
169
+ /****************************************************************************/
170
+ //#region RENDER
171
+ /**
172
+ * Renders a single page button.
173
+ * @param {number} pageNumber The page number to render.
174
+ * @returns {JSX.Element} The rendered page button element.
175
+ */
176
+ renderPageButton(pageNumber) {
177
+ const isCurrentPage = pageNumber === this.currentPage;
178
+ return (index.h("li", { key: pageNumber, "data-scope": "page-button" }, index.h("nv-button", { size: "md", emphasis: "lower", active: isCurrentPage, onClick: () => this.handlePageChange(pageNumber), "data-page": pageNumber, "data-current": isCurrentPage ? 'true' : undefined }, pageNumber)));
179
+ }
180
+ render() {
181
+ const isFirstPage = this.currentPage === 1;
182
+ const isLastPage = this.currentPage === this.totalPages;
183
+ return (index.h(index.Host, { key: 'b2255fce4e03cee8ff370086aac31df5c69d275d' }, index.h("nav", { key: 'a136b7193f9b00a68e6ee626802dee19fd762531', "data-scope": "pagination-nav", "aria-label": "Pagination navigation" }, this.isOnlyIcon ? (index.h("nv-iconbutton", { name: "chevron-left", size: "md", emphasis: "lower", disabled: isFirstPage, onClick: () => this.handlePageChange(this.currentPage - 1), "data-scope": "previous-iconbutton", "aria-label": this.previousButtonLabel })) : (index.h("nv-button", { size: "md", emphasis: "lower", disabled: isFirstPage, onClick: () => this.handlePageChange(this.currentPage - 1), "data-scope": "previous-button" }, index.h("nv-icon", { slot: "leading-icon", name: "chevron-left" }), this.previousButtonLabel)), index.h("ol", { key: '5bebe0e3f5c8f1799ed8980752fbed7aadbcac01', "data-scope": "page-list" }, calculatePaginationRange({
184
+ currentPage: this.currentPage,
185
+ totalCount: this.totalCount,
186
+ pageSize: this.pageSize,
187
+ numStartZoneButtons: this.numStartZoneButtons,
188
+ numEndZoneButtons: this.numEndZoneButtons,
189
+ numMiddleButtons: this.numMiddleButtons,
190
+ showMiddleZone: this.showMiddleZone,
191
+ }).map(item => typeof item === 'number' ? (this.renderPageButton(item)) : (index.h("li", { key: `ellipsis-${item}`, "data-scope": "ellipsis", "aria-hidden": "true" }, index.h("span", null, item))))), this.isOnlyIcon ? (index.h("nv-iconbutton", { name: "chevron-right", size: "md", emphasis: "lower", disabled: isLastPage, onClick: () => this.handlePageChange(this.currentPage + 1), "data-scope": "next-iconbutton", "aria-label": this.nextButtonLabel })) : (index.h("nv-button", { size: "md", emphasis: "lower", disabled: isLastPage, onClick: () => this.handlePageChange(this.currentPage + 1), "data-scope": "next-button" }, this.nextButtonLabel, index.h("nv-icon", { slot: "trailing-icon", name: "chevron-right" }))))));
192
+ }
193
+ static get watchers() { return {
194
+ "currentPage": [{
195
+ "onCurrentPageChange": 0
196
+ }]
197
+ }; }
198
+ };
199
+ NvPaginationNav.style = nvPaginationNavCss();
200
+
201
+ exports.nv_pagination_nav = NvPaginationNav;
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-BeFrXZol.js');
3
+ var index = require('./index-Kxp9mv-Q.js');
4
4
  require('@stencil/react-output-target/runtime');
5
5
  require('react');
6
6
  require('react-dom');
@@ -215,7 +215,7 @@ const NvPaginationtable = class {
215
215
  const pageLabel = interpolate(this.labelPage, { pageIndex: this.pageIndex + 1, pageCount: this.pageCount }, 'Page {pageIndex} of {pageCount}');
216
216
  const totalLabel = interpolate(this.labelTotal, { rowCount: this.rowCount }, 'Total: {rowCount} rows');
217
217
  const pageSizeOptions = generatePageSizeOptions(this.labelPageSizeOption ?? '{pageSize} per page');
218
- return (index.h(index.Host, { key: '1ca51049fc16cc949fe38c80ceabc7a72f189279' }, !this.hideControls && (index.h("div", { key: '6962c8ee324aa42f5eb5defceb48cbb6b5a6ed0a', "data-scope": "controls" }, !this.hideFirstLast && (index.h("nv-iconbutton", { key: 'faa193b020c69f274fd7024a9fbc736661500152', name: "chevrons-left", emphasis: "lower", size: "sm", disabled: atFirstPage, onClick: () => this.firstPage() })), !this.hidePrevNext && (index.h("nv-iconbutton", { key: 'dfa8731f6389768a659207bac3752b9ac674c9e8', name: "chevron-left", emphasis: "lower", size: "sm", disabled: atFirstPage, onClick: () => this.previousPage() })), !this.hidePrevNext && (index.h("nv-iconbutton", { key: 'a546e95f9921f4b6b0848ce1eaee929ac223949a', name: "chevron-right", emphasis: "lower", size: "sm", disabled: atLastPage, onClick: () => this.nextPage() })), !this.hideFirstLast && (index.h("nv-iconbutton", { key: 'f59fac8c7ee04c37779089aa8de8980d5ca51d04', name: "chevrons-right", emphasis: "lower", size: "sm", disabled: atLastPage, onClick: () => this.lastPage() })))), index.h("span", { key: '32079d8ea98a2918eee76c0176515eba13ac24a0', "data-scope": "page-label" }, pageLabel), index.h("span", { key: '21c38d9e335ce7c9d952f5ef8201d51f1d486b76', "data-scope": "total" }, totalLabel), index.h("div", { key: 'e981f5e869c08bdd52639b35ac6bec3deec8577c', "data-scope": "per-page" }, index.h("nv-fieldselect", { key: 'ac22a50b68b7a75f0560d19641c159a5d771bceb', value: String(this.pageSize), onValueChanged: this.handlePageSizeChange, options: pageSizeOptions })), index.h("slot", { key: '784a6edbfbf83b76ef7e49e881591ba16e9da064' })));
218
+ return (index.h(index.Host, { key: '0556d5f0dc69faa503b504ec87c47819f92d565d' }, !this.hideControls && (index.h("div", { key: 'b097a2bda8c09b88db038c1039133a7ec2571247', "data-scope": "controls" }, !this.hideFirstLast && (index.h("nv-iconbutton", { key: '29841590c99ee7534d1d41933c4eb155a9b9a9db', name: "chevrons-left", emphasis: "lower", size: "sm", disabled: atFirstPage, onClick: () => this.firstPage() })), !this.hidePrevNext && (index.h("nv-iconbutton", { key: '9d075e5ea8ee0f1b77de4da5072862d076579778', name: "chevron-left", emphasis: "lower", size: "sm", disabled: atFirstPage, onClick: () => this.previousPage() })), !this.hidePrevNext && (index.h("nv-iconbutton", { key: '712ebb3f14e02945b20d57b85a891550a1e09e95', name: "chevron-right", emphasis: "lower", size: "sm", disabled: atLastPage, onClick: () => this.nextPage() })), !this.hideFirstLast && (index.h("nv-iconbutton", { key: '1982d2de200284b3bc70dd51bea9c452b2791038', name: "chevrons-right", emphasis: "lower", size: "sm", disabled: atLastPage, onClick: () => this.lastPage() })))), index.h("span", { key: '8c2f7473c47f4fcb9a8373c8b7030a7f56e8b682', "data-scope": "page-label" }, pageLabel), index.h("span", { key: '527cd649cf4e8ba1d62451d6910401076d555b86', "data-scope": "total" }, totalLabel), index.h("div", { key: '2bf99bd31d9d46059fc6ab52f6e20878ce2dea64', "data-scope": "per-page" }, index.h("nv-fieldselect", { key: '4f55796d8cccdf9f50792eb3ff3d448cdae8de07', value: String(this.pageSize), onValueChanged: this.handlePageSizeChange, options: pageSizeOptions })), index.h("slot", { key: '9b1dc7edf5dd4ed4be02705a11a3c04f5bcc81bd' })));
219
219
  }
220
220
  static get watchers() { return {
221
221
  "pageIndex": [{
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-BeFrXZol.js');
3
+ var index = require('./index-Kxp9mv-Q.js');
4
4
  var fade_animationDcRL9lcm = require('./fade.animation-DcRL9lcm-DAZeHoKN.js');
5
5
  var grow_animationD7ep_aVl = require('./grow.animation-D7ep_aVl-BuXEDSK-.js');
6
6
  require('./style-value-types.es-xlgmw4x8-B1vLqX9m.js');
@@ -1962,7 +1962,7 @@ const NvPopover = class {
1962
1962
  /****************************************************************************/
1963
1963
  //#region RENDER
1964
1964
  render() {
1965
- return (index.h(index.Host, { key: '8d6cfba040e2e29705a6e9fd3c1044c9e0b668b1' }, index.h("slot", { key: '1ea59e4037bf56ced06ad652c9c55bbc56556fd5', name: "trigger" }), index.h("div", { key: '7023f506e410e44a85c4683ebccfe10fdaf45c10', "data-scope": "popover", "data-strategy": this.strategy, hidden: true, ref: el => (this.popoverElement = el) }, this.hasArrow && (index.h("div", { key: 'b336819de26b0ae8899dbd378272a6a5a30517d6', "data-scope": "arrow", ref: el => (this.arrowElement = el) })), index.h("slot", { key: 'fd9aad00f57cb5bab850983f2b28ea80b4cdd7fb', name: "content" }))));
1965
+ return (index.h(index.Host, { key: '8f9429a26146be5feff838bff9861c8016bcae72' }, index.h("slot", { key: '507917d729f202d0ec29e2011b0aae958a4474b5', name: "trigger" }), index.h("div", { key: 'cc85ae4610b0554b2cddd2fb62a8e8df5b8de21f', "data-scope": "popover", "data-strategy": this.strategy, hidden: true, ref: el => (this.popoverElement = el) }, this.hasArrow && (index.h("div", { key: 'e53a79dc2a4d439271d55391ad087c0db8abaf19', "data-scope": "arrow", ref: el => (this.arrowElement = el) })), index.h("slot", { key: 'ef72627c588727dff2f558133d46e1689a89fc24', name: "content" }))));
1966
1966
  }
1967
1967
  get el() { return index.getElement(this); }
1968
1968
  static get watchers() { return {
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-BeFrXZol.js');
3
+ var index = require('./index-Kxp9mv-Q.js');
4
4
  require('@stencil/react-output-target/runtime');
5
5
  require('react');
6
6
  require('react-dom');
@@ -14,7 +14,7 @@ const NvRow = class {
14
14
  /****************************************************************************/
15
15
  //#region RENDER
16
16
  render() {
17
- return (index.h(index.Host, { key: '507041a8331236632f2dc12e94ca7c87465e8312' }, index.h("slot", { key: '3bef8f23cdc72e42467dc0407b9d2693f15638d7' })));
17
+ return (index.h(index.Host, { key: 'fa7853dd84c1d35ff72147a7b622f62fe89ee29b' }, index.h("slot", { key: '48edd35ada0b2df00b61a2522ac8ff33063b7831' })));
18
18
  }
19
19
  };
20
20
  NvRow.style = nvRowCss();
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-BeFrXZol.js');
3
+ var index = require('./index-Kxp9mv-Q.js');
4
4
  require('@stencil/react-output-target/runtime');
5
5
  require('react');
6
6
  require('react-dom');
@@ -162,7 +162,7 @@ const NvSidebar = class {
162
162
  //#region RENDER
163
163
  render() {
164
164
  const isCollapsed = this.type === 'collapsible' && !this.open;
165
- return (index.h(index.Host, { key: 'a22074a54f9d51c5a60dd698573a95862e9df0a8', role: "navigation", collapsed: isCollapsed ? true : undefined, "notification-intention": this.notificationIntention, "notification-emphasis": this.notificationEmphasis, "aria-expanded": this.type === 'collapsible' ? String(this.open) : undefined }, index.h("div", { key: 'f19453d0dbbad812f27f188ef198b895d37e8ad2', class: "nv-sidebar-container" }, index.h("slot", { key: '7194ae2a2a655716f3f1db89d9c38dc4b0ab9df0' })), this.type === 'collapsible' && (index.h("button", { key: '4f7a1805932f6e1783fbcf63dc54d3260464eab0', class: "nv-sidebar-toggle", onClick: this.handleToggle, "aria-label": this.open ? 'Collapse sidebar' : 'Expand sidebar' }, index.h("nv-icon", { key: '76d84d1c07d3f841808950c6805aa7bcaa63cf85', name: this.open
165
+ return (index.h(index.Host, { key: '7c77dc107335664b3844b38579f53c8805de09ca', role: "navigation", collapsed: isCollapsed ? true : undefined, "notification-intention": this.notificationIntention, "notification-emphasis": this.notificationEmphasis, "aria-expanded": this.type === 'collapsible' ? String(this.open) : undefined }, index.h("div", { key: '00e9958d45d311168ab3024eda4d0a45813a8152', class: "nv-sidebar-container" }, index.h("slot", { key: '047f6bda1730f65c403f6aefe52b7c06192001c3' })), this.type === 'collapsible' && (index.h("button", { key: '51174b4f74614dc1eb1bfc78aacc542d8c938a02', class: "nv-sidebar-toggle", onClick: this.handleToggle, "aria-label": this.open ? 'Collapse sidebar' : 'Expand sidebar' }, index.h("nv-icon", { key: '75fc4ce9ac319be982534d502d5c019ff7d8ebdf', name: this.open
166
166
  ? 'layout-sidebar-left-collapse'
167
167
  : 'layout-sidebar-right-collapse', size: "sm" })))));
168
168
  }
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-BeFrXZol.js');
3
+ var index = require('./index-Kxp9mv-Q.js');
4
4
  require('@stencil/react-output-target/runtime');
5
5
  require('react');
6
6
  require('react-dom');
@@ -14,7 +14,7 @@ const NvSidebarcontent = class {
14
14
  /****************************************************************************/
15
15
  //#region RENDER
16
16
  render() {
17
- return (index.h(index.Host, { key: 'e88e1557fbfa8ec74391dc11b6073eecb4d97685', role: "list" }, index.h("slot", { key: 'ccaf985cc498a5729600316135d750190a514582' })));
17
+ return (index.h(index.Host, { key: '1892ab4b2c7698bb6c0e2baae242650f3a967947', role: "list" }, index.h("slot", { key: 'a971f991f52e65f4bd83dafeee2cbdf7c4b6de51' })));
18
18
  }
19
19
  };
20
20
  NvSidebarcontent.style = nvSidebarcontentCss();
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-BeFrXZol.js');
3
+ var index = require('./index-Kxp9mv-Q.js');
4
4
  require('@stencil/react-output-target/runtime');
5
5
  require('react');
6
6
  require('react-dom');
@@ -14,7 +14,7 @@ const NvSidebardivider = class {
14
14
  /****************************************************************************/
15
15
  //#region RENDER
16
16
  render() {
17
- return index.h(index.Host, { key: 'e2288aab359dff9087f7758e53a476e4715b0742', role: "separator", "aria-orientation": "horizontal" });
17
+ return index.h(index.Host, { key: 'f8b607a8376e9e27d33ff13da96765bf46231cc0', role: "separator", "aria-orientation": "horizontal" });
18
18
  }
19
19
  };
20
20
  NvSidebardivider.style = nvSidebardividerCss();
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-BeFrXZol.js');
3
+ var index = require('./index-Kxp9mv-Q.js');
4
4
  require('@stencil/react-output-target/runtime');
5
5
  require('react');
6
6
  require('react-dom');
@@ -14,7 +14,7 @@ const NvSidebarfooter = class {
14
14
  /****************************************************************************/
15
15
  //#region RENDER
16
16
  render() {
17
- return (index.h(index.Host, { key: 'ac36a47c2f96070779b7b05134303604e3ef7676' }, index.h("slot", { key: '295d26a47fa386deade3799a02686afe6ef42ce0' })));
17
+ return (index.h(index.Host, { key: '4ef8bb09df1cca9008062f4dc8f0252472da6a66' }, index.h("slot", { key: 'b30037ecc79272287a5ad134b1b17ce9516d14c7' })));
18
18
  }
19
19
  };
20
20
  NvSidebarfooter.style = nvSidebarfooterCss();
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-BeFrXZol.js');
3
+ var index = require('./index-Kxp9mv-Q.js');
4
4
  require('@stencil/react-output-target/runtime');
5
5
  require('react');
6
6
  require('react-dom');
@@ -15,7 +15,7 @@ const NvSidebargroup = class {
15
15
  /****************************************************************************/
16
16
  //#region RENDER
17
17
  render() {
18
- return (index.h(index.Host, { key: 'efeaa9f861a41ad96b5f1878510bb1bbbd4a5404', role: "group", "aria-label": this.label }, this.label && index.h("div", { key: '75816b463eeb0cf7687f2b0bca271db560cfafa6', class: "nv-sidebargroup-label" }, this.label), index.h("slot", { key: '614116b7997561766949124e56f3cb66addd419b' })));
18
+ return (index.h(index.Host, { key: 'e23656515b0882eaeed7a9a3b5c772deab41cd9c', role: "group", "aria-label": this.label }, this.label && index.h("div", { key: '41600406fb5fd8f3845464260ccbcb3845d52b37', class: "nv-sidebargroup-label" }, this.label), index.h("slot", { key: '14303ef78c5da82c9a6d94d09a1e9341ade5bee4' })));
19
19
  }
20
20
  };
21
21
  NvSidebargroup.style = nvSidebargroupCss();
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-BeFrXZol.js');
3
+ var index = require('./index-Kxp9mv-Q.js');
4
4
  require('@stencil/react-output-target/runtime');
5
5
  require('react');
6
6
  require('react-dom');
@@ -14,7 +14,7 @@ const NvSidebarheader = class {
14
14
  /****************************************************************************/
15
15
  //#region RENDER
16
16
  render() {
17
- return (index.h(index.Host, { key: '8dd986cfb2cd89557955c6eb61ebfbad0eb1dbcc' }, index.h("slot", { key: 'ee7808c81f750f5c46da9ed0bfd3b9fcb18d393d' })));
17
+ return (index.h(index.Host, { key: '5e0b6bdc78618f3e434b62b6f6e4d60c220895ce' }, index.h("slot", { key: 'ae0f11bea6f4f9bbe5376d0870453648dc4acc77' })));
18
18
  }
19
19
  };
20
20
  NvSidebarheader.style = nvSidebarheaderCss();
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-BeFrXZol.js');
3
+ var index = require('./index-Kxp9mv-Q.js');
4
4
  require('@stencil/react-output-target/runtime');
5
5
  require('react');
6
6
  require('react-dom');
@@ -24,7 +24,7 @@ const NvSidebarlogo = class {
24
24
  render() {
25
25
  const logoSrc = this.logo || this.defaultLogo;
26
26
  const collapsedLogoSrc = this.collapsedLogo || this.defaultCollapsedLogo;
27
- return (index.h(index.Host, { key: '6a1df67b6c23e0c2b4cd4da481dcd7a708062963' }, index.h("div", { key: 'e974e75054b93aac6d417a5fa1c527ca75b0f417', class: "nv-sidebarlogo-container" }, index.h("img", { key: '51bb65b380cc18252a3ea6c16741485a61f0cf12', src: logoSrc, alt: this.label || 'Logo', class: "nv-sidebarlogo-full" }), index.h("img", { key: '0cee540a20ffb605ea2efa38c5b5942505ada7db', src: collapsedLogoSrc, alt: this.label || 'Logo', class: "nv-sidebarlogo-collapsed" }), this.label && index.h("span", { key: '10ffc4e62a39c5ecfffd9f115c5929057901222a', class: "nv-sidebarlogo-title" }, this.label))));
27
+ return (index.h(index.Host, { key: '4a4ce90770480c97bbe8d940cf30f75b838de6c4' }, index.h("div", { key: '0ff88ef0a319410b0162f79738c13b3eb304fccb', class: "nv-sidebarlogo-container" }, index.h("img", { key: '6e94515fac21420295752374392e24de5079f013', src: logoSrc, alt: this.label || 'Logo', class: "nv-sidebarlogo-full" }), index.h("img", { key: '88f326b233a44c0e4bbc1efbeabfa619f27366a2', src: collapsedLogoSrc, alt: this.label || 'Logo', class: "nv-sidebarlogo-collapsed" }), index.h("slot", { key: 'bb09f8c0b8df53e8e3a47cc70235ca1599420ec1', name: "label" }), this.label && index.h("span", { key: 'b711afc9977d86decc2f475b457e8a8d6ed507f0', class: "nv-sidebarlogo-title" }, this.label))));
28
28
  }
29
29
  };
30
30
  NvSidebarlogo.style = nvSidebarlogoCss();
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-BeFrXZol.js');
3
+ var index = require('./index-Kxp9mv-Q.js');
4
4
  require('@stencil/react-output-target/runtime');
5
5
  require('react');
6
6
  require('react-dom');
@@ -57,9 +57,16 @@ const NvSidebarnavitem = class {
57
57
  event.preventDefault();
58
58
  event.stopPropagation();
59
59
  this.open = !this.open;
60
+ return;
61
+ }
62
+ // For non-collapsible items in expanded mode, if the click didn't originate
63
+ // from the link itself (e.g. clicked the icon or padding), trigger the link.
64
+ if (!target.closest('a')) {
65
+ const link = this.el.querySelector('.nv-sidebarnavitem-content a, :scope > a');
66
+ if (link) {
67
+ link.click();
68
+ }
60
69
  }
61
- // For non-collapsible items in expanded mode, let the link handle the navigation
62
- // Don't prevent default or stop propagation - allow the link to work normally
63
70
  };
64
71
  this.isAnimating = false;
65
72
  this.hasInitializedHeight = false;
@@ -269,7 +276,7 @@ const NvSidebarnavitem = class {
269
276
  render() {
270
277
  const showNotificationBullet = this.notificationCount !== undefined && this.notificationCount > 0;
271
278
  const notificationSize = this.isSidebarCollapsed ? 'reduced' : 'default';
272
- return (index.h(index.Host, { key: '0809fb5e4f1663571199bd75e3f2d69d09eabc2f', role: "listitem" }, index.h("div", { key: '6885fbc8e01fd60f32d56a8b750398a772ee1169', class: "nv-sidebarnavitem-trigger", onClick: this.handleToggle, "aria-expanded": this.collapsible ? String(this.open) : undefined, "aria-current": this.active && !this.collapsible ? 'page' : undefined }, this.icon && (index.h("div", { key: '515ea7bb25f83fb3a645531ade9370357b1a3cc3', class: "nv-sidebarnavitem-icon" }, index.h("nv-icon", { key: '718f35787fcd979dd305bcf985a51a9bf7f21a8b', name: this.icon, size: "md" }), showNotificationBullet && this.isSidebarCollapsed && (index.h("nv-notification-bullet", { key: 'c99767c829bf878d30345933d1bdf9f7c79fc778', count: this.notificationCount, size: notificationSize, contrastingBorder: true })))), index.h("div", { key: 'd2cfe856fb91a7d15232ff30c73a6709b6adffbf', class: "nv-sidebarnavitem-content" }, index.h("slot", { key: 'dbcc77aaf798efdca11714c0a6c9109c112ea314' })), index.h("div", { key: 'bf0136c15af7ac1c4bb98c9415ef0a37760cf4e1', class: "nv-sidebarnavitem-trailing" }, index.h("slot", { key: 'b84329d00c08ba2e7dc1a783b65d309fbf45a4da', name: "trailing" }), showNotificationBullet && !this.isSidebarCollapsed && (index.h("nv-notification-bullet", { key: '8a5b9447b80a59c38f006d86fe0d6bd655e02735', count: this.notificationCount, size: notificationSize })), this.collapsible && (index.h("nv-icon", { key: '47348e1ad810f7abd022dc510bfd11caeb8d8c71', name: "chevron-down", size: "sm", class: "nv-sidebarnavitem-chevron" })))), this.collapsible && this.hasSubitems && (index.h("div", { key: 'ba5160e5ea9cac822afdf9ed75f3e00807615304', class: "nv-sidebarnavitem-subitems", ref: el => {
279
+ return (index.h(index.Host, { key: '9fe0814616178746b91e3fd1ed085b69a24c5a59', role: "listitem" }, index.h("div", { key: 'ab54bdb0b6ef411626cc7c12656f6dced81f4140', class: "nv-sidebarnavitem-trigger", onClick: this.handleToggle, "aria-expanded": this.collapsible ? String(this.open) : undefined, "aria-current": this.active && !this.collapsible ? 'page' : undefined }, this.icon && (index.h("div", { key: '11c80c2443e30989b15b3439281794ef822b8a1a', class: "nv-sidebarnavitem-icon" }, index.h("nv-icon", { key: '2254b2be9015f66e42f8bf3c7b81d26469d230aa', name: this.icon, size: "md" }), showNotificationBullet && this.isSidebarCollapsed && (index.h("nv-notification-bullet", { key: 'bbf6f175b464a195886d8df1bde3f87fbaa56931', count: this.notificationCount, size: notificationSize, contrastingBorder: true })))), index.h("div", { key: 'a9b148ef62b4a58cb17ef63ab89dd1772ec10334', class: "nv-sidebarnavitem-content" }, index.h("slot", { key: 'ad8cc1679a186eedfe2d04100b5312cca5eab311' })), index.h("div", { key: '0716bcb01d00275d03d3780163d1c404a37bb0d4', class: "nv-sidebarnavitem-trailing" }, index.h("slot", { key: 'c714d7e45b82dbd964d522402a62afc4ca65852d', name: "trailing" }), showNotificationBullet && !this.isSidebarCollapsed && (index.h("nv-notification-bullet", { key: 'd854b2a57aaf1975bf01e5c7688d690ebf0d0b81', count: this.notificationCount, size: notificationSize })), this.collapsible && (index.h("nv-icon", { key: '3bafbebf228375155a6dc010982211cdda6ad455', name: "chevron-down", size: "sm", class: "nv-sidebarnavitem-chevron" })))), this.collapsible && this.hasSubitems && (index.h("div", { key: '710a6a6c3437dc74bd1f380cc5428e23f3fa7967', class: "nv-sidebarnavitem-subitems", ref: el => {
273
280
  // Only update ref and initialize if element changed or not yet initialized
274
281
  if (el !== this.subitemsRef) {
275
282
  this.subitemsRef = el;
@@ -284,7 +291,7 @@ const NvSidebarnavitem = class {
284
291
  });
285
292
  }
286
293
  }
287
- } }, index.h("slot", { key: '4cd023b2af51cf8941d29cb2728cdd1c6b2ea8ed', name: "subitems" })))));
294
+ } }, index.h("slot", { key: '0fbabb90cc3df4b7cea085eb108dfd7898929a8a', name: "subitems" })))));
288
295
  }
289
296
  get el() { return index.getElement(this); }
290
297
  static get watchers() { return {
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-BeFrXZol.js');
3
+ var index = require('./index-Kxp9mv-Q.js');
4
4
  require('@stencil/react-output-target/runtime');
5
5
  require('react');
6
6
  require('react-dom');
@@ -27,7 +27,7 @@ const NvSidebarnavsubitem = class {
27
27
  /****************************************************************************/
28
28
  //#region RENDER
29
29
  render() {
30
- return (index.h(index.Host, { key: 'e5b353c32937bbf45c455593693b58d7177879f9', role: "listitem", "aria-current": this.active ? 'page' : undefined }, index.h("div", { key: 'ebe7894659ae59538adc96043621b37a3145ef1a', class: "nv-sidebarnavsubitem-indicator" }), index.h("div", { key: '2054d9f16623e2611652274f4872b6bcdc78c44c', class: "nv-sidebarnavsubitem-content" }, index.h("slot", { key: 'fa1db84fbb2fcbc3cd6729146b6962445bbba2be' })), index.h("div", { key: 'd3399e26472f48809c2b4fd824402827330b9b11', class: "nv-sidebarnavsubitem-trailing" }, index.h("slot", { key: '5ee8b8b8198854ed658272032855e3cf18f21a25', name: "trailing" }))));
30
+ return (index.h(index.Host, { key: '05f74ef3cf6f93804e4446fe23977d8773deb7e2', role: "listitem", "aria-current": this.active ? 'page' : undefined }, index.h("div", { key: 'f1f2db51fbff9c2f58ba317cb5fcbe1805cd189b', class: "nv-sidebarnavsubitem-indicator" }), index.h("div", { key: 'c476dfbda77ee7bcca1338ef8d8b103806e6e3a7', class: "nv-sidebarnavsubitem-content" }, index.h("slot", { key: 'b80cb20a4f13b691cbd31c344d442f8a23585a26' })), index.h("div", { key: '383dc01158c4752506a6069be9abe2e20b83b9e4', class: "nv-sidebarnavsubitem-trailing" }, index.h("slot", { key: '2c63f696dd64ef8f680f3b85959d756952fd8db4', name: "trailing" }))));
31
31
  }
32
32
  };
33
33
  NvSidebarnavsubitem.style = nvSidebarnavsubitemCss();
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-BeFrXZol.js');
3
+ var index = require('./index-Kxp9mv-Q.js');
4
4
  require('@stencil/react-output-target/runtime');
5
5
  require('react');
6
6
  require('react-dom');
@@ -326,7 +326,7 @@ const NvSplit = class {
326
326
  /****************************************************************************/
327
327
  //#region RENDER
328
328
  render() {
329
- return (index.h(index.Host, { key: 'ab2b75b963d3cee109e90fe22e0dfe356a384706', "data-dragging": this.isDragging.toString() }, index.h("slot", { key: 'a7a8258a976029f91ffbce3fa1f90f7ed35409ef', name: "pane" }), index.h("slot", { key: '9af34cb299ff061bec6ba7dfe6e969e093aeb3bc', name: "gutter" })));
329
+ return (index.h(index.Host, { key: '8ad8bebda77f9868b9715280c0157f247057026d', "data-dragging": this.isDragging.toString() }, index.h("slot", { key: '8ca002feab0c3cd7755a5f1f53864e4e20585420', name: "pane" }), index.h("slot", { key: 'f7f7352ed8c326ec263f6d617bcd84fea02689ea', name: "gutter" })));
330
330
  }
331
331
  get el() { return index.getElement(this); }
332
332
  static get watchers() { return {