@nanoporetech-digital/components 3.7.1 → 3.8.1

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 (781) hide show
  1. package/CHANGELOG.md +37 -0
  2. package/dist/cjs/{algolia-data-9152d0ef.js → algolia-data-fb13160a.js} +2 -2
  3. package/dist/cjs/{algolia-data-9152d0ef.js.map → algolia-data-fb13160a.js.map} +1 -1
  4. package/dist/cjs/{algoliasearch.umd-7ee60729.js → algoliasearch.umd-689c1560.js} +3 -3
  5. package/dist/cjs/{algoliasearch.umd-7ee60729.js.map → algoliasearch.umd-689c1560.js.map} +1 -1
  6. package/dist/cjs/{component-store-d7c8c326.js → component-store-b80bdb26.js} +25 -12
  7. package/dist/cjs/component-store-b80bdb26.js.map +1 -0
  8. package/dist/cjs/{dom-d7c33f11.js → dom-7acf7afd.js} +15 -15
  9. package/dist/cjs/dom-7acf7afd.js.map +1 -0
  10. package/dist/cjs/{form-control-57c71246.js → form-control-845951ac.js} +4 -4
  11. package/dist/cjs/form-control-845951ac.js.map +1 -0
  12. package/dist/{esm/global-8047b4ff.js → cjs/global-3a6a7873.js} +5 -14
  13. package/dist/cjs/global-3a6a7873.js.map +1 -0
  14. package/dist/cjs/{index-bb2a6ab8.js → index-5e11be36.js} +2 -2
  15. package/dist/cjs/{index-bb2a6ab8.js.map → index-5e11be36.js.map} +1 -1
  16. package/dist/cjs/{index-ece1cb9e.js → index-72ee0363.js} +2 -10
  17. package/dist/cjs/index-72ee0363.js.map +1 -0
  18. package/dist/cjs/{index-41582c2a.js → index-e1b5c3ea.js} +1438 -516
  19. package/dist/cjs/index-e1b5c3ea.js.map +1 -0
  20. package/dist/cjs/index.cjs.js +18 -35
  21. package/dist/cjs/index.cjs.js.map +1 -1
  22. package/dist/cjs/loader.cjs.js +5 -4
  23. package/dist/cjs/loader.cjs.js.map +1 -1
  24. package/dist/cjs/{modal-e4defcc3.js → modal-5884a6de.js} +3 -2
  25. package/dist/cjs/modal-5884a6de.js.map +1 -0
  26. package/dist/cjs/nano-accordion.cjs.entry.js +4 -7
  27. package/dist/cjs/nano-accordion.cjs.entry.js.map +1 -1
  28. package/dist/cjs/nano-alert.cjs.entry.js +25 -19
  29. package/dist/cjs/nano-alert.cjs.entry.js.map +1 -1
  30. package/dist/cjs/nano-algolia-filter.cjs.entry.js +5 -5
  31. package/dist/cjs/nano-algolia-filter.cjs.entry.js.map +1 -1
  32. package/dist/cjs/nano-algolia-input.cjs.entry.js +4 -4
  33. package/dist/cjs/nano-algolia-input.cjs.entry.js.map +1 -1
  34. package/dist/cjs/nano-algolia-pagination.cjs.entry.js +2 -2
  35. package/dist/cjs/nano-algolia-results.cjs.entry.js +2 -2
  36. package/dist/cjs/nano-algolia.cjs.entry.js +8 -8
  37. package/dist/cjs/nano-algolia.cjs.entry.js.map +1 -1
  38. package/dist/cjs/nano-aspect-ratio.cjs.entry.js +1 -1
  39. package/dist/cjs/nano-checkbox-group.cjs.entry.js +52 -9
  40. package/dist/cjs/nano-checkbox-group.cjs.entry.js.map +1 -1
  41. package/dist/cjs/nano-checkbox.cjs.entry.js +8 -8
  42. package/dist/cjs/nano-checkbox.cjs.entry.js.map +1 -1
  43. package/dist/cjs/nano-components.cjs.js +8 -4
  44. package/dist/cjs/nano-components.cjs.js.map +1 -1
  45. package/dist/cjs/nano-datalist_3.cjs.entry.js +46 -36
  46. package/dist/cjs/nano-datalist_3.cjs.entry.js.map +1 -1
  47. package/dist/cjs/nano-date-input.cjs.entry.js +6 -6
  48. package/dist/cjs/nano-date-input.cjs.entry.js.map +1 -1
  49. package/dist/cjs/nano-date-picker.cjs.entry.js +4 -4
  50. package/dist/cjs/nano-date-picker.cjs.entry.js.map +1 -1
  51. package/dist/cjs/nano-demo.cjs.entry.js +13 -9
  52. package/dist/cjs/nano-demo.cjs.entry.js.map +1 -1
  53. package/dist/cjs/nano-details.cjs.entry.js +4 -4
  54. package/dist/cjs/nano-details.cjs.entry.js.map +1 -1
  55. package/dist/cjs/nano-dialog.cjs.entry.js +6 -6
  56. package/dist/cjs/nano-dialog.cjs.entry.js.map +1 -1
  57. package/dist/cjs/nano-drawer.cjs.entry.js +5 -5
  58. package/dist/cjs/nano-drawer.cjs.entry.js.map +1 -1
  59. package/dist/cjs/nano-dropdown.cjs.entry.js +9 -4
  60. package/dist/cjs/nano-dropdown.cjs.entry.js.map +1 -1
  61. package/dist/cjs/nano-field-validator.cjs.entry.js +4 -3
  62. package/dist/cjs/nano-field-validator.cjs.entry.js.map +1 -1
  63. package/dist/cjs/nano-file-upload.cjs.entry.js +5 -5
  64. package/dist/cjs/nano-file-upload.cjs.entry.js.map +1 -1
  65. package/dist/cjs/nano-global-nav-user-profile_3.cjs.entry.js +54 -67
  66. package/dist/cjs/nano-global-nav-user-profile_3.cjs.entry.js.map +1 -1
  67. package/dist/cjs/nano-global-nav.cjs.entry.js +54 -26
  68. package/dist/cjs/nano-global-nav.cjs.entry.js.map +1 -1
  69. package/dist/cjs/nano-global-search-results.cjs.entry.js +6 -4
  70. package/dist/cjs/nano-global-search-results.cjs.entry.js.map +1 -1
  71. package/dist/cjs/nano-grid_3.cjs.entry.js +8 -7
  72. package/dist/cjs/nano-grid_3.cjs.entry.js.map +1 -1
  73. package/dist/cjs/nano-hero.cjs.entry.js +4 -2
  74. package/dist/cjs/nano-hero.cjs.entry.js.map +1 -1
  75. package/dist/cjs/nano-icon-button.cjs.entry.js +2 -2
  76. package/dist/cjs/nano-icon-button.cjs.entry.js.map +1 -1
  77. package/dist/cjs/nano-icon.cjs.entry.js +7 -14
  78. package/dist/cjs/nano-icon.cjs.entry.js.map +1 -1
  79. package/dist/cjs/nano-input.cjs.entry.js +19 -33
  80. package/dist/cjs/nano-input.cjs.entry.js.map +1 -1
  81. package/dist/cjs/nano-menu-drawer.cjs.entry.js +3 -3
  82. package/dist/cjs/nano-menu-drawer.cjs.entry.js.map +1 -1
  83. package/dist/cjs/nano-progress-bar_2.cjs.entry.js +4 -4
  84. package/dist/cjs/nano-progress-bar_2.cjs.entry.js.map +1 -1
  85. package/dist/cjs/nano-range.cjs.entry.js +4 -4
  86. package/dist/cjs/nano-range.cjs.entry.js.map +1 -1
  87. package/dist/cjs/nano-rating.cjs.entry.js +2 -2
  88. package/dist/cjs/nano-rating.cjs.entry.js.map +1 -1
  89. package/dist/cjs/nano-resize-observe_2.cjs.entry.js +18 -10
  90. package/dist/cjs/nano-resize-observe_2.cjs.entry.js.map +1 -1
  91. package/dist/cjs/nano-slide.cjs.entry.js +1 -1
  92. package/dist/cjs/nano-slides.cjs.entry.js +11 -21
  93. package/dist/cjs/nano-slides.cjs.entry.js.map +1 -1
  94. package/dist/cjs/nano-spinner.cjs.entry.js +3 -3
  95. package/dist/cjs/nano-spinner.cjs.entry.js.map +1 -1
  96. package/dist/cjs/nano-split-pane.cjs.entry.js +15 -13
  97. package/dist/cjs/nano-split-pane.cjs.entry.js.map +1 -1
  98. package/dist/cjs/nano-sticker.cjs.entry.js +6 -4
  99. package/dist/cjs/nano-sticker.cjs.entry.js.map +1 -1
  100. package/dist/cjs/nano-tab-content.cjs.entry.js +9 -3
  101. package/dist/cjs/nano-tab-content.cjs.entry.js.map +1 -1
  102. package/dist/cjs/nano-tab-group.cjs.entry.js +18 -12
  103. package/dist/cjs/nano-tab-group.cjs.entry.js.map +1 -1
  104. package/dist/cjs/nano-tab.cjs.entry.js +2 -2
  105. package/dist/cjs/nano-tab.cjs.entry.js.map +1 -1
  106. package/dist/cjs/{nano-table-820b04d5.js → nano-table-e76a8dde.js} +115 -150
  107. package/dist/cjs/nano-table-e76a8dde.js.map +1 -0
  108. package/dist/cjs/nano-table.cjs.entry.js +3 -3
  109. package/dist/cjs/{popover-508bcedb.js → popover-088646b2.js} +61 -50
  110. package/dist/cjs/popover-088646b2.js.map +1 -0
  111. package/dist/cjs/{scroll-9bb5e060.js → scroll-a197d9c4.js} +2 -2
  112. package/dist/cjs/{scroll-9bb5e060.js.map → scroll-a197d9c4.js.map} +1 -1
  113. package/dist/cjs/{table.worker-9e238d16.js → table.worker-988d87da.js} +4 -4
  114. package/dist/cjs/table.worker-988d87da.js.map +1 -0
  115. package/dist/cjs/{theme-50275e1a.js → theme-9cbe28c5.js} +2 -7
  116. package/dist/cjs/theme-9cbe28c5.js.map +1 -0
  117. package/dist/collection/collection-manifest.json +2 -2
  118. package/dist/collection/components/accordion/accordion.js +1 -4
  119. package/dist/collection/components/accordion/accordion.js.map +1 -1
  120. package/dist/collection/components/alert/alert.css +4 -3
  121. package/dist/collection/components/alert/alert.helpers.js +6 -24
  122. package/dist/collection/components/alert/alert.helpers.js.map +1 -1
  123. package/dist/collection/components/alert/alert.js +19 -13
  124. package/dist/collection/components/alert/alert.js.map +1 -1
  125. package/dist/collection/components/algolia/algolia-filter.js +2 -2
  126. package/dist/collection/components/algolia/algolia-filter.js.map +1 -1
  127. package/dist/collection/components/algolia/algolia-input.js.map +1 -1
  128. package/dist/collection/components/algolia/algolia.css +2 -1
  129. package/dist/collection/components/algolia/algolia.js +3 -3
  130. package/dist/collection/components/algolia/algolia.js.map +1 -1
  131. package/dist/collection/components/checkbox/checkbox-group.css +16 -10
  132. package/dist/collection/components/checkbox/checkbox-group.js +91 -7
  133. package/dist/collection/components/checkbox/checkbox-group.js.map +1 -1
  134. package/dist/collection/components/checkbox/checkbox.css +14 -12
  135. package/dist/collection/components/checkbox/checkbox.js +5 -5
  136. package/dist/collection/components/checkbox/checkbox.js.map +1 -1
  137. package/dist/collection/components/datalist/datalist.js +39 -31
  138. package/dist/collection/components/datalist/datalist.js.map +1 -1
  139. package/dist/collection/components/date-input/date-input.css +3 -3
  140. package/dist/collection/components/date-input/date-input.js +3 -3
  141. package/dist/collection/components/date-input/date-input.js.map +1 -1
  142. package/dist/collection/components/date-picker/date-picker.css +15 -11
  143. package/dist/collection/components/date-picker/date-picker.js +1 -1
  144. package/dist/collection/components/date-picker/date-picker.js.map +1 -1
  145. package/dist/collection/components/demo/demo.js +12 -8
  146. package/dist/collection/components/demo/demo.js.map +1 -1
  147. package/dist/collection/components/details/details.css +2 -1
  148. package/dist/collection/components/details/details.js +1 -1
  149. package/dist/collection/components/details/details.js.map +1 -1
  150. package/dist/collection/components/dialog/dialog.css +8 -5
  151. package/dist/collection/components/dialog/dialog.helpers.js +3 -11
  152. package/dist/collection/components/dialog/dialog.helpers.js.map +1 -1
  153. package/dist/collection/components/drawer/drawer.css +2 -2
  154. package/dist/collection/components/dropdown/dropdown.css +1 -1
  155. package/dist/collection/components/dropdown/dropdown.js +6 -1
  156. package/dist/collection/components/dropdown/dropdown.js.map +1 -1
  157. package/dist/collection/components/field-validator/field-validator.js +2 -1
  158. package/dist/collection/components/field-validator/field-validator.js.map +1 -1
  159. package/dist/collection/components/file-upload/file-upload.css +35 -25
  160. package/dist/collection/components/file-upload/file-upload.js +4 -4
  161. package/dist/collection/components/file-upload/file-upload.js.map +1 -1
  162. package/dist/collection/components/form-control/form-control.js +2 -2
  163. package/dist/collection/components/form-control/form-control.js.map +1 -1
  164. package/dist/collection/components/global-nav/global-nav-user-profile.js +6 -7
  165. package/dist/collection/components/global-nav/global-nav-user-profile.js.map +1 -1
  166. package/dist/collection/components/global-nav/global-nav.js +61 -11
  167. package/dist/collection/components/global-nav/global-nav.js.map +1 -1
  168. package/dist/collection/components/global-nav/style/global-nav.css +92 -48
  169. package/dist/collection/components/global-search-results/global-search-results.css +83 -44
  170. package/dist/collection/components/global-search-results/global-search-results.js +4 -2
  171. package/dist/collection/components/global-search-results/global-search-results.js.map +1 -1
  172. package/dist/collection/components/grid/grid-item.css +1 -1
  173. package/dist/collection/components/grid/grid.css +1 -0
  174. package/dist/collection/components/grid/grid.js +2 -0
  175. package/dist/collection/components/grid/grid.js.map +1 -1
  176. package/dist/collection/components/hero/hero.css +110 -18
  177. package/dist/collection/components/hero/hero.js +2 -0
  178. package/dist/collection/components/hero/hero.js.map +1 -1
  179. package/dist/collection/components/icon/icon.css +2 -2
  180. package/dist/collection/components/icon/icon.js +3 -10
  181. package/dist/collection/components/icon/icon.js.map +1 -1
  182. package/dist/collection/components/icon-button/icon-button.css +1 -1
  183. package/dist/collection/components/img/img.css +0 -1
  184. package/dist/collection/components/img/img.js +3 -4
  185. package/dist/collection/components/img/img.js.map +1 -1
  186. package/dist/collection/components/input/input.css +54 -32
  187. package/dist/collection/components/input/input.js +14 -28
  188. package/dist/collection/components/input/input.js.map +1 -1
  189. package/dist/collection/components/menu/menu.js +4 -2
  190. package/dist/collection/components/menu/menu.js.map +1 -1
  191. package/dist/collection/components/menu-drawer/menu-drawer.css +20 -13
  192. package/dist/collection/components/menu-drawer/menu-drawer.js +1 -1
  193. package/dist/collection/components/menu-drawer/menu-drawer.js.map +1 -1
  194. package/dist/collection/components/nav-item/nav-item.css +31 -16
  195. package/dist/collection/components/nav-item/nav-item.js +4 -4
  196. package/dist/collection/components/nav-item/nav-item.js.map +1 -1
  197. package/dist/collection/components/option/option.css +4 -2
  198. package/dist/collection/components/progress-bar/progress-bar.css +4 -4
  199. package/dist/collection/components/range/range.css +11 -9
  200. package/dist/collection/components/rating/rating.css +9 -5
  201. package/dist/collection/components/resize-observe/resize-observe.js +17 -6
  202. package/dist/collection/components/resize-observe/resize-observe.js.map +1 -1
  203. package/dist/collection/components/select/select.css +59 -34
  204. package/dist/collection/components/select/select.js +42 -55
  205. package/dist/collection/components/select/select.js.map +1 -1
  206. package/dist/collection/components/skeleton/skeleton.css +5 -5
  207. package/dist/collection/components/slides/slides.css +4 -2
  208. package/dist/collection/components/slides/slides.js +9 -19
  209. package/dist/collection/components/slides/slides.js.map +1 -1
  210. package/dist/collection/components/spinner/spinner.css +13 -8
  211. package/dist/collection/components/spinner/spinner.js +1 -1
  212. package/dist/collection/components/spinner/spinner.js.map +1 -1
  213. package/dist/collection/components/split-pane/split-pane.css +1 -1
  214. package/dist/collection/components/split-pane/split-pane.js +13 -11
  215. package/dist/collection/components/split-pane/split-pane.js.map +1 -1
  216. package/dist/collection/components/sticker/sticker.js +4 -2
  217. package/dist/collection/components/sticker/sticker.js.map +1 -1
  218. package/dist/collection/components/table/table.cell.js +8 -8
  219. package/dist/collection/components/table/table.cell.js.map +1 -1
  220. package/dist/collection/components/table/table.css +46 -25
  221. package/dist/collection/components/table/table.header.js +6 -19
  222. package/dist/collection/components/table/table.header.js.map +1 -1
  223. package/dist/collection/components/table/table.js +85 -93
  224. package/dist/collection/components/table/table.js.map +1 -1
  225. package/dist/collection/components/table/table.row.js +8 -8
  226. package/dist/collection/components/table/table.row.js.map +1 -1
  227. package/dist/collection/components/table/table.store.js +2 -1
  228. package/dist/collection/components/table/table.store.js.map +1 -1
  229. package/dist/collection/components/table/table.utils.js +8 -7
  230. package/dist/collection/components/table/table.utils.js.map +1 -1
  231. package/dist/collection/components/tabs/tab-content.css +7 -2
  232. package/dist/collection/components/tabs/tab-content.js +12 -1
  233. package/dist/collection/components/tabs/tab-content.js.map +1 -1
  234. package/dist/collection/components/tabs/tab-group.css +13 -10
  235. package/dist/collection/components/tabs/tab-group.js +17 -7
  236. package/dist/collection/components/tabs/tab-group.js.map +1 -1
  237. package/dist/collection/components/tabs/tab.css +21 -12
  238. package/dist/collection/components/tooltip/tooltip.css +25 -16
  239. package/dist/collection/global/script/global.js +2 -13
  240. package/dist/collection/global/script/global.js.map +1 -1
  241. package/dist/collection/index.js +17 -0
  242. package/dist/collection/index.js.map +1 -1
  243. package/dist/collection/utils/dom.js +16 -15
  244. package/dist/collection/utils/dom.js.map +1 -1
  245. package/dist/collection/utils/fetch.js +15 -12
  246. package/dist/collection/utils/fetch.js.map +1 -1
  247. package/dist/collection/utils/gesture/index.js +1 -9
  248. package/dist/collection/utils/gesture/index.js.map +1 -1
  249. package/dist/collection/utils/modal.js +2 -1
  250. package/dist/collection/utils/modal.js.map +1 -1
  251. package/dist/collection/utils/store/get-set.js +1 -1
  252. package/dist/collection/utils/store/get-set.js.map +1 -1
  253. package/dist/collection/utils/testing/index.js +1 -0
  254. package/dist/collection/utils/testing/index.js.map +1 -1
  255. package/dist/collection/utils/theme.js +1 -6
  256. package/dist/collection/utils/theme.js.map +1 -1
  257. package/dist/components/algolia.js +3 -3
  258. package/dist/components/algolia.js.map +1 -1
  259. package/dist/components/algoliasearch.umd.js +2 -2
  260. package/dist/components/algoliasearch.umd.js.map +1 -1
  261. package/dist/components/component-store.js +23 -10
  262. package/dist/components/component-store.js.map +1 -1
  263. package/dist/components/datalist.js +39 -31
  264. package/dist/components/datalist.js.map +1 -1
  265. package/dist/components/date-picker.js +2 -2
  266. package/dist/components/date-picker.js.map +1 -1
  267. package/dist/components/dom.js +17 -15
  268. package/dist/components/dom.js.map +1 -1
  269. package/dist/components/dropdown.js +7 -2
  270. package/dist/components/dropdown.js.map +1 -1
  271. package/dist/components/form-control.js +2 -2
  272. package/dist/components/form-control.js.map +1 -1
  273. package/dist/components/global-nav-user-profile.js +4 -3
  274. package/dist/components/global-nav-user-profile.js.map +1 -1
  275. package/dist/components/grid-item.js +1 -1
  276. package/dist/components/grid-item.js.map +1 -1
  277. package/dist/components/grid.js +3 -1
  278. package/dist/components/grid.js.map +1 -1
  279. package/dist/components/icon-button.js +1 -1
  280. package/dist/components/icon-button.js.map +1 -1
  281. package/dist/components/icon.js +4 -11
  282. package/dist/components/icon.js.map +1 -1
  283. package/dist/components/img.js +4 -5
  284. package/dist/components/img.js.map +1 -1
  285. package/dist/components/index.d.ts +9 -0
  286. package/dist/components/index.js +23 -52
  287. package/dist/components/index.js.map +1 -1
  288. package/dist/components/index3.js +635 -1069
  289. package/dist/components/index3.js.map +1 -1
  290. package/dist/components/input.js +15 -29
  291. package/dist/components/input.js.map +1 -1
  292. package/dist/components/menu.js +4 -2
  293. package/dist/components/menu.js.map +1 -1
  294. package/dist/components/modal.js +2 -1
  295. package/dist/components/modal.js.map +1 -1
  296. package/dist/components/nano-accordion.js +1 -4
  297. package/dist/components/nano-accordion.js.map +1 -1
  298. package/dist/components/nano-alert.js +20 -14
  299. package/dist/components/nano-alert.js.map +1 -1
  300. package/dist/components/nano-algolia-filter.js +2 -2
  301. package/dist/components/nano-algolia-filter.js.map +1 -1
  302. package/dist/components/nano-algolia-input.js.map +1 -1
  303. package/dist/components/nano-checkbox-group.js +53 -9
  304. package/dist/components/nano-checkbox-group.js.map +1 -1
  305. package/dist/components/nano-checkbox.js +6 -6
  306. package/dist/components/nano-checkbox.js.map +1 -1
  307. package/dist/components/nano-date-input.js +4 -4
  308. package/dist/components/nano-date-input.js.map +1 -1
  309. package/dist/components/nano-demo.js +12 -8
  310. package/dist/components/nano-demo.js.map +1 -1
  311. package/dist/components/nano-details.js +2 -2
  312. package/dist/components/nano-details.js.map +1 -1
  313. package/dist/components/nano-dialog.js +1 -1
  314. package/dist/components/nano-dialog.js.map +1 -1
  315. package/dist/components/nano-drawer.js +1 -1
  316. package/dist/components/nano-drawer.js.map +1 -1
  317. package/dist/components/nano-field-validator.js +2 -1
  318. package/dist/components/nano-field-validator.js.map +1 -1
  319. package/dist/components/nano-file-upload.js +4 -4
  320. package/dist/components/nano-file-upload.js.map +1 -1
  321. package/dist/components/nano-global-nav.js +51 -22
  322. package/dist/components/nano-global-nav.js.map +1 -1
  323. package/dist/components/nano-global-search-results.js +5 -3
  324. package/dist/components/nano-global-search-results.js.map +1 -1
  325. package/dist/components/nano-hero.js +3 -1
  326. package/dist/components/nano-hero.js.map +1 -1
  327. package/dist/components/nano-menu-drawer.js +2 -2
  328. package/dist/components/nano-menu-drawer.js.map +1 -1
  329. package/dist/components/nano-range.js +2 -2
  330. package/dist/components/nano-range.js.map +1 -1
  331. package/dist/components/nano-rating.js +1 -1
  332. package/dist/components/nano-rating.js.map +1 -1
  333. package/dist/components/nano-slides.js +10 -20
  334. package/dist/components/nano-slides.js.map +1 -1
  335. package/dist/components/nano-split-pane.js +14 -12
  336. package/dist/components/nano-split-pane.js.map +1 -1
  337. package/dist/components/nano-tab-content.js +10 -3
  338. package/dist/components/nano-tab-content.js.map +1 -1
  339. package/dist/components/nano-tab-group.js +18 -8
  340. package/dist/components/nano-tab-group.js.map +1 -1
  341. package/dist/components/nano-tab.js +1 -1
  342. package/dist/components/nano-tab.js.map +1 -1
  343. package/dist/components/nav-item.js +5 -5
  344. package/dist/components/nav-item.js.map +1 -1
  345. package/dist/components/option.js +1 -1
  346. package/dist/components/option.js.map +1 -1
  347. package/dist/components/popover.js +60 -49
  348. package/dist/components/popover.js.map +1 -1
  349. package/dist/components/progress-bar.js +1 -1
  350. package/dist/components/progress-bar.js.map +1 -1
  351. package/dist/components/resize-observe.js +16 -8
  352. package/dist/components/resize-observe.js.map +1 -1
  353. package/dist/components/select.js +43 -56
  354. package/dist/components/select.js.map +1 -1
  355. package/dist/components/skeleton.js +1 -1
  356. package/dist/components/skeleton.js.map +1 -1
  357. package/dist/components/spinner.js +2 -2
  358. package/dist/components/spinner.js.map +1 -1
  359. package/dist/components/sticker.js +4 -2
  360. package/dist/components/sticker.js.map +1 -1
  361. package/dist/components/table.js +117 -152
  362. package/dist/components/table.js.map +1 -1
  363. package/dist/components/theme.js +1 -6
  364. package/dist/components/theme.js.map +1 -1
  365. package/dist/components/tooltip.js +1 -1
  366. package/dist/components/tooltip.js.map +1 -1
  367. package/dist/esm/{algolia-data-b5cd0c58.js → algolia-data-c4ed188c.js} +2 -2
  368. package/dist/esm/{algolia-data-b5cd0c58.js.map → algolia-data-c4ed188c.js.map} +1 -1
  369. package/dist/esm/{algoliasearch.umd-86359963.js → algoliasearch.umd-4f7efa84.js} +3 -3
  370. package/dist/esm/{algoliasearch.umd-86359963.js.map → algoliasearch.umd-4f7efa84.js.map} +1 -1
  371. package/dist/esm/{component-store-ec512820.js → component-store-6eccd724.js} +25 -12
  372. package/dist/esm/component-store-6eccd724.js.map +1 -0
  373. package/dist/esm/{dom-d3ad49e2.js → dom-311c9e1e.js} +15 -15
  374. package/dist/esm/dom-311c9e1e.js.map +1 -0
  375. package/dist/esm/{form-control-84bac7a2.js → form-control-3284c2c9.js} +4 -4
  376. package/dist/esm/form-control-3284c2c9.js.map +1 -0
  377. package/dist/{cjs/global-989678ec.js → esm/global-f6e05656.js} +3 -16
  378. package/dist/esm/global-f6e05656.js.map +1 -0
  379. package/dist/esm/{index-c752dae1.js → index-38484737.js} +2 -2
  380. package/dist/esm/{index-c752dae1.js.map → index-38484737.js.map} +1 -1
  381. package/dist/esm/{index-3c280603.js → index-b4e277ad.js} +1438 -517
  382. package/dist/esm/index-b4e277ad.js.map +1 -0
  383. package/dist/{components/index4.js → esm/index-f626f476.js} +2 -10
  384. package/dist/esm/index-f626f476.js.map +1 -0
  385. package/dist/esm/index.js +18 -36
  386. package/dist/esm/index.js.map +1 -1
  387. package/dist/esm/loader.js +5 -4
  388. package/dist/esm/loader.js.map +1 -1
  389. package/dist/esm/{modal-5c9ce466.js → modal-1f3223cd.js} +3 -2
  390. package/dist/esm/modal-1f3223cd.js.map +1 -0
  391. package/dist/esm/nano-accordion.entry.js +4 -7
  392. package/dist/esm/nano-accordion.entry.js.map +1 -1
  393. package/dist/esm/nano-alert.entry.js +25 -19
  394. package/dist/esm/nano-alert.entry.js.map +1 -1
  395. package/dist/esm/nano-algolia-filter.entry.js +5 -5
  396. package/dist/esm/nano-algolia-filter.entry.js.map +1 -1
  397. package/dist/esm/nano-algolia-input.entry.js +4 -4
  398. package/dist/esm/nano-algolia-input.entry.js.map +1 -1
  399. package/dist/esm/nano-algolia-pagination.entry.js +2 -2
  400. package/dist/esm/nano-algolia-results.entry.js +2 -2
  401. package/dist/esm/nano-algolia.entry.js +8 -8
  402. package/dist/esm/nano-algolia.entry.js.map +1 -1
  403. package/dist/esm/nano-aspect-ratio.entry.js +1 -1
  404. package/dist/esm/nano-checkbox-group.entry.js +52 -9
  405. package/dist/esm/nano-checkbox-group.entry.js.map +1 -1
  406. package/dist/esm/nano-checkbox.entry.js +8 -8
  407. package/dist/esm/nano-checkbox.entry.js.map +1 -1
  408. package/dist/esm/nano-components.js +5 -4
  409. package/dist/esm/nano-components.js.map +1 -1
  410. package/dist/esm/nano-datalist_3.entry.js +46 -36
  411. package/dist/esm/nano-datalist_3.entry.js.map +1 -1
  412. package/dist/esm/nano-date-input.entry.js +6 -6
  413. package/dist/esm/nano-date-input.entry.js.map +1 -1
  414. package/dist/esm/nano-date-picker.entry.js +4 -4
  415. package/dist/esm/nano-date-picker.entry.js.map +1 -1
  416. package/dist/esm/nano-demo.entry.js +13 -9
  417. package/dist/esm/nano-demo.entry.js.map +1 -1
  418. package/dist/esm/nano-details.entry.js +4 -4
  419. package/dist/esm/nano-details.entry.js.map +1 -1
  420. package/dist/esm/nano-dialog.entry.js +6 -6
  421. package/dist/esm/nano-dialog.entry.js.map +1 -1
  422. package/dist/esm/nano-drawer.entry.js +5 -5
  423. package/dist/esm/nano-drawer.entry.js.map +1 -1
  424. package/dist/esm/nano-dropdown.entry.js +9 -4
  425. package/dist/esm/nano-dropdown.entry.js.map +1 -1
  426. package/dist/esm/nano-field-validator.entry.js +4 -3
  427. package/dist/esm/nano-field-validator.entry.js.map +1 -1
  428. package/dist/esm/nano-file-upload.entry.js +5 -5
  429. package/dist/esm/nano-file-upload.entry.js.map +1 -1
  430. package/dist/esm/nano-global-nav-user-profile_3.entry.js +54 -67
  431. package/dist/esm/nano-global-nav-user-profile_3.entry.js.map +1 -1
  432. package/dist/esm/nano-global-nav.entry.js +54 -26
  433. package/dist/esm/nano-global-nav.entry.js.map +1 -1
  434. package/dist/esm/nano-global-search-results.entry.js +6 -4
  435. package/dist/esm/nano-global-search-results.entry.js.map +1 -1
  436. package/dist/esm/nano-grid_3.entry.js +8 -7
  437. package/dist/esm/nano-grid_3.entry.js.map +1 -1
  438. package/dist/esm/nano-hero.entry.js +4 -2
  439. package/dist/esm/nano-hero.entry.js.map +1 -1
  440. package/dist/esm/nano-icon-button.entry.js +2 -2
  441. package/dist/esm/nano-icon-button.entry.js.map +1 -1
  442. package/dist/esm/nano-icon.entry.js +7 -14
  443. package/dist/esm/nano-icon.entry.js.map +1 -1
  444. package/dist/esm/nano-input.entry.js +19 -33
  445. package/dist/esm/nano-input.entry.js.map +1 -1
  446. package/dist/esm/nano-menu-drawer.entry.js +3 -3
  447. package/dist/esm/nano-menu-drawer.entry.js.map +1 -1
  448. package/dist/esm/nano-progress-bar_2.entry.js +4 -4
  449. package/dist/esm/nano-progress-bar_2.entry.js.map +1 -1
  450. package/dist/esm/nano-range.entry.js +4 -4
  451. package/dist/esm/nano-range.entry.js.map +1 -1
  452. package/dist/esm/nano-rating.entry.js +2 -2
  453. package/dist/esm/nano-rating.entry.js.map +1 -1
  454. package/dist/esm/nano-resize-observe_2.entry.js +18 -10
  455. package/dist/esm/nano-resize-observe_2.entry.js.map +1 -1
  456. package/dist/esm/nano-slide.entry.js +1 -1
  457. package/dist/esm/nano-slides.entry.js +11 -21
  458. package/dist/esm/nano-slides.entry.js.map +1 -1
  459. package/dist/esm/nano-spinner.entry.js +3 -3
  460. package/dist/esm/nano-spinner.entry.js.map +1 -1
  461. package/dist/esm/nano-split-pane.entry.js +15 -13
  462. package/dist/esm/nano-split-pane.entry.js.map +1 -1
  463. package/dist/esm/nano-sticker.entry.js +6 -4
  464. package/dist/esm/nano-sticker.entry.js.map +1 -1
  465. package/dist/esm/nano-tab-content.entry.js +9 -3
  466. package/dist/esm/nano-tab-content.entry.js.map +1 -1
  467. package/dist/esm/nano-tab-group.entry.js +18 -12
  468. package/dist/esm/nano-tab-group.entry.js.map +1 -1
  469. package/dist/esm/nano-tab.entry.js +2 -2
  470. package/dist/esm/nano-tab.entry.js.map +1 -1
  471. package/dist/esm/{nano-table-1f4fe4ad.js → nano-table-5ff91f0f.js} +115 -150
  472. package/dist/esm/nano-table-5ff91f0f.js.map +1 -0
  473. package/dist/esm/nano-table.entry.js +3 -3
  474. package/dist/esm/polyfills/css-shim.js +1 -1
  475. package/dist/esm/{popover-e748bb61.js → popover-02e6714d.js} +61 -50
  476. package/dist/esm/popover-02e6714d.js.map +1 -0
  477. package/dist/esm/{scroll-a1e59d8c.js → scroll-e5825d8d.js} +2 -2
  478. package/dist/esm/{scroll-a1e59d8c.js.map → scroll-e5825d8d.js.map} +1 -1
  479. package/dist/esm/{table.worker-ddbd23c3.js → table.worker-5c1bb1ce.js} +4 -4
  480. package/dist/esm/table.worker-5c1bb1ce.js.map +1 -0
  481. package/dist/esm/{theme-931bd452.js → theme-82feb8cf.js} +2 -7
  482. package/dist/esm/theme-82feb8cf.js.map +1 -0
  483. package/dist/nano-components/index.esm.js +1 -1
  484. package/dist/nano-components/index.esm.js.map +1 -1
  485. package/dist/nano-components/nano-components.esm.js +1 -1
  486. package/dist/nano-components/nano-components.esm.js.map +1 -1
  487. package/dist/nano-components/{p-1a8e60c4.entry.js → p-0411f019.entry.js} +2 -2
  488. package/dist/nano-components/p-0411f019.entry.js.map +1 -0
  489. package/dist/nano-components/p-13b2d70c.entry.js +5 -0
  490. package/dist/nano-components/p-13b2d70c.entry.js.map +1 -0
  491. package/dist/nano-components/p-167b9165.js.map +1 -1
  492. package/dist/nano-components/p-1d21b2ce.entry.js +5 -0
  493. package/dist/nano-components/p-1d21b2ce.entry.js.map +1 -0
  494. package/dist/nano-components/p-2155fc2c.js.map +1 -1
  495. package/dist/nano-components/p-257432ff.js +5 -0
  496. package/dist/nano-components/p-257432ff.js.map +1 -0
  497. package/dist/nano-components/p-264903b5.entry.js +5 -0
  498. package/dist/nano-components/p-264903b5.entry.js.map +1 -0
  499. package/dist/nano-components/p-320366a2.entry.js +5 -0
  500. package/dist/nano-components/p-320366a2.entry.js.map +1 -0
  501. package/dist/nano-components/p-364434b4.entry.js +5 -0
  502. package/dist/nano-components/p-364434b4.entry.js.map +1 -0
  503. package/dist/nano-components/{p-3f25fc76.entry.js → p-36d5a41d.entry.js} +2 -2
  504. package/dist/nano-components/p-36d5a41d.entry.js.map +1 -0
  505. package/dist/nano-components/{p-1e709f87.entry.js → p-371fe61d.entry.js} +2 -2
  506. package/dist/nano-components/p-371fe61d.entry.js.map +1 -0
  507. package/dist/nano-components/p-3d658ce2.entry.js +5 -0
  508. package/dist/nano-components/p-3d658ce2.entry.js.map +1 -0
  509. package/dist/nano-components/p-3e95778d.entry.js +5 -0
  510. package/dist/nano-components/p-3e95778d.entry.js.map +1 -0
  511. package/dist/nano-components/p-400d698f.entry.js +5 -0
  512. package/dist/nano-components/p-400d698f.entry.js.map +1 -0
  513. package/dist/nano-components/p-411bb8f1.js +5 -0
  514. package/dist/nano-components/p-411bb8f1.js.map +1 -0
  515. package/dist/nano-components/p-41811365.js +5 -0
  516. package/dist/nano-components/p-41811365.js.map +1 -0
  517. package/dist/nano-components/p-45abbbdd.js.map +1 -1
  518. package/dist/nano-components/{p-885b6950.js → p-45b7682a.js} +2 -2
  519. package/dist/nano-components/p-45b7682a.js.map +1 -0
  520. package/dist/nano-components/p-4b1d73e9.entry.js +5 -0
  521. package/dist/nano-components/p-4b1d73e9.entry.js.map +1 -0
  522. package/dist/nano-components/{p-69e5a37d.entry.js → p-4e104cb1.entry.js} +2 -2
  523. package/dist/nano-components/p-4e104cb1.entry.js.map +1 -0
  524. package/dist/nano-components/p-51bc8b59.js +5 -0
  525. package/dist/nano-components/p-51bc8b59.js.map +1 -0
  526. package/dist/nano-components/p-5a466c9f.entry.js +5 -0
  527. package/dist/nano-components/p-5a466c9f.entry.js.map +1 -0
  528. package/dist/nano-components/{p-bd05b3aa.entry.js → p-5f1b94f0.entry.js} +2 -2
  529. package/dist/nano-components/{p-bd05b3aa.entry.js.map → p-5f1b94f0.entry.js.map} +1 -1
  530. package/dist/nano-components/p-60823325.entry.js +5 -0
  531. package/dist/nano-components/p-60823325.entry.js.map +1 -0
  532. package/dist/nano-components/p-6760e54a.entry.js +5 -0
  533. package/dist/nano-components/p-6760e54a.entry.js.map +1 -0
  534. package/dist/nano-components/p-69774e99.entry.js +5 -0
  535. package/dist/nano-components/p-69774e99.entry.js.map +1 -0
  536. package/dist/nano-components/p-69a3e911.js.map +1 -1
  537. package/dist/nano-components/p-6bca2d00.entry.js +5 -0
  538. package/dist/nano-components/p-6bca2d00.entry.js.map +1 -0
  539. package/dist/nano-components/p-74a7fc4f.js.map +1 -1
  540. package/dist/nano-components/{p-dba8a88d.entry.js → p-78169835.entry.js} +2 -2
  541. package/dist/nano-components/p-78169835.entry.js.map +1 -0
  542. package/dist/nano-components/p-817eda34.entry.js +5 -0
  543. package/dist/nano-components/p-817eda34.entry.js.map +1 -0
  544. package/dist/nano-components/p-866c73c0.entry.js +5 -0
  545. package/dist/nano-components/p-866c73c0.entry.js.map +1 -0
  546. package/dist/nano-components/p-87a76a81.entry.js +5 -0
  547. package/dist/nano-components/{p-41addb3a.entry.js.map → p-87a76a81.entry.js.map} +1 -1
  548. package/dist/nano-components/p-8907dd24.entry.js +5 -0
  549. package/dist/nano-components/p-8907dd24.entry.js.map +1 -0
  550. package/dist/nano-components/p-90365d7b.entry.js +5 -0
  551. package/dist/nano-components/p-90365d7b.entry.js.map +1 -0
  552. package/dist/nano-components/p-909a424c.js +5 -0
  553. package/dist/nano-components/p-909a424c.js.map +1 -0
  554. package/dist/nano-components/p-9746b0a5.js.map +1 -1
  555. package/dist/nano-components/p-9cf5fda3.entry.js +5 -0
  556. package/dist/nano-components/p-9cf5fda3.entry.js.map +1 -0
  557. package/dist/nano-components/p-9fcd383f.entry.js +5 -0
  558. package/dist/nano-components/p-9fcd383f.entry.js.map +1 -0
  559. package/dist/nano-components/p-9fda481b.entry.js +5 -0
  560. package/dist/nano-components/p-9fda481b.entry.js.map +1 -0
  561. package/dist/nano-components/p-abd6b774.entry.js +5 -0
  562. package/dist/nano-components/p-abd6b774.entry.js.map +1 -0
  563. package/dist/nano-components/p-b933f3c8.js.map +1 -1
  564. package/dist/nano-components/{p-2828788c.js → p-bb07c3d0.js} +2 -2
  565. package/dist/nano-components/p-bb07c3d0.js.map +1 -0
  566. package/dist/nano-components/p-bb6f7c39.js +5 -0
  567. package/dist/nano-components/p-bb6f7c39.js.map +1 -0
  568. package/dist/nano-components/p-bf91c50e.js +6 -0
  569. package/dist/nano-components/p-bf91c50e.js.map +1 -0
  570. package/dist/nano-components/{p-b40eedcb.entry.js → p-bfbfec85.entry.js} +2 -2
  571. package/dist/nano-components/p-bfbfec85.entry.js.map +1 -0
  572. package/dist/nano-components/{p-447a5910.entry.js → p-c0681b2b.entry.js} +2 -2
  573. package/dist/nano-components/p-c0681b2b.entry.js.map +1 -0
  574. package/dist/nano-components/p-c0ca353b.entry.js +5 -0
  575. package/dist/nano-components/p-c0ca353b.entry.js.map +1 -0
  576. package/dist/nano-components/p-c4e8d584.entry.js +5 -0
  577. package/dist/nano-components/p-c4e8d584.entry.js.map +1 -0
  578. package/dist/nano-components/p-cecb9af1.js.map +1 -1
  579. package/dist/nano-components/p-d4f6ec9f.js +5 -0
  580. package/dist/nano-components/p-d4f6ec9f.js.map +1 -0
  581. package/dist/nano-components/p-d753f35a.entry.js +5 -0
  582. package/dist/nano-components/p-d753f35a.entry.js.map +1 -0
  583. package/dist/nano-components/{p-651b3264.js → p-d7ff8f12.js} +2 -2
  584. package/dist/nano-components/p-d7ff8f12.js.map +1 -0
  585. package/dist/nano-components/{p-0582afcc.js → p-d92b762b.js} +2 -2
  586. package/dist/nano-components/p-d92b762b.js.map +1 -0
  587. package/dist/nano-components/p-de25ba80.entry.js +5 -0
  588. package/dist/nano-components/p-de25ba80.entry.js.map +1 -0
  589. package/dist/nano-components/{p-c9a7c7ea.js → p-e04f2333.js} +2 -2
  590. package/dist/nano-components/p-e04f2333.js.map +1 -0
  591. package/dist/nano-components/p-e19d6a92.entry.js +5 -0
  592. package/dist/nano-components/p-e19d6a92.entry.js.map +1 -0
  593. package/dist/nano-components/{p-63834d50.js → p-ed2e6f32.js} +2 -2
  594. package/dist/nano-components/p-ed2e6f32.js.map +1 -0
  595. package/dist/nano-components/p-ed69b27b.entry.js +5 -0
  596. package/dist/nano-components/p-ed69b27b.entry.js.map +1 -0
  597. package/dist/nano-components/{p-a0b93616.js → p-ed6adde2.js} +3 -3
  598. package/dist/nano-components/p-ed6adde2.js.map +1 -0
  599. package/dist/nano-components/p-ee045579.js.map +1 -1
  600. package/dist/nano-components/{p-151aad1e.entry.js → p-f2875bf0.entry.js} +4 -4
  601. package/dist/nano-components/p-f2875bf0.entry.js.map +1 -0
  602. package/dist/nano-components/p-f28c802d.entry.js +5 -0
  603. package/dist/nano-components/p-f28c802d.entry.js.map +1 -0
  604. package/dist/nano-components/{p-a2d0d7b9.entry.js → p-f47776fd.entry.js} +2 -2
  605. package/dist/nano-components/p-f47776fd.entry.js.map +1 -0
  606. package/dist/nano-components/p-f8f89998.js.map +1 -1
  607. package/dist/nano-components/p-fccd59e4.entry.js +5 -0
  608. package/dist/nano-components/p-fccd59e4.entry.js.map +1 -0
  609. package/dist/nano-components/p-fe1446cd.entry.js +5 -0
  610. package/dist/nano-components/p-fe1446cd.entry.js.map +1 -0
  611. package/dist/themes/london-calling.css +1 -1
  612. package/dist/themes/london-calling.css.map +1 -1
  613. package/dist/themes/nanopore.css +1 -1
  614. package/dist/themes/nanopore.css.map +1 -1
  615. package/dist/types/components/alert/alert-interface.d.ts +1 -1
  616. package/dist/types/components/algolia/algolia-input.d.ts +1 -1
  617. package/dist/types/components/algolia/algolia.d.ts +2 -2
  618. package/dist/types/components/checkbox/checkbox-group.d.ts +11 -0
  619. package/dist/types/components/date-picker/date-picker-interface.d.ts +2 -2
  620. package/dist/types/components/date-picker/duet-date-picker/date-adapter.d.ts +3 -3
  621. package/dist/types/components/date-picker/duet-date-picker/date-localization.d.ts +3 -3
  622. package/dist/types/components/date-picker/duet-date-picker/date-picker-day.d.ts +1 -1
  623. package/dist/types/components/date-picker/duet-date-picker/date-picker-month.d.ts +1 -1
  624. package/dist/types/components/field-validator/field-validator-interface.d.ts +4 -4
  625. package/dist/types/components/file-upload/file-upload.d.ts +1 -1
  626. package/dist/types/components/global-nav/global-nav.d.ts +12 -6
  627. package/dist/types/components/icon/icon.d.ts +3 -3
  628. package/dist/types/components/menu/menu.d.ts +1 -1
  629. package/dist/types/components/nav-item/nav-item.d.ts +1 -1
  630. package/dist/types/components/range/range-interface.d.ts +2 -2
  631. package/dist/types/components/resize-observe/resize-observe.d.ts +1 -0
  632. package/dist/types/components/slides/slides-interface.d.ts +2 -2
  633. package/dist/types/components/slides/slides.d.ts +0 -2
  634. package/dist/types/components/table/table.cell.d.ts +1 -1
  635. package/dist/types/components/table/table.d.ts +9 -14
  636. package/dist/types/components/table/table.header.d.ts +1 -1
  637. package/dist/types/components/table/table.row.d.ts +2 -2
  638. package/dist/types/components/table/table.utils.d.ts +2 -1
  639. package/dist/types/components/tabs/tab-content.d.ts +2 -0
  640. package/dist/types/components.d.ts +829 -9
  641. package/dist/types/index.d.ts +5 -0
  642. package/dist/types/stencil-public-runtime.d.ts +48 -3
  643. package/dist/types/utils/dom.d.ts +9 -0
  644. package/dist/types/utils/gesture/index.d.ts +1 -1
  645. package/dist/types/utils/popover.d.ts +1 -1
  646. package/dist/types/utils/store/component-store.d.ts +2 -2
  647. package/dist/types/utils/testing/index.d.ts +1 -1
  648. package/docs-json.json +89 -50
  649. package/docs-vscode.json +8 -4
  650. package/hydrate/index.d.ts +853 -0
  651. package/{dist/custom-elements → hydrate}/index.js +11476 -7950
  652. package/hydrate/package.json +6 -0
  653. package/loader/index.d.ts +9 -0
  654. package/package.json +24 -16
  655. package/dist/cjs/component-store-d7c8c326.js.map +0 -1
  656. package/dist/cjs/dom-d7c33f11.js.map +0 -1
  657. package/dist/cjs/form-control-57c71246.js.map +0 -1
  658. package/dist/cjs/global-989678ec.js.map +0 -1
  659. package/dist/cjs/index-41582c2a.js.map +0 -1
  660. package/dist/cjs/index-75b61776.js +0 -1077
  661. package/dist/cjs/index-75b61776.js.map +0 -1
  662. package/dist/cjs/index-ece1cb9e.js.map +0 -1
  663. package/dist/cjs/modal-e4defcc3.js.map +0 -1
  664. package/dist/cjs/nano-table-820b04d5.js.map +0 -1
  665. package/dist/cjs/popover-508bcedb.js.map +0 -1
  666. package/dist/cjs/table.worker-9e238d16.js.map +0 -1
  667. package/dist/cjs/theme-50275e1a.js.map +0 -1
  668. package/dist/components/index4.js.map +0 -1
  669. package/dist/custom-elements/index.d.ts +0 -339
  670. package/dist/custom-elements/index.js.map +0 -1
  671. package/dist/esm/component-store-ec512820.js.map +0 -1
  672. package/dist/esm/dom-d3ad49e2.js.map +0 -1
  673. package/dist/esm/form-control-84bac7a2.js.map +0 -1
  674. package/dist/esm/global-8047b4ff.js.map +0 -1
  675. package/dist/esm/index-3bbaffe4.js +0 -1075
  676. package/dist/esm/index-3bbaffe4.js.map +0 -1
  677. package/dist/esm/index-3c280603.js.map +0 -1
  678. package/dist/esm/index-dc076ea6.js +0 -649
  679. package/dist/esm/index-dc076ea6.js.map +0 -1
  680. package/dist/esm/modal-5c9ce466.js.map +0 -1
  681. package/dist/esm/nano-table-1f4fe4ad.js.map +0 -1
  682. package/dist/esm/popover-e748bb61.js.map +0 -1
  683. package/dist/esm/table.worker-ddbd23c3.js.map +0 -1
  684. package/dist/esm/theme-931bd452.js.map +0 -1
  685. package/dist/nano-components/p-0582afcc.js.map +0 -1
  686. package/dist/nano-components/p-135fed16.entry.js +0 -5
  687. package/dist/nano-components/p-135fed16.entry.js.map +0 -1
  688. package/dist/nano-components/p-151aad1e.entry.js.map +0 -1
  689. package/dist/nano-components/p-15543295.entry.js +0 -5
  690. package/dist/nano-components/p-15543295.entry.js.map +0 -1
  691. package/dist/nano-components/p-1a8e60c4.entry.js.map +0 -1
  692. package/dist/nano-components/p-1e709f87.entry.js.map +0 -1
  693. package/dist/nano-components/p-1f347342.entry.js +0 -5
  694. package/dist/nano-components/p-1f347342.entry.js.map +0 -1
  695. package/dist/nano-components/p-1fe12320.js +0 -6
  696. package/dist/nano-components/p-1fe12320.js.map +0 -1
  697. package/dist/nano-components/p-23575705.entry.js +0 -5
  698. package/dist/nano-components/p-23575705.entry.js.map +0 -1
  699. package/dist/nano-components/p-2828788c.js.map +0 -1
  700. package/dist/nano-components/p-284dd9a2.entry.js +0 -5
  701. package/dist/nano-components/p-284dd9a2.entry.js.map +0 -1
  702. package/dist/nano-components/p-2a97ef51.entry.js +0 -5
  703. package/dist/nano-components/p-2a97ef51.entry.js.map +0 -1
  704. package/dist/nano-components/p-36842a50.entry.js +0 -5
  705. package/dist/nano-components/p-36842a50.entry.js.map +0 -1
  706. package/dist/nano-components/p-3a1026d1.entry.js +0 -5
  707. package/dist/nano-components/p-3a1026d1.entry.js.map +0 -1
  708. package/dist/nano-components/p-3f25fc76.entry.js.map +0 -1
  709. package/dist/nano-components/p-41addb3a.entry.js +0 -5
  710. package/dist/nano-components/p-447a5910.entry.js.map +0 -1
  711. package/dist/nano-components/p-4b69178e.entry.js +0 -5
  712. package/dist/nano-components/p-4b69178e.entry.js.map +0 -1
  713. package/dist/nano-components/p-559a6492.entry.js +0 -5
  714. package/dist/nano-components/p-559a6492.entry.js.map +0 -1
  715. package/dist/nano-components/p-5d149792.entry.js +0 -5
  716. package/dist/nano-components/p-5d149792.entry.js.map +0 -1
  717. package/dist/nano-components/p-63834d50.js.map +0 -1
  718. package/dist/nano-components/p-651b3264.js.map +0 -1
  719. package/dist/nano-components/p-69e5a37d.entry.js.map +0 -1
  720. package/dist/nano-components/p-6ad194e4.entry.js +0 -5
  721. package/dist/nano-components/p-6ad194e4.entry.js.map +0 -1
  722. package/dist/nano-components/p-6cb77d5c.entry.js +0 -5
  723. package/dist/nano-components/p-6cb77d5c.entry.js.map +0 -1
  724. package/dist/nano-components/p-73860775.js +0 -5
  725. package/dist/nano-components/p-73860775.js.map +0 -1
  726. package/dist/nano-components/p-77cad8d1.js +0 -5
  727. package/dist/nano-components/p-77cad8d1.js.map +0 -1
  728. package/dist/nano-components/p-793588d1.js +0 -5
  729. package/dist/nano-components/p-793588d1.js.map +0 -1
  730. package/dist/nano-components/p-7b3638b7.js +0 -5
  731. package/dist/nano-components/p-7b3638b7.js.map +0 -1
  732. package/dist/nano-components/p-845ae77e.js +0 -5
  733. package/dist/nano-components/p-845ae77e.js.map +0 -1
  734. package/dist/nano-components/p-885b6950.js.map +0 -1
  735. package/dist/nano-components/p-8d747891.js +0 -5
  736. package/dist/nano-components/p-8d747891.js.map +0 -1
  737. package/dist/nano-components/p-9059c8c1.entry.js +0 -5
  738. package/dist/nano-components/p-9059c8c1.entry.js.map +0 -1
  739. package/dist/nano-components/p-92504f7f.entry.js +0 -5
  740. package/dist/nano-components/p-92504f7f.entry.js.map +0 -1
  741. package/dist/nano-components/p-99fbae74.entry.js +0 -5
  742. package/dist/nano-components/p-99fbae74.entry.js.map +0 -1
  743. package/dist/nano-components/p-9a4297e1.entry.js +0 -5
  744. package/dist/nano-components/p-9a4297e1.entry.js.map +0 -1
  745. package/dist/nano-components/p-9eeed8f5.entry.js +0 -5
  746. package/dist/nano-components/p-9eeed8f5.entry.js.map +0 -1
  747. package/dist/nano-components/p-a0b93616.js.map +0 -1
  748. package/dist/nano-components/p-a183e3c7.entry.js +0 -5
  749. package/dist/nano-components/p-a183e3c7.entry.js.map +0 -1
  750. package/dist/nano-components/p-a2d0d7b9.entry.js.map +0 -1
  751. package/dist/nano-components/p-a5abfed9.entry.js +0 -5
  752. package/dist/nano-components/p-a5abfed9.entry.js.map +0 -1
  753. package/dist/nano-components/p-b25e79b8.entry.js +0 -5
  754. package/dist/nano-components/p-b25e79b8.entry.js.map +0 -1
  755. package/dist/nano-components/p-b40eedcb.entry.js.map +0 -1
  756. package/dist/nano-components/p-b55ffa92.entry.js +0 -5
  757. package/dist/nano-components/p-b55ffa92.entry.js.map +0 -1
  758. package/dist/nano-components/p-b87539f0.entry.js +0 -5
  759. package/dist/nano-components/p-b87539f0.entry.js.map +0 -1
  760. package/dist/nano-components/p-c9a7c7ea.js.map +0 -1
  761. package/dist/nano-components/p-ca567f01.entry.js +0 -5
  762. package/dist/nano-components/p-ca567f01.entry.js.map +0 -1
  763. package/dist/nano-components/p-cc5e7acb.entry.js +0 -5
  764. package/dist/nano-components/p-cc5e7acb.entry.js.map +0 -1
  765. package/dist/nano-components/p-d5303933.entry.js +0 -5
  766. package/dist/nano-components/p-d5303933.entry.js.map +0 -1
  767. package/dist/nano-components/p-d565991d.entry.js +0 -5
  768. package/dist/nano-components/p-d565991d.entry.js.map +0 -1
  769. package/dist/nano-components/p-dba8a88d.entry.js.map +0 -1
  770. package/dist/nano-components/p-dc50b93c.entry.js +0 -5
  771. package/dist/nano-components/p-dc50b93c.entry.js.map +0 -1
  772. package/dist/nano-components/p-e3860f00.js +0 -5
  773. package/dist/nano-components/p-e3860f00.js.map +0 -1
  774. package/dist/nano-components/p-e5408bc8.entry.js +0 -5
  775. package/dist/nano-components/p-e5408bc8.entry.js.map +0 -1
  776. package/dist/nano-components/p-ea2de992.js +0 -19
  777. package/dist/nano-components/p-ea2de992.js.map +0 -1
  778. package/dist/nano-components/p-f7471cca.entry.js +0 -5
  779. package/dist/nano-components/p-f7471cca.entry.js.map +0 -1
  780. package/dist/nano-components/p-fe94eeff.entry.js +0 -5
  781. package/dist/nano-components/p-fe94eeff.entry.js.map +0 -1
@@ -5,7 +5,7 @@
5
5
  * It contains typing information for all components that exist in this project.
6
6
  */
7
7
  import { HTMLStencilElement, JSXBase } from "./stencil-public-runtime";
8
- import { AlgoliaNetworkError, AloliaSearchResultDetail, CheckboxChangeEventDetail, Color, ControlValidity, ControlValidityEventDetail, DateDisabledPredicate, DateInputChangeEventDetail, DragEvent, DuetLocalizedText, FileInputChangeEventDetail, FileWithUrl, FilterChangeEventDetail, Flickity, FlickityOptions, GridSizes, IndexResult, InputChangeEventDetail, LocalDateOpts, MyAccountUser, NanoFormEles, NavItemEventDetail, OptionInterface, PageChangeEventDetail, PickerChangeEvent, PlainFormEles, RangeChangeEventDetail, RangeValue, ResizeStateChangeEventDetail, SearchIndex, SelectChangeEventDetail, SlideAnimation, StyleEventDetail, TableTypes, TextFieldTypes, ValidationState, ValidatorValueStore } from "./interface";
8
+ import { AlgoliaNetworkError, AloliaSearchResultDetail, CheckboxChangeEventDetail, Color, ControlValidity, ControlValidityEventDetail, DateDisabledPredicate, DateInputChangeEventDetail, DragEvent, DuetLocalizedText, FileInputChangeEventDetail, FileWithUrl, FilterChangeEventDetail, Flickity, FlickityOptions, GridSizes, IndexResult, InputChangeEventDetail, LocalDateOpts, MyAccountData, MyAccountUser, NanoFormEles, NavItemEventDetail, OptionInterface, PageChangeEventDetail, PickerChangeEvent, PlainFormEles, RangeChangeEventDetail, RangeValue, ResizeStateChangeEventDetail, SearchIndex, SelectChangeEventDetail, SlideAnimation, StyleEventDetail, TableTypes, TextFieldTypes, ValidationState, ValidatorValueStore } from "./interface";
9
9
  import { StorageMethods } from "./utils/store/component-store";
10
10
  import { DaysOfWeek } from "./utils/date-utils";
11
11
  import { PopoverPlacement } from "./utils/popover";
@@ -15,12 +15,18 @@ import { MyAccountUser as MyAccountUser1 } from "./components/global-nav/global-
15
15
  import { OptionInterface as OptionInterface1 } from "./components/option/option-interface";
16
16
  import { Dropdown } from "./components/dropdown/dropdown";
17
17
  export namespace Components {
18
+ /**
19
+ * Simple accordion - only one item open at a time - must be used with [details](story/components-accordion--details) elements.
20
+ */
18
21
  interface NanoAccordion {
19
22
  /**
20
23
  * Color to use from the color palette.
21
24
  */
22
25
  "color"?: Color;
23
26
  }
27
+ /**
28
+ * Alerts are used to display important messages either inline, as toast notifications or as modals requiring action.
29
+ */
24
30
  interface NanoAlert {
25
31
  /**
26
32
  * Displays the alert as a dialog / modal - more akin to a traditional js alert().
@@ -58,6 +64,10 @@ export namespace Components {
58
64
  */
59
65
  "toast": (position?: 'tr' | 'tl' | 'bl' | 'br') => Promise<void>;
60
66
  }
67
+ /**
68
+ * Algolia search container to contain and sync nano-algolia-results and nano-algolia-filter components.
69
+ * Can optionally contain nano-algolia-input components or use them as a 'resultsEmitter'
70
+ */
61
71
  interface NanoAlgolia {
62
72
  /**
63
73
  * An Algolia API Key. Used in conjunction with 'searchIndex' & 'appId'.
@@ -88,7 +98,7 @@ export namespace Components {
88
98
  */
89
99
  "operator": 'or' | 'and';
90
100
  /**
91
- * The query string used to search the index. Will automtically be set with any slotted `search-input` input elements or from elements linked to from `listen-to`
101
+ * The query string used to search the index. Will automatically be set with any slotted `search-input` input elements or from elements linked to from `listen-to`
92
102
  */
93
103
  "query": string;
94
104
  /**
@@ -133,6 +143,10 @@ export namespace Components {
133
143
  */
134
144
  "tplRenderFn": (...args: any[]) => string;
135
145
  }
146
+ /**
147
+ * Displays and syncs algolia filters
148
+ * Must be nested within an nano-algolia component.
149
+ */
136
150
  interface NanoAlgoliaFilter {
137
151
  /**
138
152
  * Name of this filter - must match an appropriate algolia facet on a parent nano-algolia index to display
@@ -155,6 +169,11 @@ export namespace Components {
155
169
  */
156
170
  "value": string | Array<string>;
157
171
  }
172
+ /**
173
+ * @deprecated Component for querying Algolia Indeces.
174
+ * Can be nested within an algolia element or used outside as a 'resultsEmitter' (see algolia component documentation)
175
+ * Must include one 'nano-input' component
176
+ */
158
177
  interface NanoAlgoliaInput {
159
178
  /**
160
179
  * An Algolia API Key. Used in conjunction with 'searchIndex' & 'appId'. Alternatively this will be set automatically when nested within an algolia component
@@ -197,6 +216,10 @@ export namespace Components {
197
216
  */
198
217
  "storeMethod": StorageMethods;
199
218
  }
219
+ /**
220
+ * Displays results from Algolia searches.
221
+ * TODO / WIP
222
+ */
200
223
  interface NanoAlgoliaPagination {
201
224
  /**
202
225
  * Go to a particular page
@@ -215,6 +238,10 @@ export namespace Components {
215
238
  */
216
239
  "prevPage": () => Promise<void>;
217
240
  }
241
+ /**
242
+ * Displays and syncs results from Algolia searches.
243
+ * Must be nested within an nano-algolia component.
244
+ */
218
245
  interface NanoAlgoliaResults {
219
246
  /**
220
247
  * Whether new pages loaded by pagination will replace or be appended to the results block (this will be ignored if 'infiniteScroll' is set to true)
@@ -225,6 +252,12 @@ export namespace Components {
225
252
  */
226
253
  "infiniteScroll": boolean;
227
254
  }
255
+ /**
256
+ * Displays media in the desired aspect ratio.
257
+ * You can slot in any replaced element, including `<iframe>`, `<img>`, and `<video>`.
258
+ * As the element's width changes, its height will resize proportionally. Only one element should be slotted into the container.
259
+ * The default aspect ratio is 16:9.
260
+ */
228
261
  interface NanoAspectRatio {
229
262
  /**
230
263
  * The aspect ratio of the embedded media in the format of `width:height`, e.g. `16:9`, `4:3`, or `1:1`. Ratios not in this format will be ignored.
@@ -235,6 +268,11 @@ export namespace Components {
235
268
  */
236
269
  "fit": 'cover' | 'contain';
237
270
  }
271
+ /**
272
+ * `nano-checkbox` is used to let a user choose one or more options from a limited number of options.
273
+ * They appear as checked when activated.
274
+ * They can be checked by mouse, keyboard, touch or programmatically by setting the checked property.
275
+ */
238
276
  interface NanoCheckbox {
239
277
  /**
240
278
  * checked property that can be used to get/set the value. accepts only boolean values
@@ -312,6 +350,10 @@ export namespace Components {
312
350
  */
313
351
  "value": string;
314
352
  }
353
+ /**
354
+ * `nano-checkbox-group` is an optional wrapper for all `nano-checkbox` controls.
355
+ * It provides a convenient place to anchor a collective label and any validation issues.
356
+ */
315
357
  interface NanoCheckboxGroup {
316
358
  /**
317
359
  * Disable all the nested form controls
@@ -357,7 +399,17 @@ export namespace Components {
357
399
  * Current validation message - if any. @readonly
358
400
  */
359
401
  "validityMessage": string;
402
+ /**
403
+ * The current, collective checkbox value
404
+ */
405
+ "value": string[] | string;
360
406
  }
407
+ /**
408
+ * `nano-datalist` a visually consistent and more flexible replacement for a native
409
+ * [datalist](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/datalist). Can be nested within a `nano-input`
410
+ * or linked to any input control via the `input` prop. Is used internally within `nano-select`.
411
+ * Options can be defined declaratively by nesting `<nano-option>` elements or imperatively using the `options` prop
412
+ */
361
413
  interface NanoDatalist {
362
414
  /**
363
415
  * return all the active options currently within the datalist. Can be useful for validation
@@ -396,6 +448,9 @@ export namespace Components {
396
448
  */
397
449
  "type": 'select' | 'selctMulti' | 'input';
398
450
  }
451
+ /**
452
+ * The date-input component combines `nano-dropdown`, `nano-input` and `nano-date-picker` components to make a fully featured date form field. It has specific options for localisation, date formatting and validation.
453
+ */
399
454
  interface NanoDateInput {
400
455
  /**
401
456
  * This Boolean attribute lets you specify that a form control should have input focus when the page loads.
@@ -545,6 +600,10 @@ export namespace Components {
545
600
  */
546
601
  "value": string;
547
602
  }
603
+ /**
604
+ * A highly performant, small and accessible date-picker.
605
+ * Customised from [Duet date-picker](https://duetds.github.io/date-picker/).
606
+ */
548
607
  interface NanoDatePicker {
549
608
  /**
550
609
  * The color to use from the application's color palette.
@@ -611,6 +670,9 @@ export namespace Components {
611
670
  */
612
671
  "open": boolean;
613
672
  }
673
+ /**
674
+ * Dialogs, sometimes called "modals", appear above the page and require the user's immediate attention.
675
+ */
614
676
  interface NanoDialog {
615
677
  /**
616
678
  * Hides the dialog
@@ -657,6 +719,9 @@ export namespace Components {
657
719
  */
658
720
  "storeMethod": StorageMethods;
659
721
  }
722
+ /**
723
+ * WIP / TODO. https://git.oxfordnanolabs.local/Digital/nano-components/-/issues/24
724
+ */
660
725
  interface NanoDrawer {
661
726
  /**
662
727
  * By default, the drawer slides out of its containing block (usually the viewport). To make the drawer slide out of its parent element, set this prop and add `position: relative` to the parent.
@@ -695,6 +760,10 @@ export namespace Components {
695
760
  */
696
761
  "type": 'overlay' | 'reveal' | 'push';
697
762
  }
763
+ /**
764
+ * Dropdowns show additional content in a panel.
765
+ * Designed to work well with nano-menu components to provide a list of options (`nano-nav-items` / `nano-option`).
766
+ */
698
767
  interface NanoDropdown {
699
768
  /**
700
769
  * Determines if the dropdown should open automatically when the trigger is clicked
@@ -746,6 +815,14 @@ export namespace Components {
746
815
  */
747
816
  "tetherTo": HTMLElement;
748
817
  }
818
+ /**
819
+ * A toolbox for `nano-...` form fields and form validation.
820
+ * - Easy to add validation across field dependencies - e.g. "When Field1 contains '123' Field2 must contain '456'"
821
+ * - Easy access to whole form and individual field validity states
822
+ * - Easy access to form data payload
823
+ * = Access to 2-way, data bound reactive store
824
+ * - Scroll to invalid field on submit
825
+ */
749
826
  interface NanoFieldValidator {
750
827
  /**
751
828
  * Returns true if any nested fields have been changed @readonly
@@ -811,6 +888,12 @@ export namespace Components {
811
888
  */
812
889
  "validationState": ValidationState[];
813
890
  }
891
+ /**
892
+ * A better UI experience for `input type="file"` form controls.
893
+ * - Drag and Drop
894
+ * - Validation options
895
+ * - Preview and manage multiple files
896
+ */
814
897
  interface NanoFileUpload {
815
898
  /**
816
899
  * The accept attribute value is a string that defines the file types the file input should accept. E.g. for a MS Word file: `.doc, .docx,application/msword, application/vnd.openxmlformats-officedocument.wordprocessingml.document`
@@ -900,10 +983,15 @@ export namespace Components {
900
983
  */
901
984
  "validityMessage": string;
902
985
  /**
903
- * A file input's value attribute contains a DOMString that represents the path to the selected file(s). If the user selected multiple files, the value represents the first file in the list of files they selected. You can reset the file-upload control by setting the value to an emptry string e.g. `var input.value = ''`
986
+ * A file input's value attribute contains a DOMString that represents the path to the selected file(s). If the user selected multiple files, the value represents the first file in the list of files they selected. You can reset the file-upload control by setting the value to an empty string e.g. `var input.value = ''`
904
987
  */
905
988
  "value": string;
906
989
  }
990
+ /**
991
+ * Nanopore digital global navigation and search bar.
992
+ * Incorporates MyAccount / SSO states (messages / cart / user name etc).
993
+ * Incorporates Algolia search.
994
+ */
907
995
  interface NanoGlobalNav {
908
996
  /**
909
997
  * Active MyAccount link sections. By default all will show.
@@ -942,6 +1030,10 @@ export namespace Components {
942
1030
  * Url to the Nanopore message center. Will default to the url supplied by MyAccount
943
1031
  */
944
1032
  "msgUrl": string;
1033
+ /**
1034
+ * An alternative to both 'env' and 'ssoDataUrl'. You can directly provide a JSON object of myaccount data. (e.g. https://myaccount.nanoporetech.com/nav_bar_data.json) This is useful for SSR
1035
+ */
1036
+ "myAccountData": MyAccountData | null;
945
1037
  /**
946
1038
  * Logged in user details automatically populated from MyAccount
947
1039
  */
@@ -959,11 +1051,11 @@ export namespace Components {
959
1051
  */
960
1052
  "searchIndeces": Array<SearchIndex>;
961
1053
  /**
962
- * Algolia search index to programatically set or to set an initial index
1054
+ * Algolia search index to programmatically set or to set an initial index
963
1055
  */
964
1056
  "searchIndex": string;
965
1057
  /**
966
- * A search value to passed to Algolia to programatically get or to preload search results
1058
+ * A search value to passed to Algolia to programmatically get or to preload search results
967
1059
  */
968
1060
  "searchValue": string;
969
1061
  /**
@@ -987,6 +1079,9 @@ export namespace Components {
987
1079
  */
988
1080
  "submitSearch": () => Promise<void>;
989
1081
  }
1082
+ /**
1083
+ * Nanopore digital global navigation user profile.
1084
+ */
990
1085
  interface NanoGlobalNavUserProfile {
991
1086
  /**
992
1087
  * Logged in user details automatically populated from MyAccount
@@ -997,8 +1092,19 @@ export namespace Components {
997
1092
  */
998
1093
  "userProfileUrl": string;
999
1094
  }
1095
+ /**
1096
+ * Nanopore Global Search results component
1097
+ * to be used in conjunction with [Globla-Nav](/story/nano-compounds-global-nav).
1098
+ * A shortcut / helper which combines algolia components.
1099
+ * There should only be one <nano-global-search-results> per page
1100
+ * and should be a direct child of <nano-global-nav>
1101
+ */
1000
1102
  interface NanoGlobalSearchResults {
1001
1103
  }
1104
+ /**
1105
+ * A context-aware CSS grid implementation.
1106
+ * Uses it's own width to choose column number - not screen width.
1107
+ */
1002
1108
  interface NanoGrid {
1003
1109
  /**
1004
1110
  * shortcut for a traditional website like grid (requires more than one row). The second row will auto expand to fill the grid height. The first row and > 2nd row will be the size of their content. e.g. header, body and footer.
@@ -1049,6 +1155,9 @@ export namespace Components {
1049
1155
  */
1050
1156
  "xxlCols": number;
1051
1157
  }
1158
+ /**
1159
+ * Grid items to be used with [grid](/story/nano-components-grid) elements
1160
+ */
1052
1161
  interface NanoGridItem {
1053
1162
  /**
1054
1163
  * Called by parent grid to trigger new classes
@@ -1059,6 +1168,9 @@ export namespace Components {
1059
1168
  */
1060
1169
  "gridStates": string;
1061
1170
  }
1171
+ /**
1172
+ * Hero components are designed to be used once per content page to add visual impact to the introductory section of a page.
1173
+ */
1062
1174
  interface NanoHero {
1063
1175
  /**
1064
1176
  * src for backgronund image. For more control use the `background` slot instead.
@@ -1081,6 +1193,9 @@ export namespace Components {
1081
1193
  */
1082
1194
  "theme": 'dark' | 'light';
1083
1195
  }
1196
+ /**
1197
+ * An SVG loader / helper. Comes bundled with all fontawesome pro icons by default but can use any custom SVG (with an correct path). Lazily loads SVG for each icon, so will only request the icons that you're using and that are visible.
1198
+ */
1084
1199
  interface NanoIcon {
1085
1200
  /**
1086
1201
  * Specifies the label to use for accessibility. Defaults to the icon name.
@@ -1115,6 +1230,9 @@ export namespace Components {
1115
1230
  */
1116
1231
  "src"?: string;
1117
1232
  }
1233
+ /**
1234
+ * Icons buttons are simple, icon-only buttons that can be used for actions and in toolbars.
1235
+ */
1118
1236
  interface NanoIconButton {
1119
1237
  /**
1120
1238
  * Set to true to disable the button.
@@ -1157,6 +1275,9 @@ export namespace Components {
1157
1275
  */
1158
1276
  "value"?: string;
1159
1277
  }
1278
+ /**
1279
+ * Img with benefits. Lazy loading. Simple `srcSet` solution for both `<img>` and `background-image` varieties.
1280
+ */
1160
1281
  interface NanoImg {
1161
1282
  /**
1162
1283
  * This attribute defines the alternative text describing the image. Users will see this text displayed if the image URL is wrong, or if the image is not yet downloaded.
@@ -1183,6 +1304,11 @@ export namespace Components {
1183
1304
  */
1184
1305
  "srcSet"?: string;
1185
1306
  }
1307
+ /**
1308
+ * The input component is a wrapper to the HTML input element with custom styling and additional functionality. It accepts most of the same properties as the HTML [input](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input).
1309
+ * It is meant for text type inputs only, such as "text", "password", "email", "number", "search", "tel", and "url". It supports all standard text input events including keyup, keydown, keypress, and more.
1310
+ * The default styling reference comes from the [ONT styleguide](https://nanoporetech.zeroheight.com/styleguide/s/31282/p/230c74-text-input--textarea/b/942ee4)
1311
+ */
1186
1312
  interface NanoInput {
1187
1313
  /**
1188
1314
  * If the value of the type attribute is `"file"`, then this attribute will indicate the types of files that the server accepts, otherwise it will be ignored. The value must be a comma-separated list of unique content type specifiers.
@@ -1362,6 +1488,10 @@ export namespace Components {
1362
1488
  */
1363
1489
  "value"?: string | null;
1364
1490
  }
1491
+ /**
1492
+ * Menu element. Commonly wrapped by `nano-dropdown` with `nano-option` and `nano-nav-item` elements nested.
1493
+ * Manages focus state / active.
1494
+ */
1365
1495
  interface NanoMenu {
1366
1496
  /**
1367
1497
  * get the focus state of the menu @readonly
@@ -1392,6 +1522,12 @@ export namespace Components {
1392
1522
  */
1393
1523
  "type": 'menu' | 'listbox';
1394
1524
  }
1525
+ /**
1526
+ * Menu drawer - digital specific navigation strip designed to be open (default) or closed.
1527
+ * Shows menu item logos only on minimised, expands to show entire menu item.
1528
+ * Used in conjunction with the [Globla-Nav](/story/compounds-global-nav) element -> it should be a direct descendent.
1529
+ * 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.
1530
+ */
1395
1531
  interface NanoMenuDrawer {
1396
1532
  /**
1397
1533
  * Should element hide and move items into the nano-global-nav when items are cut off (this will only work when nano-menu-drawer is displayed at full screen)
@@ -1410,6 +1546,12 @@ export namespace Components {
1410
1546
  */
1411
1547
  "saveState": boolean;
1412
1548
  }
1549
+ /**
1550
+ * Nav items to be used with the various nav items.
1551
+ * [Globla-Nav](/story/compounds-global-nav)
1552
+ * [Menu-Drawer](/story/components-menu-drawer)
1553
+ * [Dropdown](/story/components-dropdown)
1554
+ */
1413
1555
  interface NanoNavItem {
1414
1556
  /**
1415
1557
  * Whether secondary menus should close on blur
@@ -1452,6 +1594,9 @@ export namespace Components {
1452
1594
  */
1453
1595
  "target": '_self' | '_blank' | '_parent' | '_top';
1454
1596
  }
1597
+ /**
1598
+ * Select options to be used with [nano-select](/story/nano-components-select) or [nano-datalist](/story/nano-components-select)
1599
+ */
1455
1600
  interface NanoOption {
1456
1601
  /**
1457
1602
  * Whether this option should be disabled
@@ -1474,6 +1619,9 @@ export namespace Components {
1474
1619
  */
1475
1620
  "value": string;
1476
1621
  }
1622
+ /**
1623
+ * Used to show the status of an ongoing operation.
1624
+ */
1477
1625
  interface NanoProgressBar {
1478
1626
  /**
1479
1627
  * When true, percentage is ignored, the label is hidden, and the progress bar is drawn in an indeterminate state.
@@ -1488,6 +1636,12 @@ export namespace Components {
1488
1636
  */
1489
1637
  "value": number;
1490
1638
  }
1639
+ /**
1640
+ * The Range slider lets users select from a range of values by moving
1641
+ * the slider knob. It can accept dual knobs, but by default one knob controls the value of the range.
1642
+ * Labels can be placed on either side of the range by adding the
1643
+ * `slot="start"` or `slot="end"` to the element.
1644
+ */
1491
1645
  interface NanoRange {
1492
1646
  /**
1493
1647
  * The color to use from your application's color palette. Default options are: `"primary"`, `"secondary"`, `"tertiary"`, `"success"`, `"warning"`, `"danger"`, `"light"`, `"medium"`, and `"dark"`
@@ -1538,6 +1692,9 @@ export namespace Components {
1538
1692
  */
1539
1693
  "value": RangeValue;
1540
1694
  }
1695
+ /**
1696
+ * Rating - a form element to allow the viewing and input of user feedback.
1697
+ */
1541
1698
  interface NanoRating {
1542
1699
  /**
1543
1700
  * Disables the rating.
@@ -1582,6 +1739,12 @@ export namespace Components {
1582
1739
  */
1583
1740
  "value": number;
1584
1741
  }
1742
+ /**
1743
+ * A Resize-Observer utility component.
1744
+ * Takes a string list of sizes and optional class-names.
1745
+ * Adds class-names and fires `nanoResizeStateChange` events when the component reaches those sizes.
1746
+ * Additionally, can fire events when content no-longer fits within the element.
1747
+ */
1585
1748
  interface NanoResizeObserve {
1586
1749
  /**
1587
1750
  * Fire `nanoResizeContentFitChange` events notifying whether content currently fits or does not on the x, y or both axis'. Also makes the `content-fit-...` slots available
@@ -1592,6 +1755,12 @@ export namespace Components {
1592
1755
  */
1593
1756
  "states": string;
1594
1757
  }
1758
+ /**
1759
+ * The select component is a wrapper to the HTML select element with custom styling and additional functionality.
1760
+ * It accepts most of the same properties as the HTML [select](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/select).
1761
+ * It's multi selection functionality is vastly improved from the native solution. It allows for the control of
1762
+ * value order through drag and drop or changing the insertion point with arrow keys. It also can allow for user defined values.
1763
+ */
1595
1764
  interface NanoSelect {
1596
1765
  /**
1597
1766
  * in multiple mode, allow users to enter their own values
@@ -1716,6 +1885,11 @@ export namespace Components {
1716
1885
  */
1717
1886
  "value": string | string[];
1718
1887
  }
1888
+ /**
1889
+ * Skeletons are used to show where content will eventually be drawn.
1890
+ * Simple containers for scaffolding layouts that mimic what users will see when content has finished loading.
1891
+ * Prevents large areas of empty space during asynchronous operations.
1892
+ */
1719
1893
  interface NanoSkeleton {
1720
1894
  /**
1721
1895
  * When `true`, the skeleton will animate.
@@ -1728,6 +1902,11 @@ export namespace Components {
1728
1902
  */
1729
1903
  "ready": boolean | null;
1730
1904
  }
1905
+ /**
1906
+ * The Slides component is a multi-section container. Each section can be swiped or dragged between.
1907
+ * It contains any number of Slide components.
1908
+ * Uses [Flickity](https://flickity.metafizzy.co/) under the hood. A good balance of options, flexibility and IE11 compatibility.
1909
+ */
1731
1910
  interface NanoSlides {
1732
1911
  /**
1733
1912
  * Animation presets.
@@ -1828,6 +2007,9 @@ export namespace Components {
1828
2007
  */
1829
2008
  "updateAutoHeight": (speed?: number) => Promise<void>;
1830
2009
  }
2010
+ /**
2011
+ * Spinners are used to show the progress of an indeterminate operation.
2012
+ */
1831
2013
  interface NanoSpinner {
1832
2014
  /**
1833
2015
  * Displays absolutely with an overlay
@@ -1838,6 +2020,9 @@ export namespace Components {
1838
2020
  */
1839
2021
  "type": 'dna' | 'circle';
1840
2022
  }
2023
+ /**
2024
+ * Split panes display two adjacent panels, allowing the user to reposition them.
2025
+ */
1841
2026
  interface NanoSplitPane {
1842
2027
  /**
1843
2028
  * When changing `position` via property, the pane will animate into position. Make `animationDuration` 0 to disable.
@@ -1880,6 +2065,9 @@ export namespace Components {
1880
2065
  */
1881
2066
  "vertical": boolean;
1882
2067
  }
2068
+ /**
2069
+ * The Sticker component is a toolbox for 'sticking' items to scrolling containers.
2070
+ */
1883
2071
  interface NanoSticker {
1884
2072
  /**
1885
2073
  * Only applicable to root stickers. When applied the sticker will grow or shrink to the scrollParent size
@@ -1971,6 +2159,12 @@ export namespace Components {
1971
2159
  */
1972
2160
  "name": string;
1973
2161
  }
2162
+ /**
2163
+ * A tradtional tab implementation. It nests `nano-tab` and `nano-tab-content` sub-components.
2164
+ * Tabs can be stacked vertically or horizontally (which presents different styling variations) using the `placement` attribute.
2165
+ * Horizonal tabs that don't fit will overflow and scroll appropriately.
2166
+ * Tab-content can also be swiped to change tabs.
2167
+ */
1974
2168
  interface NanoTabGroup {
1975
2169
  /**
1976
2170
  * The color to use from the application's color palette.
@@ -2001,6 +2195,17 @@ export namespace Components {
2001
2195
  */
2002
2196
  "storeMethod": StorageMethods;
2003
2197
  }
2198
+ /**
2199
+ * A performant, accessible and semantic (uses real html `<table />`, `<tr />` etc) table and data-grid solution.
2200
+ * - Built-in search
2201
+ * - Built-in column filter
2202
+ * - Built-in column sort
2203
+ * - Easily swap in API / async based search / filter & sort
2204
+ * - Pin headers, footers, rows, columns
2205
+ * - Drag-&-Drop columns to re-order
2206
+ * - Add custom rendering at every level
2207
+ * - Add custom properties at every level
2208
+ */
2004
2209
  interface NanoTable {
2005
2210
  /**
2006
2211
  * Apply a filter on a column
@@ -2119,6 +2324,9 @@ export namespace Components {
2119
2324
  */
2120
2325
  "virtualTotalItems": number;
2121
2326
  }
2327
+ /**
2328
+ * Tooltips display additional information based on a specific action.
2329
+ */
2122
2330
  interface NanoTooltip {
2123
2331
  /**
2124
2332
  * The tooltip's content. Alternatively, you can use the content slot.
@@ -2326,78 +2534,133 @@ export interface NanoTooltipCustomEvent<T> extends CustomEvent<T> {
2326
2534
  target: HTMLNanoTooltipElement;
2327
2535
  }
2328
2536
  declare global {
2537
+ /**
2538
+ * Simple accordion - only one item open at a time - must be used with [details](story/components-accordion--details) elements.
2539
+ */
2329
2540
  interface HTMLNanoAccordionElement extends Components.NanoAccordion, HTMLStencilElement {
2330
2541
  }
2331
2542
  var HTMLNanoAccordionElement: {
2332
2543
  prototype: HTMLNanoAccordionElement;
2333
2544
  new (): HTMLNanoAccordionElement;
2334
2545
  };
2546
+ /**
2547
+ * Alerts are used to display important messages either inline, as toast notifications or as modals requiring action.
2548
+ */
2335
2549
  interface HTMLNanoAlertElement extends Components.NanoAlert, HTMLStencilElement {
2336
2550
  }
2337
2551
  var HTMLNanoAlertElement: {
2338
2552
  prototype: HTMLNanoAlertElement;
2339
2553
  new (): HTMLNanoAlertElement;
2340
2554
  };
2555
+ /**
2556
+ * Algolia search container to contain and sync nano-algolia-results and nano-algolia-filter components.
2557
+ * Can optionally contain nano-algolia-input components or use them as a 'resultsEmitter'
2558
+ */
2341
2559
  interface HTMLNanoAlgoliaElement extends Components.NanoAlgolia, HTMLStencilElement {
2342
2560
  }
2343
2561
  var HTMLNanoAlgoliaElement: {
2344
2562
  prototype: HTMLNanoAlgoliaElement;
2345
2563
  new (): HTMLNanoAlgoliaElement;
2346
2564
  };
2565
+ /**
2566
+ * Displays and syncs algolia filters
2567
+ * Must be nested within an nano-algolia component.
2568
+ */
2347
2569
  interface HTMLNanoAlgoliaFilterElement extends Components.NanoAlgoliaFilter, HTMLStencilElement {
2348
2570
  }
2349
2571
  var HTMLNanoAlgoliaFilterElement: {
2350
2572
  prototype: HTMLNanoAlgoliaFilterElement;
2351
2573
  new (): HTMLNanoAlgoliaFilterElement;
2352
2574
  };
2575
+ /**
2576
+ * @deprecated Component for querying Algolia Indeces.
2577
+ * Can be nested within an algolia element or used outside as a 'resultsEmitter' (see algolia component documentation)
2578
+ * Must include one 'nano-input' component
2579
+ */
2353
2580
  interface HTMLNanoAlgoliaInputElement extends Components.NanoAlgoliaInput, HTMLStencilElement {
2354
2581
  }
2355
2582
  var HTMLNanoAlgoliaInputElement: {
2356
2583
  prototype: HTMLNanoAlgoliaInputElement;
2357
2584
  new (): HTMLNanoAlgoliaInputElement;
2358
2585
  };
2586
+ /**
2587
+ * Displays results from Algolia searches.
2588
+ * TODO / WIP
2589
+ */
2359
2590
  interface HTMLNanoAlgoliaPaginationElement extends Components.NanoAlgoliaPagination, HTMLStencilElement {
2360
2591
  }
2361
2592
  var HTMLNanoAlgoliaPaginationElement: {
2362
2593
  prototype: HTMLNanoAlgoliaPaginationElement;
2363
2594
  new (): HTMLNanoAlgoliaPaginationElement;
2364
2595
  };
2596
+ /**
2597
+ * Displays and syncs results from Algolia searches.
2598
+ * Must be nested within an nano-algolia component.
2599
+ */
2365
2600
  interface HTMLNanoAlgoliaResultsElement extends Components.NanoAlgoliaResults, HTMLStencilElement {
2366
2601
  }
2367
2602
  var HTMLNanoAlgoliaResultsElement: {
2368
2603
  prototype: HTMLNanoAlgoliaResultsElement;
2369
2604
  new (): HTMLNanoAlgoliaResultsElement;
2370
2605
  };
2606
+ /**
2607
+ * Displays media in the desired aspect ratio.
2608
+ * You can slot in any replaced element, including `<iframe>`, `<img>`, and `<video>`.
2609
+ * As the element's width changes, its height will resize proportionally. Only one element should be slotted into the container.
2610
+ * The default aspect ratio is 16:9.
2611
+ */
2371
2612
  interface HTMLNanoAspectRatioElement extends Components.NanoAspectRatio, HTMLStencilElement {
2372
2613
  }
2373
2614
  var HTMLNanoAspectRatioElement: {
2374
2615
  prototype: HTMLNanoAspectRatioElement;
2375
2616
  new (): HTMLNanoAspectRatioElement;
2376
2617
  };
2618
+ /**
2619
+ * `nano-checkbox` is used to let a user choose one or more options from a limited number of options.
2620
+ * They appear as checked when activated.
2621
+ * They can be checked by mouse, keyboard, touch or programmatically by setting the checked property.
2622
+ */
2377
2623
  interface HTMLNanoCheckboxElement extends Components.NanoCheckbox, HTMLStencilElement {
2378
2624
  }
2379
2625
  var HTMLNanoCheckboxElement: {
2380
2626
  prototype: HTMLNanoCheckboxElement;
2381
2627
  new (): HTMLNanoCheckboxElement;
2382
2628
  };
2629
+ /**
2630
+ * `nano-checkbox-group` is an optional wrapper for all `nano-checkbox` controls.
2631
+ * It provides a convenient place to anchor a collective label and any validation issues.
2632
+ */
2383
2633
  interface HTMLNanoCheckboxGroupElement extends Components.NanoCheckboxGroup, HTMLStencilElement {
2384
2634
  }
2385
2635
  var HTMLNanoCheckboxGroupElement: {
2386
2636
  prototype: HTMLNanoCheckboxGroupElement;
2387
2637
  new (): HTMLNanoCheckboxGroupElement;
2388
2638
  };
2639
+ /**
2640
+ * `nano-datalist` a visually consistent and more flexible replacement for a native
2641
+ * [datalist](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/datalist). Can be nested within a `nano-input`
2642
+ * or linked to any input control via the `input` prop. Is used internally within `nano-select`.
2643
+ * Options can be defined declaratively by nesting `<nano-option>` elements or imperatively using the `options` prop
2644
+ */
2389
2645
  interface HTMLNanoDatalistElement extends Components.NanoDatalist, HTMLStencilElement {
2390
2646
  }
2391
2647
  var HTMLNanoDatalistElement: {
2392
2648
  prototype: HTMLNanoDatalistElement;
2393
2649
  new (): HTMLNanoDatalistElement;
2394
2650
  };
2651
+ /**
2652
+ * The date-input component combines `nano-dropdown`, `nano-input` and `nano-date-picker` components to make a fully featured date form field. It has specific options for localisation, date formatting and validation.
2653
+ */
2395
2654
  interface HTMLNanoDateInputElement extends Components.NanoDateInput, HTMLStencilElement {
2396
2655
  }
2397
2656
  var HTMLNanoDateInputElement: {
2398
2657
  prototype: HTMLNanoDateInputElement;
2399
2658
  new (): HTMLNanoDateInputElement;
2400
2659
  };
2660
+ /**
2661
+ * A highly performant, small and accessible date-picker.
2662
+ * Customised from [Duet date-picker](https://duetds.github.io/date-picker/).
2663
+ */
2401
2664
  interface HTMLNanoDatePickerElement extends Components.NanoDatePicker, HTMLStencilElement {
2402
2665
  }
2403
2666
  var HTMLNanoDatePickerElement: {
@@ -2416,150 +2679,261 @@ declare global {
2416
2679
  prototype: HTMLNanoDetailsElement;
2417
2680
  new (): HTMLNanoDetailsElement;
2418
2681
  };
2682
+ /**
2683
+ * Dialogs, sometimes called "modals", appear above the page and require the user's immediate attention.
2684
+ */
2419
2685
  interface HTMLNanoDialogElement extends Components.NanoDialog, HTMLStencilElement {
2420
2686
  }
2421
2687
  var HTMLNanoDialogElement: {
2422
2688
  prototype: HTMLNanoDialogElement;
2423
2689
  new (): HTMLNanoDialogElement;
2424
2690
  };
2691
+ /**
2692
+ * WIP / TODO. https://git.oxfordnanolabs.local/Digital/nano-components/-/issues/24
2693
+ */
2425
2694
  interface HTMLNanoDrawerElement extends Components.NanoDrawer, HTMLStencilElement {
2426
2695
  }
2427
2696
  var HTMLNanoDrawerElement: {
2428
2697
  prototype: HTMLNanoDrawerElement;
2429
2698
  new (): HTMLNanoDrawerElement;
2430
2699
  };
2700
+ /**
2701
+ * Dropdowns show additional content in a panel.
2702
+ * Designed to work well with nano-menu components to provide a list of options (`nano-nav-items` / `nano-option`).
2703
+ */
2431
2704
  interface HTMLNanoDropdownElement extends Components.NanoDropdown, HTMLStencilElement {
2432
2705
  }
2433
2706
  var HTMLNanoDropdownElement: {
2434
2707
  prototype: HTMLNanoDropdownElement;
2435
2708
  new (): HTMLNanoDropdownElement;
2436
2709
  };
2710
+ /**
2711
+ * A toolbox for `nano-...` form fields and form validation.
2712
+ * - Easy to add validation across field dependencies - e.g. "When Field1 contains '123' Field2 must contain '456'"
2713
+ * - Easy access to whole form and individual field validity states
2714
+ * - Easy access to form data payload
2715
+ * = Access to 2-way, data bound reactive store
2716
+ * - Scroll to invalid field on submit
2717
+ */
2437
2718
  interface HTMLNanoFieldValidatorElement extends Components.NanoFieldValidator, HTMLStencilElement {
2438
2719
  }
2439
2720
  var HTMLNanoFieldValidatorElement: {
2440
2721
  prototype: HTMLNanoFieldValidatorElement;
2441
2722
  new (): HTMLNanoFieldValidatorElement;
2442
2723
  };
2724
+ /**
2725
+ * A better UI experience for `input type="file"` form controls.
2726
+ * - Drag and Drop
2727
+ * - Validation options
2728
+ * - Preview and manage multiple files
2729
+ */
2443
2730
  interface HTMLNanoFileUploadElement extends Components.NanoFileUpload, HTMLStencilElement {
2444
2731
  }
2445
2732
  var HTMLNanoFileUploadElement: {
2446
2733
  prototype: HTMLNanoFileUploadElement;
2447
2734
  new (): HTMLNanoFileUploadElement;
2448
2735
  };
2736
+ /**
2737
+ * Nanopore digital global navigation and search bar.
2738
+ * Incorporates MyAccount / SSO states (messages / cart / user name etc).
2739
+ * Incorporates Algolia search.
2740
+ */
2449
2741
  interface HTMLNanoGlobalNavElement extends Components.NanoGlobalNav, HTMLStencilElement {
2450
2742
  }
2451
2743
  var HTMLNanoGlobalNavElement: {
2452
2744
  prototype: HTMLNanoGlobalNavElement;
2453
2745
  new (): HTMLNanoGlobalNavElement;
2454
2746
  };
2747
+ /**
2748
+ * Nanopore digital global navigation user profile.
2749
+ */
2455
2750
  interface HTMLNanoGlobalNavUserProfileElement extends Components.NanoGlobalNavUserProfile, HTMLStencilElement {
2456
2751
  }
2457
2752
  var HTMLNanoGlobalNavUserProfileElement: {
2458
2753
  prototype: HTMLNanoGlobalNavUserProfileElement;
2459
2754
  new (): HTMLNanoGlobalNavUserProfileElement;
2460
2755
  };
2756
+ /**
2757
+ * Nanopore Global Search results component
2758
+ * to be used in conjunction with [Globla-Nav](/story/nano-compounds-global-nav).
2759
+ * A shortcut / helper which combines algolia components.
2760
+ * There should only be one <nano-global-search-results> per page
2761
+ * and should be a direct child of <nano-global-nav>
2762
+ */
2461
2763
  interface HTMLNanoGlobalSearchResultsElement extends Components.NanoGlobalSearchResults, HTMLStencilElement {
2462
2764
  }
2463
2765
  var HTMLNanoGlobalSearchResultsElement: {
2464
2766
  prototype: HTMLNanoGlobalSearchResultsElement;
2465
2767
  new (): HTMLNanoGlobalSearchResultsElement;
2466
2768
  };
2769
+ /**
2770
+ * A context-aware CSS grid implementation.
2771
+ * Uses it's own width to choose column number - not screen width.
2772
+ */
2467
2773
  interface HTMLNanoGridElement extends Components.NanoGrid, HTMLStencilElement {
2468
2774
  }
2469
2775
  var HTMLNanoGridElement: {
2470
2776
  prototype: HTMLNanoGridElement;
2471
2777
  new (): HTMLNanoGridElement;
2472
2778
  };
2779
+ /**
2780
+ * Grid items to be used with [grid](/story/nano-components-grid) elements
2781
+ */
2473
2782
  interface HTMLNanoGridItemElement extends Components.NanoGridItem, HTMLStencilElement {
2474
2783
  }
2475
2784
  var HTMLNanoGridItemElement: {
2476
2785
  prototype: HTMLNanoGridItemElement;
2477
2786
  new (): HTMLNanoGridItemElement;
2478
2787
  };
2788
+ /**
2789
+ * Hero components are designed to be used once per content page to add visual impact to the introductory section of a page.
2790
+ */
2479
2791
  interface HTMLNanoHeroElement extends Components.NanoHero, HTMLStencilElement {
2480
2792
  }
2481
2793
  var HTMLNanoHeroElement: {
2482
2794
  prototype: HTMLNanoHeroElement;
2483
2795
  new (): HTMLNanoHeroElement;
2484
2796
  };
2797
+ /**
2798
+ * An SVG loader / helper. Comes bundled with all fontawesome pro icons by default but can use any custom SVG (with an correct path). Lazily loads SVG for each icon, so will only request the icons that you're using and that are visible.
2799
+ */
2485
2800
  interface HTMLNanoIconElement extends Components.NanoIcon, HTMLStencilElement {
2486
2801
  }
2487
2802
  var HTMLNanoIconElement: {
2488
2803
  prototype: HTMLNanoIconElement;
2489
2804
  new (): HTMLNanoIconElement;
2490
2805
  };
2806
+ /**
2807
+ * Icons buttons are simple, icon-only buttons that can be used for actions and in toolbars.
2808
+ */
2491
2809
  interface HTMLNanoIconButtonElement extends Components.NanoIconButton, HTMLStencilElement {
2492
2810
  }
2493
2811
  var HTMLNanoIconButtonElement: {
2494
2812
  prototype: HTMLNanoIconButtonElement;
2495
2813
  new (): HTMLNanoIconButtonElement;
2496
2814
  };
2815
+ /**
2816
+ * Img with benefits. Lazy loading. Simple `srcSet` solution for both `<img>` and `background-image` varieties.
2817
+ */
2497
2818
  interface HTMLNanoImgElement extends Components.NanoImg, HTMLStencilElement {
2498
2819
  }
2499
2820
  var HTMLNanoImgElement: {
2500
2821
  prototype: HTMLNanoImgElement;
2501
2822
  new (): HTMLNanoImgElement;
2502
2823
  };
2824
+ /**
2825
+ * The input component is a wrapper to the HTML input element with custom styling and additional functionality. It accepts most of the same properties as the HTML [input](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input).
2826
+ * It is meant for text type inputs only, such as "text", "password", "email", "number", "search", "tel", and "url". It supports all standard text input events including keyup, keydown, keypress, and more.
2827
+ * The default styling reference comes from the [ONT styleguide](https://nanoporetech.zeroheight.com/styleguide/s/31282/p/230c74-text-input--textarea/b/942ee4)
2828
+ */
2503
2829
  interface HTMLNanoInputElement extends Components.NanoInput, HTMLStencilElement {
2504
2830
  }
2505
2831
  var HTMLNanoInputElement: {
2506
2832
  prototype: HTMLNanoInputElement;
2507
2833
  new (): HTMLNanoInputElement;
2508
2834
  };
2835
+ /**
2836
+ * Menu element. Commonly wrapped by `nano-dropdown` with `nano-option` and `nano-nav-item` elements nested.
2837
+ * Manages focus state / active.
2838
+ */
2509
2839
  interface HTMLNanoMenuElement extends Components.NanoMenu, HTMLStencilElement {
2510
2840
  }
2511
2841
  var HTMLNanoMenuElement: {
2512
2842
  prototype: HTMLNanoMenuElement;
2513
2843
  new (): HTMLNanoMenuElement;
2514
2844
  };
2845
+ /**
2846
+ * Menu drawer - digital specific navigation strip designed to be open (default) or closed.
2847
+ * Shows menu item logos only on minimised, expands to show entire menu item.
2848
+ * Used in conjunction with the [Globla-Nav](/story/compounds-global-nav) element -> it should be a direct descendent.
2849
+ * 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.
2850
+ */
2515
2851
  interface HTMLNanoMenuDrawerElement extends Components.NanoMenuDrawer, HTMLStencilElement {
2516
2852
  }
2517
2853
  var HTMLNanoMenuDrawerElement: {
2518
2854
  prototype: HTMLNanoMenuDrawerElement;
2519
2855
  new (): HTMLNanoMenuDrawerElement;
2520
2856
  };
2857
+ /**
2858
+ * Nav items to be used with the various nav items.
2859
+ * [Globla-Nav](/story/compounds-global-nav)
2860
+ * [Menu-Drawer](/story/components-menu-drawer)
2861
+ * [Dropdown](/story/components-dropdown)
2862
+ */
2521
2863
  interface HTMLNanoNavItemElement extends Components.NanoNavItem, HTMLStencilElement {
2522
2864
  }
2523
2865
  var HTMLNanoNavItemElement: {
2524
2866
  prototype: HTMLNanoNavItemElement;
2525
2867
  new (): HTMLNanoNavItemElement;
2526
2868
  };
2869
+ /**
2870
+ * Select options to be used with [nano-select](/story/nano-components-select) or [nano-datalist](/story/nano-components-select)
2871
+ */
2527
2872
  interface HTMLNanoOptionElement extends Components.NanoOption, HTMLStencilElement {
2528
2873
  }
2529
2874
  var HTMLNanoOptionElement: {
2530
2875
  prototype: HTMLNanoOptionElement;
2531
2876
  new (): HTMLNanoOptionElement;
2532
2877
  };
2878
+ /**
2879
+ * Used to show the status of an ongoing operation.
2880
+ */
2533
2881
  interface HTMLNanoProgressBarElement extends Components.NanoProgressBar, HTMLStencilElement {
2534
2882
  }
2535
2883
  var HTMLNanoProgressBarElement: {
2536
2884
  prototype: HTMLNanoProgressBarElement;
2537
2885
  new (): HTMLNanoProgressBarElement;
2538
2886
  };
2887
+ /**
2888
+ * The Range slider lets users select from a range of values by moving
2889
+ * the slider knob. It can accept dual knobs, but by default one knob controls the value of the range.
2890
+ * Labels can be placed on either side of the range by adding the
2891
+ * `slot="start"` or `slot="end"` to the element.
2892
+ */
2539
2893
  interface HTMLNanoRangeElement extends Components.NanoRange, HTMLStencilElement {
2540
2894
  }
2541
2895
  var HTMLNanoRangeElement: {
2542
2896
  prototype: HTMLNanoRangeElement;
2543
2897
  new (): HTMLNanoRangeElement;
2544
2898
  };
2899
+ /**
2900
+ * Rating - a form element to allow the viewing and input of user feedback.
2901
+ */
2545
2902
  interface HTMLNanoRatingElement extends Components.NanoRating, HTMLStencilElement {
2546
2903
  }
2547
2904
  var HTMLNanoRatingElement: {
2548
2905
  prototype: HTMLNanoRatingElement;
2549
2906
  new (): HTMLNanoRatingElement;
2550
2907
  };
2908
+ /**
2909
+ * A Resize-Observer utility component.
2910
+ * Takes a string list of sizes and optional class-names.
2911
+ * Adds class-names and fires `nanoResizeStateChange` events when the component reaches those sizes.
2912
+ * Additionally, can fire events when content no-longer fits within the element.
2913
+ */
2551
2914
  interface HTMLNanoResizeObserveElement extends Components.NanoResizeObserve, HTMLStencilElement {
2552
2915
  }
2553
2916
  var HTMLNanoResizeObserveElement: {
2554
2917
  prototype: HTMLNanoResizeObserveElement;
2555
2918
  new (): HTMLNanoResizeObserveElement;
2556
2919
  };
2920
+ /**
2921
+ * The select component is a wrapper to the HTML select element with custom styling and additional functionality.
2922
+ * It accepts most of the same properties as the HTML [select](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/select).
2923
+ * It's multi selection functionality is vastly improved from the native solution. It allows for the control of
2924
+ * value order through drag and drop or changing the insertion point with arrow keys. It also can allow for user defined values.
2925
+ */
2557
2926
  interface HTMLNanoSelectElement extends Components.NanoSelect, HTMLStencilElement {
2558
2927
  }
2559
2928
  var HTMLNanoSelectElement: {
2560
2929
  prototype: HTMLNanoSelectElement;
2561
2930
  new (): HTMLNanoSelectElement;
2562
2931
  };
2932
+ /**
2933
+ * Skeletons are used to show where content will eventually be drawn.
2934
+ * Simple containers for scaffolding layouts that mimic what users will see when content has finished loading.
2935
+ * Prevents large areas of empty space during asynchronous operations.
2936
+ */
2563
2937
  interface HTMLNanoSkeletonElement extends Components.NanoSkeleton, HTMLStencilElement {
2564
2938
  }
2565
2939
  var HTMLNanoSkeletonElement: {
@@ -2572,24 +2946,38 @@ declare global {
2572
2946
  prototype: HTMLNanoSlideElement;
2573
2947
  new (): HTMLNanoSlideElement;
2574
2948
  };
2949
+ /**
2950
+ * The Slides component is a multi-section container. Each section can be swiped or dragged between.
2951
+ * It contains any number of Slide components.
2952
+ * Uses [Flickity](https://flickity.metafizzy.co/) under the hood. A good balance of options, flexibility and IE11 compatibility.
2953
+ */
2575
2954
  interface HTMLNanoSlidesElement extends Components.NanoSlides, HTMLStencilElement {
2576
2955
  }
2577
2956
  var HTMLNanoSlidesElement: {
2578
2957
  prototype: HTMLNanoSlidesElement;
2579
2958
  new (): HTMLNanoSlidesElement;
2580
2959
  };
2960
+ /**
2961
+ * Spinners are used to show the progress of an indeterminate operation.
2962
+ */
2581
2963
  interface HTMLNanoSpinnerElement extends Components.NanoSpinner, HTMLStencilElement {
2582
2964
  }
2583
2965
  var HTMLNanoSpinnerElement: {
2584
2966
  prototype: HTMLNanoSpinnerElement;
2585
2967
  new (): HTMLNanoSpinnerElement;
2586
2968
  };
2969
+ /**
2970
+ * Split panes display two adjacent panels, allowing the user to reposition them.
2971
+ */
2587
2972
  interface HTMLNanoSplitPaneElement extends Components.NanoSplitPane, HTMLStencilElement {
2588
2973
  }
2589
2974
  var HTMLNanoSplitPaneElement: {
2590
2975
  prototype: HTMLNanoSplitPaneElement;
2591
2976
  new (): HTMLNanoSplitPaneElement;
2592
2977
  };
2978
+ /**
2979
+ * The Sticker component is a toolbox for 'sticking' items to scrolling containers.
2980
+ */
2593
2981
  interface HTMLNanoStickerElement extends Components.NanoSticker, HTMLStencilElement {
2594
2982
  }
2595
2983
  var HTMLNanoStickerElement: {
@@ -2608,18 +2996,38 @@ declare global {
2608
2996
  prototype: HTMLNanoTabContentElement;
2609
2997
  new (): HTMLNanoTabContentElement;
2610
2998
  };
2999
+ /**
3000
+ * A tradtional tab implementation. It nests `nano-tab` and `nano-tab-content` sub-components.
3001
+ * Tabs can be stacked vertically or horizontally (which presents different styling variations) using the `placement` attribute.
3002
+ * Horizonal tabs that don't fit will overflow and scroll appropriately.
3003
+ * Tab-content can also be swiped to change tabs.
3004
+ */
2611
3005
  interface HTMLNanoTabGroupElement extends Components.NanoTabGroup, HTMLStencilElement {
2612
3006
  }
2613
3007
  var HTMLNanoTabGroupElement: {
2614
3008
  prototype: HTMLNanoTabGroupElement;
2615
3009
  new (): HTMLNanoTabGroupElement;
2616
3010
  };
3011
+ /**
3012
+ * A performant, accessible and semantic (uses real html `<table />`, `<tr />` etc) table and data-grid solution.
3013
+ * - Built-in search
3014
+ * - Built-in column filter
3015
+ * - Built-in column sort
3016
+ * - Easily swap in API / async based search / filter & sort
3017
+ * - Pin headers, footers, rows, columns
3018
+ * - Drag-&-Drop columns to re-order
3019
+ * - Add custom rendering at every level
3020
+ * - Add custom properties at every level
3021
+ */
2617
3022
  interface HTMLNanoTableElement extends Components.NanoTable, HTMLStencilElement {
2618
3023
  }
2619
3024
  var HTMLNanoTableElement: {
2620
3025
  prototype: HTMLNanoTableElement;
2621
3026
  new (): HTMLNanoTableElement;
2622
3027
  };
3028
+ /**
3029
+ * Tooltips display additional information based on a specific action.
3030
+ */
2623
3031
  interface HTMLNanoTooltipElement extends Components.NanoTooltip, HTMLStencilElement {
2624
3032
  }
2625
3033
  var HTMLNanoTooltipElement: {
@@ -2680,6 +3088,9 @@ declare global {
2680
3088
  }
2681
3089
  }
2682
3090
  declare namespace LocalJSX {
3091
+ /**
3092
+ * Simple accordion - only one item open at a time - must be used with [details](story/components-accordion--details) elements.
3093
+ */
2683
3094
  interface NanoAccordion {
2684
3095
  /**
2685
3096
  * Color to use from the color palette.
@@ -2690,6 +3101,9 @@ declare namespace LocalJSX {
2690
3101
  */
2691
3102
  "onNanoToggle"?: (event: NanoAccordionCustomEvent<any>) => void;
2692
3103
  }
3104
+ /**
3105
+ * Alerts are used to display important messages either inline, as toast notifications or as modals requiring action.
3106
+ */
2693
3107
  interface NanoAlert {
2694
3108
  /**
2695
3109
  * Set to true to make the alert closable.
@@ -2724,6 +3138,10 @@ declare namespace LocalJSX {
2724
3138
  */
2725
3139
  "open"?: boolean;
2726
3140
  }
3141
+ /**
3142
+ * Algolia search container to contain and sync nano-algolia-results and nano-algolia-filter components.
3143
+ * Can optionally contain nano-algolia-input components or use them as a 'resultsEmitter'
3144
+ */
2727
3145
  interface NanoAlgolia {
2728
3146
  /**
2729
3147
  * An Algolia API Key. Used in conjunction with 'searchIndex' & 'appId'.
@@ -2774,7 +3192,7 @@ declare namespace LocalJSX {
2774
3192
  */
2775
3193
  "operator"?: 'or' | 'and';
2776
3194
  /**
2777
- * The query string used to search the index. Will automtically be set with any slotted `search-input` input elements or from elements linked to from `listen-to`
3195
+ * The query string used to search the index. Will automatically be set with any slotted `search-input` input elements or from elements linked to from `listen-to`
2778
3196
  */
2779
3197
  "query"?: string;
2780
3198
  /**
@@ -2814,6 +3232,10 @@ declare namespace LocalJSX {
2814
3232
  */
2815
3233
  "tplRenderFn"?: (...args: any[]) => string;
2816
3234
  }
3235
+ /**
3236
+ * Displays and syncs algolia filters
3237
+ * Must be nested within an nano-algolia component.
3238
+ */
2817
3239
  interface NanoAlgoliaFilter {
2818
3240
  /**
2819
3241
  * Name of this filter - must match an appropriate algolia facet on a parent nano-algolia index to display
@@ -2844,6 +3266,11 @@ declare namespace LocalJSX {
2844
3266
  */
2845
3267
  "value"?: string | Array<string>;
2846
3268
  }
3269
+ /**
3270
+ * @deprecated Component for querying Algolia Indeces.
3271
+ * Can be nested within an algolia element or used outside as a 'resultsEmitter' (see algolia component documentation)
3272
+ * Must include one 'nano-input' component
3273
+ */
2847
3274
  interface NanoAlgoliaInput {
2848
3275
  /**
2849
3276
  * An Algolia API Key. Used in conjunction with 'searchIndex' & 'appId'. Alternatively this will be set automatically when nested within an algolia component
@@ -2890,6 +3317,10 @@ declare namespace LocalJSX {
2890
3317
  */
2891
3318
  "storeMethod"?: StorageMethods;
2892
3319
  }
3320
+ /**
3321
+ * Displays results from Algolia searches.
3322
+ * TODO / WIP
3323
+ */
2893
3324
  interface NanoAlgoliaPagination {
2894
3325
  /**
2895
3326
  * Max number of page numbers to show
@@ -2900,6 +3331,10 @@ declare namespace LocalJSX {
2900
3331
  */
2901
3332
  "onNanoPageChanged"?: (event: NanoAlgoliaPaginationCustomEvent<{ page: number }>) => void;
2902
3333
  }
3334
+ /**
3335
+ * Displays and syncs results from Algolia searches.
3336
+ * Must be nested within an nano-algolia component.
3337
+ */
2903
3338
  interface NanoAlgoliaResults {
2904
3339
  /**
2905
3340
  * Whether new pages loaded by pagination will replace or be appended to the results block (this will be ignored if 'infiniteScroll' is set to true)
@@ -2918,6 +3353,12 @@ declare namespace LocalJSX {
2918
3353
  */
2919
3354
  "onNanoTplUpdated"?: (event: NanoAlgoliaResultsCustomEvent<HTMLNanoAlgoliaResultsElement>) => void;
2920
3355
  }
3356
+ /**
3357
+ * Displays media in the desired aspect ratio.
3358
+ * You can slot in any replaced element, including `<iframe>`, `<img>`, and `<video>`.
3359
+ * As the element's width changes, its height will resize proportionally. Only one element should be slotted into the container.
3360
+ * The default aspect ratio is 16:9.
3361
+ */
2921
3362
  interface NanoAspectRatio {
2922
3363
  /**
2923
3364
  * The aspect ratio of the embedded media in the format of `width:height`, e.g. `16:9`, `4:3`, or `1:1`. Ratios not in this format will be ignored.
@@ -2928,6 +3369,11 @@ declare namespace LocalJSX {
2928
3369
  */
2929
3370
  "fit"?: 'cover' | 'contain';
2930
3371
  }
3372
+ /**
3373
+ * `nano-checkbox` is used to let a user choose one or more options from a limited number of options.
3374
+ * They appear as checked when activated.
3375
+ * They can be checked by mouse, keyboard, touch or programmatically by setting the checked property.
3376
+ */
2931
3377
  interface NanoCheckbox {
2932
3378
  /**
2933
3379
  * checked property that can be used to get/set the value. accepts only boolean values
@@ -2994,6 +3440,10 @@ declare namespace LocalJSX {
2994
3440
  */
2995
3441
  "value"?: string;
2996
3442
  }
3443
+ /**
3444
+ * `nano-checkbox-group` is an optional wrapper for all `nano-checkbox` controls.
3445
+ * It provides a convenient place to anchor a collective label and any validation issues.
3446
+ */
2997
3447
  interface NanoCheckboxGroup {
2998
3448
  /**
2999
3449
  * Disable all the nested form controls
@@ -3015,6 +3465,10 @@ declare namespace LocalJSX {
3015
3465
  * The minimum number of checkboxes required to be valid. Only relevant for checkbox type controls. A validation error will be thrown if not enough controls are checked.
3016
3466
  */
3017
3467
  "min"?: number;
3468
+ /**
3469
+ * Called when a nested checkbox changes
3470
+ */
3471
+ "onNanoChange"?: (event: NanoCheckboxGroupCustomEvent<string | string[]>) => void;
3018
3472
  /**
3019
3473
  * Called when validation is performed (which depends on `validateOn`).
3020
3474
  * @returns event.detail: `{ isValid: boolean, errorMessage: string, originalEvent: Event }`.
@@ -3032,7 +3486,17 @@ declare namespace LocalJSX {
3032
3486
  * Current validation message - if any. @readonly
3033
3487
  */
3034
3488
  "validityMessage"?: string;
3489
+ /**
3490
+ * The current, collective checkbox value
3491
+ */
3492
+ "value"?: string[] | string;
3035
3493
  }
3494
+ /**
3495
+ * `nano-datalist` a visually consistent and more flexible replacement for a native
3496
+ * [datalist](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/datalist). Can be nested within a `nano-input`
3497
+ * or linked to any input control via the `input` prop. Is used internally within `nano-select`.
3498
+ * Options can be defined declaratively by nesting `<nano-option>` elements or imperatively using the `options` prop
3499
+ */
3036
3500
  interface NanoDatalist {
3037
3501
  /**
3038
3502
  * return all the active options currently within the datalist. Can be useful for validation
@@ -3083,6 +3547,9 @@ declare namespace LocalJSX {
3083
3547
  */
3084
3548
  "type"?: 'select' | 'selctMulti' | 'input';
3085
3549
  }
3550
+ /**
3551
+ * The date-input component combines `nano-dropdown`, `nano-input` and `nano-date-picker` components to make a fully featured date form field. It has specific options for localisation, date formatting and validation.
3552
+ */
3086
3553
  interface NanoDateInput {
3087
3554
  /**
3088
3555
  * This Boolean attribute lets you specify that a form control should have input focus when the page loads.
@@ -3223,6 +3690,10 @@ declare namespace LocalJSX {
3223
3690
  */
3224
3691
  "value"?: string;
3225
3692
  }
3693
+ /**
3694
+ * A highly performant, small and accessible date-picker.
3695
+ * Customised from [Duet date-picker](https://duetds.github.io/date-picker/).
3696
+ */
3226
3697
  interface NanoDatePicker {
3227
3698
  /**
3228
3699
  * The color to use from the application's color palette.
@@ -3294,6 +3765,9 @@ declare namespace LocalJSX {
3294
3765
  */
3295
3766
  "open"?: boolean;
3296
3767
  }
3768
+ /**
3769
+ * Dialogs, sometimes called "modals", appear above the page and require the user's immediate attention.
3770
+ */
3297
3771
  interface NanoDialog {
3298
3772
  /**
3299
3773
  * Relocate the dialog to the root of the DOM. Useful for elements bound via css `transform: ...`
@@ -3356,6 +3830,9 @@ declare namespace LocalJSX {
3356
3830
  */
3357
3831
  "storeMethod"?: StorageMethods;
3358
3832
  }
3833
+ /**
3834
+ * WIP / TODO. https://git.oxfordnanolabs.local/Digital/nano-components/-/issues/24
3835
+ */
3359
3836
  interface NanoDrawer {
3360
3837
  /**
3361
3838
  * By default, the drawer slides out of its containing block (usually the viewport). To make the drawer slide out of its parent element, set this prop and add `position: relative` to the parent.
@@ -3406,6 +3883,10 @@ declare namespace LocalJSX {
3406
3883
  */
3407
3884
  "type"?: 'overlay' | 'reveal' | 'push';
3408
3885
  }
3886
+ /**
3887
+ * Dropdowns show additional content in a panel.
3888
+ * Designed to work well with nano-menu components to provide a list of options (`nano-nav-items` / `nano-option`).
3889
+ */
3409
3890
  interface NanoDropdown {
3410
3891
  /**
3411
3892
  * Determines if the dropdown should open automatically when the trigger is clicked
@@ -3464,6 +3945,14 @@ declare namespace LocalJSX {
3464
3945
  */
3465
3946
  "tetherTo"?: HTMLElement;
3466
3947
  }
3948
+ /**
3949
+ * A toolbox for `nano-...` form fields and form validation.
3950
+ * - Easy to add validation across field dependencies - e.g. "When Field1 contains '123' Field2 must contain '456'"
3951
+ * - Easy access to whole form and individual field validity states
3952
+ * - Easy access to form data payload
3953
+ * = Access to 2-way, data bound reactive store
3954
+ * - Scroll to invalid field on submit
3955
+ */
3467
3956
  interface NanoFieldValidator {
3468
3957
  /**
3469
3958
  * Returns true if any nested fields have been changed @readonly
@@ -3526,6 +4015,12 @@ declare namespace LocalJSX {
3526
4015
  */
3527
4016
  "validationState"?: ValidationState[];
3528
4017
  }
4018
+ /**
4019
+ * A better UI experience for `input type="file"` form controls.
4020
+ * - Drag and Drop
4021
+ * - Validation options
4022
+ * - Preview and manage multiple files
4023
+ */
3529
4024
  interface NanoFileUpload {
3530
4025
  /**
3531
4026
  * The accept attribute value is a string that defines the file types the file input should accept. E.g. for a MS Word file: `.doc, .docx,application/msword, application/vnd.openxmlformats-officedocument.wordprocessingml.document`
@@ -3613,10 +4108,15 @@ declare namespace LocalJSX {
3613
4108
  */
3614
4109
  "validityMessage"?: string;
3615
4110
  /**
3616
- * A file input's value attribute contains a DOMString that represents the path to the selected file(s). If the user selected multiple files, the value represents the first file in the list of files they selected. You can reset the file-upload control by setting the value to an emptry string e.g. `var input.value = ''`
4111
+ * A file input's value attribute contains a DOMString that represents the path to the selected file(s). If the user selected multiple files, the value represents the first file in the list of files they selected. You can reset the file-upload control by setting the value to an empty string e.g. `var input.value = ''`
3617
4112
  */
3618
4113
  "value"?: string;
3619
4114
  }
4115
+ /**
4116
+ * Nanopore digital global navigation and search bar.
4117
+ * Incorporates MyAccount / SSO states (messages / cart / user name etc).
4118
+ * Incorporates Algolia search.
4119
+ */
3620
4120
  interface NanoGlobalNav {
3621
4121
  /**
3622
4122
  * Active MyAccount link sections. By default all will show.
@@ -3655,6 +4155,10 @@ declare namespace LocalJSX {
3655
4155
  * Url to the Nanopore message center. Will default to the url supplied by MyAccount
3656
4156
  */
3657
4157
  "msgUrl"?: string;
4158
+ /**
4159
+ * An alternative to both 'env' and 'ssoDataUrl'. You can directly provide a JSON object of myaccount data. (e.g. https://myaccount.nanoporetech.com/nav_bar_data.json) This is useful for SSR
4160
+ */
4161
+ "myAccountData"?: MyAccountData | null;
3658
4162
  /**
3659
4163
  * Logged in user details automatically populated from MyAccount
3660
4164
  */
@@ -3688,11 +4192,11 @@ declare namespace LocalJSX {
3688
4192
  */
3689
4193
  "searchIndeces"?: Array<SearchIndex>;
3690
4194
  /**
3691
- * Algolia search index to programatically set or to set an initial index
4195
+ * Algolia search index to programmatically set or to set an initial index
3692
4196
  */
3693
4197
  "searchIndex"?: string;
3694
4198
  /**
3695
- * A search value to passed to Algolia to programatically get or to preload search results
4199
+ * A search value to passed to Algolia to programmatically get or to preload search results
3696
4200
  */
3697
4201
  "searchValue"?: string;
3698
4202
  /**
@@ -3712,6 +4216,9 @@ declare namespace LocalJSX {
3712
4216
  */
3713
4217
  "ssoRedirect"?: string;
3714
4218
  }
4219
+ /**
4220
+ * Nanopore digital global navigation user profile.
4221
+ */
3715
4222
  interface NanoGlobalNavUserProfile {
3716
4223
  /**
3717
4224
  * Logged in user details automatically populated from MyAccount
@@ -3722,12 +4229,23 @@ declare namespace LocalJSX {
3722
4229
  */
3723
4230
  "userProfileUrl"?: string;
3724
4231
  }
4232
+ /**
4233
+ * Nanopore Global Search results component
4234
+ * to be used in conjunction with [Globla-Nav](/story/nano-compounds-global-nav).
4235
+ * A shortcut / helper which combines algolia components.
4236
+ * There should only be one <nano-global-search-results> per page
4237
+ * and should be a direct child of <nano-global-nav>
4238
+ */
3725
4239
  interface NanoGlobalSearchResults {
3726
4240
  /**
3727
4241
  * Fired when the user clicks the 'back' button / closes the search panel Calling `event.preventDefault()` will prevent it from being closed.
3728
4242
  */
3729
4243
  "onNanoSearchGoBack"?: (event: NanoGlobalSearchResultsCustomEvent<any>) => void;
3730
4244
  }
4245
+ /**
4246
+ * A context-aware CSS grid implementation.
4247
+ * Uses it's own width to choose column number - not screen width.
4248
+ */
3731
4249
  interface NanoGrid {
3732
4250
  /**
3733
4251
  * shortcut for a traditional website like grid (requires more than one row). The second row will auto expand to fill the grid height. The first row and > 2nd row will be the size of their content. e.g. header, body and footer.
@@ -3782,12 +4300,18 @@ declare namespace LocalJSX {
3782
4300
  */
3783
4301
  "xxlCols"?: number;
3784
4302
  }
4303
+ /**
4304
+ * Grid items to be used with [grid](/story/nano-components-grid) elements
4305
+ */
3785
4306
  interface NanoGridItem {
3786
4307
  /**
3787
4308
  * How to position this item within it's parent grid at different break points. Examples: xl-col-span-2 l-col-start-2 xxl-row-span-2 m-row-start-2
3788
4309
  */
3789
4310
  "gridStates"?: string;
3790
4311
  }
4312
+ /**
4313
+ * Hero components are designed to be used once per content page to add visual impact to the introductory section of a page.
4314
+ */
3791
4315
  interface NanoHero {
3792
4316
  /**
3793
4317
  * src for backgronund image. For more control use the `background` slot instead.
@@ -3810,6 +4334,9 @@ declare namespace LocalJSX {
3810
4334
  */
3811
4335
  "theme"?: 'dark' | 'light';
3812
4336
  }
4337
+ /**
4338
+ * An SVG loader / helper. Comes bundled with all fontawesome pro icons by default but can use any custom SVG (with an correct path). Lazily loads SVG for each icon, so will only request the icons that you're using and that are visible.
4339
+ */
3813
4340
  interface NanoIcon {
3814
4341
  /**
3815
4342
  * Specifies the label to use for accessibility. Defaults to the icon name.
@@ -3844,6 +4371,9 @@ declare namespace LocalJSX {
3844
4371
  */
3845
4372
  "src"?: string;
3846
4373
  }
4374
+ /**
4375
+ * Icons buttons are simple, icon-only buttons that can be used for actions and in toolbars.
4376
+ */
3847
4377
  interface NanoIconButton {
3848
4378
  /**
3849
4379
  * Set to true to disable the button.
@@ -3882,6 +4412,9 @@ declare namespace LocalJSX {
3882
4412
  */
3883
4413
  "value"?: string;
3884
4414
  }
4415
+ /**
4416
+ * Img with benefits. Lazy loading. Simple `srcSet` solution for both `<img>` and `background-image` varieties.
4417
+ */
3885
4418
  interface NanoImg {
3886
4419
  /**
3887
4420
  * This attribute defines the alternative text describing the image. Users will see this text displayed if the image URL is wrong, or if the image is not yet downloaded.
@@ -3920,6 +4453,11 @@ declare namespace LocalJSX {
3920
4453
  */
3921
4454
  "srcSet"?: string;
3922
4455
  }
4456
+ /**
4457
+ * The input component is a wrapper to the HTML input element with custom styling and additional functionality. It accepts most of the same properties as the HTML [input](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input).
4458
+ * It is meant for text type inputs only, such as "text", "password", "email", "number", "search", "tel", and "url". It supports all standard text input events including keyup, keydown, keypress, and more.
4459
+ * The default styling reference comes from the [ONT styleguide](https://nanoporetech.zeroheight.com/styleguide/s/31282/p/230c74-text-input--textarea/b/942ee4)
4460
+ */
3923
4461
  interface NanoInput {
3924
4462
  /**
3925
4463
  * If the value of the type attribute is `"file"`, then this attribute will indicate the types of files that the server accepts, otherwise it will be ignored. The value must be a comma-separated list of unique content type specifiers.
@@ -4098,6 +4636,10 @@ declare namespace LocalJSX {
4098
4636
  */
4099
4637
  "value"?: string | null;
4100
4638
  }
4639
+ /**
4640
+ * Menu element. Commonly wrapped by `nano-dropdown` with `nano-option` and `nano-nav-item` elements nested.
4641
+ * Manages focus state / active.
4642
+ */
4101
4643
  interface NanoMenu {
4102
4644
  /**
4103
4645
  * get the focus state of the menu @readonly
@@ -4124,6 +4666,12 @@ declare namespace LocalJSX {
4124
4666
  */
4125
4667
  "type"?: 'menu' | 'listbox';
4126
4668
  }
4669
+ /**
4670
+ * Menu drawer - digital specific navigation strip designed to be open (default) or closed.
4671
+ * Shows menu item logos only on minimised, expands to show entire menu item.
4672
+ * Used in conjunction with the [Globla-Nav](/story/compounds-global-nav) element -> it should be a direct descendent.
4673
+ * 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.
4674
+ */
4127
4675
  interface NanoMenuDrawer {
4128
4676
  /**
4129
4677
  * Should element hide and move items into the nano-global-nav when items are cut off (this will only work when nano-menu-drawer is displayed at full screen)
@@ -4142,6 +4690,12 @@ declare namespace LocalJSX {
4142
4690
  */
4143
4691
  "saveState"?: boolean;
4144
4692
  }
4693
+ /**
4694
+ * Nav items to be used with the various nav items.
4695
+ * [Globla-Nav](/story/compounds-global-nav)
4696
+ * [Menu-Drawer](/story/components-menu-drawer)
4697
+ * [Dropdown](/story/components-dropdown)
4698
+ */
4145
4699
  interface NanoNavItem {
4146
4700
  /**
4147
4701
  * Whether secondary menus should close on blur
@@ -4204,6 +4758,9 @@ declare namespace LocalJSX {
4204
4758
  */
4205
4759
  "target"?: '_self' | '_blank' | '_parent' | '_top';
4206
4760
  }
4761
+ /**
4762
+ * Select options to be used with [nano-select](/story/nano-components-select) or [nano-datalist](/story/nano-components-select)
4763
+ */
4207
4764
  interface NanoOption {
4208
4765
  /**
4209
4766
  * Whether this option should be disabled
@@ -4230,6 +4787,9 @@ declare namespace LocalJSX {
4230
4787
  */
4231
4788
  "value"?: string;
4232
4789
  }
4790
+ /**
4791
+ * Used to show the status of an ongoing operation.
4792
+ */
4233
4793
  interface NanoProgressBar {
4234
4794
  /**
4235
4795
  * When true, percentage is ignored, the label is hidden, and the progress bar is drawn in an indeterminate state.
@@ -4244,6 +4804,12 @@ declare namespace LocalJSX {
4244
4804
  */
4245
4805
  "value"?: number;
4246
4806
  }
4807
+ /**
4808
+ * The Range slider lets users select from a range of values by moving
4809
+ * the slider knob. It can accept dual knobs, but by default one knob controls the value of the range.
4810
+ * Labels can be placed on either side of the range by adding the
4811
+ * `slot="start"` or `slot="end"` to the element.
4812
+ */
4247
4813
  interface NanoRange {
4248
4814
  /**
4249
4815
  * The color to use from your application's color palette. Default options are: `"primary"`, `"secondary"`, `"tertiary"`, `"success"`, `"warning"`, `"danger"`, `"light"`, `"medium"`, and `"dark"`
@@ -4306,6 +4872,9 @@ declare namespace LocalJSX {
4306
4872
  */
4307
4873
  "value"?: RangeValue;
4308
4874
  }
4875
+ /**
4876
+ * Rating - a form element to allow the viewing and input of user feedback.
4877
+ */
4309
4878
  interface NanoRating {
4310
4879
  /**
4311
4880
  * Disables the rating.
@@ -4354,6 +4923,12 @@ declare namespace LocalJSX {
4354
4923
  */
4355
4924
  "value"?: number;
4356
4925
  }
4926
+ /**
4927
+ * A Resize-Observer utility component.
4928
+ * Takes a string list of sizes and optional class-names.
4929
+ * Adds class-names and fires `nanoResizeStateChange` events when the component reaches those sizes.
4930
+ * Additionally, can fire events when content no-longer fits within the element.
4931
+ */
4357
4932
  interface NanoResizeObserve {
4358
4933
  /**
4359
4934
  * Fire `nanoResizeContentFitChange` events notifying whether content currently fits or does not on the x, y or both axis'. Also makes the `content-fit-...` slots available
@@ -4379,6 +4954,12 @@ declare namespace LocalJSX {
4379
4954
  */
4380
4955
  "states"?: string;
4381
4956
  }
4957
+ /**
4958
+ * The select component is a wrapper to the HTML select element with custom styling and additional functionality.
4959
+ * It accepts most of the same properties as the HTML [select](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/select).
4960
+ * It's multi selection functionality is vastly improved from the native solution. It allows for the control of
4961
+ * value order through drag and drop or changing the insertion point with arrow keys. It also can allow for user defined values.
4962
+ */
4382
4963
  interface NanoSelect {
4383
4964
  /**
4384
4965
  * in multiple mode, allow users to enter their own values
@@ -4506,6 +5087,11 @@ declare namespace LocalJSX {
4506
5087
  */
4507
5088
  "value"?: string | string[];
4508
5089
  }
5090
+ /**
5091
+ * Skeletons are used to show where content will eventually be drawn.
5092
+ * Simple containers for scaffolding layouts that mimic what users will see when content has finished loading.
5093
+ * Prevents large areas of empty space during asynchronous operations.
5094
+ */
4509
5095
  interface NanoSkeleton {
4510
5096
  /**
4511
5097
  * When `true`, the skeleton will animate.
@@ -4522,6 +5108,11 @@ declare namespace LocalJSX {
4522
5108
  */
4523
5109
  "ready"?: boolean | null;
4524
5110
  }
5111
+ /**
5112
+ * The Slides component is a multi-section container. Each section can be swiped or dragged between.
5113
+ * It contains any number of Slide components.
5114
+ * Uses [Flickity](https://flickity.metafizzy.co/) under the hood. A good balance of options, flexibility and IE11 compatibility.
5115
+ */
4525
5116
  interface NanoSlides {
4526
5117
  /**
4527
5118
  * Animation presets.
@@ -4600,6 +5191,9 @@ declare namespace LocalJSX {
4600
5191
  */
4601
5192
  "pager"?: boolean;
4602
5193
  }
5194
+ /**
5195
+ * Spinners are used to show the progress of an indeterminate operation.
5196
+ */
4603
5197
  interface NanoSpinner {
4604
5198
  /**
4605
5199
  * Displays absolutely with an overlay
@@ -4610,6 +5204,9 @@ declare namespace LocalJSX {
4610
5204
  */
4611
5205
  "type"?: 'dna' | 'circle';
4612
5206
  }
5207
+ /**
5208
+ * Split panes display two adjacent panels, allowing the user to reposition them.
5209
+ */
4613
5210
  interface NanoSplitPane {
4614
5211
  /**
4615
5212
  * When changing `position` via property, the pane will animate into position. Make `animationDuration` 0 to disable.
@@ -4652,6 +5249,9 @@ declare namespace LocalJSX {
4652
5249
  */
4653
5250
  "vertical"?: boolean;
4654
5251
  }
5252
+ /**
5253
+ * The Sticker component is a toolbox for 'sticking' items to scrolling containers.
5254
+ */
4655
5255
  interface NanoSticker {
4656
5256
  /**
4657
5257
  * Only applicable to root stickers. When applied the sticker will grow or shrink to the scrollParent size
@@ -4742,6 +5342,12 @@ declare namespace LocalJSX {
4742
5342
  */
4743
5343
  "name"?: string;
4744
5344
  }
5345
+ /**
5346
+ * A tradtional tab implementation. It nests `nano-tab` and `nano-tab-content` sub-components.
5347
+ * Tabs can be stacked vertically or horizontally (which presents different styling variations) using the `placement` attribute.
5348
+ * Horizonal tabs that don't fit will overflow and scroll appropriately.
5349
+ * Tab-content can also be swiped to change tabs.
5350
+ */
4745
5351
  interface NanoTabGroup {
4746
5352
  /**
4747
5353
  * The color to use from the application's color palette.
@@ -4784,6 +5390,17 @@ declare namespace LocalJSX {
4784
5390
  */
4785
5391
  "storeMethod"?: StorageMethods;
4786
5392
  }
5393
+ /**
5394
+ * A performant, accessible and semantic (uses real html `<table />`, `<tr />` etc) table and data-grid solution.
5395
+ * - Built-in search
5396
+ * - Built-in column filter
5397
+ * - Built-in column sort
5398
+ * - Easily swap in API / async based search / filter & sort
5399
+ * - Pin headers, footers, rows, columns
5400
+ * - Drag-&-Drop columns to re-order
5401
+ * - Add custom rendering at every level
5402
+ * - Add custom properties at every level
5403
+ */
4787
5404
  interface NanoTable {
4788
5405
  /**
4789
5406
  * The number of total blocks currently rendered in the table. @readonly
@@ -4928,6 +5545,9 @@ declare namespace LocalJSX {
4928
5545
  */
4929
5546
  "virtualTotalItems"?: number;
4930
5547
  }
5548
+ /**
5549
+ * Tooltips display additional information based on a specific action.
5550
+ */
4931
5551
  interface NanoTooltip {
4932
5552
  /**
4933
5553
  * The tooltip's content. Alternatively, you can use the content slot.
@@ -5046,55 +5666,255 @@ export { LocalJSX as JSX };
5046
5666
  declare module "@stencil/core" {
5047
5667
  export namespace JSX {
5048
5668
  interface IntrinsicElements {
5669
+ /**
5670
+ * Simple accordion - only one item open at a time - must be used with [details](story/components-accordion--details) elements.
5671
+ */
5049
5672
  "nano-accordion": LocalJSX.NanoAccordion & JSXBase.HTMLAttributes<HTMLNanoAccordionElement>;
5673
+ /**
5674
+ * Alerts are used to display important messages either inline, as toast notifications or as modals requiring action.
5675
+ */
5050
5676
  "nano-alert": LocalJSX.NanoAlert & JSXBase.HTMLAttributes<HTMLNanoAlertElement>;
5677
+ /**
5678
+ * Algolia search container to contain and sync nano-algolia-results and nano-algolia-filter components.
5679
+ * Can optionally contain nano-algolia-input components or use them as a 'resultsEmitter'
5680
+ */
5051
5681
  "nano-algolia": LocalJSX.NanoAlgolia & JSXBase.HTMLAttributes<HTMLNanoAlgoliaElement>;
5682
+ /**
5683
+ * Displays and syncs algolia filters
5684
+ * Must be nested within an nano-algolia component.
5685
+ */
5052
5686
  "nano-algolia-filter": LocalJSX.NanoAlgoliaFilter & JSXBase.HTMLAttributes<HTMLNanoAlgoliaFilterElement>;
5687
+ /**
5688
+ * @deprecated Component for querying Algolia Indeces.
5689
+ * Can be nested within an algolia element or used outside as a 'resultsEmitter' (see algolia component documentation)
5690
+ * Must include one 'nano-input' component
5691
+ */
5053
5692
  "nano-algolia-input": LocalJSX.NanoAlgoliaInput & JSXBase.HTMLAttributes<HTMLNanoAlgoliaInputElement>;
5693
+ /**
5694
+ * Displays results from Algolia searches.
5695
+ * TODO / WIP
5696
+ */
5054
5697
  "nano-algolia-pagination": LocalJSX.NanoAlgoliaPagination & JSXBase.HTMLAttributes<HTMLNanoAlgoliaPaginationElement>;
5698
+ /**
5699
+ * Displays and syncs results from Algolia searches.
5700
+ * Must be nested within an nano-algolia component.
5701
+ */
5055
5702
  "nano-algolia-results": LocalJSX.NanoAlgoliaResults & JSXBase.HTMLAttributes<HTMLNanoAlgoliaResultsElement>;
5703
+ /**
5704
+ * Displays media in the desired aspect ratio.
5705
+ * You can slot in any replaced element, including `<iframe>`, `<img>`, and `<video>`.
5706
+ * As the element's width changes, its height will resize proportionally. Only one element should be slotted into the container.
5707
+ * The default aspect ratio is 16:9.
5708
+ */
5056
5709
  "nano-aspect-ratio": LocalJSX.NanoAspectRatio & JSXBase.HTMLAttributes<HTMLNanoAspectRatioElement>;
5710
+ /**
5711
+ * `nano-checkbox` is used to let a user choose one or more options from a limited number of options.
5712
+ * They appear as checked when activated.
5713
+ * They can be checked by mouse, keyboard, touch or programmatically by setting the checked property.
5714
+ */
5057
5715
  "nano-checkbox": LocalJSX.NanoCheckbox & JSXBase.HTMLAttributes<HTMLNanoCheckboxElement>;
5716
+ /**
5717
+ * `nano-checkbox-group` is an optional wrapper for all `nano-checkbox` controls.
5718
+ * It provides a convenient place to anchor a collective label and any validation issues.
5719
+ */
5058
5720
  "nano-checkbox-group": LocalJSX.NanoCheckboxGroup & JSXBase.HTMLAttributes<HTMLNanoCheckboxGroupElement>;
5721
+ /**
5722
+ * `nano-datalist` a visually consistent and more flexible replacement for a native
5723
+ * [datalist](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/datalist). Can be nested within a `nano-input`
5724
+ * or linked to any input control via the `input` prop. Is used internally within `nano-select`.
5725
+ * Options can be defined declaratively by nesting `<nano-option>` elements or imperatively using the `options` prop
5726
+ */
5059
5727
  "nano-datalist": LocalJSX.NanoDatalist & JSXBase.HTMLAttributes<HTMLNanoDatalistElement>;
5728
+ /**
5729
+ * The date-input component combines `nano-dropdown`, `nano-input` and `nano-date-picker` components to make a fully featured date form field. It has specific options for localisation, date formatting and validation.
5730
+ */
5060
5731
  "nano-date-input": LocalJSX.NanoDateInput & JSXBase.HTMLAttributes<HTMLNanoDateInputElement>;
5732
+ /**
5733
+ * A highly performant, small and accessible date-picker.
5734
+ * Customised from [Duet date-picker](https://duetds.github.io/date-picker/).
5735
+ */
5061
5736
  "nano-date-picker": LocalJSX.NanoDatePicker & JSXBase.HTMLAttributes<HTMLNanoDatePickerElement>;
5062
5737
  "nano-demo": LocalJSX.NanoDemo & JSXBase.HTMLAttributes<HTMLNanoDemoElement>;
5063
5738
  "nano-details": LocalJSX.NanoDetails & JSXBase.HTMLAttributes<HTMLNanoDetailsElement>;
5739
+ /**
5740
+ * Dialogs, sometimes called "modals", appear above the page and require the user's immediate attention.
5741
+ */
5064
5742
  "nano-dialog": LocalJSX.NanoDialog & JSXBase.HTMLAttributes<HTMLNanoDialogElement>;
5743
+ /**
5744
+ * WIP / TODO. https://git.oxfordnanolabs.local/Digital/nano-components/-/issues/24
5745
+ */
5065
5746
  "nano-drawer": LocalJSX.NanoDrawer & JSXBase.HTMLAttributes<HTMLNanoDrawerElement>;
5747
+ /**
5748
+ * Dropdowns show additional content in a panel.
5749
+ * Designed to work well with nano-menu components to provide a list of options (`nano-nav-items` / `nano-option`).
5750
+ */
5066
5751
  "nano-dropdown": LocalJSX.NanoDropdown & JSXBase.HTMLAttributes<HTMLNanoDropdownElement>;
5752
+ /**
5753
+ * A toolbox for `nano-...` form fields and form validation.
5754
+ * - Easy to add validation across field dependencies - e.g. "When Field1 contains '123' Field2 must contain '456'"
5755
+ * - Easy access to whole form and individual field validity states
5756
+ * - Easy access to form data payload
5757
+ * = Access to 2-way, data bound reactive store
5758
+ * - Scroll to invalid field on submit
5759
+ */
5067
5760
  "nano-field-validator": LocalJSX.NanoFieldValidator & JSXBase.HTMLAttributes<HTMLNanoFieldValidatorElement>;
5761
+ /**
5762
+ * A better UI experience for `input type="file"` form controls.
5763
+ * - Drag and Drop
5764
+ * - Validation options
5765
+ * - Preview and manage multiple files
5766
+ */
5068
5767
  "nano-file-upload": LocalJSX.NanoFileUpload & JSXBase.HTMLAttributes<HTMLNanoFileUploadElement>;
5768
+ /**
5769
+ * Nanopore digital global navigation and search bar.
5770
+ * Incorporates MyAccount / SSO states (messages / cart / user name etc).
5771
+ * Incorporates Algolia search.
5772
+ */
5069
5773
  "nano-global-nav": LocalJSX.NanoGlobalNav & JSXBase.HTMLAttributes<HTMLNanoGlobalNavElement>;
5774
+ /**
5775
+ * Nanopore digital global navigation user profile.
5776
+ */
5070
5777
  "nano-global-nav-user-profile": LocalJSX.NanoGlobalNavUserProfile & JSXBase.HTMLAttributes<HTMLNanoGlobalNavUserProfileElement>;
5778
+ /**
5779
+ * Nanopore Global Search results component
5780
+ * to be used in conjunction with [Globla-Nav](/story/nano-compounds-global-nav).
5781
+ * A shortcut / helper which combines algolia components.
5782
+ * There should only be one <nano-global-search-results> per page
5783
+ * and should be a direct child of <nano-global-nav>
5784
+ */
5071
5785
  "nano-global-search-results": LocalJSX.NanoGlobalSearchResults & JSXBase.HTMLAttributes<HTMLNanoGlobalSearchResultsElement>;
5786
+ /**
5787
+ * A context-aware CSS grid implementation.
5788
+ * Uses it's own width to choose column number - not screen width.
5789
+ */
5072
5790
  "nano-grid": LocalJSX.NanoGrid & JSXBase.HTMLAttributes<HTMLNanoGridElement>;
5791
+ /**
5792
+ * Grid items to be used with [grid](/story/nano-components-grid) elements
5793
+ */
5073
5794
  "nano-grid-item": LocalJSX.NanoGridItem & JSXBase.HTMLAttributes<HTMLNanoGridItemElement>;
5795
+ /**
5796
+ * Hero components are designed to be used once per content page to add visual impact to the introductory section of a page.
5797
+ */
5074
5798
  "nano-hero": LocalJSX.NanoHero & JSXBase.HTMLAttributes<HTMLNanoHeroElement>;
5799
+ /**
5800
+ * An SVG loader / helper. Comes bundled with all fontawesome pro icons by default but can use any custom SVG (with an correct path). Lazily loads SVG for each icon, so will only request the icons that you're using and that are visible.
5801
+ */
5075
5802
  "nano-icon": LocalJSX.NanoIcon & JSXBase.HTMLAttributes<HTMLNanoIconElement>;
5803
+ /**
5804
+ * Icons buttons are simple, icon-only buttons that can be used for actions and in toolbars.
5805
+ */
5076
5806
  "nano-icon-button": LocalJSX.NanoIconButton & JSXBase.HTMLAttributes<HTMLNanoIconButtonElement>;
5807
+ /**
5808
+ * Img with benefits. Lazy loading. Simple `srcSet` solution for both `<img>` and `background-image` varieties.
5809
+ */
5077
5810
  "nano-img": LocalJSX.NanoImg & JSXBase.HTMLAttributes<HTMLNanoImgElement>;
5811
+ /**
5812
+ * The input component is a wrapper to the HTML input element with custom styling and additional functionality. It accepts most of the same properties as the HTML [input](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input).
5813
+ * It is meant for text type inputs only, such as "text", "password", "email", "number", "search", "tel", and "url". It supports all standard text input events including keyup, keydown, keypress, and more.
5814
+ * The default styling reference comes from the [ONT styleguide](https://nanoporetech.zeroheight.com/styleguide/s/31282/p/230c74-text-input--textarea/b/942ee4)
5815
+ */
5078
5816
  "nano-input": LocalJSX.NanoInput & JSXBase.HTMLAttributes<HTMLNanoInputElement>;
5817
+ /**
5818
+ * Menu element. Commonly wrapped by `nano-dropdown` with `nano-option` and `nano-nav-item` elements nested.
5819
+ * Manages focus state / active.
5820
+ */
5079
5821
  "nano-menu": LocalJSX.NanoMenu & JSXBase.HTMLAttributes<HTMLNanoMenuElement>;
5822
+ /**
5823
+ * Menu drawer - digital specific navigation strip designed to be open (default) or closed.
5824
+ * Shows menu item logos only on minimised, expands to show entire menu item.
5825
+ * Used in conjunction with the [Globla-Nav](/story/compounds-global-nav) element -> it should be a direct descendent.
5826
+ * 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.
5827
+ */
5080
5828
  "nano-menu-drawer": LocalJSX.NanoMenuDrawer & JSXBase.HTMLAttributes<HTMLNanoMenuDrawerElement>;
5829
+ /**
5830
+ * Nav items to be used with the various nav items.
5831
+ * [Globla-Nav](/story/compounds-global-nav)
5832
+ * [Menu-Drawer](/story/components-menu-drawer)
5833
+ * [Dropdown](/story/components-dropdown)
5834
+ */
5081
5835
  "nano-nav-item": LocalJSX.NanoNavItem & JSXBase.HTMLAttributes<HTMLNanoNavItemElement>;
5836
+ /**
5837
+ * Select options to be used with [nano-select](/story/nano-components-select) or [nano-datalist](/story/nano-components-select)
5838
+ */
5082
5839
  "nano-option": LocalJSX.NanoOption & JSXBase.HTMLAttributes<HTMLNanoOptionElement>;
5840
+ /**
5841
+ * Used to show the status of an ongoing operation.
5842
+ */
5083
5843
  "nano-progress-bar": LocalJSX.NanoProgressBar & JSXBase.HTMLAttributes<HTMLNanoProgressBarElement>;
5844
+ /**
5845
+ * The Range slider lets users select from a range of values by moving
5846
+ * the slider knob. It can accept dual knobs, but by default one knob controls the value of the range.
5847
+ * Labels can be placed on either side of the range by adding the
5848
+ * `slot="start"` or `slot="end"` to the element.
5849
+ */
5084
5850
  "nano-range": LocalJSX.NanoRange & JSXBase.HTMLAttributes<HTMLNanoRangeElement>;
5851
+ /**
5852
+ * Rating - a form element to allow the viewing and input of user feedback.
5853
+ */
5085
5854
  "nano-rating": LocalJSX.NanoRating & JSXBase.HTMLAttributes<HTMLNanoRatingElement>;
5855
+ /**
5856
+ * A Resize-Observer utility component.
5857
+ * Takes a string list of sizes and optional class-names.
5858
+ * Adds class-names and fires `nanoResizeStateChange` events when the component reaches those sizes.
5859
+ * Additionally, can fire events when content no-longer fits within the element.
5860
+ */
5086
5861
  "nano-resize-observe": LocalJSX.NanoResizeObserve & JSXBase.HTMLAttributes<HTMLNanoResizeObserveElement>;
5862
+ /**
5863
+ * The select component is a wrapper to the HTML select element with custom styling and additional functionality.
5864
+ * It accepts most of the same properties as the HTML [select](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/select).
5865
+ * It's multi selection functionality is vastly improved from the native solution. It allows for the control of
5866
+ * value order through drag and drop or changing the insertion point with arrow keys. It also can allow for user defined values.
5867
+ */
5087
5868
  "nano-select": LocalJSX.NanoSelect & JSXBase.HTMLAttributes<HTMLNanoSelectElement>;
5869
+ /**
5870
+ * Skeletons are used to show where content will eventually be drawn.
5871
+ * Simple containers for scaffolding layouts that mimic what users will see when content has finished loading.
5872
+ * Prevents large areas of empty space during asynchronous operations.
5873
+ */
5088
5874
  "nano-skeleton": LocalJSX.NanoSkeleton & JSXBase.HTMLAttributes<HTMLNanoSkeletonElement>;
5089
5875
  "nano-slide": LocalJSX.NanoSlide & JSXBase.HTMLAttributes<HTMLNanoSlideElement>;
5876
+ /**
5877
+ * The Slides component is a multi-section container. Each section can be swiped or dragged between.
5878
+ * It contains any number of Slide components.
5879
+ * Uses [Flickity](https://flickity.metafizzy.co/) under the hood. A good balance of options, flexibility and IE11 compatibility.
5880
+ */
5090
5881
  "nano-slides": LocalJSX.NanoSlides & JSXBase.HTMLAttributes<HTMLNanoSlidesElement>;
5882
+ /**
5883
+ * Spinners are used to show the progress of an indeterminate operation.
5884
+ */
5091
5885
  "nano-spinner": LocalJSX.NanoSpinner & JSXBase.HTMLAttributes<HTMLNanoSpinnerElement>;
5886
+ /**
5887
+ * Split panes display two adjacent panels, allowing the user to reposition them.
5888
+ */
5092
5889
  "nano-split-pane": LocalJSX.NanoSplitPane & JSXBase.HTMLAttributes<HTMLNanoSplitPaneElement>;
5890
+ /**
5891
+ * The Sticker component is a toolbox for 'sticking' items to scrolling containers.
5892
+ */
5093
5893
  "nano-sticker": LocalJSX.NanoSticker & JSXBase.HTMLAttributes<HTMLNanoStickerElement>;
5094
5894
  "nano-tab": LocalJSX.NanoTab & JSXBase.HTMLAttributes<HTMLNanoTabElement>;
5095
5895
  "nano-tab-content": LocalJSX.NanoTabContent & JSXBase.HTMLAttributes<HTMLNanoTabContentElement>;
5896
+ /**
5897
+ * A tradtional tab implementation. It nests `nano-tab` and `nano-tab-content` sub-components.
5898
+ * Tabs can be stacked vertically or horizontally (which presents different styling variations) using the `placement` attribute.
5899
+ * Horizonal tabs that don't fit will overflow and scroll appropriately.
5900
+ * Tab-content can also be swiped to change tabs.
5901
+ */
5096
5902
  "nano-tab-group": LocalJSX.NanoTabGroup & JSXBase.HTMLAttributes<HTMLNanoTabGroupElement>;
5903
+ /**
5904
+ * A performant, accessible and semantic (uses real html `<table />`, `<tr />` etc) table and data-grid solution.
5905
+ * - Built-in search
5906
+ * - Built-in column filter
5907
+ * - Built-in column sort
5908
+ * - Easily swap in API / async based search / filter & sort
5909
+ * - Pin headers, footers, rows, columns
5910
+ * - Drag-&-Drop columns to re-order
5911
+ * - Add custom rendering at every level
5912
+ * - Add custom properties at every level
5913
+ */
5097
5914
  "nano-table": LocalJSX.NanoTable & JSXBase.HTMLAttributes<HTMLNanoTableElement>;
5915
+ /**
5916
+ * Tooltips display additional information based on a specific action.
5917
+ */
5098
5918
  "nano-tooltip": LocalJSX.NanoTooltip & JSXBase.HTMLAttributes<HTMLNanoTooltipElement>;
5099
5919
  }
5100
5920
  }