@nanoporetech-digital/components 8.1.0 → 8.2.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 (151) hide show
  1. package/dist/cjs/{fade-DiBAr_-0.js → fade-Cvsqaxtn.js} +1 -1
  2. package/dist/cjs/{fullscreen-DiSrws4D.js → fullscreen-BtSF9KqT.js} +1 -1
  3. package/dist/cjs/index-Bp8uD6Gl.js +4 -0
  4. package/dist/cjs/{lazyload-CilBX2zO.js → lazyload-DxM1Zo3E.js} +1 -1
  5. package/dist/cjs/loader.cjs.js +1 -1
  6. package/dist/cjs/nano-avatar_5.cjs.entry.js +7 -7
  7. package/dist/cjs/nano-components.cjs.js +1 -1
  8. package/dist/cjs/nano-date-picker_2.cjs.entry.js +29 -26
  9. package/dist/cjs/nano-icon_3.cjs.entry.js +3 -3
  10. package/dist/cjs/nano-in-page-nav.cjs.entry.js +2 -2
  11. package/dist/cjs/nano-increment.cjs.entry.js +81 -0
  12. package/dist/cjs/nano-intersection-observe.cjs.entry.js +1 -1
  13. package/dist/cjs/nano-masked-overflow.cjs.entry.js +3 -3
  14. package/dist/cjs/nano-menu-drawer.cjs.entry.js +2 -2
  15. package/dist/cjs/nano-more-less.cjs.entry.js +2 -2
  16. package/dist/cjs/nano-rating.cjs.entry.js +4 -4
  17. package/dist/cjs/nano-resize-observe.cjs.entry.js +2 -2
  18. package/dist/cjs/nano-slide.cjs.entry.js +1 -1
  19. package/dist/cjs/{nano-slides-CFlLOF1V.js → nano-slides-DLbZhf2H.js} +7 -7
  20. package/dist/cjs/nano-slides.cjs.entry.js +1 -1
  21. package/dist/cjs/nano-sortable.cjs.entry.js +1 -1
  22. package/dist/cjs/nano-sticker.cjs.entry.js +2 -2
  23. package/dist/cjs/nano-tab-content.cjs.entry.js +2 -2
  24. package/dist/cjs/nano-tab-group.cjs.entry.js +1 -1
  25. package/dist/cjs/nano-tab.cjs.entry.js +2 -2
  26. package/dist/cjs/nano-table.cjs.entry.js +2 -2
  27. package/dist/cjs/{page-dots-B69b5Pqb.js → page-dots-DpnNe0bi.js} +1 -1
  28. package/dist/collection/collection-manifest.json +1 -0
  29. package/dist/collection/components/breadcrumb/breadcrumb.js +1 -1
  30. package/dist/collection/components/icon-button/icon-button.css +1 -1
  31. package/dist/collection/components/in-page-nav/in-page-nav.css +3 -1
  32. package/dist/collection/components/in-page-nav/in-page-nav.js +2 -2
  33. package/dist/collection/components/increment/increment.css +102 -0
  34. package/dist/collection/components/increment/increment.js +97 -0
  35. package/dist/collection/components/input/input.js +30 -27
  36. package/dist/collection/components/intersection-observe/intersection-observe.js +1 -1
  37. package/dist/collection/components/masked-overflow/masked-overflow.js +3 -3
  38. package/dist/collection/components/menu-drawer/menu-drawer.js +2 -2
  39. package/dist/collection/components/more-less/more-less.js +2 -2
  40. package/dist/collection/components/rating/rating.js +4 -4
  41. package/dist/collection/components/resize-observe/resize-observe.js +2 -2
  42. package/dist/collection/components/select/select.js +7 -7
  43. package/dist/collection/components/slides/slide.js +1 -1
  44. package/dist/collection/components/slides/slides.js +3 -3
  45. package/dist/collection/components/sortable/sortable.js +1 -1
  46. package/dist/collection/components/sticker/sticker.js +2 -2
  47. package/dist/collection/components/table/table.js +2 -2
  48. package/dist/collection/components/tabs/tab-content.js +2 -2
  49. package/dist/collection/components/tabs/tab-group.js +1 -1
  50. package/dist/collection/components/tabs/tab.js +2 -2
  51. package/dist/collection/components/tooltip/tooltip.js +2 -2
  52. package/dist/components/icon-button.js +1 -1
  53. package/dist/components/input.js +39 -36
  54. package/dist/components/masked-overflow.js +3 -3
  55. package/dist/components/nano-in-page-nav.js +2 -2
  56. package/dist/components/nano-increment.d.ts +11 -0
  57. package/dist/components/nano-increment.js +119 -0
  58. package/dist/components/nano-intersection-observe.js +1 -1
  59. package/dist/components/nano-menu-drawer.js +2 -2
  60. package/dist/components/nano-more-less.js +2 -2
  61. package/dist/components/nano-rating.js +4 -4
  62. package/dist/components/nano-slide.js +1 -1
  63. package/dist/components/nano-sortable.js +1 -1
  64. package/dist/components/nano-tab-content.js +2 -2
  65. package/dist/components/nano-tab-group.js +1 -1
  66. package/dist/components/nano-tab.js +2 -2
  67. package/dist/components/nano-table.js +2 -2
  68. package/dist/components/resize-observe.js +2 -2
  69. package/dist/components/select.js +7 -7
  70. package/dist/components/slides.js +3 -3
  71. package/dist/components/sticker.js +2 -2
  72. package/dist/components/tooltip.js +2 -2
  73. package/dist/esm/{fade-CJJNY8cW.js → fade-M1mjf4zm.js} +1 -1
  74. package/dist/esm/{fullscreen-kmgJDkI-.js → fullscreen-BJlrN4_5.js} +1 -1
  75. package/dist/esm/index-DgO0qeQ9.js +4 -0
  76. package/dist/esm/{lazyload-DqTFDE4y.js → lazyload-B6FI3nbb.js} +1 -1
  77. package/dist/esm/loader.js +1 -1
  78. package/dist/esm/nano-avatar_5.entry.js +7 -7
  79. package/dist/esm/nano-components.js +1 -1
  80. package/dist/esm/nano-date-picker_2.entry.js +29 -26
  81. package/dist/esm/nano-icon_3.entry.js +3 -3
  82. package/dist/esm/nano-in-page-nav.entry.js +2 -2
  83. package/dist/esm/nano-increment.entry.js +79 -0
  84. package/dist/esm/nano-intersection-observe.entry.js +1 -1
  85. package/dist/esm/nano-masked-overflow.entry.js +3 -3
  86. package/dist/esm/nano-menu-drawer.entry.js +2 -2
  87. package/dist/esm/nano-more-less.entry.js +2 -2
  88. package/dist/esm/nano-rating.entry.js +4 -4
  89. package/dist/esm/nano-resize-observe.entry.js +2 -2
  90. package/dist/esm/nano-slide.entry.js +1 -1
  91. package/dist/esm/{nano-slides-Bdq8L4lE.js → nano-slides-CI0F1FDY.js} +7 -7
  92. package/dist/esm/nano-slides.entry.js +1 -1
  93. package/dist/esm/nano-sortable.entry.js +1 -1
  94. package/dist/esm/nano-sticker.entry.js +2 -2
  95. package/dist/esm/nano-tab-content.entry.js +2 -2
  96. package/dist/esm/nano-tab-group.entry.js +1 -1
  97. package/dist/esm/nano-tab.entry.js +2 -2
  98. package/dist/esm/nano-table.entry.js +2 -2
  99. package/dist/esm/{page-dots-BBtKwJtf.js → page-dots-BsFo0sLb.js} +1 -1
  100. package/dist/nano-components/{fade-CJJNY8cW.js → fade-M1mjf4zm.js} +1 -1
  101. package/dist/nano-components/{fullscreen-kmgJDkI-.js → fullscreen-BJlrN4_5.js} +1 -1
  102. package/dist/nano-components/{lazyload-DqTFDE4y.js → lazyload-B6FI3nbb.js} +1 -1
  103. package/dist/nano-components/nano-avatar_5.entry.js +1 -1
  104. package/dist/nano-components/nano-components.css +46 -1
  105. package/dist/nano-components/nano-components.esm.js +1 -1
  106. package/dist/nano-components/nano-date-picker_2.entry.js +1 -1
  107. package/dist/nano-components/nano-icon_3.entry.js +1 -1
  108. package/dist/nano-components/nano-in-page-nav.entry.js +1 -1
  109. package/dist/nano-components/nano-increment.entry.js +4 -0
  110. package/dist/nano-components/nano-intersection-observe.entry.js +1 -1
  111. package/dist/nano-components/nano-masked-overflow.entry.js +1 -1
  112. package/dist/nano-components/nano-menu-drawer.entry.js +1 -1
  113. package/dist/nano-components/nano-more-less.entry.js +1 -1
  114. package/dist/nano-components/nano-rating.entry.js +1 -1
  115. package/dist/nano-components/nano-resize-observe.entry.js +1 -1
  116. package/dist/nano-components/nano-slide.entry.js +1 -1
  117. package/dist/nano-components/{nano-slides-Bdq8L4lE.js → nano-slides-CI0F1FDY.js} +2 -2
  118. package/dist/nano-components/nano-slides.entry.js +1 -1
  119. package/dist/nano-components/nano-sortable.entry.js +1 -1
  120. package/dist/nano-components/nano-sticker.entry.js +1 -1
  121. package/dist/nano-components/nano-tab-content.entry.js +1 -1
  122. package/dist/nano-components/nano-tab-group.entry.js +1 -1
  123. package/dist/nano-components/nano-tab.entry.js +1 -1
  124. package/dist/nano-components/nano-table.entry.js +1 -1
  125. package/dist/nano-components/{page-dots-BBtKwJtf.js → page-dots-BsFo0sLb.js} +1 -1
  126. package/dist/style/components.css +1 -1
  127. package/dist/style/components.css.map +1 -1
  128. package/dist/style/core.css +1 -1
  129. package/dist/style/core.css.map +1 -1
  130. package/dist/style/nano.css +1 -1
  131. package/dist/style/nano.css.map +1 -1
  132. package/dist/types/components/in-page-nav/in-page-nav.d.ts +1 -1
  133. package/dist/types/components/increment/increment.d.ts +19 -0
  134. package/dist/types/components/input/input.d.ts +6 -2
  135. package/dist/types/components.d.ts +33 -4
  136. package/dist/wdio.conf.js +2 -2
  137. package/docs-json.json +46 -4
  138. package/docs-vscode.json +10 -2
  139. package/hydrate/index.js +159 -67
  140. package/hydrate/index.mjs +159 -67
  141. package/package.json +2 -2
  142. /package/dist/types/builds/{FKs_t1C_ → bsFinusk}/0/Digital/nano-components/packages/components/.stencil/plugins/stencil/vue-output/generate-vue-component.d.ts +0 -0
  143. /package/dist/types/builds/{FKs_t1C_ → bsFinusk}/0/Digital/nano-components/packages/components/.stencil/plugins/stencil/vue-output/index.d.ts +0 -0
  144. /package/dist/types/builds/{FKs_t1C_ → bsFinusk}/0/Digital/nano-components/packages/components/.stencil/plugins/stencil/vue-output/output-vue.d.ts +0 -0
  145. /package/dist/types/builds/{FKs_t1C_ → bsFinusk}/0/Digital/nano-components/packages/components/.stencil/plugins/stencil/vue-output/plugin.d.ts +0 -0
  146. /package/dist/types/builds/{FKs_t1C_ → bsFinusk}/0/Digital/nano-components/packages/components/.stencil/plugins/stencil/vue-output/types.d.ts +0 -0
  147. /package/dist/types/builds/{FKs_t1C_ → bsFinusk}/0/Digital/nano-components/packages/components/.stencil/plugins/stencil/vue-output/utils.d.ts +0 -0
  148. /package/dist/types/builds/{FKs_t1C_ → bsFinusk}/0/Digital/nano-components/packages/components/.stencil/stencil.config.d.ts +0 -0
  149. /package/dist/types/builds/{FKs_t1C_ → bsFinusk}/0/Digital/nano-components/packages/components/.stencil/stencil.config.prod.d.ts +0 -0
  150. /package/dist/types/builds/{FKs_t1C_ → bsFinusk}/0/Digital/nano-components/packages/components/.stencil/testing/mocks/intersection-observer.d.ts +0 -0
  151. /package/dist/types/builds/{FKs_t1C_ → bsFinusk}/0/Digital/nano-components/packages/components/.stencil/wdio.conf.d.ts +0 -0
@@ -732,7 +732,7 @@ export class Sortable {
732
732
  }
733
733
  }
734
734
  render() {
735
- return (h(Host, { key: 'afd9f0d80c702f205fcf981c0f5ecd0006ff36f6', class: "nano-sortable" }, h("div", { key: '99b144761c9d9b566fa8968057b34d288729118d', class: "sortable__live-region", "aria-live": "polite", "aria-relevant": "additions", "aria-atomic": "true", role: "log", part: "announcements" }, this.ariaTextList.map((str) => (h("div", null, str)))), h("slot", { key: 'f1921453fbb7744eebcb74dbd652e4e62da17aba' })));
735
+ return (h(Host, { key: 'd6d4f0ad6adf2a3f5e1d36b757e116b58e5b55b4', class: "nano-sortable" }, h("div", { key: 'd2cfcad28acfb052acbc6093dddfc247f5369bcf', class: "sortable__live-region", "aria-live": "polite", "aria-relevant": "additions", "aria-atomic": "true", role: "log", part: "announcements" }, this.ariaTextList.map((str) => (h("div", null, str)))), h("slot", { key: '079bc29ba8c2f26163b7e3a23f0107f78db7b3fb' })));
736
736
  }
737
737
  static get is() { return "nano-sortable"; }
738
738
  static get encapsulation() { return "shadow"; }
@@ -603,12 +603,12 @@ export class Sticker {
603
603
  this.hasBootstrapped = false;
604
604
  }
605
605
  render() {
606
- return (h(Host, { key: '2cc2e4ad16ecefda7d16772d763597864dabc908', sticky: !this.isRootSticker && !this.stickToEle && this.isSticky, hide: this.hide && this.isStuck, siblings: this.stuckCounter, index: this.stickerIndex, stuck: this.isStuck && this.isSticky, "placed-bottom": this.positions.includes('bottom'), "placed-top": this.positions.includes('top'), "placed-end": this.positions.includes('end'), "placed-start": this.positions.includes('start'), class: "nano-sticker" }, h("div", { key: '842f2d7b6d92e787e4d45410f558b4c796ed7b33', class: {
606
+ return (h(Host, { key: 'f087d54cf3135fa7ba3d089f112157797efedaf2', sticky: !this.isRootSticker && !this.stickToEle && this.isSticky, hide: this.hide && this.isStuck, siblings: this.stuckCounter, index: this.stickerIndex, stuck: this.isStuck && this.isSticky, "placed-bottom": this.positions.includes('bottom'), "placed-top": this.positions.includes('top'), "placed-end": this.positions.includes('end'), "placed-start": this.positions.includes('start'), class: "nano-sticker" }, h("div", { key: 'db32b41390349cec6975dfad25b6b99ddadf5758', class: {
607
607
  sticker: true,
608
608
  sticky: this.isRootSticker && this.isSticky,
609
609
  stuck: this.isStuck && this.isRootSticker && this.isSticky,
610
610
  hide: this.isRootSticker && this.hide && this.isStuck,
611
- }, ref: (div) => (this.sticker = div) }, h("div", { key: '6c49c84e46b3fdd4de9d543057c3ff4e1f8182f4', class: "sticker-content", ref: (div) => (this.content = div) }, h("slot", { key: 'd0c2d4c9bbc58084c2f4783fcc1bbae44da62c7e' })))));
611
+ }, ref: (div) => (this.sticker = div) }, h("div", { key: 'b1e54c375552b7460fb6991f1c476bf9f73c997f', class: "sticker-content", ref: (div) => (this.content = div) }, h("slot", { key: 'a2ee69ba9e39d796d832340777f61deb21c2f5d1' })))));
612
612
  }
613
613
  static get is() { return "nano-sticker"; }
614
614
  static get encapsulation() { return "shadow"; }
@@ -227,10 +227,10 @@ export class NanoTable {
227
227
  this.cleanUpObservers();
228
228
  }
229
229
  render() {
230
- return (h(Host, { key: '29c35d81fa4432d251f86195a7dd8940661e5abc', class: {
230
+ return (h(Host, { key: '61967ae8d9228be1374d9a4ee4e08b286cd4dd57', class: {
231
231
  'nano-table': true,
232
232
  'nano-table--props-ready': this.propsReady,
233
- } }, this.scrollable && (h("nano-masked-overflow", { key: '4984ff894c8b8799917de26a0a4f8355f5cb4c2c', hideScrollbars: false, scrollControls: false, label: this.caption?.textContent || undefined, class: "nano-table__overflow-container" }, h("div", { key: '5aef0beda315f82d6e361b2607e95d4b9828cfbb', class: "nano-table__overflow" }))), h("slot", { key: '549e9de13a1b333787fe48c77c5a3be89734c0c4' })));
233
+ } }, this.scrollable && (h("nano-masked-overflow", { key: 'eca1991383ebca49f6032066078f02b62c839d6c', hideScrollbars: false, scrollControls: false, label: this.caption?.textContent || undefined, class: "nano-table__overflow-container" }, h("div", { key: 'f3bcb6830439858393c1eda96d68c2c5ccadd15a', class: "nano-table__overflow" }))), h("slot", { key: '7662741dcb672f75bae03c16b5745ff4946f12f7' })));
234
234
  }
235
235
  static get is() { return "nano-table"; }
236
236
  static get encapsulation() { return "scoped"; }
@@ -24,10 +24,10 @@ export class NanoTabContent {
24
24
  requestAnimationFrame(() => (this.ready = true));
25
25
  }
26
26
  render() {
27
- return (h(Host, { key: 'f253c45230dccc1f8c1cd05e300db935380b0845', id: this.host.id || this.tabContentId, style: { display: this.active ? 'block' : 'none' }, role: "tabpanel", "aria-hidden": this.active ? 'false' : 'true', class: {
27
+ return (h(Host, { key: 'f182a99dab031220a40b2c5125d3229b8bacca1c', id: this.host.id || this.tabContentId, style: { display: this.active ? 'block' : 'none' }, role: "tabpanel", "aria-hidden": this.active ? 'false' : 'true', class: {
28
28
  ready: this.ready,
29
29
  'nano-tab-content': true,
30
- } }, h("div", { key: 'f01e7dc01e79d835af3414ee157dfa1b41675070', part: "base", class: "nano-tab-content" }, h("slot", { key: '3a9ab065ab08e5495f09bae2769f8fba7b0d02e8' }))));
30
+ } }, h("div", { key: '47b383859162b6a64518273a9057464de1d37479', part: "base", class: "nano-tab-content" }, h("slot", { key: '3f908fec081c956f9ffd8d7de5e0f45b5e193a8c' }))));
31
31
  }
32
32
  static get is() { return "nano-tab-content"; }
33
33
  static get encapsulation() { return "shadow"; }
@@ -326,7 +326,7 @@ export class NanoTabGroup {
326
326
  group: true,
327
327
  'group--top': this.placement === 'top',
328
328
  'group--start': this.placement === 'start',
329
- }, onClick: this.handleClick, onKeyDown: this.handleKeyDown }, h("nano-masked-overflow", { role: "nav", class: "group__tabs", part: "tabs__wrapper", exportparts: "items:tabs, scroll-button:tabs__scroll-button, indicator:active-tab-indicator", orientation: this.placement === 'top' ? 'horizontal' : 'vertical', isActiveHandler: (itm) => this.activeTab === itm, scrollControls: !this.noScrollControls, hideScrollbars: true }, h("slot", { name: "tabs", onSlotchange: this.handleTabSlotChange }), h("div", { class: "group__tabs-border" })), h("div", { part: "body", class: "group__body", onTouchStart: this.handleTouchStart, onTouchEnd: this.handleTouchEnd }, h("slot", { onSlotchange: this.handleContentSlotChange })))));
329
+ }, onClick: this.handleClick, onKeyDown: this.handleKeyDown }, h("nano-masked-overflow", { role: "navigation", class: "group__tabs", part: "tabs__wrapper", exportparts: "items:tabs, scroll-button:tabs__scroll-button, indicator:active-tab-indicator", orientation: this.placement === 'top' ? 'horizontal' : 'vertical', isActiveHandler: (itm) => this.activeTab === itm, scrollControls: !this.noScrollControls, hideScrollbars: true }, h("slot", { name: "tabs", onSlotchange: this.handleTabSlotChange }), h("div", { class: "group__tabs-border" })), h("div", { part: "body", class: "group__body", onTouchStart: this.handleTouchStart, onTouchEnd: this.handleTouchEnd }, h("slot", { onSlotchange: this.handleContentSlotChange })))));
330
330
  }
331
331
  static get is() { return "nano-tab-group"; }
332
332
  static get encapsulation() { return "shadow"; }
@@ -51,12 +51,12 @@ export class NanoTab {
51
51
  }
52
52
  };
53
53
  render() {
54
- return (h(Host, { key: 'e273e4e931adea13f67b9975d6947e65cf0b2aa8', id: this.host.id || this.tabId, role: "tab", "aria-disabled": this.disabled ? 'true' : 'false', "aria-selected": this.active ? 'true' : 'false', class: "nano-tab" }, h("div", { key: '981d0646a81af06bddfca0c752ef0c29e364b89a', part: `base${this.active ? ' base--active' : ''}${this.disabled ? ' base--disabled' : ''}${this.closable ? ' base--closable' : ''}`, class: {
54
+ return (h(Host, { key: '7eca94a330509cbd3c6d232444fbcde422b755a6', id: this.host.id || this.tabId, role: "tab", "aria-disabled": this.disabled ? 'true' : 'false', "aria-selected": this.active ? 'true' : 'false', class: "nano-tab" }, h("div", { key: 'fca6ace8b5fc9c0142fcd04d70cb475323d8ef9d', part: `base${this.active ? ' base--active' : ''}${this.disabled ? ' base--disabled' : ''}${this.closable ? ' base--closable' : ''}`, class: {
55
55
  tab: true,
56
56
  'tab--active': this.active,
57
57
  'tab--disabled': this.disabled,
58
58
  'tab--closable': this.closable,
59
- } }, h("slot", { key: '53d519d25cfe15597d3ad05fb8bad68dc78bd663', name: "start" }), h("div", { key: '7cdf3e37c1631812cabe958eacc4ac70b2d70bcf', part: "label", ref: (el) => (this.tab = el), tabindex: this.disabled || !this.active ? '-1' : '0', class: "tab__label" }, h("slot", { key: '842a77bb982f418238128d228b822907f69d14e6' })), h("slot", { key: 'c596993b46b6a8b6380608556bf05099ae12c183', name: "end" }), this.closable && !this.disabled && (h("nano-icon-button", { key: '80149bb54834963ef542f185f3519ef1a8cd0382', label: "Close this tab", iconName: "light/xmark", class: "tab__close-button", onClick: this.handleCloseClick, onKeyDown: this.handleCloseKeydown, part: "close-button" })))));
59
+ } }, h("slot", { key: '3693ff8719b24c34db9018941daab7c840434502', name: "start" }), h("div", { key: 'c792fce22a28175e32f7e0b23a1a62f799016c76', part: "label", ref: (el) => (this.tab = el), tabindex: this.disabled || !this.active ? '-1' : '0', class: "tab__label" }, h("slot", { key: '76b725cd050993d377bf5c7208ce5b7fdf224136' })), h("slot", { key: 'f7bd50a43bb64b67b2ce181bf9215ada4c0ccd12', name: "end" }), this.closable && !this.disabled && (h("nano-icon-button", { key: '96f6bddd3dee12d2e8adeb7a59f98d0cfe8b9c82', label: "Close this tab", iconName: "light/xmark", class: "tab__close-button", onClick: this.handleCloseClick, onKeyDown: this.handleCloseKeydown, part: "close-button" })))));
60
60
  }
61
61
  static get is() { return "nano-tab"; }
62
62
  static get encapsulation() { return "shadow"; }
@@ -227,10 +227,10 @@ export class Tooltip {
227
227
  this.popover.destroy();
228
228
  }
229
229
  render() {
230
- return (h(Host, { key: 'e40973f692133fa62e3b8d3eb6e95f12a5ffdecc', onKeyDown: this.handleKeyDown, onMouseOver: this.handleMouseOver, onMouseOut: this.handleMouseOut, onBlur: this.handleBlur, onFocus: this.handleFocus, onClick: this.handleClick, class: "nano-tooltip" }, h("slot", { key: '4d6c1b5714414834a159379e6cd6621081ffa826', onSlotchange: this.handleSlotChange }), h("div", { key: '66b8165ff9c32e9e534c9957ef8c6cba41c046ce', ref: (el) => (this.tooltipPositioner = el), class: "tooltip-positioner", popover: "manual" }, h("div", { key: '7c236b1851eb1f756ab62295a83c4803f96d51b4', part: "base", ref: (el) => (this.tooltip = el), class: {
230
+ return (h(Host, { key: '88500e56b7cc79e344604bfb9ffc54f2c7884c16', onKeyDown: this.handleKeyDown, onMouseOver: this.handleMouseOver, onMouseOut: this.handleMouseOut, onBlur: this.handleBlur, onFocus: this.handleFocus, onClick: this.handleClick, class: "nano-tooltip" }, h("slot", { key: '6ff00a2034648eb7cde6bb7e7ba1bc0dcf611238', onSlotchange: this.handleSlotChange }), h("div", { key: 'e278b67db89953ef0a174b50f5aa28e101e8e83d', ref: (el) => (this.tooltipPositioner = el), class: "tooltip-positioner", popover: "manual" }, h("div", { key: '226bc518e38502e1a864c26a265abb01cfdb918e', part: "base", ref: (el) => (this.tooltip = el), class: {
231
231
  tooltip: true,
232
232
  'tooltip--open': this.open,
233
- }, role: "tooltip", "aria-hidden": this.open ? 'false' : 'true' }, h("slot", { key: '1af58ea47a9e82a176295497b8641ef1996d2d8b', name: "content", onSlotchange: () => this.setLabel() }, this.content), h("div", { key: '7eabacc06a2cf9179feb32c3392ae096f0b3b23e', class: "tooltip-arrow", "data-popper-arrow": true })))));
233
+ }, role: "tooltip", "aria-hidden": this.open ? 'false' : 'true' }, h("slot", { key: '6245d2904946b690c9c3ea4e902fa5d789473110', name: "content", onSlotchange: () => this.setLabel() }, this.content), h("div", { key: '8ddc4c34d70107ade21b7b53827d3c37e6744d2e', class: "tooltip-arrow", "data-popper-arrow": true })))));
234
234
  }
235
235
  static get is() { return "nano-tooltip"; }
236
236
  static get encapsulation() { return "shadow"; }
@@ -6,7 +6,7 @@ import { h } from './renderer.js';
6
6
  import { d as defineCustomElement$2 } from './icon.js';
7
7
  import { d as defineCustomElement$1 } from './tooltip.js';
8
8
 
9
- const iconButtonCss = ":host,*,*::before,*::after{box-sizing:border-box}[hidden]{display:none !important}@media (prefers-reduced-motion: reduce){:host,*,*::before,*::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important;scroll-behavior:auto !important}}:host,*,*::before,*::after{box-sizing:border-box}[hidden]{display:none !important}@media (prefers-reduced-motion: reduce){:host,*,*::before,*::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important;scroll-behavior:auto !important}}:host{--border-radius:none;--active-color:var(--nano-color-neutral-800);--hover-color:var(--nano-color-primary-1100);--padding:var(--nano-spacing-xs);--box-shadow:none;--button-bg:transparent;color:currentcolor;border-radius:var(--border-radius);display:inline-block}.icon-button{flex:0 0 auto;display:flex;align-items:center;border:none;border-radius:inherit;background:var(--button-bg);font-size:inherit;color:inherit;padding:var(--padding);cursor:pointer;appearance:none;box-shadow:var(--box-shadow)}.icon-button:hover:not(.icon-button--disabled),.icon-button:focus:not(.icon-button--disabled){color:var(--hover-color)}.icon-button:active:not(.icon-button--disabled){color:var(--active-color)}.icon-button:focus-visible:not(.icon-button--disabled){outline:var(--nano-focus-ring);outline-offset:var(--nano-focus-ring-offset)}.icon-button__label{clip-path:inset(50%);block-size:1px;overflow:hidden;position:absolute;white-space:nowrap;inline-size:1px}:host([disabled]:not([disabled=false])){opacity:0.5;cursor:not-allowed}.icon-button--disabled{pointer-events:none}";
9
+ const iconButtonCss = ":host,*,*::before,*::after{box-sizing:border-box}[hidden]{display:none !important}@media (prefers-reduced-motion: reduce){:host,*,*::before,*::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important;scroll-behavior:auto !important}}:host,*,*::before,*::after{box-sizing:border-box}[hidden]{display:none !important}@media (prefers-reduced-motion: reduce){:host,*,*::before,*::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important;scroll-behavior:auto !important}}:host{--border-radius:none;--active-color:var(--nano-color-neutral-800);--hover-color:var(--nano-color-primary-1100);--padding:var(--nano-spacing-xs);--box-shadow:none;--button-bg:transparent;color:currentcolor;border-radius:var(--border-radius);display:inline-block}.icon-button{flex:0 0 auto;display:flex;align-items:center;border:none;border-radius:inherit;background:inherit;font-size:inherit;color:inherit;padding:var(--padding);cursor:pointer;appearance:none;box-shadow:var(--box-shadow)}.icon-button:hover:not(.icon-button--disabled),.icon-button:focus:not(.icon-button--disabled){color:var(--hover-color)}.icon-button:active:not(.icon-button--disabled){color:var(--active-color)}.icon-button:focus-visible:not(.icon-button--disabled){outline:var(--nano-focus-ring);outline-offset:var(--nano-focus-ring-offset)}.icon-button__label{clip-path:inset(50%);block-size:1px;overflow:hidden;position:absolute;white-space:nowrap;inline-size:1px}:host([disabled]:not([disabled=false])){opacity:0.5;cursor:not-allowed}.icon-button--disabled{pointer-events:none}";
10
10
 
11
11
  const IconButton = /*@__PURE__*/ proxyCustomElement(class IconButton extends HTMLElement {
12
12
  constructor() {
@@ -26,6 +26,7 @@ const Input = /*@__PURE__*/ proxyCustomElement(class Input extends HTMLElement {
26
26
  pickerDropdown;
27
27
  picker;
28
28
  pickerCloseBtn;
29
+ shouldValidate = false;
29
30
  // we don't want these rendered eles decorated with @State
30
31
  // because that will cause re-renders. User get/set to set datalist options
31
32
  _nativeInputWrap;
@@ -213,7 +214,9 @@ const Input = /*@__PURE__*/ proxyCustomElement(class Input extends HTMLElement {
213
214
  */
214
215
  step;
215
216
  /**
216
- * The initial size of the control. This value is in pixels unless the value of the type attribute is `"text"` or `"password"`, in which case it is an integer number of characters. This attribute applies only when the `type` attribute is set to `"text"`, `"search"`, `"tel"`, `"url"`, `"email"`, or `"password"`, otherwise it is ignored.
217
+ * The initial size of the control. This value is in pixels unless the value of the type attribute
218
+ * is `"text"` or `"password"`, in which case it is an integer number of characters.
219
+ * This attribute applies only when the `type` attribute is set to `"text"`, `"search"`, `"tel"`, `"url"`, `"email"`, or `"password"`, otherwise it is ignored.
217
220
  */
218
221
  size;
219
222
  /**
@@ -247,10 +250,7 @@ const Input = /*@__PURE__*/ proxyCustomElement(class Input extends HTMLElement {
247
250
  this.nativeInput.setCustomValidity('');
248
251
  }
249
252
  }
250
- requestAnimationFrame(() => {
251
- if (this.validateOn === 'dirty')
252
- this.validate();
253
- });
253
+ this.shouldValidate = true;
254
254
  }
255
255
  /** Represents the value of the input or NaN if numeric conversion is impossible */
256
256
  get valueAsNumber() {
@@ -268,13 +268,10 @@ const Input = /*@__PURE__*/ proxyCustomElement(class Input extends HTMLElement {
268
268
  * Whether to show a character count / remaining count when using the `maxlength` attribute.
269
269
  */
270
270
  showCharCount = false;
271
- shouldValidate() {
271
+ handleValidatePropChange() {
272
272
  if (!this.hasRendered)
273
273
  return;
274
- requestAnimationFrame(() => {
275
- if (this.validateOn === 'dirty')
276
- this.validate();
277
- });
274
+ this.shouldValidate = true;
278
275
  }
279
276
  ///// TYPE SPECIFIC PROPS /////
280
277
  /**
@@ -429,7 +426,7 @@ const Input = /*@__PURE__*/ proxyCustomElement(class Input extends HTMLElement {
429
426
  validate = (ev) => {
430
427
  if (this.validateOn === 'submitThenDirty')
431
428
  this.validateOn = 'dirty';
432
- if (!this.nativeInput.validity.valid) {
429
+ if (!this.nativeInput.validity?.valid) {
433
430
  if (this.showInlineError) {
434
431
  if (ev)
435
432
  ev.preventDefault();
@@ -544,6 +541,12 @@ const Input = /*@__PURE__*/ proxyCustomElement(class Input extends HTMLElement {
544
541
  componentWillLoad() {
545
542
  this.processSlottedContent();
546
543
  }
544
+ componentDidRender() {
545
+ if (this.shouldValidate) {
546
+ this.validate();
547
+ this.shouldValidate = false;
548
+ }
549
+ }
547
550
  render() {
548
551
  const value = this.getValue();
549
552
  const labelId = this.inputId + '-lbl';
@@ -582,18 +585,18 @@ const Input = /*@__PURE__*/ proxyCustomElement(class Input extends HTMLElement {
582
585
  disabled,
583
586
  clearControl: this.clearable,
584
587
  }))(this);
585
- return (h(Host, { key: '16dd92ebcfae29b11e9edf2d889a4c200f5a3b8f', "aria-disabled": this.disabled ? 'true' : null, class: {
588
+ return (h(Host, { key: '636d7624bcfe136a0e93b55cf9fc38e272f7aed6', "aria-disabled": this.disabled ? 'true' : null, class: {
586
589
  'has-value': this.hasValue(),
587
590
  'has-focus': this.hasFocus,
588
591
  'is-invalid': this._invalid === true,
589
592
  'is-valid': this._invalid === false,
590
593
  'nano-input': true,
591
- } }, h("div", { key: '67bb63b071a14d064aaa9d5686f27fc42adc8919', style: { width: '100%' } }, h(FormControlWrap, { key: '89e15db88ec24f06948bcb8b193bbf84de5ff168', ...wrapOptions, class: {
594
+ } }, h("div", { key: '942db1636f7d08dd581359b66df66ebf080d23ae', style: { width: '100%' } }, h(FormControlWrap, { key: 'd944b897545398b51ab0a76e1f8d62c57cd85843', ...wrapOptions, class: {
592
595
  'has-helper': this.hasHelperSlot,
593
596
  'has-error': !!this.errorMessage &&
594
597
  this.showInlineError &&
595
598
  this._invalid === true,
596
- } }, h(FormControl, { key: 'd23e96a2638e5d12fac93e125fbb201cf866c02c', ...controlOptions, onClearText: this.clearTextInput, control: this.el, ref: (el) => (this.nativeInputWrap = el), showInlineError: this.showInlineError, endSlot: this.showPicker &&
599
+ } }, h(FormControl, { key: 'efd29f841ff0724228fc47754a5aad8d82f88d49', ...controlOptions, onClearText: this.clearTextInput, control: this.el, ref: (el) => (this.nativeInputWrap = el), showInlineError: this.showInlineError, endSlot: this.showPicker &&
597
600
  this.type === 'date' &&
598
601
  !this.readonly &&
599
602
  !this.disabled && [
@@ -608,25 +611,25 @@ const Input = /*@__PURE__*/ proxyCustomElement(class Input extends HTMLElement {
608
611
  this.value = e.detail.value;
609
612
  this.pickerDropdown?.hide();
610
613
  }, min: this.min, max: this.max, "is-modal": true, selectedDate: this.value || this.initialPickerDate || undefined }))),
611
- ] }, this.type !== 'textarea' && (h("input", { key: '2633a8fc4d57349beb0e53295fd1f424fa3db428', id: this.inputId, class: "input__native-ctrl", ref: (input) => (this.nativeInput = input), "aria-labelledby": labelId + ' ' + moreId + ' ' + helperEndId, disabled: this.disabled, accept: this.accept, autoCapitalize: this.autocapitalise, autoComplete: this.autocomplete, autoCorrect: this.autocorrect, autoFocus: this.autofocus, inputMode: this.inputmode, form: this.form, min: this.min, max: this.max, minLength: this.minlength, maxLength: this.maxlength, multiple: this.multiple, name: this.name, pattern: this.pattern, placeholder: this.placeholder, readOnly: this.readonly, required: this.required, spellcheck: this.spellcheck, step: this.step, size: this.size, type: this.type, value: value, onInput: this.onInput, onClick: (e) => e.preventDefault(), onChange: this.onInput, onFocus: this.onFocus, onBlur: this.handleBlur, onKeyDown: this.onKeydown, onInvalid: this.validate })), this.type === 'textarea' && (h("textarea", { key: 'd9de96539d7cee13171b7ac3b6dcef2222071693', rows: this.floatLabel ? 1 : this.rows, id: this.inputId, class: {
614
+ ] }, this.type !== 'textarea' && (h("input", { key: 'ce5547777de11926717b27712f7d687171d0dde7', id: this.inputId, class: "input__native-ctrl", ref: (input) => (this.nativeInput = input), "aria-labelledby": labelId + ' ' + moreId + ' ' + helperEndId, disabled: this.disabled, accept: this.accept, autoCapitalize: this.autocapitalise, autoComplete: this.autocomplete, autoCorrect: this.autocorrect, autoFocus: this.autofocus, inputMode: this.inputmode, form: this.form, min: this.min, max: this.max, minLength: this.minlength, maxLength: this.maxlength, multiple: this.multiple, name: this.name, pattern: this.pattern, placeholder: this.placeholder, readOnly: this.readonly, required: this.required, spellcheck: this.spellcheck, step: this.step, size: this.size, type: this.type, value: value, onInput: this.onInput, onClick: (e) => e.preventDefault(), onChange: this.onInput, onFocus: this.onFocus, onBlur: this.handleBlur, onKeyDown: this.onKeydown, onInvalid: this.validate })), this.type === 'textarea' && (h("textarea", { key: 'e1dc2377200cdccda85cdbb6cda08a49d8459c1e', rows: this.floatLabel ? 1 : this.rows, id: this.inputId, class: {
612
615
  'input__native-ctrl': true,
613
616
  input__resizable: this.resize === 'true',
614
- }, ref: (input) => (this.nativeInput = input), "aria-labelledby": labelId + ' ' + moreId + ' ' + helperEndId, disabled: this.disabled, autoCapitalize: this.autocapitalise, autoCorrect: this.autocorrect, autoFocus: this.autofocus, inputMode: this.inputmode, form: this.form, minLength: this.minlength, maxLength: this.maxlength, name: this.name, placeholder: this.placeholder, readOnly: this.readonly, required: this.required, spellcheck: this.spellcheck, value: value, onInput: this.onInput, onChange: this.onInput, onFocus: this.onFocus, onKeyDown: this.onKeydown, onInvalid: this.validate, onBlur: this.handleBlur })))), h("slot", { key: '1df88e79279640f50480f8f9eeffcd0cea038913' }))));
617
+ }, ref: (input) => (this.nativeInput = input), "aria-labelledby": labelId + ' ' + moreId + ' ' + helperEndId, disabled: this.disabled, autoCapitalize: this.autocapitalise, autoCorrect: this.autocorrect, autoFocus: this.autofocus, inputMode: this.inputmode, form: this.form, minLength: this.minlength, maxLength: this.maxlength, name: this.name, placeholder: this.placeholder, readOnly: this.readonly, required: this.required, spellcheck: this.spellcheck, value: value, onInput: this.onInput, onChange: this.onInput, onFocus: this.onFocus, onKeyDown: this.onKeydown, onInvalid: this.validate, onBlur: this.handleBlur })))), h("slot", { key: '564511c369dc13eb85cbf7e1c48b5d5fbbea8679' }))));
615
618
  }
616
619
  static get watchers() { return {
617
620
  "datalist": ["setDataListOpts"],
618
621
  "debounce": ["debounceChanged"],
619
622
  "value": ["valueChanged"],
620
- "minlength": ["shouldValidate"],
621
- "maxlength": ["shouldValidate"],
622
- "min": ["shouldValidate"],
623
- "max": ["shouldValidate"],
624
- "required": ["shouldValidate"],
625
- "disabled": ["shouldValidate"],
626
- "readonly": ["shouldValidate"],
627
- "pattern": ["shouldValidate"],
628
- "inputmode": ["shouldValidate"],
629
- "type": ["shouldValidate"]
623
+ "minlength": ["handleValidatePropChange"],
624
+ "maxlength": ["handleValidatePropChange"],
625
+ "min": ["handleValidatePropChange"],
626
+ "max": ["handleValidatePropChange"],
627
+ "required": ["handleValidatePropChange"],
628
+ "disabled": ["handleValidatePropChange"],
629
+ "readonly": ["handleValidatePropChange"],
630
+ "pattern": ["handleValidatePropChange"],
631
+ "inputmode": ["handleValidatePropChange"],
632
+ "type": ["handleValidatePropChange"]
630
633
  }; }
631
634
  static get style() { return inputCss; }
632
635
  }, [262, "nano-input", {
@@ -690,16 +693,16 @@ const Input = /*@__PURE__*/ proxyCustomElement(class Input extends HTMLElement {
690
693
  "datalist": ["setDataListOpts"],
691
694
  "debounce": ["debounceChanged"],
692
695
  "value": ["valueChanged"],
693
- "minlength": ["shouldValidate"],
694
- "maxlength": ["shouldValidate"],
695
- "min": ["shouldValidate"],
696
- "max": ["shouldValidate"],
697
- "required": ["shouldValidate"],
698
- "disabled": ["shouldValidate"],
699
- "readonly": ["shouldValidate"],
700
- "pattern": ["shouldValidate"],
701
- "inputmode": ["shouldValidate"],
702
- "type": ["shouldValidate"]
696
+ "minlength": ["handleValidatePropChange"],
697
+ "maxlength": ["handleValidatePropChange"],
698
+ "min": ["handleValidatePropChange"],
699
+ "max": ["handleValidatePropChange"],
700
+ "required": ["handleValidatePropChange"],
701
+ "disabled": ["handleValidatePropChange"],
702
+ "readonly": ["handleValidatePropChange"],
703
+ "pattern": ["handleValidatePropChange"],
704
+ "inputmode": ["handleValidatePropChange"],
705
+ "type": ["handleValidatePropChange"]
703
706
  }]);
704
707
  function defineCustomElement() {
705
708
  if (typeof customElements === "undefined") {
@@ -320,7 +320,7 @@ const MaskedOverflow = /*@__PURE__*/ proxyCustomElement(class MaskedOverflow ext
320
320
  }
321
321
  }
322
322
  render() {
323
- return (h(Host, { key: '863c3de5a680e075066e21ce42e76c299bb1fd68', dir: this.isRtl ? 'rtl' : null, class: "nano-masked-overflow", "has-scroll-controls": this.hasScrollControls }, h("div", { key: 'c0a3c54c8149762e4eec11cb8a4c112cd0faff29', part: "base", class: {
323
+ return (h(Host, { key: '5e3818d9ff886b75194db22fd7f42af484fe17d7', dir: this.isRtl ? 'rtl' : null, class: "nano-masked-overflow", "has-scroll-controls": this.hasScrollControls }, h("div", { key: '991fa196ffc2eb42c907519bb8187f15c9868161', part: "base", class: {
324
324
  onav: true,
325
325
  [`onav--${this.orientation}`]: true,
326
326
  'onav--has-scroll-controls': this.hasScrollControls,
@@ -329,12 +329,12 @@ const MaskedOverflow = /*@__PURE__*/ proxyCustomElement(class MaskedOverflow ext
329
329
  'onav--no-transitions': this.instantReCalc,
330
330
  'onnav--has-indicator': this.showIndicator,
331
331
  'onnav--hide-scrollbars': this.hideScrollbars && this.hideScrollbars !== 'false',
332
- }, onClick: this.handleClick, onKeyDown: this.handleKeyDown }, h("div", { key: '96b342204d45cb3f602ed22c1744cc4ee1046b9f', class: "onav__nav" }, this.scrollControls && (h("nano-icon-button", { key: 'cdb6b42a35dcc623c01d613a1a80a2884f79c52a', part: "scroll-button scroll-button-prev", class: {
332
+ }, onClick: this.handleClick, onKeyDown: this.handleKeyDown }, h("div", { key: 'e6958d0060691af605afa2c6fd53194b4284f29d', class: "onav__nav" }, this.scrollControls && (h("nano-icon-button", { key: '167bb7fa1450371ceab4dc8467e5debbd672101f', part: "scroll-button scroll-button-prev", class: {
333
333
  'onav__scroll-button': true,
334
334
  'onav__scroll-button--start': true,
335
335
  }, ref: (btn) => (this.startBtn = btn), onClick: () => this.handleBtnClick(false), label: "Click to scroll", iconName: this.orientation === 'horizontal'
336
336
  ? 'light/chevron-left'
337
- : 'light/chevron-up' })), h("div", { key: 'bb7148f21545d1b2271971f8a3b2e2d0b6754469', part: "scroller", ref: (el) => (this.nav = el), class: "onav__scroller", onScroll: this.handleScroll, tabindex: this.hasScrollControls ? 0 : undefined, role: "region", "aria-label": this.label || undefined }, h("div", { key: '910e8182d8991fb34ec51991cd006b72372bb6df', part: "items", ref: (el) => (this.itemContainer = el), class: "onav__items" }, this.showIndicator && (h("div", { key: 'aa7689c07f6fdad49e06a8e642ded946e818797b', part: "indicator", ref: (el) => (this.activeIndicator = el), class: "onav__active-indicator" })), h("slot", { key: '605140127b6168f7a3376dbdcd51b328d267d3ac', onSlotchange: this.slotChangeHandler }))), this.scrollControls && (h("nano-icon-button", { key: 'e0545529e2d704964ec0c43ce3fa113bc9ce623e', part: "scroll-button scroll-button-next", class: {
337
+ : 'light/chevron-up' })), h("div", { key: '8d8d7c305c0c89738d9660aff6b75ca029506ab7', part: "scroller", ref: (el) => (this.nav = el), class: "onav__scroller", onScroll: this.handleScroll, tabindex: this.hasScrollControls ? 0 : undefined, role: "region", "aria-label": this.label || undefined }, h("div", { key: 'fdd83d15c431538a2992887e58aed07e9393d411', part: "items", ref: (el) => (this.itemContainer = el), class: "onav__items" }, this.showIndicator && (h("div", { key: 'a1fba6d2c2e62e05b5a062c563f22c8e2b0222a4', part: "indicator", ref: (el) => (this.activeIndicator = el), class: "onav__active-indicator" })), h("slot", { key: 'a6d602d437702479bd67d71bd5ac838d0ae02941', onSlotchange: this.slotChangeHandler }))), this.scrollControls && (h("nano-icon-button", { key: '30eae4cf86f7bead75734736b7192420255a64fc', part: "scroll-button scroll-button-next", class: {
338
338
  'onav__scroll-button': true,
339
339
  'onav__scroll-button--end': true,
340
340
  }, ref: (btn) => (this.endBtn = btn), onClick: () => this.handleBtnClick(true), label: "Click to scroll", iconName: this.orientation === 'horizontal'
@@ -8,7 +8,7 @@ import { g as getDirectChildren } from './dom.js';
8
8
  import { d as defineCustomElement$3 } from './details.js';
9
9
  import { d as defineCustomElement$2 } from './icon.js';
10
10
 
11
- const inPageNavCss = ":host,*,*::before,*::after{box-sizing:border-box}[hidden]{display:none !important}@media (prefers-reduced-motion: reduce){:host,*,*::before,*::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important;scroll-behavior:auto !important}}:host,*,*::before,*::after{box-sizing:border-box}[hidden]{display:none !important}@media (prefers-reduced-motion: reduce){:host,*,*::before,*::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important;scroll-behavior:auto !important}}:host{display:block}.desktop-nav{display:block}@media (width <= 767px){.desktop-nav{display:none}}.mobile-nav{display:none}@media (width <= 767px){.mobile-nav{display:block}}nav{background-color:var(--color-bg);padding:0}nav:has(.details-wrapper[open]){box-shadow:var(--nano-shadow-l1)}.header{padding:var(--spacing-l2) var(--spacing-l2) 0;display:flex;flex-direction:column;gap:var(--spacing-l2);font-size:var(--font-size)}.header ::slotted(a[slot=back]),.header::slotted(a[slot=back]){display:flex !important;align-items:center !important;padding:0 !important;margin:0;gap:var(--spacing-l3) !important;cursor:pointer}.header ::slotted(a[slot=back])::before,.header::slotted(a[slot=back])::before{content:\"\";display:inline-block;background-size:cover;inline-size:1rem;block-size:1rem;background-color:var(--color-primary);-webkit-mask-image:var(--nano-component-icon-chevron);mask-image:var(--nano-component-icon-chevron);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;transform-origin:center;rotate:calc(180deg * var(--flip-icon-ltr))}.details-wrapper{--padding:0;--btn-bg-color:transparent;--btn-bg-color--hover:transparent;--btn-text-color:var(--color-text);border:none}.details-wrapper::part(header){font-size:var(--font-size);line-height:var(--line-height);font-weight:var(--font-weight);letter-spacing:var(--letter-spacing);padding:var(--spacing-l2)}.details-wrapper[open]::part(header){background-color:var(--nano-color-primary-75)}.details-wrapper::part(content){padding:0}.details-wrapper::part(body){padding:0}.details-wrapper.sticky.stuck[open]::part(header){z-index:var(--nano-z-index-menubar);inset-block-start:0;position:sticky;box-shadow:var(--nano-shadow-l1);padding:var(--spacing-l2)}.details-wrapper a,.details-wrapper ul,.details-wrapper li{all:unset}.details-wrapper ul{display:flex;flex-direction:column;list-style:none}.details-wrapper ul:not(ul ul){padding:0 var(--spacing-l2) var(--spacing-l3) var(--spacing-l2)}.details-wrapper a{cursor:pointer}.details-wrapper a:hover{text-decoration:underline}.details-wrapper a:focus-visible{outline:var(--nano-focus-ring);outline-offset:var(--nano-focus-ring-offset)}.details-wrapper ul>li:not(ul>li li){margin:0;padding:var(--spacing-l2) 0;display:flex;flex-direction:column;align-items:stretch;justify-content:stretch;inline-size:100%;border-block-end:1px solid var(--color-bottom-border)}.details-wrapper ul>li:not(ul>li li) a{color:var(--color-text)}.details-wrapper ul>li:not(ul>li li) a.is-active{border-inline-start:var(--border-active);padding-inline-start:1rem}.details-wrapper ul>li:not(ul>li li) a:hover{color:var(--color-text-hover)}.details-wrapper ul>li>ul,.details-wrapper ul>li>.nano-details>ul{padding:var(--list-gap) 0 0 var(--spacing-l2);gap:var(--list-gap)}.details-wrapper ul>li>ul a,.details-wrapper ul>li>.nano-details>ul a{color:var(--color-primary) !important}.details-wrapper ul>li>ul>li>.nano-details>ul,.details-wrapper ul>li>.nano-details>ul>li>.nano-details>ul{padding:var(--list-gap) 0 0 var(--nano-spacing-xl)}.details-wrapper .nano-details .nano-details:not(.nano-details .nano-details .nano-details){color:var(--color-text)}.details-wrapper .nano-details{--padding:0;--btn-bg-color:transparent;--btn-bg-color--open:var(--nano-color-primary-75);--btn-bg-color--hover:transparent;border:none;color:var(--color-primary)}.details-wrapper .nano-details .is-active::part(header){border-inline-start:var(--border-active);padding-inline-start:1rem !important;color:var(--color-primary)}.details-wrapper .nano-details[open]>[slot=icon-start]{rotate:90deg}.details-wrapper .nano-details::part(icon--start){margin-inline-end:var(--spacing-l3)}.details-wrapper .nano-details::part(header){font-size:var(--font-size);line-height:var(--line-height);font-weight:var(--font-weight);letter-spacing:var(--letter-spacing)}.details-wrapper .nano-details::part(header):hover{text-decoration:underline}.details-wrapper .nano-details:not(.nav-details){color:var(--color-primary)}";
11
+ const inPageNavCss = ":host,*,*::before,*::after{box-sizing:border-box}[hidden]{display:none !important}@media (prefers-reduced-motion: reduce){:host,*,*::before,*::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important;scroll-behavior:auto !important}}:host,*,*::before,*::after{box-sizing:border-box}[hidden]{display:none !important}@media (prefers-reduced-motion: reduce){:host,*,*::before,*::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important;scroll-behavior:auto !important}}:host{display:block}.desktop-nav{display:block}@media (width <= 767px){.desktop-nav{display:none}}.mobile-nav{display:none}@media (width <= 767px){.mobile-nav{display:block}}nav{background-color:var(--color-bg);padding:0}nav:has(.details-wrapper[open]){box-shadow:var(--nano-shadow-l1)}.header{padding:var(--spacing-l2) var(--spacing-l2) 0;display:flex;flex-direction:column;gap:var(--spacing-l2);font-size:var(--font-size)}.header ::slotted(a[slot=back]),.header::slotted(a[slot=back]){display:flex !important;align-items:center !important;padding:0 !important;margin:0;gap:var(--spacing-l3) !important;cursor:pointer}.header ::slotted(a[slot=back])::before,.header::slotted(a[slot=back])::before{content:\"\";display:inline-block;background-size:cover;inline-size:1rem;block-size:1rem;background-color:var(--color-primary);-webkit-mask-image:var(--nano-component-icon-chevron);mask-image:var(--nano-component-icon-chevron);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;transform-origin:center;rotate:calc(180deg * var(--flip-icon-ltr))}.details-wrapper{--padding:0;--btn-bg-color:transparent;--btn-bg-color--hover:transparent;--btn-text-color:var(--color-text);border:none}.details-wrapper::part(header){font-size:var(--font-size);line-height:var(--line-height);font-weight:var(--font-weight);letter-spacing:var(--letter-spacing);padding:var(--spacing-l2)}.details-wrapper[open]::part(header){background-color:var(--nano-color-primary-75)}.details-wrapper::part(content){padding:0}.details-wrapper::part(body){padding:0}.details-wrapper.sticky.stuck[open]::part(header){z-index:var(--nano-z-index-menubar);inset-block-start:0;position:sticky;box-shadow:var(--nano-shadow-l1);padding:var(--spacing-l2)}.details-wrapper a,.details-wrapper ul,.details-wrapper li{all:unset}.details-wrapper ul{display:flex;flex-direction:column;list-style:none}.details-wrapper ul:not(ul ul){padding:0 var(--spacing-l2) 0 var(--spacing-l2)}.details-wrapper a{cursor:pointer}.details-wrapper a:hover{text-decoration:underline}.details-wrapper a:focus-visible{outline:var(--nano-focus-ring);outline-offset:var(--nano-focus-ring-offset)}.details-wrapper ul>li:not(ul>li li){margin:0;padding:var(--spacing-l2) 0;display:flex;flex-direction:column;align-items:stretch;justify-content:stretch;inline-size:100%}.details-wrapper ul>li:not(ul>li li):not(:last-of-type){border-block-end:1px solid var(--color-bottom-border)}.details-wrapper ul>li:not(ul>li li) a{color:var(--color-text)}.details-wrapper ul>li:not(ul>li li) a.is-active{border-inline-start:var(--border-active);padding-inline-start:1rem}.details-wrapper ul>li:not(ul>li li) a:hover{color:var(--color-text-hover)}.details-wrapper ul>li>ul,.details-wrapper ul>li>.nano-details>ul{padding:var(--list-gap) 0 0 var(--spacing-l2);gap:var(--list-gap)}.details-wrapper ul>li>ul a,.details-wrapper ul>li>.nano-details>ul a{color:var(--color-primary) !important}.details-wrapper ul>li>ul>li>.nano-details>ul,.details-wrapper ul>li>.nano-details>ul>li>.nano-details>ul{padding:var(--list-gap) 0 0 var(--nano-spacing-xl)}.details-wrapper .nano-details .nano-details:not(.nano-details .nano-details .nano-details){color:var(--color-text)}.details-wrapper .nano-details{--padding:0;--btn-bg-color:transparent;--btn-bg-color--open:var(--nano-color-primary-75);--btn-bg-color--hover:transparent;border:none;color:var(--color-primary)}.details-wrapper .nano-details .is-active::part(header){border-inline-start:var(--border-active);padding-inline-start:1rem !important;color:var(--color-primary)}.details-wrapper .nano-details[open]>[slot=icon-start]{rotate:90deg}.details-wrapper .nano-details::part(icon--start){margin-inline-end:var(--spacing-l3)}.details-wrapper .nano-details::part(header){font-size:var(--font-size);line-height:var(--line-height);font-weight:var(--font-weight);letter-spacing:var(--letter-spacing)}.details-wrapper .nano-details::part(header):hover{text-decoration:underline}.details-wrapper .nano-details:not(.nav-details){color:var(--color-primary)}";
12
12
 
13
13
  const NanoInPageNav$1 = /*@__PURE__*/ proxyCustomElement(class NanoInPageNav extends HTMLElement {
14
14
  constructor() {
@@ -55,7 +55,7 @@ const NanoInPageNav$1 = /*@__PURE__*/ proxyCustomElement(class NanoInPageNav ext
55
55
  return node;
56
56
  }
57
57
  render() {
58
- return (h(Host, { key: 'd02d05e95dc01cff50937560be67f81e36c692e0', class: "nano-in-page-nav" }, h("nav", { key: '8109f7fc65b9ad5e05728db1d79e8cbe6fd2e8f6', part: "root" }, (this.slotCtrl.has('back') || this.slotCtrl.has('accessory')) && (h("div", { key: '5b1bda413e8d37f2cde12863ec05a0571070f25d', class: "header" }, h("slot", { key: 'a598d76293559bb215129001635e758959115e24', name: "back" }), h("slot", { key: 'd263bbdeb8f47f14a692db7575d1c516cbfe4334', name: "accessory" }))), h("div", { key: '53ad7e52f66d837d1abe6f37e73f4ff18c61161d', class: "desktop-nav" }, h("slot", { key: '2740d35f92ccc13add4951ce0f569d755b7a55b7' })), h("nano-details", { key: '5d1707523462beb705c68821f5a2f526561aec7c', label: "Menu", class: "details-wrapper mobile-nav", ref: (el) => (this.mobileNavWrapper = el) }))));
58
+ return (h(Host, { key: '5fc7993edd48363da225ffce7e8d3dad8689e761', class: "nano-in-page-nav" }, h("nav", { key: '4cc75849661bb1e2fd144ac075a693ce9e5af58f', part: "root" }, (this.slotCtrl.has('back') || this.slotCtrl.has('accessory')) && (h("div", { key: '286df7a444423180967750017575414cce154b0d', class: "header" }, h("slot", { key: '255d81a0c2d26b0069a83a08e552e6afeb035295', name: "back" }), h("slot", { key: 'c939561b8be1b4a479e1f0c01684f5dd0a3014ce', name: "accessory" }))), h("div", { key: '411231a64e23575d76722f59446567f5cd68575e', class: "desktop-nav" }, h("slot", { key: '892a93de5de705e392b687ee62ab89c17bcc349a' })), h("nano-details", { key: '34d89f9f7927db1cb817124cf0d053f88963484c', label: "Menu", class: "details-wrapper mobile-nav", ref: (el) => (this.mobileNavWrapper = el) }))));
59
59
  }
60
60
  static get style() { return inPageNavCss; }
61
61
  }, [257, "nano-in-page-nav", {
@@ -0,0 +1,11 @@
1
+ import type { Components, JSX } from "../types/components";
2
+
3
+ interface NanoIncrement extends Components.NanoIncrement, HTMLElement {}
4
+ export const NanoIncrement: {
5
+ prototype: NanoIncrement;
6
+ new (): NanoIncrement;
7
+ };
8
+ /**
9
+ * Used to define this component and all nested components recursively.
10
+ */
11
+ export const defineCustomElement: () => void;
@@ -0,0 +1,119 @@
1
+ /*!
2
+ * Custom elements for Nanopore-Digital Web applications
3
+ */
4
+ import { proxyCustomElement, HTMLElement, Host } from '@stencil/core/internal/client';
5
+ import { h } from './renderer.js';
6
+ import { d as defineCustomElement$4 } from './icon.js';
7
+ import { d as defineCustomElement$3 } from './icon-button.js';
8
+ import { d as defineCustomElement$2 } from './tooltip.js';
9
+
10
+ const incrementCss = ":host,*,*::before,*::after{box-sizing:border-box}[hidden]{display:none !important}@media (prefers-reduced-motion: reduce){:host,*,*::before,*::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important;scroll-behavior:auto !important}}:host,*,*::before,*::after{box-sizing:border-box}[hidden]{display:none !important}@media (prefers-reduced-motion: reduce){:host,*,*::before,*::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important;scroll-behavior:auto !important}}:host{display:inline-block}.root{display:grid;grid-template-columns:min-content auto 1fr;grid-template-rows:max-content max-content;align-items:stretch}::slotted(*){text-align:center}nano-icon-button{background:var(--nano-color-base-0);color:var(--nano-color-primary-1000);display:flex;border-radius:var(--nano-border-radius-pill);position:relative;z-index:1;inline-size:fit-content;block-size:100%}nano-icon-button:hover{background:var(--nano-color-primary-100)}nano-icon-button:active{background:var(--nano-color-primary-300)}nano-icon-button::part(base){border:1px solid var(--nano-color-neutral-300)}nano-icon-button::part(base):focus-visible{outline:var(--nano-focus-ring-color) solid 3px;outline-offset:-2px}.minus{grid-column:1;grid-row:1}.minus nano-icon-button{--padding:0.4375em 0.625em 0.4375em 1.125em;border-start-end-radius:0;border-end-end-radius:0}.minus nano-icon-button::part(base){border-inline-end:none}.plus{grid-column:3;grid-row:1}.plus nano-icon-button{--padding:0.4375em 1.125em 0.4375em 0.625em;border-start-start-radius:0;border-end-start-radius:0}.plus nano-icon-button::part(base){border-inline-start:none}";
11
+
12
+ const NanoIncrement$1 = /*@__PURE__*/ proxyCustomElement(class NanoIncrement extends HTMLElement {
13
+ constructor() {
14
+ super();
15
+ this.__registerHost();
16
+ this.__attachShadow();
17
+ }
18
+ get host() { return this; }
19
+ inputElement;
20
+ ignoreInputChange = false;
21
+ inputElementChanged(_newValue, oldValue) {
22
+ if (oldValue) {
23
+ oldValue.removeEventListener('nanoChange', this.inputChangeHandler);
24
+ }
25
+ if (this.inputElement) {
26
+ this.inputElement.label = this.inputElement.label || 'Increment value';
27
+ this.inputElement.hideLabel = true;
28
+ this.inputElement.type = 'number';
29
+ this.inputElement.max = this.inputElement.max || '10';
30
+ this.inputElement.min = this.inputElement.min || '0';
31
+ this.inputElement.step = this.inputElement.step || '1';
32
+ this.inputElement.value = this.inputElement.value || '0';
33
+ this.inputElement.addEventListener('nanoChange', this.inputChangeHandler);
34
+ }
35
+ }
36
+ inputChangeHandler = () => {
37
+ if (!this.ignoreInputChange) {
38
+ this.ignoreInputChange = true;
39
+ let value = Number(this.inputElement.value);
40
+ value = isNaN(value) ? 0 : value;
41
+ value = Math.max(value, parseFloat(this.inputElement.min) || 0);
42
+ value = Math.min(value, parseFloat(this.inputElement.max) || Infinity);
43
+ this.inputElement.value = value.toString();
44
+ requestAnimationFrame(() => {
45
+ this.ignoreInputChange = false;
46
+ });
47
+ }
48
+ };
49
+ handleSlotChange = () => {
50
+ this.inputElement = this.host.querySelector('nano-input');
51
+ };
52
+ handleMinus = () => {
53
+ if (this.inputElement) {
54
+ const currentValue = parseFloat(this.inputElement.value) || 0;
55
+ const step = parseFloat(this.inputElement.step) || 1;
56
+ const newValue = Math.max(currentValue - step, parseFloat(this.inputElement.min) || 0);
57
+ this.ignoreInputChange = true;
58
+ this.inputElement.value = newValue.toString();
59
+ this.ignoreInputChange = false;
60
+ }
61
+ };
62
+ handlePlus = () => {
63
+ if (this.inputElement) {
64
+ const currentValue = parseFloat(this.inputElement.value) || 0;
65
+ const step = parseFloat(this.inputElement.step) || 1;
66
+ const newValue = Math.min(currentValue + step, parseFloat(this.inputElement.max) || Infinity);
67
+ this.ignoreInputChange = true;
68
+ this.inputElement.value = newValue.toString();
69
+ this.ignoreInputChange = false;
70
+ }
71
+ };
72
+ componentWillLoad() {
73
+ this.handleSlotChange();
74
+ }
75
+ render() {
76
+ return (h(Host, { key: 'fab6b5bdecb8ccd3661d7054e08d66a46c2dd0a8', class: "nano-increment" }, h("div", { key: 'c064903981622ce66ac3a19efce6d595d59b7ed0', class: "root" }, h("div", { key: '447735cf16956d0ae172cc2bb1b3a7ffffd7fa0c', class: "minus" }, h("nano-icon-button", { key: '24e73eee061669ea0dd5423bae53886bed60478a', iconName: "light/minus", label: "Decrement", onClick: this.handleMinus })), h("slot", { key: '855358fe5a99004f52432dd42cf8c986f67afe69', onSlotchange: this.handleSlotChange }), h("div", { key: '17b1a5d9988023f4869489beffd697f4329a1d61', class: "plus" }, h("nano-icon-button", { key: '8b2e763e3f871355085e13b20a26f751c153a329', iconName: "light/plus", label: "Increment", onClick: this.handlePlus })))));
77
+ }
78
+ static get watchers() { return {
79
+ "inputElement": ["inputElementChanged"]
80
+ }; }
81
+ static get style() { return incrementCss; }
82
+ }, [257, "nano-increment", {
83
+ "inputElement": [32]
84
+ }, undefined, {
85
+ "inputElement": ["inputElementChanged"]
86
+ }]);
87
+ function defineCustomElement$1() {
88
+ if (typeof customElements === "undefined") {
89
+ return;
90
+ }
91
+ const components = ["nano-increment", "nano-icon", "nano-icon-button", "nano-tooltip"];
92
+ components.forEach(tagName => { switch (tagName) {
93
+ case "nano-increment":
94
+ if (!customElements.get(tagName)) {
95
+ customElements.define(tagName, NanoIncrement$1);
96
+ }
97
+ break;
98
+ case "nano-icon":
99
+ if (!customElements.get(tagName)) {
100
+ defineCustomElement$4();
101
+ }
102
+ break;
103
+ case "nano-icon-button":
104
+ if (!customElements.get(tagName)) {
105
+ defineCustomElement$3();
106
+ }
107
+ break;
108
+ case "nano-tooltip":
109
+ if (!customElements.get(tagName)) {
110
+ defineCustomElement$2();
111
+ }
112
+ break;
113
+ } });
114
+ }
115
+
116
+ const NanoIncrement = NanoIncrement$1;
117
+ const defineCustomElement = defineCustomElement$1;
118
+
119
+ export { NanoIncrement, defineCustomElement };
@@ -144,7 +144,7 @@ const IntersectionObserve = /*@__PURE__*/ proxyCustomElement(class IntersectionO
144
144
  this.removeIO();
145
145
  }
146
146
  render() {
147
- return (h(Host, { key: 'fadea9249456081d56c6c925c031446aad97fac4', class: "nano-intersection-observe" }, h("slot", { key: '95226a878c5f66dae5d7483404c8b0acd7ca5c44', ref: (slot) => (this.defaultSlot = slot), onSlotchange: this.handleSlotChange })));
147
+ return (h(Host, { key: 'be24c77cb033ff3fdb33b37cd8414edd99785795', class: "nano-intersection-observe" }, h("slot", { key: 'e1cf1e9175a9249c6f6f5b202d27a3f9bf937bac', ref: (slot) => (this.defaultSlot = slot), onSlotchange: this.handleSlotChange })));
148
148
  }
149
149
  static get watchers() { return {
150
150
  "root": ["handleRootChange"],
@@ -144,13 +144,13 @@ const MenuDrawer = /*@__PURE__*/ proxyCustomElement(class MenuDrawer extends HTM
144
144
  }
145
145
  }
146
146
  render() {
147
- return (h(Host, { key: '89b031c7018b39c700e567da7be78c32640e3ebb', class: {
147
+ return (h(Host, { key: 'dd1bf1e9e1ac1205955cae2e5d35a331e4f0bd93', class: {
148
148
  open: this.open,
149
149
  hide: this.hide,
150
150
  loading: this.isLoading,
151
151
  'has-global-nav': !!this.globalNav,
152
152
  'nano-menu-drawer': true,
153
- }, dir: this.el.ownerDocument.dir === 'rtl' ? 'rtl' : null }, h("div", { key: '1d5e20b713018df3ffba0522fcdcc3aa8464fbcb', ref: (div) => (this.containerDiv = div), class: "container" }, h("div", { key: '495e7c951a87dfa07542b00c52a02dc04c67d914', class: "content-wrap" }, h("nav", { key: '8d358809689ff0dfc5a64f363fe461fcc1d2184a', ref: (div) => (this.contentDiv = div), class: "content" }, h("div", { key: 'e30b5d1e7e6888a6989141f038d97cf14df77b88', class: "head" }, h("button", { key: '586cedfc3daab88447b0c8f8756b3eebd99b0ea0', onClick: this.toggle, class: "collapse-btn" }, h("nano-icon", { key: '3f8b68ed1ac88478c75925108fded997ce0a5334', name: "light/arrow-right-to-line" }), h("span", { key: 'd9babd8d5f2c5930cd95e842e8b2b35d78f94500', class: "visually-hidden" }, "collapse / expand menu"))), h("slot", { key: 'b13f35ac984a7817b1cc633b1e86de4c0e6dfccc' }), this.slotCtrl.has('foot') && (h("div", { key: '4844932d4e9ab109c60ac5782be125b8acc01d19', class: "foot" }, h("slot", { key: 'a3f98a1a614ae6d8bb41ddac062c16f410ab1411', name: "foot" }))))))));
153
+ }, dir: this.el.ownerDocument.dir === 'rtl' ? 'rtl' : null }, h("div", { key: 'dce4ceabb7095839407fab9bd02b866465408280', ref: (div) => (this.containerDiv = div), class: "container" }, h("div", { key: '1593061407c3f9b71a361b85d230625e9fb32a90', class: "content-wrap" }, h("nav", { key: 'c0f8d1bfd80fbebdc25af588bcd3cca7700a9f16', ref: (div) => (this.contentDiv = div), class: "content" }, h("div", { key: 'cd3365f2e892fb6a0937bfa60f325d8e6b960b46', class: "head" }, h("button", { key: '25adf7263cffa74b5c6a0f043bafdf4a955609a1', onClick: this.toggle, class: "collapse-btn" }, h("nano-icon", { key: 'fb33ef8b4d05214079543192bbf7afe5d12ceb61', name: "light/arrow-right-to-line" }), h("span", { key: '5da28bdc3d935c4d79db287f07365a026479b177', class: "visually-hidden" }, "collapse / expand menu"))), h("slot", { key: '30c573abc66a4e9ba19aedafab09f3118c54df4a' }), this.slotCtrl.has('foot') && (h("div", { key: '15c4d2f3dbfa2f3fc91118c26d363acf2b2d0907', class: "foot" }, h("slot", { key: 'feb931841bfdf4602769bc421df2ad7c4427ee8d', name: "foot" }))))))));
154
154
  }
155
155
  static get watchers() { return {
156
156
  "open": ["openChange"]
@@ -54,8 +54,8 @@ const Rating = /*@__PURE__*/ proxyCustomElement(class Rating extends HTMLElement
54
54
  this.handleShowHideElements();
55
55
  }
56
56
  render() {
57
- return (h(Host, { key: '5ccbcf0f959cfb7a8bb7129fc51abe50bd7a17df', class: "nano-more-less" }, h("slot", { key: '27de5552101abfb3d429dab53644cda08f7ae79a', onSlotchange: () => this.handleShowHideElements() }), this.children?.length > this.maxToShow && [
58
- h("div", { key: 'c5993ec5fabf6fb7df410b755f342e9f5f9b0edf', style: { display: this.show ? 'none' : 'contents' }, class: "button-wrapper", part: "button-wrapper button-wrapper--less", onClick: (e) => this.handleClick(e) }, h("slot", { key: 'a5e09cf1270c4aa9b15b2d0b351e4ba819e75aa0', name: "less" }, h("button", { key: '5404c1cf590f8028d430198c99463b70da94c4b6', part: "button button--less" }, "Show more (+", this.children.length - this.maxToShow, ")"))),
57
+ return (h(Host, { key: 'fbb60961810fe863ebebc729cbe4ecb955608c82', class: "nano-more-less" }, h("slot", { key: '6823f661e722640622d421c96244cd4a0eee1953', onSlotchange: () => this.handleShowHideElements() }), this.children?.length > this.maxToShow && [
58
+ h("div", { key: '134fadd869470a34cbd21b06d9cc2c85fc4e614c', style: { display: this.show ? 'none' : 'contents' }, class: "button-wrapper", part: "button-wrapper button-wrapper--less", onClick: (e) => this.handleClick(e) }, h("slot", { key: '62544d207ac12171da4905e3006e26113b1b0189', name: "less" }, h("button", { key: '54badba3d736faf5b2b686ec989998a4319c5001', part: "button button--less" }, "Show more (+", this.children.length - this.maxToShow, ")"))),
59
59
  !this.noHideBtn ? (h("div", { style: { display: this.show ? 'contents' : 'none' }, class: "button-wrapper", part: "button-wrapper button-wrapper--more", onClick: (e) => this.handleClick(e) }, h("slot", { name: "more" }, h("button", { part: "button button--more" }, "Show less (-", this.children.length - this.maxToShow, ")")))) : (''),
60
60
  ]));
61
61
  }
@@ -194,20 +194,20 @@ const Rating = /*@__PURE__*/ proxyCustomElement(class Rating extends HTMLElement
194
194
  else {
195
195
  displayValue = this.isHovering ? this.hoverValue : this.value;
196
196
  }
197
- return (h(Host, { key: '13d84ec7e59b702b04ec39218e18c350239d7b93', class: "nano-rating" }, h("label", { key: '1b5f27fdee72213e088437dd848a8573120cae9b', class: `rating-label${this.hideLabel ? ' visually-hidden' : ''}`, part: "label", htmlFor: this.name }, h("slot", { key: 'e81487e62a318229a3bf086b14927a51dde28e79', name: "label" }, this.label)), h("input", { key: '1b61bf51b63f6e9b24e5e18630ea6c3997971304', class: "range-input visually-hidden", name: this.name, id: this.name, disabled: this.disabled || this.readonly, required: this.required, value: this.value, onFocus: () => {
197
+ return (h(Host, { key: 'df7dc8a018d6d786e47134a2b9896a4cf2e87074', class: "nano-rating" }, h("label", { key: '7d9861c77bd39e075b1d9f75b24a5390efcbb42e', class: `rating-label${this.hideLabel ? ' visually-hidden' : ''}`, part: "label", htmlFor: this.name }, h("slot", { key: 'f2406ae04779c885c9968513d4e33d1b00ca8bde', name: "label" }, this.label)), h("input", { key: '50b8e5c1ef6b55ae88b48e4cf3d3ef83bb6a33f6', class: "range-input visually-hidden", name: this.name, id: this.name, disabled: this.disabled || this.readonly, required: this.required, value: this.value, onFocus: () => {
198
198
  this.setFocus();
199
- } }), h("div", { key: 'e386649b37937c0eaaf3359a0187a96d8ba3a62c', class: "rating-wrap" }, h("div", { key: '815e7b1e85a5f6521b3e2db56442a3c001cdea89', dir: this.isRtl ? 'rtl' : null, ref: (el) => (this.rating = el), part: "base", class: {
199
+ } }), h("div", { key: '1089a70fecbf338efbf3b2f5a8624c2c3c5ce56c', class: "rating-wrap" }, h("div", { key: '6552b5f9466c1ec0df3e69d9543d693fa90829d4', dir: this.isRtl ? 'rtl' : null, ref: (el) => (this.rating = el), part: "base", class: {
200
200
  rating: true,
201
201
  'rating--readonly': this.readonly,
202
202
  'rating--disabled': this.disabled,
203
- }, "aria-disabled": this.disabled ? 'true' : 'false', "aria-readonly": this.readonly ? 'true' : 'false', "aria-valuenow": this.value, "aria-valuemin": 0, "aria-valuemax": this.max, tabIndex: this.disabled ? -1 : 0, onClick: this.handleClick, onKeyDown: this.handleKeyDown, onMouseEnter: this.handleMouseEnter, onMouseLeave: this.handleMouseLeave, onMouseMove: this.handleMouseMove, onFocus: this.handleFocus, onBlur: this.handleBlur }, h("span", { key: '23789675ce3be49201fe2338301bd1cfcba86a87', class: "rating__symbols rating__symbols--inactive" }, counter.map((index) => (h("span", { class: {
203
+ }, "aria-disabled": this.disabled ? 'true' : 'false', "aria-readonly": this.readonly ? 'true' : 'false', "aria-valuenow": this.value, "aria-valuemin": 0, "aria-valuemax": this.max, tabIndex: this.disabled ? -1 : 0, onClick: this.handleClick, onKeyDown: this.handleKeyDown, onMouseEnter: this.handleMouseEnter, onMouseLeave: this.handleMouseLeave, onMouseMove: this.handleMouseMove, onFocus: this.handleFocus, onBlur: this.handleBlur }, h("span", { key: '1a741e52552009d9fe705aac22abbfa63b49e196', class: "rating__symbols rating__symbols--inactive" }, counter.map((index) => (h("span", { class: {
204
204
  rating__symbol: true,
205
205
  'rating__symbol--hover': this.isHovering && Math.ceil(displayValue) === index + 1,
206
206
  },
207
207
  // Users can click the current value to clear the rating. When this happens, we set this.isHovering to
208
208
  // false to prevent the hover state from confusing them as they move the mouse out of the control. This
209
209
  // extra mouseenter will reinstate it if they happen to mouse over an adjacent symbol.
210
- onMouseEnter: this.handleMouseEnter, innerHTML: this.symbol(index + 1) })))), h("span", { key: 'ebb7cf9d8819f624a56f30279c79b88b2bc84da5', ref: (span) => (this.indicator = span), class: "rating__symbols rating__symbols--indicator", style: {
210
+ onMouseEnter: this.handleMouseEnter, innerHTML: this.symbol(index + 1) })))), h("span", { key: 'd6368fb64cac9837f38bc00a06b63f2ef3ad3a74', ref: (span) => (this.indicator = span), class: "rating__symbols rating__symbols--indicator", style: {
211
211
  clip: this.clip(displayValue),
212
212
  } }, counter.map((index) => (h("span", { class: {
213
213
  rating__symbol: true,
@@ -39,7 +39,7 @@ const Slide = /*@__PURE__*/ proxyCustomElement(class Slide extends HTMLElement {
39
39
  });
40
40
  }
41
41
  render() {
42
- return (h(Host, { key: '54fe9d796bb457a050087ad602879c6116ce225a', class: "nano-slide" }, h("slot", { key: '7bc3202fff0b3efc75d4adf701e1f363130dd971' })));
42
+ return (h(Host, { key: 'a426e75ad5b607ac12e53db8183e08f89a10057a', class: "nano-slide" }, h("slot", { key: '792f06fe463ae49d981d7beceb68e4b7b49beff3' })));
43
43
  }
44
44
  static get watchers() { return {
45
45
  "ready": ["readyChange"]
@@ -730,7 +730,7 @@ const Sortable = /*@__PURE__*/ proxyCustomElement(class Sortable extends HTMLEle
730
730
  }
731
731
  }
732
732
  render() {
733
- return (h(Host, { key: 'afd9f0d80c702f205fcf981c0f5ecd0006ff36f6', class: "nano-sortable" }, h("div", { key: '99b144761c9d9b566fa8968057b34d288729118d', class: "sortable__live-region", "aria-live": "polite", "aria-relevant": "additions", "aria-atomic": "true", role: "log", part: "announcements" }, this.ariaTextList.map((str) => (h("div", null, str)))), h("slot", { key: 'f1921453fbb7744eebcb74dbd652e4e62da17aba' })));
733
+ return (h(Host, { key: 'd6d4f0ad6adf2a3f5e1d36b757e116b58e5b55b4', class: "nano-sortable" }, h("div", { key: 'd2cfcad28acfb052acbc6093dddfc247f5369bcf', class: "sortable__live-region", "aria-live": "polite", "aria-relevant": "additions", "aria-atomic": "true", role: "log", part: "announcements" }, this.ariaTextList.map((str) => (h("div", null, str)))), h("slot", { key: '079bc29ba8c2f26163b7e3a23f0107f78db7b3fb' })));
734
734
  }
735
735
  static get watchers() { return {
736
736
  "itemSelector": ["handleItemSelectorChange"],