@nanoporetech-digital/components 8.0.0-alpha.7 → 8.0.0-alpha.9

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 (338) hide show
  1. package/dist/cjs/{algolia-data-Ck3OvAaS.js → algolia-data-CSm7qrG0.js} +1 -1
  2. package/dist/cjs/{component-store-Cpxjkhrv.js → component-store-Bjf_XOwd.js} +1 -1
  3. package/dist/cjs/{dom-B0-coRX2.js → dom-DM4lO0bS.js} +1 -1
  4. package/dist/cjs/{fade-BQI-VEQG.js → fade-DYt6Phy3.js} +3 -3
  5. package/dist/cjs/{form-control-OWJOOoxA.js → form-control-BGk1kbyE.js} +1 -1
  6. package/dist/cjs/{fullscreen-C3ErAoTH.js → fullscreen-B0RzdP3s.js} +3 -3
  7. package/dist/cjs/{index-ZOnWVzxx.js → index-DMCNW34o.js} +1 -1
  8. package/dist/cjs/{index-BlC8UV0T.js → index-trCnMfo7.js} +5 -1
  9. package/dist/cjs/index.cjs.js +3 -3
  10. package/dist/cjs/{lazyload-zGvFFCJx.js → lazyload-DzKvneFi.js} +3 -3
  11. package/dist/cjs/loader.cjs.js +2 -2
  12. package/dist/cjs/{modal-DTqHsNdW.js → modal-Ca7dG1up.js} +1 -1
  13. package/dist/cjs/nano-accordion.cjs.entry.js +3 -3
  14. package/dist/cjs/nano-alert.cjs.entry.js +7 -7
  15. package/dist/cjs/nano-algolia-filter.cjs.entry.js +4 -4
  16. package/dist/cjs/nano-algolia-pagination.cjs.entry.js +2 -2
  17. package/dist/cjs/nano-algolia-results.cjs.entry.js +3 -3
  18. package/dist/cjs/nano-algolia.cjs.entry.js +6 -6
  19. package/dist/cjs/nano-animation.cjs.entry.js +3 -3
  20. package/dist/cjs/nano-avatar_5.cjs.entry.js +21 -19
  21. package/dist/cjs/nano-breadcrumb.cjs.entry.js +42 -9
  22. package/dist/cjs/nano-card-carousel.cjs.entry.js +2 -2
  23. package/dist/cjs/nano-card.cjs.entry.js +1 -1
  24. package/dist/cjs/nano-checkbox-group.cjs.entry.js +16 -19
  25. package/dist/cjs/nano-checkbox.cjs.entry.js +2 -2
  26. package/dist/cjs/nano-collapsible-comparison.cjs.entry.js +2 -2
  27. package/dist/cjs/nano-components.cjs.js +3 -3
  28. package/dist/cjs/nano-content-links.cjs.entry.js +1 -1
  29. package/dist/cjs/nano-cta.cjs.entry.js +1 -1
  30. package/dist/cjs/{nano-data-table-ed7Lg_CN.js → nano-data-table-zUnFb2XO.js} +6 -6
  31. package/dist/cjs/nano-data-table.cjs.entry.js +6 -6
  32. package/dist/cjs/nano-datalist_3.cjs.entry.js +15 -15
  33. package/dist/cjs/nano-date-input.cjs.entry.js +6 -6
  34. package/dist/cjs/nano-date-picker_2.cjs.entry.js +16 -14
  35. package/dist/cjs/nano-details.cjs.entry.js +3 -3
  36. package/dist/cjs/nano-dialog.cjs.entry.js +8 -8
  37. package/dist/cjs/nano-dropdown_2.cjs.entry.js +5 -5
  38. package/dist/cjs/nano-feature-box.cjs.entry.js +19 -0
  39. package/dist/cjs/nano-field-validator.cjs.entry.js +3 -3
  40. package/dist/cjs/nano-file-upload.cjs.entry.js +9 -6
  41. package/dist/cjs/nano-footer.cjs.entry.js +2 -2
  42. package/dist/cjs/nano-global-nav.cjs.entry.js +20 -12
  43. package/dist/cjs/nano-grid-item.cjs.entry.js +1 -1
  44. package/dist/cjs/nano-grid_2.cjs.entry.js +4 -4
  45. package/dist/cjs/nano-hero.cjs.entry.js +2 -2
  46. package/dist/cjs/nano-icon-item.cjs.entry.js +1 -1
  47. package/dist/cjs/nano-icon_3.cjs.entry.js +4 -4
  48. package/dist/cjs/nano-in-page-nav.cjs.entry.js +14 -8
  49. package/dist/cjs/nano-intersection-observe.cjs.entry.js +4 -4
  50. package/dist/cjs/nano-masked-overflow.cjs.entry.js +7 -7
  51. package/dist/cjs/nano-menu-drawer.cjs.entry.js +63 -99
  52. package/dist/cjs/nano-more-less.cjs.entry.js +4 -4
  53. package/dist/cjs/nano-nav-item.cjs.entry.js +12 -16
  54. package/dist/cjs/nano-progress-bar.cjs.entry.js +2 -2
  55. package/dist/cjs/nano-range.cjs.entry.js +2 -2
  56. package/dist/cjs/nano-rating.cjs.entry.js +6 -6
  57. package/dist/cjs/nano-resize-observe.cjs.entry.js +43 -34
  58. package/dist/cjs/nano-slide.cjs.entry.js +3 -3
  59. package/dist/cjs/{nano-slides-Aq8Qr76Y.js → nano-slides-C3CzGlwK.js} +13 -11
  60. package/dist/cjs/nano-slides.cjs.entry.js +3 -3
  61. package/dist/cjs/nano-sortable.cjs.entry.js +3 -3
  62. package/dist/cjs/nano-spinner.cjs.entry.js +1 -1
  63. package/dist/cjs/nano-split-pane.cjs.entry.js +2 -2
  64. package/dist/cjs/nano-sticker.cjs.entry.js +6 -6
  65. package/dist/cjs/nano-tab-content.cjs.entry.js +4 -4
  66. package/dist/cjs/nano-tab-group.cjs.entry.js +5 -5
  67. package/dist/cjs/nano-tab.cjs.entry.js +4 -4
  68. package/dist/cjs/nano-table.cjs.entry.js +4 -4
  69. package/dist/cjs/{page-dots-BCL1Ou_V.js → page-dots-Cpgo_xGE.js} +3 -3
  70. package/dist/cjs/{renderer-BjTjwe8d.js → renderer-W7BRtd3i.js} +1 -1
  71. package/dist/cjs/{scroll-CtgMHKrt.js → scroll-33Y1FRj4.js} +9 -14
  72. package/dist/cjs/{slot-CoMwYflw.js → slot-CppKo1Tn.js} +1 -1
  73. package/dist/cjs/{tabbable-D33Xh_1b.js → tabbable-CQ4-mXv0.js} +1 -1
  74. package/dist/cjs/{table.worker-L6KfPMgT.js → table.worker-Dto6wn52.js} +6 -6
  75. package/dist/collection/collection-manifest.json +2 -1
  76. package/dist/collection/components/algolia/algolia.js +1 -1
  77. package/dist/collection/components/animation/animation.js +1 -1
  78. package/dist/collection/components/breadcrumb/breadcrumb.css +24 -28
  79. package/dist/collection/components/breadcrumb/breadcrumb.js +41 -8
  80. package/dist/collection/components/card/card.js +1 -0
  81. package/dist/collection/components/checkbox/checkbox-group.js +14 -17
  82. package/dist/collection/components/data-table/table.js +1 -1
  83. package/dist/collection/components/datalist/datalist.js +6 -6
  84. package/dist/collection/components/date-input/date-input.js +5 -6
  85. package/dist/collection/components/date-picker/date-picker.js +3 -3
  86. package/dist/collection/components/drawer/drawer.css +0 -1
  87. package/dist/collection/components/dropdown/dropdown.js +1 -1
  88. package/dist/collection/components/feature-box/feature-box.css +42 -0
  89. package/dist/collection/components/feature-box/feature-box.js +49 -0
  90. package/dist/collection/components/field-validator/field-validator.js +1 -1
  91. package/dist/collection/components/file-upload/file-upload.js +7 -4
  92. package/dist/collection/components/footer/footer.css +15 -1
  93. package/dist/collection/components/global-nav/global-nav.css +1 -1
  94. package/dist/collection/components/global-nav/global-nav.js +34 -9
  95. package/dist/collection/components/global-search-results/global-search-results.css +0 -1
  96. package/dist/collection/components/grid/grid.css +8 -5
  97. package/dist/collection/components/grid/grid.js +1 -1
  98. package/dist/collection/components/in-page-nav/in-page-nav.js +15 -5
  99. package/dist/collection/components/input/input.css +1 -1
  100. package/dist/collection/components/input/input.js +8 -6
  101. package/dist/collection/components/masked-overflow/masked-overflow.js +3 -3
  102. package/dist/collection/components/menu-drawer/menu-drawer.css +61 -83
  103. package/dist/collection/components/menu-drawer/menu-drawer.js +66 -151
  104. package/dist/collection/components/more-less/more-less.js +2 -2
  105. package/dist/collection/components/nav-item/nav-item.css +1 -93
  106. package/dist/collection/components/nav-item/nav-item.js +15 -32
  107. package/dist/collection/components/option/option.css +1 -3
  108. package/dist/collection/components/option/option.js +4 -4
  109. package/dist/collection/components/progress-bar/progress-bar.css +5 -5
  110. package/dist/collection/components/rating/rating.js +4 -4
  111. package/dist/collection/components/resize-observe/resize-observe.js +44 -32
  112. package/dist/collection/components/select/select.css +1 -1
  113. package/dist/collection/components/select/select.js +10 -8
  114. package/dist/collection/components/slides/lib/js/prev-next-button.js +3 -1
  115. package/dist/collection/components/slides/slide.js +1 -1
  116. package/dist/collection/components/slides/slides.css +2 -2
  117. package/dist/collection/components/slides/slides.js +3 -3
  118. package/dist/collection/components/sortable/sortable.js +6 -6
  119. package/dist/collection/components/sticker/sticker.js +2 -2
  120. package/dist/collection/components/table/table.js +2 -2
  121. package/dist/collection/components/tabs/tab-content.js +2 -2
  122. package/dist/collection/components/tabs/tab-group.js +1 -1
  123. package/dist/collection/components/tabs/tab.js +2 -2
  124. package/dist/collection/components/tag/tag.js +2 -2
  125. package/dist/collection/components/tooltip/tooltip.js +2 -2
  126. package/dist/collection/utils/constructible-style.js +1 -1
  127. package/dist/collection/utils/scroll.js +8 -13
  128. package/dist/components/algolia.js +1 -1
  129. package/dist/components/datalist.js +6 -6
  130. package/dist/components/date-picker.js +3 -3
  131. package/dist/components/drawer.js +1 -1
  132. package/dist/components/grid.js +2 -2
  133. package/dist/components/input.js +9 -7
  134. package/dist/components/masked-overflow.js +3 -3
  135. package/dist/components/nano-animation.js +1 -1
  136. package/dist/components/nano-breadcrumb.js +42 -9
  137. package/dist/components/nano-checkbox-group.js +14 -17
  138. package/dist/components/nano-data-table.js +1 -1
  139. package/dist/components/nano-date-input.js +4 -4
  140. package/dist/components/nano-feature-box.d.ts +11 -0
  141. package/dist/components/nano-feature-box.js +36 -0
  142. package/dist/components/nano-file-upload.js +7 -4
  143. package/dist/components/nano-footer.js +1 -1
  144. package/dist/components/nano-global-nav.js +19 -10
  145. package/dist/components/nano-in-page-nav.js +15 -5
  146. package/dist/components/nano-menu-drawer.js +64 -105
  147. package/dist/components/nano-more-less.js +2 -2
  148. package/dist/components/nano-rating.js +4 -4
  149. package/dist/components/nano-slide.js +1 -1
  150. package/dist/components/nano-sortable.js +1 -1
  151. package/dist/components/nano-tab-content.js +2 -2
  152. package/dist/components/nano-tab-group.js +1 -1
  153. package/dist/components/nano-tab.js +2 -2
  154. package/dist/components/nano-table.js +2 -2
  155. package/dist/components/nav-item.js +7 -12
  156. package/dist/components/option.js +4 -4
  157. package/dist/components/progress-bar.js +1 -1
  158. package/dist/components/resize-observe.js +41 -32
  159. package/dist/components/scroll.js +8 -13
  160. package/dist/components/select.js +11 -9
  161. package/dist/components/slides.js +7 -5
  162. package/dist/components/sticker.js +2 -2
  163. package/dist/components/tag.js +2 -2
  164. package/dist/components/tooltip.js +2 -2
  165. package/dist/esm/{algolia-data-B1lm-wYl.js → algolia-data-BWVUf8dc.js} +1 -1
  166. package/dist/esm/{component-store-DMqr8_D3.js → component-store-6lIsMtwd.js} +1 -1
  167. package/dist/esm/{dom-COiksOVZ.js → dom-C8mB0MAq.js} +1 -1
  168. package/dist/esm/{fade-TBJBUY-M.js → fade-BUaM9GO7.js} +3 -3
  169. package/dist/esm/{form-control-dh9YtDPa.js → form-control-COOIq-Al.js} +1 -1
  170. package/dist/esm/{fullscreen-7z4Hd9oU.js → fullscreen-D9bU32l7.js} +3 -3
  171. package/dist/esm/{index-CX_Hk6ss.js → index-q0XK-YfO.js} +5 -1
  172. package/dist/esm/{index-VZJF9v1K.js → index-wpeqhSWn.js} +1 -1
  173. package/dist/esm/index.js +4 -4
  174. package/dist/esm/{lazyload-CMsexkIp.js → lazyload-C6olXHXA.js} +3 -3
  175. package/dist/esm/loader.js +3 -3
  176. package/dist/esm/{modal-CH7Vma1I.js → modal-DmA7xt58.js} +1 -1
  177. package/dist/esm/nano-accordion.entry.js +3 -3
  178. package/dist/esm/nano-alert.entry.js +7 -7
  179. package/dist/esm/nano-algolia-filter.entry.js +4 -4
  180. package/dist/esm/nano-algolia-pagination.entry.js +2 -2
  181. package/dist/esm/nano-algolia-results.entry.js +3 -3
  182. package/dist/esm/nano-algolia.entry.js +6 -6
  183. package/dist/esm/nano-animation.entry.js +3 -3
  184. package/dist/esm/nano-avatar_5.entry.js +21 -19
  185. package/dist/esm/nano-breadcrumb.entry.js +42 -9
  186. package/dist/esm/nano-card-carousel.entry.js +2 -2
  187. package/dist/esm/nano-card.entry.js +1 -1
  188. package/dist/esm/nano-checkbox-group.entry.js +16 -19
  189. package/dist/esm/nano-checkbox.entry.js +2 -2
  190. package/dist/esm/nano-collapsible-comparison.entry.js +2 -2
  191. package/dist/esm/nano-components.js +4 -4
  192. package/dist/esm/nano-content-links.entry.js +1 -1
  193. package/dist/esm/nano-cta.entry.js +1 -1
  194. package/dist/esm/{nano-data-table-CraXN1D7.js → nano-data-table-CC6zn15I.js} +6 -6
  195. package/dist/esm/nano-data-table.entry.js +6 -6
  196. package/dist/esm/nano-datalist_3.entry.js +15 -15
  197. package/dist/esm/nano-date-input.entry.js +6 -6
  198. package/dist/esm/nano-date-picker_2.entry.js +16 -14
  199. package/dist/esm/nano-details.entry.js +3 -3
  200. package/dist/esm/nano-dialog.entry.js +8 -8
  201. package/dist/esm/nano-dropdown_2.entry.js +5 -5
  202. package/dist/esm/nano-feature-box.entry.js +17 -0
  203. package/dist/esm/nano-field-validator.entry.js +3 -3
  204. package/dist/esm/nano-file-upload.entry.js +9 -6
  205. package/dist/esm/nano-footer.entry.js +2 -2
  206. package/dist/esm/nano-global-nav.entry.js +20 -12
  207. package/dist/esm/nano-grid-item.entry.js +1 -1
  208. package/dist/esm/nano-grid_2.entry.js +4 -4
  209. package/dist/esm/nano-hero.entry.js +2 -2
  210. package/dist/esm/nano-icon-item.entry.js +1 -1
  211. package/dist/esm/nano-icon_3.entry.js +4 -4
  212. package/dist/esm/nano-in-page-nav.entry.js +14 -8
  213. package/dist/esm/nano-intersection-observe.entry.js +4 -4
  214. package/dist/esm/nano-masked-overflow.entry.js +7 -7
  215. package/dist/esm/nano-menu-drawer.entry.js +63 -99
  216. package/dist/esm/nano-more-less.entry.js +4 -4
  217. package/dist/esm/nano-nav-item.entry.js +12 -16
  218. package/dist/esm/nano-progress-bar.entry.js +2 -2
  219. package/dist/esm/nano-range.entry.js +2 -2
  220. package/dist/esm/nano-rating.entry.js +6 -6
  221. package/dist/esm/nano-resize-observe.entry.js +43 -34
  222. package/dist/esm/nano-slide.entry.js +3 -3
  223. package/dist/esm/{nano-slides-CuheM3tf.js → nano-slides-B0sdF3jS.js} +13 -11
  224. package/dist/esm/nano-slides.entry.js +3 -3
  225. package/dist/esm/nano-sortable.entry.js +3 -3
  226. package/dist/esm/nano-spinner.entry.js +1 -1
  227. package/dist/esm/nano-split-pane.entry.js +2 -2
  228. package/dist/esm/nano-sticker.entry.js +6 -6
  229. package/dist/esm/nano-tab-content.entry.js +4 -4
  230. package/dist/esm/nano-tab-group.entry.js +5 -5
  231. package/dist/esm/nano-tab.entry.js +4 -4
  232. package/dist/esm/nano-table.entry.js +4 -4
  233. package/dist/esm/{page-dots-Dlng6mCY.js → page-dots-B8o2-Gb8.js} +3 -3
  234. package/dist/esm/{renderer-ZmozgREV.js → renderer-BjGZGWn8.js} +1 -1
  235. package/dist/esm/{scroll-D4n69pGx.js → scroll-N_WMYKm7.js} +9 -14
  236. package/dist/esm/{slot-CjAtXEOo.js → slot-CUINJXSo.js} +1 -1
  237. package/dist/esm/{tabbable-CZtanbA9.js → tabbable-DqhO0wy7.js} +1 -1
  238. package/dist/esm/{table.worker-D6BwHdpG.js → table.worker-DxcGLZVJ.js} +6 -6
  239. package/dist/nano-components/{algolia-data-B1lm-wYl.js → algolia-data-BWVUf8dc.js} +1 -1
  240. package/dist/nano-components/{component-store-DMqr8_D3.js → component-store-6lIsMtwd.js} +1 -1
  241. package/dist/nano-components/{dom-COiksOVZ.js → dom-C8mB0MAq.js} +1 -1
  242. package/dist/nano-components/{fade-TBJBUY-M.js → fade-BUaM9GO7.js} +1 -1
  243. package/dist/nano-components/{form-control-dh9YtDPa.js → form-control-COOIq-Al.js} +1 -1
  244. package/dist/nano-components/{fullscreen-7z4Hd9oU.js → fullscreen-D9bU32l7.js} +1 -1
  245. package/dist/nano-components/{index-VZJF9v1K.js → index-wpeqhSWn.js} +1 -1
  246. package/dist/nano-components/index.esm.js +1 -1
  247. package/dist/nano-components/{lazyload-CMsexkIp.js → lazyload-C6olXHXA.js} +1 -1
  248. package/dist/nano-components/{modal-CH7Vma1I.js → modal-DmA7xt58.js} +1 -1
  249. package/dist/nano-components/nano-accordion.entry.js +1 -1
  250. package/dist/nano-components/nano-alert.entry.js +1 -1
  251. package/dist/nano-components/nano-algolia-filter.entry.js +1 -1
  252. package/dist/nano-components/nano-algolia-pagination.entry.js +1 -1
  253. package/dist/nano-components/nano-algolia-results.entry.js +1 -1
  254. package/dist/nano-components/nano-algolia.entry.js +1 -1
  255. package/dist/nano-components/nano-animation.entry.js +1 -1
  256. package/dist/nano-components/nano-avatar_5.entry.js +1 -1
  257. package/dist/nano-components/nano-breadcrumb.entry.js +1 -1
  258. package/dist/nano-components/nano-card-carousel.entry.js +1 -1
  259. package/dist/nano-components/nano-card.entry.js +1 -1
  260. package/dist/nano-components/nano-checkbox-group.entry.js +1 -1
  261. package/dist/nano-components/nano-checkbox.entry.js +1 -1
  262. package/dist/nano-components/nano-collapsible-comparison.entry.js +1 -1
  263. package/dist/nano-components/nano-components.css +365 -120
  264. package/dist/nano-components/nano-components.esm.js +1 -1
  265. package/dist/nano-components/nano-content-links.entry.js +1 -1
  266. package/dist/nano-components/nano-cta.entry.js +1 -1
  267. package/dist/nano-components/{nano-data-table-CraXN1D7.js → nano-data-table-CC6zn15I.js} +1 -1
  268. package/dist/nano-components/nano-data-table.entry.js +1 -1
  269. package/dist/nano-components/nano-datalist_3.entry.js +1 -1
  270. package/dist/nano-components/nano-date-input.entry.js +1 -1
  271. package/dist/nano-components/nano-date-picker_2.entry.js +1 -1
  272. package/dist/nano-components/nano-details.entry.js +1 -1
  273. package/dist/nano-components/nano-dialog.entry.js +1 -1
  274. package/dist/nano-components/nano-dropdown_2.entry.js +1 -1
  275. package/dist/nano-components/nano-feature-box.entry.js +4 -0
  276. package/dist/nano-components/nano-field-validator.entry.js +1 -1
  277. package/dist/nano-components/nano-file-upload.entry.js +1 -1
  278. package/dist/nano-components/nano-footer.entry.js +1 -1
  279. package/dist/nano-components/nano-global-nav.entry.js +1 -1
  280. package/dist/nano-components/nano-grid-item.entry.js +1 -1
  281. package/dist/nano-components/nano-grid_2.entry.js +1 -1
  282. package/dist/nano-components/nano-hero.entry.js +1 -1
  283. package/dist/nano-components/nano-icon-item.entry.js +1 -1
  284. package/dist/nano-components/nano-icon_3.entry.js +1 -1
  285. package/dist/nano-components/nano-in-page-nav.entry.js +1 -1
  286. package/dist/nano-components/nano-intersection-observe.entry.js +1 -1
  287. package/dist/nano-components/nano-masked-overflow.entry.js +1 -1
  288. package/dist/nano-components/nano-menu-drawer.entry.js +1 -1
  289. package/dist/nano-components/nano-more-less.entry.js +1 -1
  290. package/dist/nano-components/nano-nav-item.entry.js +1 -1
  291. package/dist/nano-components/nano-progress-bar.entry.js +1 -1
  292. package/dist/nano-components/nano-range.entry.js +1 -1
  293. package/dist/nano-components/nano-rating.entry.js +1 -1
  294. package/dist/nano-components/nano-resize-observe.entry.js +1 -1
  295. package/dist/nano-components/nano-slide.entry.js +1 -1
  296. package/dist/nano-components/{nano-slides-CuheM3tf.js → nano-slides-B0sdF3jS.js} +4 -4
  297. package/dist/nano-components/nano-slides.entry.js +1 -1
  298. package/dist/nano-components/nano-sortable.entry.js +1 -1
  299. package/dist/nano-components/nano-spinner.entry.js +1 -1
  300. package/dist/nano-components/nano-split-pane.entry.js +1 -1
  301. package/dist/nano-components/nano-sticker.entry.js +1 -1
  302. package/dist/nano-components/nano-tab-content.entry.js +1 -1
  303. package/dist/nano-components/nano-tab-group.entry.js +1 -1
  304. package/dist/nano-components/nano-tab.entry.js +1 -1
  305. package/dist/nano-components/nano-table.entry.js +1 -1
  306. package/dist/nano-components/{page-dots-Dlng6mCY.js → page-dots-B8o2-Gb8.js} +1 -1
  307. package/dist/nano-components/{renderer-ZmozgREV.js → renderer-BjGZGWn8.js} +1 -1
  308. package/dist/nano-components/scroll-N_WMYKm7.js +4 -0
  309. package/dist/nano-components/{slot-CjAtXEOo.js → slot-CUINJXSo.js} +1 -1
  310. package/dist/nano-components/{tabbable-CZtanbA9.js → tabbable-DqhO0wy7.js} +1 -1
  311. package/dist/nano-components/table.worker-DxcGLZVJ.js +4 -0
  312. package/dist/style/components.css +1 -1
  313. package/dist/style/components.css.map +1 -1
  314. package/dist/style/nano.css +1 -1
  315. package/dist/style/nano.css.map +1 -1
  316. package/dist/types/components/breadcrumb/breadcrumb.d.ts +7 -1
  317. package/dist/types/components/card/card.d.ts +1 -0
  318. package/dist/types/components/date-input/date-input.d.ts +1 -2
  319. package/dist/types/components/date-picker/date-picker-interface.d.ts +6 -6
  320. package/dist/types/components/feature-box/feature-box.d.ts +14 -0
  321. package/dist/types/components/global-nav/global-nav.d.ts +5 -0
  322. package/dist/types/components/in-page-nav/in-page-nav.d.ts +1 -0
  323. package/dist/types/components/menu-drawer/menu-drawer.d.ts +12 -27
  324. package/dist/types/components/nav-item/nav-item.d.ts +9 -4
  325. package/dist/types/components/option/option.d.ts +1 -1
  326. package/dist/types/components/resize-observe/resize-observe.d.ts +3 -0
  327. package/dist/types/components/slides/slides-interface.d.ts +1 -1
  328. package/dist/types/components.d.ts +79 -58
  329. package/dist/types/stencil-public-runtime.d.ts +12 -5
  330. package/dist/types/utils/testing/index.d.ts +50 -0
  331. package/docs-json.json +232 -125
  332. package/docs-vscode.json +25 -16
  333. package/hydrate/index.js +303 -342
  334. package/hydrate/index.mjs +303 -342
  335. package/package.json +3 -3
  336. package/dist/nano-components/scroll-D4n69pGx.js +0 -4
  337. package/dist/nano-components/table.worker-D6BwHdpG.js +0 -4
  338. /package/dist/nano-components/{index-CX_Hk6ss.js → index-q0XK-YfO.js} +0 -0
@@ -159,11 +159,25 @@
159
159
  --input-font-size: var(--nano-font-size-2xs) !important;
160
160
  max-inline-size: 9rem !important;
161
161
  }
162
+ @container footer-container (max-width: 1200px) {
163
+ :host .top {
164
+ grid-template-columns: repeat(2, 1fr);
165
+ grid-template-rows: repeat(2, auto);
166
+ }
167
+ :host .top-end {
168
+ grid-row: 2;
169
+ grid-column: 1/-1;
170
+ }
171
+ }
162
172
  @container footer-container (max-width: 912px) {
163
- :host .top,
164
173
  :host .middle,
165
174
  :host .bottom {
166
175
  grid-template-columns: 1fr;
176
+ grid-template-rows: 1fr;
177
+ }
178
+ :host .top {
179
+ display: flex;
180
+ flex-direction: column;
167
181
  }
168
182
  :host .middle-center {
169
183
  flex-wrap: wrap;
@@ -122,6 +122,7 @@ nano-badge {
122
122
  .gn__menu-bar {
123
123
  inline-size: 100%;
124
124
  overflow: clip;
125
+ background-color: var(--main-menu-bar-bg-color);
125
126
  }
126
127
  .gn__menu-bar a {
127
128
  color: var(--main-menu-text-color);
@@ -136,7 +137,6 @@ nano-badge {
136
137
  .gn__main-menu {
137
138
  display: inline-flex;
138
139
  align-items: center;
139
- background-color: var(--main-menu-bar-bg-color);
140
140
  min-inline-size: 100%;
141
141
  padding: var(--nano-spacing-md);
142
142
  transition: opacity var(--nano-transition-x-fast) ease;
@@ -147,6 +147,14 @@ export class GlobalNav {
147
147
  this._mainMenuBar = el;
148
148
  this.addMainmenuRo();
149
149
  }
150
+ /**
151
+ * Manually triggers the main menu bar resize behaviour.
152
+ * This can be useful if you append new children to the global-nav
153
+ */
154
+ async triggerResize() {
155
+ this.shouldResize = true;
156
+ this.breakpoint = 0;
157
+ }
150
158
  shouldResize = true;
151
159
  breakpoint = 0;
152
160
  breakpointChanged() {
@@ -488,20 +496,20 @@ export class GlobalNav {
488
496
  }
489
497
  render() {
490
498
  const bpps = this.bpPartials;
491
- return (h(Host, { key: '66132ed8841605602bff8c2c750a657ec4d6d83a', class: {
499
+ return (h(Host, { key: '00499c2d65244ee4bba6b85c830c7f586ac3dbb9', class: {
492
500
  'overflow-menu': this.breakpoint > bpps.mainMenu.breakpoint,
493
501
  'bar-menu': this.breakpoint <= bpps.mainMenu.breakpoint,
494
502
  'nano-global-nav': true,
495
- } }, h("div", { key: 'c8dfcf4b405c72a14f576fb7b14ce41e8ff49b83', class: {
503
+ } }, h("div", { key: '56a6a9c2521b37bd2273ca8919bf74b572b5ca22', class: {
496
504
  gn: true,
497
505
  'gn__search-open': this.searchBarShown,
498
- } }, h("nano-drawer", { key: '741e6dc6df0253450f65e792f45fe2a337bb007d', ref: (el) => (this.overflowMenu = el), label: "Main menu", part: "drawer", class: "gn__drawer nano-theme-dark", placement: "start", open: this.overflowOpen, onNanoAfterHide: () => (this.overflowOpen = false), onNanoAfterShow: () => (this.overflowOpen = true) }, h("div", { key: 'b8d197424ed2d4dff32234457b7836507d9777ba', class: "gn__drawer-header", part: "overflow-header", slot: "label" }, "Main menu"), h("nav", { key: '36ef3c9a323078bfbf4f28682afd4b33475c6d1d', class: "gn__drawer-menu", part: "overflow-menu" }, this.breakpoint > bpps.mainMenu.breakpoint
506
+ } }, h("nano-drawer", { key: 'bc4b0680aa33d9084668eaa40ca867cdd039375b', ref: (el) => (this.overflowMenu = el), label: "Main menu", part: "drawer", class: "gn__drawer nano-theme-dark", placement: "start", open: this.overflowOpen, onNanoAfterHide: () => (this.overflowOpen = false), onNanoAfterShow: () => (this.overflowOpen = true) }, h("div", { key: '03a2d6fed3ac78527aefb80a881f270b6fad48a2', class: "gn__drawer-header", part: "overflow-header", slot: "label" }, "Main menu"), h("nav", { key: '0b1fb1192dd02f22944f40a772ffa8a88ba39e8c', class: "gn__drawer-menu", part: "overflow-menu" }, this.breakpoint > bpps.mainMenu.breakpoint
499
507
  ? bpps.mainMenu.tpl()
500
- : '', h("slot", { key: '569277672e49d95702583537c90db8de51d89a35', name: "overflow" }))), h("div", { key: '367e4bfffe6a8359bf49e6a4ea7a69dfdd20e6af', class: "gn__menu-bar-wrapper" }, h("div", { key: 'aca6cb95a4b03c46509cfd6d0a55e722976200e9', class: "gn__menu-bar", part: "menu-bar", ref: (el) => (this.mainMenuBar = el) }, h("nav", { key: '8c56fcfde4d896b30a277a00f79de3dfb75d93ef', class: `gn__main-menu ${this.shouldResize ? 'resizing' : ''}`, part: "main-menu", ref: (el) => (this.mainMenu = el) }, this.breakpoint > bpps.mainMenu.breakpoint && (h("nano-icon-button", { key: 'fb8ca915d6460ee871a0a357b8a25d2e720620ac', class: "gn__overflow-button", iconName: "light/bars", label: "Open Menu", onClick: () => this.overflowMenu.show() })), h("slot", { key: '96962d7ccd0d55f5c054dae0e8480398e7ea1415', name: "logo" }, h("a", { key: 'dcfa5d446ef38afb07285172dd5c0269da604d44', href: this.logoUrl, class: "gn__logo-link", part: "logo-link" }, this.breakpoint <= bpps.logo.breakpoint ? (h("img", { src: getAssetPath('../nano-assets/ont-logo.svg'), alt: `Oxford Nanopore Technologies logo. Features a stylised representation of a nanopore,
508
+ : '', h("slot", { key: '8a5c53acab83acf5055bbb893400bdee271f55e2', name: "overflow" }))), h("div", { key: '83b09941ac6af91ed7eee1537597bb73d0be8f78', class: "gn__menu-bar-wrapper" }, h("div", { key: '65c85c1b34a5c3e687797ac88bc480356a348a99', class: "gn__menu-bar", part: "menu-bar", ref: (el) => (this.mainMenuBar = el) }, h("nav", { key: '7ebee46ce5c2e5b5c5226ebefb082c64cc54aa61', class: `gn__main-menu ${this.shouldResize ? 'resizing' : ''}`, part: "main-menu", ref: (el) => (this.mainMenu = el) }, this.breakpoint > bpps.mainMenu.breakpoint && (h("nano-icon-button", { key: 'c8d58d9ed7c74d7044a42544a638520efa199a84', class: "gn__overflow-button", iconName: "light/bars", label: "Open Menu", onClick: () => this.overflowMenu.show() })), h("slot", { key: '1239a8949b63a740eca77ddf9d2a894571c1099c', name: "logo" }, h("a", { key: 'dd3c247f271d0c62aca93033d9ae5f9f1580be61', href: this.logoUrl, class: "gn__logo-link", part: "logo-link" }, this.breakpoint <= bpps.logo.breakpoint ? (h("img", { src: getAssetPath('../nano-assets/ont-logo.svg'), alt: `Oxford Nanopore Technologies logo. Features a stylised representation of a nanopore,
501
509
  (a tiny protein channel embedded in a membrane) through which DNA or RNA molecules are passed in for sequencing.`, class: "gn__logo gn__logo--large", width: "152", height: "36", part: "logo logo--large" })) : (h("img", { src: getAssetPath('../nano-assets/ont-wheel.svg'), alt: `Oxford Nanopore Technologies logo. A stylised representation of a nanopore,
502
- (a tiny protein channel embedded in a membrane) through which DNA or RNA molecules are passed in for sequencing.`, class: "gn__logo gn__logo--small", width: "36", height: "36", part: "logo logo--small" })))), this.breakpoint <= bpps.mainMenu.breakpoint && (h("div", { key: 'c4e2a7166c5766eede74e6f9e5763e157c47ac74', class: "gn__main-menu-links" }, bpps.mainMenu.tpl())), h("div", { key: 'e6bb457db190019f21c1c712bb8c9bab5abec91b', class: "gn__main-menu-actions" }, h("nano-dropdown", { key: 'd46c596a07189f129a1644118560590e70101a2b', dialogTitle: "Search Oxford Nanopore Technologies", placement: "bottom", class: "gn__search-dropdown", skidding: -30, distance: 25, open: this.searchBarShown, onNanoAfterShow: this.handleSearchOpenEvent, onNanoAfterHide: this.handleSearchCloseEvent, autoOpen: !!this.searchIndices.length }, h("nano-icon-button", { key: '00df8fe73a5c1e5b0e3263ee584549c1b450675f', class: "gn__search-button", slot: "trigger", iconName: "light/magnifying-glass", label: "Search" }), !!this.searchIndices.length && (h("form", { key: 'b03a0c3f58a7a50939ec09258dda85a49157cf48', ref: (form) => (this.searchForm = form), class: "gn__search-form", part: "search-form", onSubmit: this.onSearchSubmit }, this.searchIndices.length > 1 && (h("nano-select", { key: '367ed61df9546497f9cef04d833e86f59389f48a', part: "search-select", label: "Which site do you wish to search in?", mask: true, hideLabel: true, value: this.activeIndex?.index, onNanoChange: this.handleSearchIndexChangeEvent }, this.searchIndices.map((index) => (h("nano-option", { selected: index.name === this.searchIndex, value: index.index }, index.name || index.index))))), h("nano-input", { key: 'd8013a6f1cd8953bc63ba6f518367a4b278197bd', ref: (ele) => (this.searchInput = ele), part: "search-input", label: "Search Oxford Nanopore Technologies", placeholder: "Search Oxford Nanopore...", hideLabel: true, clearable: true, onNanoChange: (e) => {
510
+ (a tiny protein channel embedded in a membrane) through which DNA or RNA molecules are passed in for sequencing.`, class: "gn__logo gn__logo--small", width: "36", height: "36", part: "logo logo--small" })))), this.breakpoint <= bpps.mainMenu.breakpoint && (h("div", { key: 'f8704085d6b7013c96ea922d783e4117fdd1a085', class: "gn__main-menu-links" }, bpps.mainMenu.tpl())), h("div", { key: '9b056f95508275dd70aa7626396795ab348beb02', class: "gn__main-menu-actions" }, h("nano-dropdown", { key: '8ae5f8986cfa43e035570c0af6e01b63d2a41ec3', dialogTitle: "Search Oxford Nanopore Technologies", placement: "bottom", class: "gn__search-dropdown", skidding: -30, distance: 25, open: this.searchBarShown, onNanoAfterShow: this.handleSearchOpenEvent, onNanoAfterHide: this.handleSearchCloseEvent, autoOpen: !!this.searchIndices.length }, h("nano-icon-button", { key: '6026bb1da1649da1bfa8fdd0aca64637768e264d', class: "gn__search-button", slot: "trigger", iconName: "light/magnifying-glass", label: "Search" }), !!this.searchIndices.length && (h("form", { key: '7a662aeeae84bea4e73a907c185933ef40239061', ref: (form) => (this.searchForm = form), class: "gn__search-form", part: "search-form", onSubmit: this.onSearchSubmit }, this.searchIndices.length > 1 && (h("nano-select", { key: 'e047a10dcabdde6ea485f08a03f3b92d12109846', part: "search-select", label: "Which site do you wish to search in?", mask: true, hideLabel: true, value: this.activeIndex?.index, onNanoChange: this.handleSearchIndexChangeEvent }, this.searchIndices.map((index) => (h("nano-option", { selected: index.name === this.searchIndex, value: index.index }, index.name || index.index))))), h("nano-input", { key: '94f69085cc0aad1a16cd37c34edb08bec7ddfa07', ref: (ele) => (this.searchInput = ele), part: "search-input", label: "Search Oxford Nanopore Technologies", placeholder: "Search Oxford Nanopore...", hideLabel: true, clearable: true, onNanoChange: (e) => {
503
511
  this.handleSearchTermChangeEvent(e.detail.value);
504
- }, onNanoInput: this.handleSearchTermInputEvent, debounce: 500, value: this._searchValue }, h("nano-icon", { key: 'fe62a269a2f3ca318ad1e071404f693c9540317b', slot: "end", name: "light/magnifying-glass" }), h("nano-datalist", { key: '87d39b1dc2be07a66b546ba53eea56351bb103ec', class: "gn__search-results", onNanoSelect: (e) => e.preventDefault(), dropDownConfig: { tetherTo: this.searchForm }, disableFilter: true }, this.searchLoading && (h("div", { key: 'fade49b478eddeb181f332b8db31b0f88c98305f', slot: "no-result", class: "gn__search-loading" }, h("nano-spinner", { key: 'e7c946dc5ec1ee76d115fd2575b1288f95d71c43' }, "Searching..."))), this.noResultPartial(), !!this.autocompleteResults?.hits.length && [
512
+ }, onNanoInput: this.handleSearchTermInputEvent, debounce: 500, value: this._searchValue }, h("nano-icon", { key: 'cbf4fe8934165e90ea788e51994471120886343b', slot: "end", name: "light/magnifying-glass" }), h("nano-datalist", { key: '066d8efa608ce3de3f55c0d4acc9db4c236e8e79', class: "gn__search-results", onNanoSelect: (e) => e.preventDefault(), dropDownConfig: { tetherTo: this.searchForm }, disableFilter: true }, this.searchLoading && (h("div", { key: '2cf9e1520de0e89ced9eee012990034b4602cfe5', slot: "no-result", class: "gn__search-loading" }, h("nano-spinner", { key: '76da20f849a0d244a3127c937a08ee0e06381922' }, "Searching..."))), this.noResultPartial(), !!this.autocompleteResults?.hits.length && [
505
513
  this.autocompleteResults.hits.map((hit, i) => (h("nano-option", { href: hit.url, class: "gn__search-result", onClick: () => {
506
514
  searchInsight.sendClick({
507
515
  index: this.activeIndex.index,
@@ -511,10 +519,10 @@ export class GlobalNav {
511
519
  positions: [i + 1],
512
520
  });
513
521
  } }, h("span", { innerHTML: this.autocompleteSnippet(hit) })))),
514
- h("nano-option", { key: '74852e060130852064b4987f1de0c8f0fa2a395e', class: "gn__search-viewall", onNanoSelect: this.onSearchSubmit }, "View all results"),
515
- ]))))), h("div", { key: 'e66b10d8ce1de533d772bfd66bf7c73511f338ff', class: "gn__cart" }, h("nano-icon-button", { key: '47b8fc7ad91f5ea1048a670407ad602d29eb347f', iconName: "light/cart-shopping", label: "View your cart", href: this.cartUrl }), !!this.cartCount && (h("nano-badge", { key: '75c8ffb6264bd4a390ad77d15c408105d6f77393', theme: "danger", strength: "2" }, this.cartCount > 9 ? '9+' : this.cartCount))), this.breakpoint <= bpps.contact.breakpoint
522
+ h("nano-option", { key: '59565a179d237c35d5528e4527b92372d2088b18', class: "gn__search-viewall", onNanoSelect: this.onSearchSubmit }, "View all results"),
523
+ ]))))), h("div", { key: '33cc9bf94208059a733ef7c3abf2fda237f7193c', class: "gn__cart" }, h("nano-icon-button", { key: '62158360ce5c519c5d49246897cd3768831bea60', iconName: "light/cart-shopping", label: "View your cart", href: this.cartUrl }), !!this.cartCount && (h("nano-badge", { key: '668b68f55175618acfdbf787373fdc05ca6c6586', theme: "danger", strength: "2" }, this.cartCount > 9 ? '9+' : this.cartCount))), this.breakpoint <= bpps.contact.breakpoint
516
524
  ? bpps.contact.tpl()
517
- : '', this.isLoggedIn ? (h("nano-dropdown", { dialogTitle: "User menu", class: "gn__user-dropdown", distance: 10, placement: "bottom-end" }, h("button", { slot: "trigger", class: "gn__user-dropdown-trigger" }, h("nano-icon", { name: "light/user" }), h("nano-icon", { name: "light/chevron-down", class: "gn__user-dropdown-chevron" }), !!this.msgCount && (h("nano-badge", { theme: "danger", strength: "2" }, this.msgCount > 9 ? '9+' : this.msgCount))), this.loggedInPanel())) : (h("nano-cta", { secondary: true, size: "small", icon: "false", class: "gn__login-cta" }, h("a", { href: this.formatLoginLink(this.loginUrl) }, "Login"))))))), h("div", { key: '798ee16df74983e3d5689639f3320198bd1fe14d', class: "gn__site", part: "site-wrapper" }, h("nano-global-search-results", { key: 'a51edbf9c6bc9b0e34e207e21b4341704032e82f', part: "site-search-results" }, h("slot", { key: '4ae65a7bc4d8897d95e43692b87830cf9f9d8a8f' }))))));
525
+ : '', this.isLoggedIn ? (h("nano-dropdown", { dialogTitle: "User menu", class: "gn__user-dropdown", distance: 10, placement: "bottom-end" }, h("button", { slot: "trigger", class: "gn__user-dropdown-trigger" }, h("nano-icon", { name: "light/user" }), h("nano-icon", { name: "light/chevron-down", class: "gn__user-dropdown-chevron" }), !!this.msgCount && (h("nano-badge", { theme: "danger", strength: "2" }, this.msgCount > 9 ? '9+' : this.msgCount))), this.loggedInPanel())) : (h("nano-cta", { secondary: true, size: "small", icon: "false", class: "gn__login-cta" }, h("a", { href: this.formatLoginLink(this.loginUrl) }, "Login"))))))), h("nano-global-search-results", { key: '46f38c9e68b64668a7dc28cf98ae772bae059fb5', part: "site-search-results" }, h("div", { key: '5be5030d0eaaa992f334e818be155683b7f282e6', class: "gn__site", part: "site-wrapper" }, h("slot", { key: 'b144415e3e26914d026c403052d65237c693db2a' }))))));
518
526
  }
519
527
  static get is() { return "nano-global-nav"; }
520
528
  static get encapsulation() { return "shadow"; }
@@ -954,6 +962,23 @@ export class GlobalNav {
954
962
  "tags": []
955
963
  }
956
964
  },
965
+ "triggerResize": {
966
+ "complexType": {
967
+ "signature": "() => Promise<void>",
968
+ "parameters": [],
969
+ "references": {
970
+ "Promise": {
971
+ "location": "global",
972
+ "id": "global::Promise"
973
+ }
974
+ },
975
+ "return": "Promise<void>"
976
+ },
977
+ "docs": {
978
+ "text": "Manually triggers the main menu bar resize behaviour. \nThis can be useful if you append new children to the global-nav",
979
+ "tags": []
980
+ }
981
+ },
957
982
  "submitSearch": {
958
983
  "complexType": {
959
984
  "signature": "() => Promise<void>",
@@ -49,7 +49,6 @@
49
49
  justify-content: space-between;
50
50
  }
51
51
  .main-search__wrap {
52
- /* autoprefixer: ignore next */
53
52
  display: contents;
54
53
  block-size: 100%;
55
54
  }
@@ -38,13 +38,15 @@
38
38
  }
39
39
  }:host {
40
40
  /**
41
- * @prop --grid-col-gap: gap between all columns. Defaults to theme's global padding
42
- * @prop --grid-row-gap: gap between all rows. Defaults to theme's global padding
43
- * @prop --grid-align-items: alignment of items in the grid. Defaults to start
41
+ * @prop --grid-col-gap: gap between all columns. Defaults to `var(--nano-spacing-md)`
42
+ * @prop --grid-row-gap: gap between all rows. Defaults to `var(--nano-spacing-md)`
43
+ * @prop --grid-align-items: alignment of items in the grid. Defaults to `start`
44
+ * @prop --grid-justify-items: justification of items in the grid. Defaults to `start`
44
45
  */
45
- --grid-col-gap: var(--nano-spacing-medium, 16px);
46
- --grid-row-gap: var(--nano-spacing-medium, 16px);
46
+ --grid-col-gap: var(--nano-spacing-md);
47
+ --grid-row-gap: var(--nano-spacing-md);
47
48
  --grid-align-items: start;
49
+ --grid-justify-items: start;
48
50
  --current-grid-size: "grid size: s";
49
51
  container-type: inline-size;
50
52
  display: block;
@@ -55,6 +57,7 @@
55
57
  block-size: inherit;
56
58
  min-block-size: inherit;
57
59
  align-items: var(--grid-align-items);
60
+ justify-items: var(--grid-justify-items);
58
61
  }
59
62
 
60
63
  :host([show-helper]:not([show-helper=false])) {
@@ -175,7 +175,7 @@ export class Grid {
175
175
  this.constructSizeArray();
176
176
  }
177
177
  render() {
178
- return (h(Host, { key: '410e2e3fce3867216adb0f9bf0501f8d40514bce', class: "nano-grid" }, h("div", { key: '424f6da1b39d37ef70912e87e5d61320b5ff8d11', part: "grid", class: "grid", "cache-key": this.cacheKey }, h("slot", { key: '051bdae40a3d63dfdb744a980c74a42c2ac9c05f' })), this.showHelper && (h("div", { key: 'b24395cdacf9d7ba3a15b1a9b064a2a97f3afac1', class: "grid grid--helper", part: "helper", "cache-key": this.cacheKey }, [...Array(24)].map(() => (h("div", { class: "grid__helper-item" })))))));
178
+ return (h(Host, { key: '74b98156bf6fbb3bf105135be4f461737d7774ac', class: "nano-grid" }, h("div", { key: 'dda06ec152c7d25ee0e6090e6c301bc8e5e81aac', part: "grid", class: "grid", "cache-key": this.cacheKey }, h("slot", { key: '175e120e0198bfad25600316aa8a8becf9390866' })), this.showHelper && (h("div", { key: '773d0ca81af12cc416550578e4df88f08b7af3cd', class: "grid grid--helper", part: "helper", "cache-key": this.cacheKey }, [...Array(24)].map(() => (h("div", { class: "grid__helper-item" })))))));
179
179
  }
180
180
  static get is() { return "nano-grid"; }
181
181
  static get encapsulation() { return "shadow"; }
@@ -23,14 +23,15 @@ export class NanoInPageNav {
23
23
  /** Whether the headers should be sticky (small screen only). Defaults to true */
24
24
  stickyHeaders = true;
25
25
  el;
26
- isMobile = window.innerWidth <= this.breakpoint;
26
+ isMobile = false;
27
27
  stickyClass = 'sticky';
28
28
  stuckClass = 'stuck';
29
29
  stickyObserver;
30
30
  slotCtrl = new HasSlotController(this, '[default]', 'mobile', 'back', 'accessory');
31
31
  componentDidLoad() {
32
- this.updateNavForBreakpoint();
33
- window.addEventListener('resize', this.updateNavForBreakpoint);
32
+ if (Build.isBrowser) {
33
+ this.updateNavForBreakpoint();
34
+ }
34
35
  }
35
36
  /**
36
37
  * Checks if the current screen width is less than or equal to the breakpoint.
@@ -38,6 +39,8 @@ export class NanoInPageNav {
38
39
  * If not, it transforms the mobile navigation back into a desktop one.
39
40
  */
40
41
  updateNavForBreakpoint = () => {
42
+ if (Build.isServer)
43
+ return;
41
44
  this.isMobile = window.innerWidth <= this.breakpoint;
42
45
  if (this.isMobile) {
43
46
  // if the mobile slot is not there, we need to transform the desktop nav into a mobile one
@@ -54,6 +57,8 @@ export class NanoInPageNav {
54
57
  };
55
58
  // make nano-details headers sticky
56
59
  initStickiness() {
60
+ if (Build.isServer)
61
+ return;
57
62
  let lastScrollTop = 0;
58
63
  // shadowRoot for mobile slot, light DOM for default nav
59
64
  const nanoDetails = this.isMobile && this.slotCtrl.has('mobile')
@@ -95,11 +100,16 @@ export class NanoInPageNav {
95
100
  this.stickyObserver.observe(details);
96
101
  });
97
102
  }
103
+ connectedCallback() {
104
+ if (Build.isBrowser) {
105
+ window.addEventListener('resize', this.updateNavForBreakpoint);
106
+ }
107
+ }
98
108
  disconnectedCallback() {
99
109
  if (this.stickyObserver) {
100
110
  this.stickyObserver.disconnect();
101
111
  }
102
- if (this.updateNavForBreakpoint) {
112
+ if (Build.isBrowser) {
103
113
  window.removeEventListener('resize', this.updateNavForBreakpoint);
104
114
  }
105
115
  }
@@ -209,7 +219,7 @@ export class NanoInPageNav {
209
219
  });
210
220
  }
211
221
  render() {
212
- return (h(Host, { key: '92552373d8a09fb223e32246547a8d134cb09da2', class: "nano-in-page-nav" }, h("nav", { key: '6fa0d66432e09b4a3e744f2d9e6c90d2d589f1b2', part: "root" }, (this.slotCtrl.has('back') || this.slotCtrl.has('accessory')) && (h("div", { key: '1c596d58e78b17a8ba5e408a5156a6be59cf1765', class: "header" }, h("slot", { key: '9d6b924c2a24e85681564744a3667eb23692ae07', name: "back" }), h("slot", { key: 'c3f9a3a6f2879054df7b50074872a3341d02f0f5', name: "accessory" }))), this.slotCtrl.has('mobile') && this.isMobile ? (h("nano-details", { label: "Menu", class: this.stickyHeaders
222
+ return (h(Host, { key: 'fd3f27b1f30fa2e769abff0f6f28d95a09a9573c', class: "nano-in-page-nav" }, h("nav", { key: '56bb0757c62664ca08d55f12d5be0461c8333363', part: "root" }, (this.slotCtrl.has('back') || this.slotCtrl.has('accessory')) && (h("div", { key: 'd1ec827847505fcef24412a84b47a9816c06b117', class: "header" }, h("slot", { key: 'edf50c9a0f9968dd7b224f919f800634f0b49ece', name: "back" }), h("slot", { key: '09e6a97a71aebda4e1217f3d7bfad9ae1264a9cc', name: "accessory" }))), this.slotCtrl.has('mobile') && this.isMobile ? (h("nano-details", { label: "Menu", class: this.stickyHeaders
213
223
  ? `details-wrapper ${this.stickyClass}`
214
224
  : 'details-wrapper' }, h("slot", { name: "mobile" }))) : (h("slot", null)))));
215
225
  }
@@ -358,7 +358,7 @@ label.visually-hide,
358
358
  display: grid;
359
359
  grid-template-areas: "overlay";
360
360
  }
361
- :host(:not(.is-invalid):not(.is-valid)) .form-ctrl__validation-icon {
361
+ :host(:not(.is-invalid, .is-valid)) .form-ctrl__validation-icon {
362
362
  display: none;
363
363
  }
364
364
 
@@ -140,7 +140,9 @@ export class Input {
140
140
  * String to place within a label element. Alternatively you may use a label slot.
141
141
  */
142
142
  get label() {
143
- return this.required && !this._label.endsWith('*') ? this._label + ' *' : this._label;
143
+ return this.required && !this._label.endsWith('*')
144
+ ? this._label + ' *'
145
+ : this._label;
144
146
  }
145
147
  set label(value) {
146
148
  this._label = value;
@@ -579,18 +581,18 @@ export class Input {
579
581
  disabled,
580
582
  clearControl: this.clearable,
581
583
  }))(this);
582
- return (h(Host, { key: '1601bf765681a833b22c05294a1c8d9b5c6be5ee', "aria-disabled": this.disabled ? 'true' : null, class: {
584
+ return (h(Host, { key: '87ffe8828b64535a10140feecfc75ff5fba354f2', "aria-disabled": this.disabled ? 'true' : null, class: {
583
585
  'has-value': this.hasValue(),
584
586
  'has-focus': this.hasFocus,
585
587
  'is-invalid': this._invalid === true,
586
588
  'is-valid': this._invalid === false,
587
589
  'nano-input': true,
588
- } }, h("div", { key: '3db99291d328de9684137597706b79e4f24b65e2', style: { width: '100%' } }, h(FormControlWrap, { key: 'df525275b5c35b9ae3fdc793766a9af759740076', ...wrapOptions, class: {
590
+ } }, h("div", { key: '88cf2db24e47049dd5ef7d45b41614b821a6dd5f', style: { width: '100%' } }, h(FormControlWrap, { key: 'c50c5abfb6c8e3b64c151cca611ba83d6949dfff', ...wrapOptions, class: {
589
591
  'has-helper': this.hasHelperSlot,
590
592
  'has-error': !!this.errorMessage &&
591
593
  this.showInlineError &&
592
594
  this._invalid === true,
593
- } }, h(FormControl, { key: '8f25ff2340431b2ea29d5063877ad376ec229758', ...controlOptions, onClearText: this.clearTextInput, control: this.el, ref: (el) => (this.nativeInputWrap = el), showInlineError: this.showInlineError, endSlot: this.showPicker &&
595
+ } }, h(FormControl, { key: 'fc9d46333893136293bbdac44372ba3863a9d864', ...controlOptions, onClearText: this.clearTextInput, control: this.el, ref: (el) => (this.nativeInputWrap = el), showInlineError: this.showInlineError, endSlot: this.showPicker &&
594
596
  this.type === 'date' &&
595
597
  !this.readonly &&
596
598
  !this.disabled && [
@@ -605,10 +607,10 @@ export class Input {
605
607
  this.value = e.detail.value;
606
608
  this.pickerDropdown?.hide();
607
609
  }, min: this.min, max: this.max, "is-modal": true, selectedDate: this.value || this.initialPickerDate || undefined }))),
608
- ] }, this.type !== 'textarea' && (h("input", { key: '97734d0168a049af1b22e4517db5e58d25a75b13', 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: 'b1780aa8cf51d8b7440825d461d89e8746fcd96d', rows: this.floatLabel ? 1 : this.rows, id: this.inputId, class: {
610
+ ] }, this.type !== 'textarea' && (h("input", { key: '5aa8c0b68e55c5afb3f9e9676ee75bd53a242af2', 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: '571c808ea1f623b996e17d287eab361444da2fa3', rows: this.floatLabel ? 1 : this.rows, id: this.inputId, class: {
609
611
  'input__native-ctrl': true,
610
612
  input__resizable: this.resize === 'true',
611
- }, 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: 'fa333ee624b824af60a8a79d09720e231e8d455c' }))));
613
+ }, 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: '10a61c2bbda41eac07546a6ad6a83b2b767489e8' }))));
612
614
  }
613
615
  static get is() { return "nano-input"; }
614
616
  static get encapsulation() { return "scoped"; }
@@ -327,7 +327,7 @@ export class MaskedOverflow {
327
327
  }
328
328
  }
329
329
  render() {
330
- return (h(Host, { key: '4f88bf0a4cd8f01c745685afe7b0c5f9fc9b26b2', dir: this.isRtl ? 'rtl' : null, class: "nano-masked-overflow", "has-scroll-controls": this.hasScrollControls }, h("div", { key: 'b7894467af4981a53bb0540998f9fdee3b5e4db7', part: "base", class: {
330
+ return (h(Host, { key: 'ce255683796d356286e4c9cbd7f7ea34db77190b', dir: this.isRtl ? 'rtl' : null, class: "nano-masked-overflow", "has-scroll-controls": this.hasScrollControls }, h("div", { key: 'd1ed2c18f2b317721e2cab42694a1f203d5d807a', part: "base", class: {
331
331
  onav: true,
332
332
  [`onav--${this.orientation}`]: true,
333
333
  'onav--has-scroll-controls': this.hasScrollControls,
@@ -336,12 +336,12 @@ export class MaskedOverflow {
336
336
  'onav--no-transitions': this.instantReCalc,
337
337
  'onnav--has-indicator': this.showIndicator,
338
338
  'onnav--hide-scrollbars': this.hideScrollbars && this.hideScrollbars !== 'false',
339
- }, onClick: this.handleClick, onKeyDown: this.handleKeyDown }, h("div", { key: 'c12e39f98ea4750a0709c822f1827fd3a4580ca5', class: "onav__nav" }, this.scrollControls && (h("nano-icon-button", { key: '9f45887d61630f41398e872bb7d3538f87fcc7c0', part: "scroll-button scroll-button-prev", class: {
339
+ }, onClick: this.handleClick, onKeyDown: this.handleKeyDown }, h("div", { key: 'e1acd4b76844e48ef2700500977fcc227323fa92', class: "onav__nav" }, this.scrollControls && (h("nano-icon-button", { key: '30e8801e0b1ba96675ab129e5371eb6e1edff420', part: "scroll-button scroll-button-prev", class: {
340
340
  'onav__scroll-button': true,
341
341
  'onav__scroll-button--start': true,
342
342
  }, ref: (btn) => (this.startBtn = btn), onClick: () => this.handleBtnClick(false), label: "Click to scroll", iconName: this.orientation === 'horizontal'
343
343
  ? 'light/chevron-left'
344
- : 'light/chevron-up' })), h("div", { key: '1b6402869156bb7d6f3ddaf5b6b9e1ba80e94104', 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: '1018eef93e68d13faf4c7898a69f6723e772ec3c', part: "items", ref: (el) => (this.itemContainer = el), class: "onav__items" }, this.showIndicator && (h("div", { key: 'ab21bd04d6bb661f716d835ee4bc0d111fed863f', part: "indicator", ref: (el) => (this.activeIndicator = el), class: "onav__active-indicator" })), h("slot", { key: 'bb66cabd059551b392e5049eb8d18f83de8eb818', onSlotchange: this.slotChangeHandler }))), this.scrollControls && (h("nano-icon-button", { key: 'bd48cb7171ee606a9c368a36090cefb3e61337bd', part: "scroll-button scroll-button-next", class: {
344
+ : 'light/chevron-up' })), h("div", { key: '494da67346cf9ec3217eb46aad8e0bbfca7e5842', 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: '98e0cc7a8b0ab82440b0110e8f4d018b02612901', part: "items", ref: (el) => (this.itemContainer = el), class: "onav__items" }, this.showIndicator && (h("div", { key: '9f1622b178b5cfcf0c44cacb9f5dd3465306b9f8', part: "indicator", ref: (el) => (this.activeIndicator = el), class: "onav__active-indicator" })), h("slot", { key: 'd11134d63b8a733b7d9e0e74283eb463be032c82', onSlotchange: this.slotChangeHandler }))), this.scrollControls && (h("nano-icon-button", { key: '2630de597a4c38e555eb95dfc19033a517ccdee2', part: "scroll-button scroll-button-next", class: {
345
345
  'onav__scroll-button': true,
346
346
  'onav__scroll-button--end': true,
347
347
  }, ref: (btn) => (this.endBtn = btn), onClick: () => this.handleBtnClick(true), label: "Click to scroll", iconName: this.orientation === 'horizontal'
@@ -38,138 +38,116 @@
38
38
  }
39
39
  }:host {
40
40
  --padding-top: 13px;
41
- --padding-end: 12px;
41
+ --padding-end: 13px;
42
42
  --padding-bottom: 13px;
43
- --padding-start: 12px;
43
+ --padding-start: 13px;
44
44
  --icon-size: 19px;
45
- --font-size: 11px;
46
- --global-nav-height: 79px;
47
- --bg-color: #001a21;
48
- --bg-color-hover: rgb(28 62 72 / 80%);
49
- --bg-color-selected: #274048;
50
- --bg-color-focus: rgb(28 62 72 / 80%);
51
- --focus-outline: none;
52
- --content-color: #fff;
53
- --secondary-bg-color: rgb(28 62 72);
54
- font-family: inherit;
55
- font-size: inherit;
56
- font-stretch: inherit;
57
- font-style: inherit;
58
- font-weight: inherit;
59
- letter-spacing: inherit;
60
- text-decoration: inherit;
61
- text-overflow: inherit;
62
- text-transform: inherit;
63
- text-align: inherit;
64
- white-space: inherit;
65
- color: inherit;
45
+ --font-size: var(--nano-font-size-xs);
46
+ --bg-color: var(--nano-color-grey-mono-1600);
47
+ --bg-color-hover: var(--nano-color-grey-mono-1400);
48
+ --bg-color-selected: var(--nano-color-grey-mono-1200);
49
+ --bg-color-open: var(--nano-color-grey-mono-1500);
50
+ --content-color: var(--nano-color-basic-white);
51
+ --global-nav-height: 76px;
52
+ --menu-width: calc((var(--padding-end) + var(--padding-start)) + var(--icon-size));
53
+ color-scheme: dark;
66
54
  display: block;
67
55
  z-index: 1;
68
56
  background: var(--bg-color);
69
- }
70
- :host ::slotted(.nano-nav-item) {
71
- --secondary-padding-top: var(--global-nav-height);
72
- --nano-icon-size: var(--icon-size);
73
57
  color: var(--content-color);
74
- font-size: var(--font-size);
75
- text-decoration: none;
76
- box-sizing: border-box;
77
- }
78
- :host *,
79
- :host *::before,
80
- :host *::after {
81
- box-sizing: border-box;
58
+ min-height: 100%;
82
59
  }
83
60
 
84
61
  :host(.hide) {
85
62
  display: none;
86
63
  }
87
64
 
88
- :host(.has-global-nav) .content-wrap {
89
- padding-block-start: var(--global-nav-height);
90
- margin-block-start: calc(var(--global-nav-height) * -1);
65
+ .head {
66
+ border-bottom: var(--nano-color-grey-mono-1400) 1px solid;
91
67
  }
92
68
 
93
69
  .container {
94
70
  inset-inline-end: auto;
95
- flex: 0 0 calc(var(--padding-end, 1em) * 2 + var(--icon-size));
96
- background: var(--bg-color);
97
71
  color: var(--content-color);
98
- z-index: 1;
99
- inline-size: calc(var(--padding-end, 1em) * 2 + var(--icon-size));
100
- block-size: 100%;
72
+ inline-size: var(--menu-width);
73
+ transition: inline-size 0.3s ease;
74
+ top: var(--global-nav-height);
75
+ position: sticky;
101
76
  }
102
77
 
103
78
  :host(.open) .container {
104
79
  inline-size: auto;
105
80
  }
106
81
 
107
- :host(:not(.loading)) .container {
108
- transition: inline-size 0.3s ease;
109
- }
110
-
111
82
  .content-wrap {
112
83
  inset-inline-start: 0;
113
84
  inset-block-start: 0;
114
85
  inline-size: inherit;
115
- max-inline-size: inherit;
116
86
  background: var(--bg-color);
117
- color: #fff;
118
- position: sticky;
119
- font-size: var(--icon-size);
87
+ font-size: var(--font-size);
120
88
  line-height: 1;
121
89
  display: flex;
122
- min-block-size: calc(100vh - 79px);
123
- min-block-size: calc(var(--vh, 1vh) * 100 - 79px);
124
- z-index: 1;
90
+ }
91
+ .content-wrap::after {
92
+ content: "";
93
+ position: absolute;
94
+ inset: calc(var(--global-nav-height) * -1) 0 0 0;
95
+ background-color: var(--bg-color);
96
+ z-index: -1;
125
97
  }
126
98
 
127
99
  .content {
100
+ max-height: 100%;
128
101
  inline-size: auto;
129
102
  display: flex;
130
103
  flex-direction: column;
131
104
  overflow: hidden;
132
- background: var(--bg-color);
133
- flex: 1;
105
+ flex: 1 1 0%;
134
106
  }
135
- .content::after {
136
- content: "";
137
- position: absolute;
138
- inset-block-start: 0;
139
- inset-inline: 0;
140
- background: var(--bg-color);
141
- z-index: -1;
142
- block-size: 100vh;
107
+ .content:has(.foot) {
108
+ height: calc(100vh - var(--global-nav-height));
143
109
  }
144
110
 
145
111
  .collapse-btn {
146
- background: var(--bg-color-selected);
147
- border: none;
148
- color: inherit;
149
- font-size: var(--icon-size);
150
- margin-block: var(--padding-top) var(--padding-bottom);
151
- margin-inline: calc(var(--padding-start) / 2) 0;
152
- border-radius: 4px;
112
+ all: unset;
153
113
  padding-block: 6px;
154
- padding-inline: 5px;
114
+ padding-inline: var(--padding-start) var(--padding-end);
115
+ width: 100%;
155
116
  display: flex;
156
- align-content: center;
157
- inline-size: 30px;
158
- flex: 0 0 auto;
117
+ justify-items: flex-start;
118
+ background-color: var(--bg-color);
119
+ appearance: none;
120
+ cursor: pointer;
121
+ font-size: var(--icon-size);
122
+ }
123
+ .collapse-btn:focus-visible {
124
+ outline: var(--nano-focus-ring);
125
+ outline-offset: var(--nano-focus-ring-offset);
126
+ }
127
+ .collapse-btn:hover {
128
+ background-color: var(--bg-color-hover);
129
+ }
130
+ .collapse-btn:active {
131
+ background-color: var(--bg-color-selected);
159
132
  }
160
133
  .collapse-btn .nano-icon {
161
- font-size: var(--icon-size);
162
- transition: 0.2s transform ease-in-out;
163
- transform: translateZ(0) rotate(0deg);
134
+ transition: var(--nano-transition-x-fast) rotate ease-in-out;
135
+ rotate: 0deg;
164
136
  }
165
137
  :host(.open) .collapse-btn .nano-icon {
166
- transform: translateZ(0) rotate(180deg);
138
+ rotate: 180deg;
167
139
  }
168
140
 
169
- .foot {
170
- margin-block-start: auto;
141
+ .visually-hidden {
142
+ clip-path: inset(50%);
143
+ block-size: 1px;
144
+ overflow: hidden;
145
+ position: absolute;
146
+ white-space: nowrap;
147
+ inline-size: 1px;
171
148
  }
172
149
 
173
- .measure-ele {
174
- block-size: 1px;
150
+ .foot {
151
+ margin-block-start: auto;
152
+ margin-block-end: var(--padding-bottom);
175
153
  }