@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
@@ -4,26 +4,26 @@
4
4
  import { Host, writeTask, Build, } from "@stencil/core";
5
5
  import { closestElement } from "../../utils/dom";
6
6
  import { transformTag, h } from "../../utils/renderer";
7
+ import { HasSlotController } from "../../utils/slot";
7
8
  /**
8
- * Menu drawer - digital specific navigation strip designed to be open (default) or closed.
9
- * Shows menu item logos only on minimised, expands to show entire menu item.
10
- * Used in conjunction with the [Globla-Nav](/story/compounds-global-nav) element -> it should be a direct descendent.
11
- * Only one nano-menu-drawer element should be present on any page. It is fixed to a side on larger screens and items are added to the global nav 'burger' on smaller screens.
9
+ *
10
+ * Display navigation items in a collapsible drawer at the side of a UI.
11
+ *
12
+ * @status stable
13
+ * @version 1.0.0
14
+ *
12
15
  * @slot foot - nav items to be placed at the bottom of the drawer
13
16
  * @slot - default slot for nav items
14
17
  */
15
18
  export class MenuDrawer {
16
19
  containerDiv;
17
20
  contentDiv;
18
- measureEle;
19
21
  globalNav;
20
22
  children = [];
21
- io;
22
- currHeight = window.innerHeight;
23
+ ro;
24
+ slotCtrl = new HasSlotController(this, 'foot');
23
25
  el;
24
26
  reset = false;
25
- widthOk = true;
26
- heightOk = true;
27
27
  isLoading = true;
28
28
  hide = false;
29
29
  /**
@@ -31,60 +31,52 @@ export class MenuDrawer {
31
31
  */
32
32
  open = true;
33
33
  /**
34
- * Save open state to localStorage
35
- */
36
- saveState = true;
37
- /**
38
- * Screen width to hide the menu drawer and move the items into the nano-global-nav
34
+ * Global-nav width to hide the menu drawer and move the items into the nano-global-nav
39
35
  */
40
36
  hideWidth = 576;
41
- /**
42
- * Should element hide and move items into the nano-global-nav when items are cut off
43
- * (this will only work when nano-menu-drawer is displayed at full screen)
44
- */
45
- hideHeight = true;
46
37
  cancelNavItemEvents(ev) {
47
38
  if (!ev.detail.secondaryMenu)
48
39
  return;
49
40
  ev.stopPropagation();
50
41
  }
51
42
  openChange() {
52
- if (this.saveState)
43
+ if (Build.isBrowser) {
53
44
  localStorage.setItem('nanoMenuDrawerOpen', this.open.toString());
54
- if (this.containerDiv) {
55
- if (this.open)
56
- writeTask(() => (this.containerDiv.style.width = this.contentDiv.scrollWidth + 'px'));
57
- else
58
- writeTask(() => (this.containerDiv.style.width = null));
59
45
  }
60
- }
61
- widthChange() {
62
- if (this.widthOk)
63
- this.moveItemsToDrawer();
64
- else
65
- this.moveItemsToGlobalNav();
66
- }
67
- hideHeightChange() {
68
- if (this.hideHeight && !this.io)
69
- this.attachIO();
70
- else if (!this.hideHeight && this.io) {
71
- this.io.disconnect();
72
- this.io = undefined;
46
+ if (this.containerDiv) {
47
+ const documentWidth = document.documentElement.clientWidth;
48
+ const scrollbarWidth = Math.abs(window.innerWidth - documentWidth);
49
+ if (this.open) {
50
+ const menuWidth = this.contentDiv.scrollWidth;
51
+ writeTask(() => {
52
+ this.containerDiv.style.width = menuWidth + 'px';
53
+ this.containerDiv.style.setProperty('--menu-width', (menuWidth) + 'px');
54
+ this.containerDiv.style.setProperty('--scrollbar-width', scrollbarWidth + 'px');
55
+ });
56
+ }
57
+ else {
58
+ writeTask(() => {
59
+ this.containerDiv.style.width = null;
60
+ this.containerDiv.style.removeProperty('--menu-width');
61
+ this.containerDiv.style.setProperty('--scrollbar-width', scrollbarWidth + 'px');
62
+ });
63
+ }
73
64
  }
74
65
  }
75
66
  moveItemsToGlobalNav() {
76
- const currNavItems = this.el.querySelectorAll(transformTag('nano-nav-item'));
77
67
  // dimensions not cool - move items out of element and into global nav
68
+ const currNavItems = this.el.querySelectorAll(transformTag('nano-nav-item'));
69
+ this.hide = true;
70
+ this.globalNav.triggerResize();
78
71
  currNavItems.forEach((element) => {
79
72
  this.children.push({
80
73
  slot: element.getAttribute('slot'),
81
74
  element: element,
82
75
  });
83
- element.setAttribute('slot', 'overflow');
76
+ element.setAttribute('slot', 'menu');
84
77
  element.classList.add('nano-global-nav-menu');
85
78
  this.globalNav.appendChild(element);
86
79
  });
87
- this.hide = true;
88
80
  }
89
81
  moveItemsToDrawer() {
90
82
  if (!this.children || !this.children.length)
@@ -98,87 +90,64 @@ export class MenuDrawer {
98
90
  });
99
91
  this.children = [];
100
92
  this.hide = false;
101
- if (!this.io)
102
- this.attachIO();
103
93
  }
104
- onWindowResize = () => {
105
- if (window.innerWidth > this.hideWidth)
106
- this.widthOk = true;
107
- else
108
- this.widthOk = false;
109
- const vh = window.innerHeight * 0.01;
110
- this.el.style.setProperty('--vh', `${vh}px`);
111
- if (window.innerHeight > this.currHeight &&
112
- this.widthOk &&
113
- !this.heightOk) {
94
+ onResize = () => {
95
+ if (!this.globalNav || !Build.isBrowser)
96
+ return;
97
+ const { width } = this.globalNav.getBoundingClientRect();
98
+ if (width > this.hideWidth) {
114
99
  this.moveItemsToDrawer();
115
100
  }
116
- this.currHeight = window.innerHeight;
101
+ else {
102
+ this.moveItemsToGlobalNav();
103
+ }
117
104
  };
118
105
  toggle = (e) => {
119
106
  e.preventDefault();
120
107
  this.open = !this.open;
121
108
  };
122
- onToggleKeyDown = (ev) => {
123
- switch (ev.key) {
124
- case 'Enter':
125
- case ' ':
126
- this.open = !this.open;
127
- break;
128
- }
129
- };
130
- attachIO() {
131
- if (!this.hideHeight)
109
+ attachRO() {
110
+ if (!Build.isBrowser || this.ro)
132
111
  return;
133
- const io = (this.io = new window.IntersectionObserver((data) => {
134
- this.heightOk = data[0].intersectionRatio !== 0;
135
- if (!this.heightOk) {
136
- this.moveItemsToGlobalNav();
137
- this.io.disconnect();
138
- this.io = undefined;
139
- }
140
- }, { threshold: 1 }));
141
- io.observe(this.measureEle);
142
- }
143
- handleGlobalNavReady(e) {
144
- if (e.target.tagName.toLowerCase() !== transformTag('nano-global-nav'))
145
- return;
146
- setTimeout(() => {
147
- this.attachIO();
148
- this.openChange();
149
- this.onWindowResize();
150
- this.isLoading = false;
151
- }, 500);
112
+ this.ro = new ResizeObserver(() => {
113
+ this.onResize();
114
+ });
115
+ this.ro.observe(this.globalNav);
152
116
  }
153
117
  componentWillLoad() {
154
118
  this.globalNav = closestElement(transformTag('nano-global-nav'), this.el);
155
- this.widthOk = window.innerWidth > this.hideWidth;
156
- this.currHeight = window.innerHeight;
157
- if (this.saveState) {
119
+ if (!this.globalNav) {
120
+ console.warn('nano-menu-drawer: no nano-global-nav found in the document. nano-global-nav is required to use nano-menu-drawer.');
121
+ }
122
+ if (Build.isBrowser) {
158
123
  const localState = localStorage.getItem('nanoMenuDrawerOpen');
159
- this.open = localState ? localState === 'true' : this.open;
124
+ this.open = localState ? (localState === 'true' ? true : false) : this.open;
125
+ this.globalNav.componentOnReady().then(() => {
126
+ this.openChange();
127
+ });
160
128
  }
161
129
  }
130
+ connectedCallback() {
131
+ this.onResize();
132
+ }
162
133
  componentDidLoad() {
163
- if (Build.isBrowser) {
164
- window.addEventListener('resize', this.onWindowResize);
165
- }
134
+ if (Build.isBrowser)
135
+ this.attachRO();
166
136
  }
167
137
  disconnectedCallback() {
168
- window.removeEventListener('resize', this.onWindowResize);
169
- if (this.io) {
170
- this.io.disconnect();
171
- this.io = null;
138
+ if (Build.isBrowser) {
139
+ this.ro?.disconnect();
140
+ this.ro = undefined;
172
141
  }
173
142
  }
174
143
  render() {
175
- return (h(Host, { key: 'ce58d5db4ed3a23557189fbc3eb2cf0a0ad32edd', class: {
144
+ return (h(Host, { key: 'fe9f1c17828f6884f663a0990851f66cbb9ff026', class: {
176
145
  open: this.open,
177
146
  hide: this.hide,
178
147
  loading: this.isLoading,
179
148
  'has-global-nav': !!this.globalNav,
180
149
  'nano-menu-drawer': true,
181
- }, dir: this.el.ownerDocument.dir === 'rtl' ? 'rtl' : null }, h("div", { key: 'a68d7698be7747a6a191a44364b615c3866f8160', ref: (div) => (this.containerDiv = div), class: "container" }, h("div", { key: 'f6c92461b79e0b3e44f138736ef65089680101a8', class: "content-wrap" }, h("nav", { key: '51ce192b7cbb38233baced954f4228e756052026', ref: (div) => (this.contentDiv = div), class: "content" }, h("button", { key: '5662329d6320ef44d837afc823c09beb1563c0fe', onMouseDown: this.toggle, onKeyDown: this.onToggleKeyDown, class: "collapse-btn" }, h("nano-icon", { key: '77d0e152d06593f3999072a1b557673a8ddc8a72', name: "light/right-to-line", "aria-label": "collapse / expand" })), h("slot", { key: '8369d8882e41547e088ec41401cc2273efb2b59a' }), h("div", { key: '90c996a4d1debfd4965353e5e60548605418dfbd', class: "foot" }, h("div", { key: '3ca7e34bde41f742d20edbef571400c875179858', class: "measure-ele", ref: (div) => (this.measureEle = div) }), h("slot", { key: '1b5d32415c0e727788186bd9011de394cb7b5759', name: "foot" })))))));
150
+ }, dir: this.el.ownerDocument.dir === 'rtl' ? 'rtl' : null }, h("div", { key: '62bcaa0a299c8887479ec83a067eb8e2ff188de8', ref: (div) => (this.containerDiv = div), class: "container" }, h("div", { key: 'a20706de787a6e6e3b3f1ee4a5a079ed601ac2d2', class: "content-wrap" }, h("nav", { key: 'd487b8709b36b54d207f1a257564b98d12722c09', ref: (div) => (this.contentDiv = div), class: "content" }, h("div", { key: 'e1fb80d26a27fc35d2999908a3d3f264f9bb15af', class: "head" }, h("button", { key: '0778e6742189405de47c34cbe9e346c6fec4de63', onClick: this.toggle, class: "collapse-btn" }, h("nano-icon", { key: '5b53c2819fdf51f6b611d11b6ce9c8d621339308', name: "light/arrow-right-to-line" }), h("span", { key: 'b2eff692e0251e2a05a64cc93ed0635ff8659084', class: "visually-hidden" }, "collapse / expand menu"))), h("slot", { key: '7a65ca13555e4706728916e116af51cb05263ed2' }), this.slotCtrl.has('foot') && (h("div", { key: '40794aacb4185b8020e94c79dc9d47e65a637fcc', class: "foot" }, h("slot", { key: 'f5b7d990d47e336ad725b0c3c3726d65f8143122', name: "foot" }))))))));
182
151
  }
183
152
  static get is() { return "nano-menu-drawer"; }
184
153
  static get encapsulation() { return "shadow"; }
@@ -214,26 +183,6 @@ export class MenuDrawer {
214
183
  "reflect": false,
215
184
  "defaultValue": "true"
216
185
  },
217
- "saveState": {
218
- "type": "boolean",
219
- "attribute": "save-state",
220
- "mutable": false,
221
- "complexType": {
222
- "original": "boolean",
223
- "resolved": "boolean",
224
- "references": {}
225
- },
226
- "required": false,
227
- "optional": false,
228
- "docs": {
229
- "tags": [],
230
- "text": "Save open state to localStorage"
231
- },
232
- "getter": false,
233
- "setter": false,
234
- "reflect": false,
235
- "defaultValue": "true"
236
- },
237
186
  "hideWidth": {
238
187
  "type": "number",
239
188
  "attribute": "hide-width",
@@ -247,40 +196,18 @@ export class MenuDrawer {
247
196
  "optional": false,
248
197
  "docs": {
249
198
  "tags": [],
250
- "text": "Screen width to hide the menu drawer and move the items into the nano-global-nav"
199
+ "text": "Global-nav width to hide the menu drawer and move the items into the nano-global-nav"
251
200
  },
252
201
  "getter": false,
253
202
  "setter": false,
254
203
  "reflect": false,
255
204
  "defaultValue": "576"
256
- },
257
- "hideHeight": {
258
- "type": "boolean",
259
- "attribute": "hide-height",
260
- "mutable": false,
261
- "complexType": {
262
- "original": "boolean",
263
- "resolved": "boolean",
264
- "references": {}
265
- },
266
- "required": false,
267
- "optional": false,
268
- "docs": {
269
- "tags": [],
270
- "text": "Should element hide and move items into the nano-global-nav when items are cut off\n(this will only work when nano-menu-drawer is displayed at full screen)"
271
- },
272
- "getter": false,
273
- "setter": false,
274
- "reflect": false,
275
- "defaultValue": "true"
276
205
  }
277
206
  };
278
207
  }
279
208
  static get states() {
280
209
  return {
281
210
  "reset": {},
282
- "widthOk": {},
283
- "heightOk": {},
284
211
  "isLoading": {},
285
212
  "hide": {}
286
213
  };
@@ -290,12 +217,6 @@ export class MenuDrawer {
290
217
  return [{
291
218
  "propName": "open",
292
219
  "methodName": "openChange"
293
- }, {
294
- "propName": "widthOk",
295
- "methodName": "widthChange"
296
- }, {
297
- "propName": "hideHeight",
298
- "methodName": "hideHeightChange"
299
220
  }];
300
221
  }
301
222
  static get listeners() {
@@ -311,12 +232,6 @@ export class MenuDrawer {
311
232
  "target": undefined,
312
233
  "capture": false,
313
234
  "passive": false
314
- }, {
315
- "name": "nanoIsReady",
316
- "method": "handleGlobalNavReady",
317
- "target": "body",
318
- "capture": false,
319
- "passive": false
320
235
  }];
321
236
  }
322
237
  }
@@ -65,8 +65,8 @@ export class Rating {
65
65
  this.handleShowHideElements();
66
66
  }
67
67
  render() {
68
- return (h(Host, { key: '49834d5d379bcc71bfd228cbad3becf4343160ac', class: "nano-more-less" }, h("slot", { key: '4cbea5f74ddd512cacfc2c65c35ce0cd9fbfee00', onSlotchange: () => this.handleShowHideElements() }), this.children?.length > this.maxToShow && [
69
- h("div", { key: 'd8b9b8135f3789705f18793dd8262bcebb38f2cb', style: { display: this.show ? 'none' : 'contents' }, class: "button-wrapper", part: "button-wrapper button-wrapper--less", onClick: (e) => this.handleClick(e) }, h("slot", { key: '564f67099d59d520fbf9a5c40f6f14e681346eff', name: "less" }, h("button", { key: 'a5aa9c0a0eda6b6dda1c72288b18668d4028eec5', part: "button button--less" }, "Show more (+", this.children.length - this.maxToShow, ")"))),
68
+ return (h(Host, { key: '3bde961caf3acbf1db08892d2131e8afdc457681', class: "nano-more-less" }, h("slot", { key: 'bc9a9c15a5e0ae53735602b23fbb248e8e51649d', onSlotchange: () => this.handleShowHideElements() }), this.children?.length > this.maxToShow && [
69
+ h("div", { key: '500e8c63e9ef6e0b80318d904388c8cecce8f66f', style: { display: this.show ? 'none' : 'contents' }, class: "button-wrapper", part: "button-wrapper button-wrapper--less", onClick: (e) => this.handleClick(e) }, h("slot", { key: '411cfccdaf9eaa3c6443841100791fd656fc71fe', name: "less" }, h("button", { key: '9001e6086687793575b8e3e62529e1c15846aa4e', part: "button button--less" }, "Show more (+", this.children.length - this.maxToShow, ")"))),
70
70
  !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, ")")))) : (''),
71
71
  ]));
72
72
  }
@@ -42,6 +42,7 @@
42
42
  * that the consumer component will apply specific styles using `::part` properties within a `...light-dom` style-sheet.
43
43
  *
44
44
  * @prop --padding: padding applied to the trigger element. Defaults to `0`
45
+ * @prop --icon-size: size of the icon. Defaults to `1em`
45
46
  */
46
47
  display: contents;
47
48
  }
@@ -99,97 +100,4 @@ a[disabled], button[disabled] {
99
100
  ::slotted([slot=close-button]):focus-visible {
100
101
  outline: var(--nano-focus-ring);
101
102
  outline-offset: var(--nano-focus-ring-offset);
102
- }
103
-
104
- :host(.nano-menu-drawer) a,
105
- :host(.nano-menu-drawer) button {
106
- padding-block: calc(var(--padding-top) / 2) calc(var(--padding-bottom) / 2);
107
- padding-inline: var(--padding-start) 0;
108
- display: flex;
109
- justify-content: flex-start;
110
- flex-direction: row;
111
- align-items: center;
112
- color: currentcolor;
113
- text-decoration: inherit;
114
- white-space: normal;
115
- border: none;
116
- cursor: pointer;
117
- line-height: 1.2;
118
- inline-size: 100%;
119
- }
120
- :host(.nano-menu-drawer) .navitem__label {
121
- padding-inline: 0 var(--padding-end);
122
- text-align: start;
123
- flex: 0 1 auto;
124
- min-inline-size: 130px;
125
- inline-size: 130px;
126
- }
127
- :host(.nano-menu-drawer)::slotted(.nano-icon[slot=icon-start]),
128
- :host(.nano-menu-drawer) ::slotted(.nano-icon[slot=icon-start]) {
129
- padding-inline: 0 var(--padding-end);
130
- padding-block: 0;
131
- font-size: var(--icon-size);
132
- inline-size: var(--icon-size);
133
- flex: 0 0 var(--icon-size);
134
- }
135
- :host(.nano-menu-drawer)::slotted(.nano-icon[slot=icon-end]),
136
- :host(.nano-menu-drawer) ::slotted(.nano-icon[slot=icon-end]) {
137
- padding: 0 var(--padding-end) 0 0;
138
- font-size: 10px;
139
- flex: 0 0 20px;
140
- min-inline-size: 20px;
141
- }
142
- :host(.nano-menu-drawer) .navitem__modal {
143
- display: none;
144
- position: absolute;
145
- background-color: var(--secondary-bg-color);
146
- color: var(--secondary-color);
147
- block-size: 100vh;
148
- inset-inline: auto 0;
149
- inset-block: 0;
150
- transform: translateX(0);
151
- z-index: -1;
152
- transition: transform 0.3s ease, opacity 0.2s ease;
153
- overflow-y: auto;
154
- inline-size: var(--secondary-width, 400px);
155
- max-inline-size: 62vw;
156
- opacity: 1;
157
- padding-inline: var(--secondary-padding-start, var(--padding-start)) var(--secondary-padding-end, var(--padding-end));
158
- padding-block: var(--secondary-padding-top, var(--padding-top)) var(--secondary-padding-bottom, var(--padding-bottom));
159
- }
160
- :host(.nano-menu-drawer) .navitem__modal:focus {
161
- outline: none;
162
- }
163
- .navitem--open :host(.nano-menu-drawer) .navitem__modal {
164
- transform: translateX(100%);
165
- }
166
- :host(.nano-menu-drawer) .notification {
167
- position: relative;
168
- }
169
- :host(.nano-menu-drawer) .notification::after {
170
- content: "";
171
- display: block;
172
- position: absolute;
173
- inline-size: 6px;
174
- block-size: 6px;
175
- background-color: #ef4135;
176
- inset-inline-start: 10px;
177
- inset-block-start: 7px;
178
- border-radius: 50%;
179
- }
180
- @media (width >= 52em) {
181
- :host(.nano-menu-drawer) .notification::after {
182
- inline-size: 7px;
183
- block-size: 7px;
184
- inset-inline-start: 8px;
185
- inset-block-start: 5px;
186
- }
187
- }
188
-
189
- :host(.nano-menu-drawer[dir=rtl]) .navitem__modal {
190
- transform: translateX(0%);
191
- }
192
- .navitem--open :host(.nano-menu-drawer[dir=rtl]) .navitem__modal {
193
- transform: translateX(-100%);
194
- opacity: 1;
195
103
  }
@@ -21,8 +21,15 @@ import { focusInContainer } from "../../utils/active-element";
21
21
  * @part trigger--button - the controlling `<button>` element
22
22
  * @part trigger--anchor - the controlling <a> element
23
23
  * @part trigger-wrapper - the wrapping div around the control (shadow `<button>` / `<a>` or slotted `<a>`)
24
- * @part secondary-wrapper - the div surrounding slotted secondary content
25
- * @part secondary-mask - the div that is added when secondary content is shown
24
+ * @part label - the label text of the nav item
25
+ * @part modal - the div that contains the secondary content panel
26
+ * @part modal--open - the div that contains the secondary content panel when open
27
+ * @part modal--close - the div that contains the secondary content panel when closed
28
+ * @part modal-content - the div that contains the secondary content panel content
29
+ * @part modal-content--open - the div that contains the secondary content panel content when open
30
+ * @part modal-mask - the div that covers the screen when the secondary content panel is open
31
+ * @part close-button - the div that contains the close button for the secondary content panel
32
+ * @part close-button-icon - the icon inside the close button for the secondary content panel
26
33
  *
27
34
  * @version 1.0.0
28
35
  * @status stable
@@ -48,8 +55,6 @@ export class NavItem {
48
55
  checkbox = false;
49
56
  /** Whether secondary menus should close on blur */
50
57
  closeOnBlur = true;
51
- /** Will show an indicator badge - only when placed in a nano-menu-draw */
52
- notification = false;
53
58
  /** Emitted when the nav item closes it's secondary navigation. */
54
59
  nanoClose;
55
60
  /** Emitted when the nav item opens it's secondary navigation. */
@@ -178,24 +183,22 @@ export class NavItem {
178
183
  this.openChange();
179
184
  }
180
185
  render() {
181
- return (h(Host, { key: '7554eb7a4a66fc4f899b40b35265245a3be931f8', class: {
186
+ return (h(Host, { key: '815fb74d8f91f3efb7c2582439b1e8f4f4aa905d', class: {
182
187
  'nano-menu-drawer': this.isInMenuDrawer,
183
188
  'nano-nav-item': true,
184
189
  disabled: this.disabled,
185
- }, role: this.host.closest('[role="menu"]') ? 'menuitem' : undefined, "aria-disabled": this.disabled ? 'true' : undefined }, h("div", { key: '4bf288ec9f9162bb746b70b085fde42b871f93fb', class: {
190
+ }, role: this.host.closest('[role="menu"]') ? 'menuitem' : undefined, "aria-disabled": this.disabled ? 'true' : undefined }, h("div", { key: '63a0f2086fd81b4cbea08c385de2e493d7c8f926', class: {
186
191
  navitem: true,
187
192
  'navitem--open': this.open,
188
193
  'navitem--active': this.selected,
189
- }, part: "trigger-wrapper" }, this.href && !this.disabled && (h("a", { key: 'a9bf5adf3da060452ed58e2c6e1eba45168815a3', part: "trigger trigger--anchor", target: this.target, ref: (a) => (this.controlElement = a), href: this.href, class: {
194
+ }, part: "trigger-wrapper" }, this.href && !this.disabled && (h("a", { key: 'e50cab85eba47cba80ff30a07bcab83c00595915', part: "trigger trigger--anchor", target: this.target, ref: (a) => (this.controlElement = a), href: this.href, class: {
190
195
  navitem__trigger: true,
191
- notification: this.notification,
192
- } }, h("slot", { key: '47cdd2e84dd51f236675351c599d8e9f9bf66ede', name: "icon-start" }), h("span", { key: 'a15d804a252ed532501fb08536ed5ce8a3b42e47', class: "navitem__label", part: "label" }, h("slot", { key: 'ea37d813d0fd15bd457930b61d06cd97d64fce35', onSlotchange: this.handleDefaultSlotChange })), h("slot", { key: '384a3212fba3d0cc3d488974dcaf53c23c3942e1', name: "icon-end" }))), (!this.href || this.disabled) && (h("button", { key: '698c4beb9cddb3b2037db40b5c9e33a276dad060', role: this.checkbox ? 'checkbox' : undefined, "aria-checked": this.checkbox ? this.selected.toString() : undefined, part: "trigger trigger--button", ref: (btn) => (this.controlElement = btn), onClick: this.handleClick, disabled: this.disabled, class: {
196
+ } }, h("slot", { key: '2fc43a8c964c8e34e045e0df85d5bf355b3e9b26', name: "icon-start" }), h("span", { key: '6aed9dea66e87ef15edb69971b1c97fd8d2fbe29', class: "navitem__label", part: "label" }, h("slot", { key: '96f26809714cbe44effe57851814e1e24a6ad851', onSlotchange: this.handleDefaultSlotChange })), h("slot", { key: 'f43de3bfdb6cdea0f93fe248d873c73062a3034b', name: "icon-end" }))), (!this.href || this.disabled) && (h("button", { key: '9db35da35c662d588729976d1be17a07ed855642', role: this.checkbox ? 'checkbox' : undefined, "aria-checked": this.checkbox ? this.selected.toString() : undefined, part: "trigger trigger--button", ref: (btn) => (this.controlElement = btn), onClick: this.handleClick, disabled: this.disabled, class: {
193
197
  navitem__trigger: true,
194
- notification: this.notification,
195
- } }, h("slot", { key: 'c01a71dfaeb867d2792146110fdde1dd134b7f71', name: "icon-start" }), h("span", { key: '6a48071ba10f1407350e87958ed491f704714ea8', class: "navitem__label", part: "label" }, h("slot", { key: '246f807c0a03a8805fea87023f48de2f5fa7a7a0', onSlotchange: this.handleDefaultSlotChange })), h("slot", { key: '6a246213800a4425464ac41aefe9362e327d412f', name: "icon-end" }))), this.slotCtrl.has('secondary') && !this.disabled && (h("div", { key: '8928988fd43de734785801c9fc7707fb7efa33c3', part: "modal", class: {
198
+ } }, h("slot", { key: '394a189a9d5d8b65607bd6089c9a08cdeed8e48a', name: "icon-start" }), h("span", { key: '28b56da5d700f7654c2d42fda996babff390f92e', class: "navitem__label", part: "label" }, h("slot", { key: '13a35382772f7ee79af116c500eba5d4fd4a25ad', onSlotchange: this.handleDefaultSlotChange })), h("slot", { key: '158f3590fcf2025c3c53bd3d3f9dbeddbd2829ba', name: "icon-end" }))), this.slotCtrl.has('secondary') && !this.disabled && (h("div", { key: '44ab1a0d6930f5d60b8540157911d365821f611c', part: "modal", class: {
196
199
  navitem__modal: true,
197
200
  'navitem__modal--open': this.didOpen,
198
- }, ref: (div) => (this.secondaryDiv = div), tabIndex: -1 }, h("div", { key: 'eca197afa8cb297eeafc4b7a55ffb6fb288c498c', class: "navitem__modal-content", part: `modal-content ${this.didOpen ? 'modal-content--open' : ''}` }, this.slotCtrl.has('close-button') && (h("div", { key: '5a774cf15677b3848f80c0cf5bee87da44e3ca04', part: "close-button", onClick: this.closeSecondary }, h("slot", { key: '57a08ef1239b6c29241524e3c7ac977c78c910d5', name: "close-button" }))), h("slot", { key: '6c35ed89b61461fcc294cddc022c57255558a63b', name: "secondary" })), h("div", { key: '163003649197f1ed341836e73e7acd50c7abc640', class: "navitem__modal-mask", onClick: this.closeSecondary, part: `modal-mask ${this.didOpen ? 'modal-mask--open' : ''}` }))))));
201
+ }, ref: (div) => (this.secondaryDiv = div), tabIndex: -1 }, h("div", { key: '758dc3ed99502ff459b187fb42dc6f1c83f335e8', class: "navitem__modal-content", part: `modal-content ${this.didOpen ? 'modal-content--open' : ''}` }, this.slotCtrl.has('close-button') && (h("div", { key: 'fb30657f31352b234b8f5f9f7dea697b663dc05d', part: "close-button", onClick: this.closeSecondary }, h("slot", { key: 'de6bdeb04bf0543c2200cca7a7a1d8d70032d0ed', name: "close-button" }))), h("slot", { key: '45c2c6ce36042b43c8177343e238392193a16367', name: "secondary" })), h("div", { key: 'd9ccc26e9f2675dcf5fc9000bc2759fd48247fe2', class: "navitem__modal-mask", onClick: this.closeSecondary, part: `modal-mask ${this.didOpen ? 'modal-mask--open' : ''}` }))))));
199
202
  }
200
203
  static get is() { return "nano-nav-item"; }
201
204
  static get encapsulation() { return "shadow"; }
@@ -350,26 +353,6 @@ export class NavItem {
350
353
  "setter": false,
351
354
  "reflect": false,
352
355
  "defaultValue": "true"
353
- },
354
- "notification": {
355
- "type": "boolean",
356
- "attribute": "notification",
357
- "mutable": false,
358
- "complexType": {
359
- "original": "boolean",
360
- "resolved": "boolean",
361
- "references": {}
362
- },
363
- "required": false,
364
- "optional": false,
365
- "docs": {
366
- "tags": [],
367
- "text": "Will show an indicator badge - only when placed in a nano-menu-draw"
368
- },
369
- "getter": false,
370
- "setter": false,
371
- "reflect": false,
372
- "defaultValue": "false"
373
356
  }
374
357
  };
375
358
  }
@@ -62,7 +62,7 @@
62
62
  --color: var(--nano-color-base-1000);
63
63
  --color-selected: var(--nano-color-base-1000);
64
64
  --color-focus: var(--nano-color-base-0);
65
- --color-disabled: var(--nano-color-neutral-300);
65
+ --color-disabled: var(--nano-color-neutral-400);
66
66
  --opt-icon-size: 1em;
67
67
  --padding-start: var(--nano-spacing-sm);
68
68
  --padding-end: var(--nano-spacing-md);
@@ -123,8 +123,6 @@
123
123
  }
124
124
  .option__start ::slotted(.nano-icon) {
125
125
  font-size: var(--opt-icon-size);
126
- }
127
- .option__start ::slotted(:last-child) {
128
126
  margin-inline-end: var(--padding-end);
129
127
  }
130
128
  .option__end {
@@ -49,7 +49,7 @@ export class Option {
49
49
  */
50
50
  disabled = false;
51
51
  /** You can add extra meta for this option. When displayed in a list, users
52
- * search / filter via extra related terms. Another usecase is 'endonyms'
52
+ * search / filter via extra related terms.
53
53
  */
54
54
  filterMeta = '';
55
55
  /** Setting an href will render an `<a>` element */
@@ -83,12 +83,12 @@ export class Option {
83
83
  }
84
84
  render() {
85
85
  const WrapTag = this.href ? 'a' : 'div';
86
- return (h(Host, { key: '67b4ee2d21105b72d816b42054329fbe54ed8688', role: "option", "aria-selected": this.selected ? 'true' : 'false', "aria-disabled": this.disabled ? 'true' : 'false', class: "nano-option" }, h(WrapTag, { key: '61ad0172a3d7c0fefacd135121d9f52c15dc9bc5', href: this.href || undefined, onMouseDown: this.handleClick, id: this.optId, class: {
86
+ return (h(Host, { key: '3d7d858dd7c55eadbcb924e1d8462ba27c73dc9e', role: "option", "aria-selected": this.selected ? 'true' : 'false', "aria-disabled": this.disabled ? 'true' : 'false', class: "nano-option" }, h(WrapTag, { key: '4051c726c3b1a62ed9862e2d82a810847718807b', href: this.href || undefined, onMouseDown: this.handleClick, id: this.optId, class: {
87
87
  option: true,
88
88
  'option--selected': this.selected,
89
89
  'option--disabled': this.disabled,
90
90
  'option--novalue': !this.value,
91
- } }, h("div", { key: '029278a486ed9a1dd809940ed702c55ac0f490a2', part: "check-icon", class: "option__check" }, h("slot", { key: '70c6d3b126e18b91f9e298491e11f6c6a188a957', name: "check-icon" }, h("nano-icon", { key: '20543f3436aff8fb152d69b8d89d009b02d18b88', name: "light/check", "aria-hidden": "true" }))), h("div", { key: '548cb4eb15f59c3be72ec1452ca84206c97389da', part: "start", class: "option__start" }, h("slot", { key: '5e9f2ac1c0358b8008799ed08643619fc41055f8', name: "start" })), h("div", { key: '95f3cd28fb34f02d55034322cd5154e06d5fc4c1', part: "label", class: "option__label" }, h("slot", { key: '1c1208ad99a9a123c6a9110c3cd976a502bc5cca' }, this.label || this.value)), h("div", { key: 'fcf9bf3e1c6674811be6a29af94d747903457d33', part: "end", class: "option__end" }, h("slot", { key: 'c49f296954fd5a60920af5b07fb5157bbe6e4e72', name: "end" })))));
91
+ } }, h("div", { key: '0e8e795ad749c25df46592f41caf8664b2997048', part: "check-icon", class: "option__check" }, h("slot", { key: 'dba5e01284906955e5be879da029c567d7a9046b', name: "check-icon" }, h("nano-icon", { key: 'ae3b584d895112bb62847f6c1ec0076595e7ce47', name: "light/check", "aria-hidden": "true" }))), h("div", { key: 'dfc6d63862ff2a4f666f87142cd0aa82d674d689', part: "start", class: "option__start" }, h("slot", { key: '69da1111220411b943e5461d78e1b04c2b57badb', name: "start" })), h("div", { key: 'a13f33b7b3a06d9ebf62053f5f5667884409ee1c', part: "label", class: "option__label" }, h("slot", { key: '685114fae504ec3bc9553c73d5906fbea061d07b' }, this.label || this.value)), h("div", { key: 'f44ccfedcf5d8c22c4dd08374c4421f7f146165b', part: "end", class: "option__end" }, h("slot", { key: '118e4cf34d5b43df7216340c4c401ed274d88d5a', name: "end" })))));
92
92
  }
93
93
  static get is() { return "nano-option"; }
94
94
  static get encapsulation() { return "shadow"; }
@@ -197,7 +197,7 @@ export class Option {
197
197
  "optional": false,
198
198
  "docs": {
199
199
  "tags": [],
200
- "text": "You can add extra meta for this option. When displayed in a list, users\nsearch / filter via extra related terms. Another usecase is 'endonyms'"
200
+ "text": "You can add extra meta for this option. When displayed in a list, users\nsearch / filter via extra related terms."
201
201
  },
202
202
  "getter": false,
203
203
  "setter": false,
@@ -51,7 +51,7 @@ nano-progress-bar {
51
51
  position: relative;
52
52
  overflow: clip;
53
53
  border-radius: var(--border-radius);
54
- height: var(--height);
54
+ block-size: var(--height);
55
55
  font-size: var(--height);
56
56
  }
57
57
  nano-progress-bar[size=small] {
@@ -62,8 +62,8 @@ nano-progress-bar[size=large] {
62
62
  }
63
63
  nano-progress-bar progress {
64
64
  appearance: none;
65
- width: 100%;
66
- height: inherit;
65
+ inline-size: 100%;
66
+ block-size: inherit;
67
67
  border-radius: var(--border-radius);
68
68
  background-color: var(--track-color);
69
69
  grid-area: 1/1;
@@ -79,7 +79,7 @@ nano-progress-bar > label progress {
79
79
  }
80
80
  nano-progress-bar:has(progress:not([value]))::after {
81
81
  content: "";
82
- width: 100%;
82
+ inline-size: 100%;
83
83
  inset: 0;
84
84
  display: block;
85
85
  transform: translateZ(0);
@@ -125,7 +125,7 @@ nano-progress-bar[show-percent] progress[value]::before {
125
125
  position: absolute;
126
126
  inline-size: attr(value %);
127
127
  min-inline-size: 6%;
128
- top: 50%;
128
+ inset-block-start: 50%;
129
129
  translate: 0 -50%;
130
130
  text-align: center;
131
131
  transition: inline-size var(--nano-transition-fast);