@nanoporetech-digital/components 4.9.4 → 5.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (240) hide show
  1. package/CHANGELOG.md +51 -0
  2. package/dist/cjs/drag-777bd8dd.js +74 -0
  3. package/dist/cjs/drag-777bd8dd.js.map +1 -0
  4. package/dist/cjs/{form-control-2e900f54.js → form-control-443e90bf.js} +2 -3
  5. package/dist/cjs/form-control-443e90bf.js.map +1 -0
  6. package/dist/cjs/index-71f899a7.js +10 -2
  7. package/dist/cjs/loader.cjs.js +1 -1
  8. package/dist/cjs/nano-components.cjs.js +1 -1
  9. package/dist/cjs/nano-global-nav-user-profile_3.cjs.entry.js +6 -6
  10. package/dist/cjs/nano-global-nav-user-profile_3.cjs.entry.js.map +1 -1
  11. package/dist/cjs/nano-grid-item.cjs.entry.js +29 -0
  12. package/dist/cjs/nano-grid-item.cjs.entry.js.map +1 -0
  13. package/dist/cjs/nano-grid_2.cjs.entry.js +436 -0
  14. package/dist/cjs/nano-grid_2.cjs.entry.js.map +1 -0
  15. package/dist/cjs/nano-hero.cjs.entry.js +4 -10
  16. package/dist/cjs/nano-hero.cjs.entry.js.map +1 -1
  17. package/dist/cjs/nano-icon-button_2.cjs.entry.js +40 -3
  18. package/dist/cjs/nano-icon-button_2.cjs.entry.js.map +1 -1
  19. package/dist/cjs/nano-input.cjs.entry.js +2 -2
  20. package/dist/cjs/nano-input.cjs.entry.js.map +1 -1
  21. package/dist/cjs/nano-range.cjs.entry.js +1 -1
  22. package/dist/cjs/nano-range.cjs.entry.js.map +1 -1
  23. package/dist/cjs/nano-sortable.cjs.entry.js +654 -0
  24. package/dist/cjs/nano-sortable.cjs.entry.js.map +1 -0
  25. package/dist/cjs/nano-split-pane.cjs.entry.js +30 -45
  26. package/dist/cjs/nano-split-pane.cjs.entry.js.map +1 -1
  27. package/dist/cjs/nano-tab-group.cjs.entry.js +39 -43
  28. package/dist/cjs/nano-tab-group.cjs.entry.js.map +1 -1
  29. package/dist/cjs/nano-tab.cjs.entry.js +3 -3
  30. package/dist/cjs/nano-tab.cjs.entry.js.map +1 -1
  31. package/dist/cjs/{nano-table-54a4ba34.js → nano-table-11052a34.js} +52 -172
  32. package/dist/cjs/nano-table-11052a34.js.map +1 -0
  33. package/dist/cjs/nano-table.cjs.entry.js +1 -1
  34. package/dist/cjs/{table.worker-20ed37a5.js → table.worker-83433a8b.js} +3 -3
  35. package/dist/cjs/table.worker-83433a8b.js.map +1 -0
  36. package/dist/cjs/{table.worker-f820b411.js → table.worker-bd51e29f.js} +1 -1
  37. package/dist/collection/collection-manifest.json +1 -0
  38. package/dist/collection/components/form-control/form-control.js +1 -2
  39. package/dist/collection/components/form-control/form-control.js.map +1 -1
  40. package/dist/collection/components/grid/grid-item.js +11 -136
  41. package/dist/collection/components/grid/grid-item.js.map +1 -1
  42. package/dist/collection/components/grid/grid.css +9 -242
  43. package/dist/collection/components/grid/grid.js +248 -240
  44. package/dist/collection/components/grid/grid.js.map +1 -1
  45. package/dist/collection/components/hero/hero.css +42 -89
  46. package/dist/collection/components/hero/hero.js +4 -11
  47. package/dist/collection/components/hero/hero.js.map +1 -1
  48. package/dist/collection/components/icon-button/icon-button.css +18 -4
  49. package/dist/collection/components/icon-button/icon-button.js +83 -4
  50. package/dist/collection/components/icon-button/icon-button.js.map +1 -1
  51. package/dist/collection/components/input/input.css +8 -9
  52. package/dist/collection/components/nav-item/nav-item.js +4 -4
  53. package/dist/collection/components/nav-item/nav-item.js.map +1 -1
  54. package/dist/collection/components/range/range.css +0 -3
  55. package/dist/collection/components/select/select.css +8 -9
  56. package/dist/collection/components/sortable/sortable.css +28 -0
  57. package/dist/collection/components/sortable/sortable.js +1181 -0
  58. package/dist/collection/components/sortable/sortable.js.map +1 -0
  59. package/dist/collection/components/split-pane/split-pane.js +29 -27
  60. package/dist/collection/components/split-pane/split-pane.js.map +1 -1
  61. package/dist/collection/components/table/table-interface.js.map +1 -1
  62. package/dist/collection/components/table/table.css +18 -38
  63. package/dist/collection/components/table/table.header.js +3 -86
  64. package/dist/collection/components/table/table.header.js.map +1 -1
  65. package/dist/collection/components/table/table.js +27 -108
  66. package/dist/collection/components/table/table.js.map +1 -1
  67. package/dist/collection/components/table/table.row.js +7 -7
  68. package/dist/collection/components/table/table.row.js.map +1 -1
  69. package/dist/collection/components/table/table.store.js +1 -1
  70. package/dist/collection/components/table/table.store.js.map +1 -1
  71. package/dist/collection/components/table/table.worker.js +3 -3
  72. package/dist/collection/components/table/table.worker.js.map +1 -1
  73. package/dist/collection/components/tabs/tab-group.css +9 -13
  74. package/dist/collection/components/tabs/tab-group.js +39 -43
  75. package/dist/collection/components/tabs/tab-group.js.map +1 -1
  76. package/dist/collection/components/tabs/tab.css +53 -14
  77. package/dist/collection/components/tabs/tab.js +8 -2
  78. package/dist/collection/components/tabs/tab.js.map +1 -1
  79. package/dist/collection/utils/constructible-style.js +129 -0
  80. package/dist/collection/utils/constructible-style.js.map +1 -0
  81. package/dist/collection/utils/drag.js +52 -4
  82. package/dist/collection/utils/drag.js.map +1 -1
  83. package/dist/components/drag.js +72 -0
  84. package/dist/components/drag.js.map +1 -0
  85. package/dist/components/form-control.js +1 -2
  86. package/dist/components/form-control.js.map +1 -1
  87. package/dist/components/grid.js +268 -183
  88. package/dist/components/grid.js.map +1 -1
  89. package/dist/components/icon-button.js +45 -5
  90. package/dist/components/icon-button.js.map +1 -1
  91. package/dist/components/index.d.ts +1 -0
  92. package/dist/components/index.js +1 -0
  93. package/dist/components/index.js.map +1 -1
  94. package/dist/components/input.js +1 -1
  95. package/dist/components/input.js.map +1 -1
  96. package/dist/components/nano-grid-item.js +33 -1
  97. package/dist/components/nano-grid-item.js.map +1 -1
  98. package/dist/components/nano-hero.js +6 -19
  99. package/dist/components/nano-hero.js.map +1 -1
  100. package/dist/components/nano-range.js +1 -1
  101. package/dist/components/nano-range.js.map +1 -1
  102. package/dist/components/nano-sortable.d.ts +11 -0
  103. package/dist/components/nano-sortable.js +692 -0
  104. package/dist/components/nano-sortable.js.map +1 -0
  105. package/dist/components/nano-split-pane.js +30 -45
  106. package/dist/components/nano-split-pane.js.map +1 -1
  107. package/dist/components/nano-tab-group.js +40 -44
  108. package/dist/components/nano-tab-group.js.map +1 -1
  109. package/dist/components/nano-tab.js +3 -3
  110. package/dist/components/nano-tab.js.map +1 -1
  111. package/dist/components/nav-item.js +4 -4
  112. package/dist/components/nav-item.js.map +1 -1
  113. package/dist/components/select.js +1 -1
  114. package/dist/components/select.js.map +1 -1
  115. package/dist/components/table.js +52 -173
  116. package/dist/components/table.js.map +1 -1
  117. package/dist/components/table.worker.js +1 -1
  118. package/dist/esm/drag-1723a4cc.js +72 -0
  119. package/dist/esm/drag-1723a4cc.js.map +1 -0
  120. package/dist/esm/{form-control-269ba84f.js → form-control-e8739b2e.js} +2 -3
  121. package/dist/esm/form-control-e8739b2e.js.map +1 -0
  122. package/dist/esm/index-dad5627b.js +10 -2
  123. package/dist/esm/loader.js +1 -1
  124. package/dist/esm/nano-components.js +1 -1
  125. package/dist/esm/nano-global-nav-user-profile_3.entry.js +6 -6
  126. package/dist/esm/nano-global-nav-user-profile_3.entry.js.map +1 -1
  127. package/dist/esm/nano-grid-item.entry.js +25 -0
  128. package/dist/esm/nano-grid-item.entry.js.map +1 -0
  129. package/dist/esm/nano-grid_2.entry.js +431 -0
  130. package/dist/esm/nano-grid_2.entry.js.map +1 -0
  131. package/dist/esm/nano-hero.entry.js +4 -10
  132. package/dist/esm/nano-hero.entry.js.map +1 -1
  133. package/dist/esm/nano-icon-button_2.entry.js +41 -4
  134. package/dist/esm/nano-icon-button_2.entry.js.map +1 -1
  135. package/dist/esm/nano-input.entry.js +2 -2
  136. package/dist/esm/nano-input.entry.js.map +1 -1
  137. package/dist/esm/nano-range.entry.js +1 -1
  138. package/dist/esm/nano-range.entry.js.map +1 -1
  139. package/dist/esm/nano-sortable.entry.js +650 -0
  140. package/dist/esm/nano-sortable.entry.js.map +1 -0
  141. package/dist/esm/nano-split-pane.entry.js +30 -45
  142. package/dist/esm/nano-split-pane.entry.js.map +1 -1
  143. package/dist/esm/nano-tab-group.entry.js +39 -43
  144. package/dist/esm/nano-tab-group.entry.js.map +1 -1
  145. package/dist/esm/nano-tab.entry.js +3 -3
  146. package/dist/esm/nano-tab.entry.js.map +1 -1
  147. package/dist/esm/{nano-table-929ac4d9.js → nano-table-ba637f26.js} +53 -173
  148. package/dist/esm/nano-table-ba637f26.js.map +1 -0
  149. package/dist/esm/nano-table.entry.js +1 -1
  150. package/dist/esm/{table.worker-2425382a.js → table.worker-1cae39c9.js} +3 -3
  151. package/dist/esm/table.worker-1cae39c9.js.map +1 -0
  152. package/dist/{nano-components/p-f820b411.js → esm/table.worker-bd51e29f.js} +1 -1
  153. package/dist/nano-components/nano-components.css +1 -1
  154. package/dist/nano-components/nano-components.esm.js +1 -1
  155. package/dist/nano-components/nano-components.esm.js.map +1 -1
  156. package/dist/nano-components/p-00cf8021.entry.js +5 -0
  157. package/dist/nano-components/p-00cf8021.entry.js.map +1 -0
  158. package/dist/nano-components/{p-906de5a2.entry.js → p-158c73b0.entry.js} +2 -2
  159. package/dist/nano-components/p-365c997a.js +5 -0
  160. package/dist/nano-components/p-553acf24.entry.js +5 -0
  161. package/dist/nano-components/p-553acf24.entry.js.map +1 -0
  162. package/dist/nano-components/p-6975f110.entry.js +5 -0
  163. package/dist/nano-components/p-6975f110.entry.js.map +1 -0
  164. package/dist/nano-components/p-71057181.js +5 -0
  165. package/dist/nano-components/p-71057181.js.map +1 -0
  166. package/dist/nano-components/p-842cf127.js +5 -0
  167. package/dist/nano-components/p-842cf127.js.map +1 -0
  168. package/dist/nano-components/p-ad6209ec.entry.js +5 -0
  169. package/dist/nano-components/p-ad6209ec.entry.js.map +1 -0
  170. package/dist/nano-components/p-b8e76fdf.entry.js +5 -0
  171. package/dist/nano-components/p-b8e76fdf.entry.js.map +1 -0
  172. package/dist/{esm/table.worker-f820b411.js → nano-components/p-bd51e29f.js} +1 -1
  173. package/dist/nano-components/p-bdef618c.entry.js +5 -0
  174. package/dist/nano-components/p-bdef618c.entry.js.map +1 -0
  175. package/dist/nano-components/p-d79c6862.entry.js +5 -0
  176. package/dist/nano-components/p-d79c6862.entry.js.map +1 -0
  177. package/dist/nano-components/p-deb0799c.entry.js +5 -0
  178. package/dist/nano-components/{p-6a3a29c6.entry.js.map → p-deb0799c.entry.js.map} +1 -1
  179. package/dist/nano-components/p-ebb98a9e.entry.js +5 -0
  180. package/dist/nano-components/p-ebb98a9e.entry.js.map +1 -0
  181. package/dist/nano-components/p-f60fe933.entry.js +5 -0
  182. package/dist/nano-components/p-f60fe933.entry.js.map +1 -0
  183. package/dist/nano-components/p-f7535f45.entry.js +5 -0
  184. package/dist/nano-components/p-f7535f45.entry.js.map +1 -0
  185. package/dist/nano-components/p-fc585ea2.js +5 -0
  186. package/dist/nano-components/p-fc585ea2.js.map +1 -0
  187. package/dist/types/components/grid/grid-item.d.ts +3 -11
  188. package/dist/types/components/grid/grid.d.ts +44 -68
  189. package/dist/types/components/hero/hero.d.ts +1 -3
  190. package/dist/types/components/icon-button/icon-button.d.ts +14 -0
  191. package/dist/types/components/sortable/sortable.d.ts +204 -0
  192. package/dist/types/components/table/table-interface.d.ts +2 -4
  193. package/dist/types/components/table/table.d.ts +5 -30
  194. package/dist/types/components/table/table.header.d.ts +0 -3
  195. package/dist/types/components/tabs/tab-group.d.ts +0 -1
  196. package/dist/types/components/tabs/tab.d.ts +6 -0
  197. package/dist/types/components.d.ts +333 -89
  198. package/dist/types/utils/constructible-style.d.ts +31 -0
  199. package/dist/types/utils/drag.d.ts +21 -1
  200. package/docs-json.json +743 -168
  201. package/docs-vscode.json +102 -26
  202. package/hydrate/index.js +1210 -552
  203. package/package.json +2 -2
  204. package/dist/cjs/form-control-2e900f54.js.map +0 -1
  205. package/dist/cjs/nano-grid_3.cjs.entry.js +0 -431
  206. package/dist/cjs/nano-grid_3.cjs.entry.js.map +0 -1
  207. package/dist/cjs/nano-table-54a4ba34.js.map +0 -1
  208. package/dist/cjs/table.worker-20ed37a5.js.map +0 -1
  209. package/dist/collection/components/grid/grid-item.css +0 -15
  210. package/dist/components/grid-item.js +0 -107
  211. package/dist/components/grid-item.js.map +0 -1
  212. package/dist/esm/form-control-269ba84f.js.map +0 -1
  213. package/dist/esm/nano-grid_3.entry.js +0 -425
  214. package/dist/esm/nano-grid_3.entry.js.map +0 -1
  215. package/dist/esm/nano-table-929ac4d9.js.map +0 -1
  216. package/dist/esm/table.worker-2425382a.js.map +0 -1
  217. package/dist/nano-components/p-068bdd89.entry.js +0 -5
  218. package/dist/nano-components/p-068bdd89.entry.js.map +0 -1
  219. package/dist/nano-components/p-107d4549.entry.js +0 -5
  220. package/dist/nano-components/p-107d4549.entry.js.map +0 -1
  221. package/dist/nano-components/p-239d343a.entry.js +0 -5
  222. package/dist/nano-components/p-239d343a.entry.js.map +0 -1
  223. package/dist/nano-components/p-4f260028.js +0 -5
  224. package/dist/nano-components/p-4f260028.js.map +0 -1
  225. package/dist/nano-components/p-5381c118.js +0 -5
  226. package/dist/nano-components/p-58b53239.entry.js +0 -5
  227. package/dist/nano-components/p-58b53239.entry.js.map +0 -1
  228. package/dist/nano-components/p-5ac74848.js +0 -5
  229. package/dist/nano-components/p-5ac74848.js.map +0 -1
  230. package/dist/nano-components/p-64b56ee6.entry.js +0 -5
  231. package/dist/nano-components/p-64b56ee6.entry.js.map +0 -1
  232. package/dist/nano-components/p-6a3a29c6.entry.js +0 -5
  233. package/dist/nano-components/p-a5a560e7.entry.js +0 -5
  234. package/dist/nano-components/p-a5a560e7.entry.js.map +0 -1
  235. package/dist/nano-components/p-a761ac89.entry.js +0 -5
  236. package/dist/nano-components/p-a761ac89.entry.js.map +0 -1
  237. package/dist/nano-components/p-d792f692.entry.js +0 -5
  238. package/dist/nano-components/p-d792f692.entry.js.map +0 -1
  239. /package/dist/nano-components/{p-5381c118.js.map → p-158c73b0.entry.js.map} +0 -0
  240. /package/dist/nano-components/{p-906de5a2.entry.js.map → p-365c997a.js.map} +0 -0
@@ -5,11 +5,11 @@
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, MyAccountData, 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, 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";
12
- import { EventEmitter } from "./stencil-public-runtime";
12
+ import { Element, EventEmitter } from "./stencil-public-runtime";
13
13
  import { ObservableMap } from "@stencil/store";
14
14
  import { MyAccountUser as MyAccountUser1 } from "./components/global-nav/global-nav-interface";
15
15
  import { OptionInterface as OptionInterface1 } from "./components/option/option-interface";
@@ -1118,42 +1118,49 @@ export namespace Components {
1118
1118
  interface NanoGlobalSearchResults {
1119
1119
  }
1120
1120
  /**
1121
- * A context-aware CSS grid implementation.
1122
- * Uses it's own width to choose column number - not screen width.
1121
+ * A lightweight, context-aware CSS grid implementation.
1122
+ * - Define multiple grids templates at different breakpoints
1123
+ * - Uses `@container` queries to select the correct grid depending on the current dimensions
1124
+ * - Use `grid-states="..."` on direct descendants for `column` / `row` - `start` / `end`
1125
+ * - SSR optimised
1123
1126
  */
1124
1127
  interface NanoGrid {
1125
- /**
1126
- * 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.
1127
- */
1128
- "contentPanel": boolean;
1129
- /**
1130
- * Helper to make grid items expand to full height in IE11
1131
- */
1132
- "fullHeight": boolean;
1133
1128
  /**
1134
1129
  * the number of columns the grid has at the large breakpoint.
1135
1130
  */
1136
1131
  "lCols": number;
1137
1132
  /**
1138
- * the component's large breakpoint. Note - all breakpoints are based on component width, not screen width.
1133
+ * the component's large breakpoint. Note - all breakpoints are based on component width, not screen width. Will default to `px` if no unit supplied e.g. `20rem`
1134
+ */
1135
+ "lSize": number | string;
1136
+ /**
1137
+ * Optional large `grid-template`. *Note* - you must set `lCols` for this to take affect
1139
1138
  */
1140
- "lSize": number;
1139
+ "lTpl"?: string;
1141
1140
  /**
1142
1141
  * the number of columns the grid has at the medium breakpoint.
1143
1142
  */
1144
1143
  "mCols": number;
1145
1144
  /**
1146
- * the component's medium breakpoint. Note - all breakpoints are based on component width, not screen width.
1145
+ * the component's medium breakpoint. Note - all breakpoints are based on component width, not screen width. Will default to `px` if no unit supplied e.g. `20rem`
1146
+ */
1147
+ "mSize": number | string;
1148
+ /**
1149
+ * Optional medium `grid-template`. *Note* - you must set `mCols` for this to take affect
1147
1150
  */
1148
- "mSize": number;
1151
+ "mTpl"?: string;
1149
1152
  /**
1150
1153
  * the number of columns the grid has at the small breakpoint.
1151
1154
  */
1152
1155
  "sCols": number;
1153
1156
  /**
1154
- * the component's small breakpoint. Note - all breakpoints are based on component width, not screen width.
1157
+ * the component's small breakpoint. Note - all breakpoints are based on component width, not screen width. Will default to `px` if no unit supplied e.g. `20rem`
1158
+ */
1159
+ "sSize": number | string;
1160
+ /**
1161
+ * Optional small `grid-template`. *Note* - you must set `sCols` for this to take affect
1155
1162
  */
1156
- "sSize": number;
1163
+ "sTpl"?: string;
1157
1164
  /**
1158
1165
  * shows a grid helper to visualise where columns are
1159
1166
  */
@@ -1163,33 +1170,35 @@ export namespace Components {
1163
1170
  */
1164
1171
  "xlCols": number;
1165
1172
  /**
1166
- * the component's xl breakpoint. Note - all breakpoints are based on component width, not screen width.
1173
+ * the component's xl breakpoint. Note - all breakpoints are based on component width, not screen width. Will default to `px` if no unit supplied e.g. `20rem`
1167
1174
  */
1168
- "xlSize": number;
1175
+ "xlSize": number | string;
1176
+ /**
1177
+ * Optional xl `grid-template`. *Note* - you must set `xlCols` for this to take affect
1178
+ */
1179
+ "xlTpl"?: string;
1169
1180
  /**
1170
1181
  * the number of columns the grid has at the xxl breakpoint (anything greater than the xl breakpoint)
1171
1182
  */
1172
1183
  "xxlCols": number;
1184
+ /**
1185
+ * Optional xxl `grid-template`. *Note* - you must set `xxlCols` for this to take affect
1186
+ */
1187
+ "xxlTpl"?: string;
1173
1188
  }
1174
1189
  /**
1190
+ * @deprecated - you can now use `grid-states="..."`
1191
+ * on any direct `nano-grid` descendent without limitation rendering `nano-grid-item` obsolete.
1175
1192
  * Grid items to be used with [grid](/story/nano-components-grid) elements
1176
1193
  */
1177
1194
  interface NanoGridItem {
1178
- /**
1179
- * Called by parent grid to trigger new classes
1180
- */
1181
- "changeBP": (newGridSizes: GridSizes[]) => Promise<void>;
1182
- /**
1183
- * 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
1184
- */
1185
- "gridStates": string;
1186
1195
  }
1187
1196
  /**
1188
1197
  * Hero components are designed to be used once per content page to add visual impact to the introductory section of a page.
1189
1198
  */
1190
1199
  interface NanoHero {
1191
1200
  /**
1192
- * src for backgronund image. For more control use the `background` slot instead.
1201
+ * src for background image. For more control use the `background` slot instead.
1193
1202
  */
1194
1203
  "imgSrc"?: string;
1195
1204
  /**
@@ -1254,6 +1263,10 @@ export namespace Components {
1254
1263
  * Set to true to disable the button.
1255
1264
  */
1256
1265
  "disabled": boolean;
1266
+ /**
1267
+ * The HTML form element or form element id. Used to submit a form when the button is not a child of the form.
1268
+ */
1269
+ "form": HTMLFormElement | string;
1257
1270
  /**
1258
1271
  * Contains a URL or a URL fragment that the hyperlink points to. If this property is set, an anchor tag will be rendered.
1259
1272
  */
@@ -1274,6 +1287,10 @@ export namespace Components {
1274
1287
  * The name of the button, submitted as a pair with the button’s value as part of the form data.
1275
1288
  */
1276
1289
  "name"?: string;
1290
+ /**
1291
+ * Specifies the relationship of the target object to the link object. The value is a space-separated list of [link types](https://developer.mozilla.org/en-US/docs/Web/HTML/Link_types)
1292
+ */
1293
+ "rel": string | undefined;
1277
1294
  /**
1278
1295
  * Sets focus on the internal button
1279
1296
  */
@@ -2068,6 +2085,103 @@ export namespace Components {
2068
2085
  */
2069
2086
  "updateAutoHeight": (speed?: number) => Promise<void>;
2070
2087
  }
2088
+ /**
2089
+ * An accessible and flexible re-order / sort utility component.
2090
+ * - Drag and drop via mouse, touch or keyboard
2091
+ * - Live announcements for screen readers
2092
+ * - Works with or without an explicit handle (although with is preferable)
2093
+ */
2094
+ interface NanoSortable {
2095
+ /**
2096
+ * Items being sorted will animate into place
2097
+ */
2098
+ "animationEnabled": boolean;
2099
+ /**
2100
+ * The css animation timing applied when `animationEnabled` is `true`
2101
+ */
2102
+ "animationTiming": any;
2103
+ /**
2104
+ * A function that should attach a keyboard accessible control. When a `handleSelector` is not used - to allow keyboard accessibility - `createKeyboardHandle` should render a focusable element. If your sortable item is itself focusable, you must use this function to render a control *outside* of the focusable element.
2105
+ * @param _number
2106
+ * @param _element
2107
+ * @returns a function that attaches a keyboard accessible handle control element. The function itself *must* return the handle element.
2108
+ */
2109
+ "createKeyboardHandle": (_number: number, _element: Element) => HTMLElement;
2110
+ /**
2111
+ * Dragged items by default, will take whatever default css is applied in situ. When sortable items' dimensions are dynamic (i.e they can shrink / grow via the space allowed) dragging items can look 'wrong'. Apply `dragResize` to read & recreate the dragged items current dimensions when dragged.
2112
+ */
2113
+ "dragResize": boolean;
2114
+ /**
2115
+ * Use this class to change how the element looks whilst being sorted
2116
+ */
2117
+ "draggedClass": string;
2118
+ /**
2119
+ * Used to generate a screen reader live update, informing the user of the current element being dropped.
2120
+ * @param el the element that has been dropped by the user
2121
+ * @returns a string, describing the element that has been dropped
2122
+ */
2123
+ "droppedHelperText": (el: Element) => string;
2124
+ /**
2125
+ * Used in-conjunction with `dropzoneSelector`, applied when a dropzone is dragged over
2126
+ */
2127
+ "dropzoneActiveClass"?: string;
2128
+ /**
2129
+ * When dragging between grouped collections of items, it is possible to drag all sortable items from one group to another. At that point, you will not be able to drag items back to the original group. A `dropzoneSelector` allows you to define a placeholder area where items can always be dropped.
2130
+ */
2131
+ "dropzoneSelector"?: string;
2132
+ /**
2133
+ * Used to generate a screen reader live update, informing the user of the current element being grabbed.
2134
+ * @param el the element that has been grabbed by the user
2135
+ * @returns a string, describing the element being grabbed
2136
+ */
2137
+ "grabbedHelperText": (el: Element) => string;
2138
+ /**
2139
+ * Use this class to change how the handle looks whilst being sorted
2140
+ */
2141
+ "handleDraggedClass": string;
2142
+ /**
2143
+ * A css query selector which matches an element *within* the `itemSelector` element which will act like a drag handle. **Note** For keyboard a11y it's recommended to use `handleSelector` when possible. Alternatively, the `createKeyboardHandle` prop will be used
2144
+ */
2145
+ "handleSelector"?: string;
2146
+ /**
2147
+ * Accessibility helper text applied to handle controls
2148
+ */
2149
+ "helperText": string;
2150
+ /**
2151
+ * As a sortable element is interacted with, announcements are made to screen readers - informing the user what is changing. By default, the text from the element is extracted to describe the interacted with element. Use this function to provide a more meaningful, concise item descriptor
2152
+ * @param el the element being interacted with
2153
+ * @returns a string, describing the element being interacted with
2154
+ */
2155
+ "itemDescriptor": (el: Element) => string;
2156
+ /**
2157
+ * A css query selector which matches a set of elements that should be sortable. e.g. `<li>` or `<tr>`
2158
+ */
2159
+ "itemSelector": string;
2160
+ /**
2161
+ * The axis to lock dragging elements to. `undefined` means any axis
2162
+ */
2163
+ "orientation"?: 'horizontal' | 'vertical';
2164
+ /**
2165
+ * Use this class to change how the element looks when acting as a placeholder
2166
+ */
2167
+ "placeholderClass": string;
2168
+ /**
2169
+ * If sortable elements change dynamically, use this method to add handle controls to new elements
2170
+ */
2171
+ "refreshKeyboardHandles": () => Promise<void>;
2172
+ /**
2173
+ * Used to generate a screen reader live update, informing the user when items have been reordered.
2174
+ * @param el the element that has been reordered by the user
2175
+ * @param elements the elements in the sortable list
2176
+ * @param position the new position of the dropped element
2177
+ * @returns a string, describing the element being dropped
2178
+ */
2179
+ "reorderHelperText": (el: Element, elements: Element[], position: number) => string;
2180
+ /**
2181
+ * use `sortableHostElement` to watch a sortable list without needing to wrap in `nano-sortable`. Note that the `sortableHostElement` element css `position` will be set to `relative`
2182
+ */
2183
+ "sortableHostElement"?: HTMLElement;
2184
+ }
2071
2185
  /**
2072
2186
  * Spinners are used to show the progress of an indeterminate operation.
2073
2187
  */
@@ -2263,7 +2377,6 @@ export namespace Components {
2263
2377
  * - Built-in column sort
2264
2378
  * - Easily swap in API / async based search / filter & sort
2265
2379
  * - Pin headers, footers, rows, columns
2266
- * - Drag-&-Drop columns to re-order
2267
2380
  * - Add custom rendering at every level
2268
2381
  * - Add custom properties at every level
2269
2382
  */
@@ -2305,10 +2418,6 @@ export namespace Components {
2305
2418
  property: TableTypes.Prop,
2306
2419
  order: TableTypes.Order
2307
2420
  ) => Promise<true | TableTypes.Falsy>;
2308
- /**
2309
- * The default draggable option for all columns. `true` will enable column drag-to-reorder unless you set `draggable: false` on a column `false` will disable column drag-to-reorder unless you set `draggable: true` on a column
2310
- */
2311
- "defaultColDraggable": boolean;
2312
2421
  /**
2313
2422
  * The default sortable option for all columns. `true` will enable column sorting unless you set `sortable: false` on a column `false` will disable column sorting unless you set `sortable: true` on a column
2314
2423
  */
@@ -2522,10 +2631,6 @@ export interface NanoGlobalSearchResultsCustomEvent<T> extends CustomEvent<T> {
2522
2631
  detail: T;
2523
2632
  target: HTMLNanoGlobalSearchResultsElement;
2524
2633
  }
2525
- export interface NanoGridCustomEvent<T> extends CustomEvent<T> {
2526
- detail: T;
2527
- target: HTMLNanoGridElement;
2528
- }
2529
2634
  export interface NanoImgCustomEvent<T> extends CustomEvent<T> {
2530
2635
  detail: T;
2531
2636
  target: HTMLNanoImgElement;
@@ -2570,6 +2675,10 @@ export interface NanoSlidesCustomEvent<T> extends CustomEvent<T> {
2570
2675
  detail: T;
2571
2676
  target: HTMLNanoSlidesElement;
2572
2677
  }
2678
+ export interface NanoSortableCustomEvent<T> extends CustomEvent<T> {
2679
+ detail: T;
2680
+ target: HTMLNanoSortableElement;
2681
+ }
2573
2682
  export interface NanoSplitPaneCustomEvent<T> extends CustomEvent<T> {
2574
2683
  detail: T;
2575
2684
  target: HTMLNanoSplitPaneElement;
@@ -2828,8 +2937,11 @@ declare global {
2828
2937
  new (): HTMLNanoGlobalSearchResultsElement;
2829
2938
  };
2830
2939
  /**
2831
- * A context-aware CSS grid implementation.
2832
- * Uses it's own width to choose column number - not screen width.
2940
+ * A lightweight, context-aware CSS grid implementation.
2941
+ * - Define multiple grids templates at different breakpoints
2942
+ * - Uses `@container` queries to select the correct grid depending on the current dimensions
2943
+ * - Use `grid-states="..."` on direct descendants for `column` / `row` - `start` / `end`
2944
+ * - SSR optimised
2833
2945
  */
2834
2946
  interface HTMLNanoGridElement extends Components.NanoGrid, HTMLStencilElement {
2835
2947
  }
@@ -2838,6 +2950,8 @@ declare global {
2838
2950
  new (): HTMLNanoGridElement;
2839
2951
  };
2840
2952
  /**
2953
+ * @deprecated - you can now use `grid-states="..."`
2954
+ * on any direct `nano-grid` descendent without limitation rendering `nano-grid-item` obsolete.
2841
2955
  * Grid items to be used with [grid](/story/nano-components-grid) elements
2842
2956
  */
2843
2957
  interface HTMLNanoGridItemElement extends Components.NanoGridItem, HTMLStencilElement {
@@ -3030,6 +3144,18 @@ declare global {
3030
3144
  prototype: HTMLNanoSlidesElement;
3031
3145
  new (): HTMLNanoSlidesElement;
3032
3146
  };
3147
+ /**
3148
+ * An accessible and flexible re-order / sort utility component.
3149
+ * - Drag and drop via mouse, touch or keyboard
3150
+ * - Live announcements for screen readers
3151
+ * - Works with or without an explicit handle (although with is preferable)
3152
+ */
3153
+ interface HTMLNanoSortableElement extends Components.NanoSortable, HTMLStencilElement {
3154
+ }
3155
+ var HTMLNanoSortableElement: {
3156
+ prototype: HTMLNanoSortableElement;
3157
+ new (): HTMLNanoSortableElement;
3158
+ };
3033
3159
  /**
3034
3160
  * Spinners are used to show the progress of an indeterminate operation.
3035
3161
  */
@@ -3088,7 +3214,6 @@ declare global {
3088
3214
  * - Built-in column sort
3089
3215
  * - Easily swap in API / async based search / filter & sort
3090
3216
  * - Pin headers, footers, rows, columns
3091
- * - Drag-&-Drop columns to re-order
3092
3217
  * - Add custom rendering at every level
3093
3218
  * - Add custom properties at every level
3094
3219
  */
@@ -3151,6 +3276,7 @@ declare global {
3151
3276
  "nano-skeleton": HTMLNanoSkeletonElement;
3152
3277
  "nano-slide": HTMLNanoSlideElement;
3153
3278
  "nano-slides": HTMLNanoSlidesElement;
3279
+ "nano-sortable": HTMLNanoSortableElement;
3154
3280
  "nano-spinner": HTMLNanoSpinnerElement;
3155
3281
  "nano-split-pane": HTMLNanoSplitPaneElement;
3156
3282
  "nano-sticker": HTMLNanoStickerElement;
@@ -4322,46 +4448,49 @@ declare namespace LocalJSX {
4322
4448
  "onNanoSearchGoBack"?: (event: NanoGlobalSearchResultsCustomEvent<any>) => void;
4323
4449
  }
4324
4450
  /**
4325
- * A context-aware CSS grid implementation.
4326
- * Uses it's own width to choose column number - not screen width.
4451
+ * A lightweight, context-aware CSS grid implementation.
4452
+ * - Define multiple grids templates at different breakpoints
4453
+ * - Uses `@container` queries to select the correct grid depending on the current dimensions
4454
+ * - Use `grid-states="..."` on direct descendants for `column` / `row` - `start` / `end`
4455
+ * - SSR optimised
4327
4456
  */
4328
4457
  interface NanoGrid {
4329
- /**
4330
- * 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.
4331
- */
4332
- "contentPanel"?: boolean;
4333
- /**
4334
- * Helper to make grid items expand to full height in IE11
4335
- */
4336
- "fullHeight"?: boolean;
4337
4458
  /**
4338
4459
  * the number of columns the grid has at the large breakpoint.
4339
4460
  */
4340
4461
  "lCols"?: number;
4341
4462
  /**
4342
- * the component's large breakpoint. Note - all breakpoints are based on component width, not screen width.
4463
+ * the component's large breakpoint. Note - all breakpoints are based on component width, not screen width. Will default to `px` if no unit supplied e.g. `20rem`
4464
+ */
4465
+ "lSize"?: number | string;
4466
+ /**
4467
+ * Optional large `grid-template`. *Note* - you must set `lCols` for this to take affect
4343
4468
  */
4344
- "lSize"?: number;
4469
+ "lTpl"?: string;
4345
4470
  /**
4346
4471
  * the number of columns the grid has at the medium breakpoint.
4347
4472
  */
4348
4473
  "mCols"?: number;
4349
4474
  /**
4350
- * the component's medium breakpoint. Note - all breakpoints are based on component width, not screen width.
4475
+ * the component's medium breakpoint. Note - all breakpoints are based on component width, not screen width. Will default to `px` if no unit supplied e.g. `20rem`
4351
4476
  */
4352
- "mSize"?: number;
4477
+ "mSize"?: number | string;
4353
4478
  /**
4354
- * Emitted when the `nano-grid` changes breakpoint
4479
+ * Optional medium `grid-template`. *Note* - you must set `mCols` for this to take affect
4355
4480
  */
4356
- "onNanoBpChange"?: (event: NanoGridCustomEvent<string[]>) => void;
4481
+ "mTpl"?: string;
4357
4482
  /**
4358
4483
  * the number of columns the grid has at the small breakpoint.
4359
4484
  */
4360
4485
  "sCols"?: number;
4361
4486
  /**
4362
- * the component's small breakpoint. Note - all breakpoints are based on component width, not screen width.
4487
+ * the component's small breakpoint. Note - all breakpoints are based on component width, not screen width. Will default to `px` if no unit supplied e.g. `20rem`
4363
4488
  */
4364
- "sSize"?: number;
4489
+ "sSize"?: number | string;
4490
+ /**
4491
+ * Optional small `grid-template`. *Note* - you must set `sCols` for this to take affect
4492
+ */
4493
+ "sTpl"?: string;
4365
4494
  /**
4366
4495
  * shows a grid helper to visualise where columns are
4367
4496
  */
@@ -4371,29 +4500,35 @@ declare namespace LocalJSX {
4371
4500
  */
4372
4501
  "xlCols"?: number;
4373
4502
  /**
4374
- * the component's xl breakpoint. Note - all breakpoints are based on component width, not screen width.
4503
+ * the component's xl breakpoint. Note - all breakpoints are based on component width, not screen width. Will default to `px` if no unit supplied e.g. `20rem`
4375
4504
  */
4376
- "xlSize"?: number;
4505
+ "xlSize"?: number | string;
4506
+ /**
4507
+ * Optional xl `grid-template`. *Note* - you must set `xlCols` for this to take affect
4508
+ */
4509
+ "xlTpl"?: string;
4377
4510
  /**
4378
4511
  * the number of columns the grid has at the xxl breakpoint (anything greater than the xl breakpoint)
4379
4512
  */
4380
4513
  "xxlCols"?: number;
4514
+ /**
4515
+ * Optional xxl `grid-template`. *Note* - you must set `xxlCols` for this to take affect
4516
+ */
4517
+ "xxlTpl"?: string;
4381
4518
  }
4382
4519
  /**
4520
+ * @deprecated - you can now use `grid-states="..."`
4521
+ * on any direct `nano-grid` descendent without limitation rendering `nano-grid-item` obsolete.
4383
4522
  * Grid items to be used with [grid](/story/nano-components-grid) elements
4384
4523
  */
4385
4524
  interface NanoGridItem {
4386
- /**
4387
- * 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
4388
- */
4389
- "gridStates"?: string;
4390
4525
  }
4391
4526
  /**
4392
4527
  * Hero components are designed to be used once per content page to add visual impact to the introductory section of a page.
4393
4528
  */
4394
4529
  interface NanoHero {
4395
4530
  /**
4396
- * src for backgronund image. For more control use the `background` slot instead.
4531
+ * src for background image. For more control use the `background` slot instead.
4397
4532
  */
4398
4533
  "imgSrc"?: string;
4399
4534
  /**
@@ -4458,6 +4593,10 @@ declare namespace LocalJSX {
4458
4593
  * Set to true to disable the button.
4459
4594
  */
4460
4595
  "disabled"?: boolean;
4596
+ /**
4597
+ * The HTML form element or form element id. Used to submit a form when the button is not a child of the form.
4598
+ */
4599
+ "form"?: HTMLFormElement | string;
4461
4600
  /**
4462
4601
  * Contains a URL or a URL fragment that the hyperlink points to. If this property is set, an anchor tag will be rendered.
4463
4602
  */
@@ -4478,6 +4617,10 @@ declare namespace LocalJSX {
4478
4617
  * The name of the button, submitted as a pair with the button’s value as part of the form data.
4479
4618
  */
4480
4619
  "name"?: string;
4620
+ /**
4621
+ * Specifies the relationship of the target object to the link object. The value is a space-separated list of [link types](https://developer.mozilla.org/en-US/docs/Web/HTML/Link_types)
4622
+ */
4623
+ "rel"?: string | undefined;
4481
4624
  /**
4482
4625
  * display the label as a `<nano-tooltip />`
4483
4626
  */
@@ -5311,6 +5454,115 @@ declare namespace LocalJSX {
5311
5454
  */
5312
5455
  "pager"?: boolean;
5313
5456
  }
5457
+ /**
5458
+ * An accessible and flexible re-order / sort utility component.
5459
+ * - Drag and drop via mouse, touch or keyboard
5460
+ * - Live announcements for screen readers
5461
+ * - Works with or without an explicit handle (although with is preferable)
5462
+ */
5463
+ interface NanoSortable {
5464
+ /**
5465
+ * Items being sorted will animate into place
5466
+ */
5467
+ "animationEnabled"?: boolean;
5468
+ /**
5469
+ * The css animation timing applied when `animationEnabled` is `true`
5470
+ */
5471
+ "animationTiming"?: any;
5472
+ /**
5473
+ * A function that should attach a keyboard accessible control. When a `handleSelector` is not used - to allow keyboard accessibility - `createKeyboardHandle` should render a focusable element. If your sortable item is itself focusable, you must use this function to render a control *outside* of the focusable element.
5474
+ * @param _number
5475
+ * @param _element
5476
+ * @returns a function that attaches a keyboard accessible handle control element. The function itself *must* return the handle element.
5477
+ */
5478
+ "createKeyboardHandle"?: (_number: number, _element: Element) => HTMLElement;
5479
+ /**
5480
+ * Dragged items by default, will take whatever default css is applied in situ. When sortable items' dimensions are dynamic (i.e they can shrink / grow via the space allowed) dragging items can look 'wrong'. Apply `dragResize` to read & recreate the dragged items current dimensions when dragged.
5481
+ */
5482
+ "dragResize"?: boolean;
5483
+ /**
5484
+ * Use this class to change how the element looks whilst being sorted
5485
+ */
5486
+ "draggedClass"?: string;
5487
+ /**
5488
+ * Used to generate a screen reader live update, informing the user of the current element being dropped.
5489
+ * @param el the element that has been dropped by the user
5490
+ * @returns a string, describing the element that has been dropped
5491
+ */
5492
+ "droppedHelperText"?: (el: Element) => string;
5493
+ /**
5494
+ * Used in-conjunction with `dropzoneSelector`, applied when a dropzone is dragged over
5495
+ */
5496
+ "dropzoneActiveClass"?: string;
5497
+ /**
5498
+ * When dragging between grouped collections of items, it is possible to drag all sortable items from one group to another. At that point, you will not be able to drag items back to the original group. A `dropzoneSelector` allows you to define a placeholder area where items can always be dropped.
5499
+ */
5500
+ "dropzoneSelector"?: string;
5501
+ /**
5502
+ * Used to generate a screen reader live update, informing the user of the current element being grabbed.
5503
+ * @param el the element that has been grabbed by the user
5504
+ * @returns a string, describing the element being grabbed
5505
+ */
5506
+ "grabbedHelperText"?: (el: Element) => string;
5507
+ /**
5508
+ * Use this class to change how the handle looks whilst being sorted
5509
+ */
5510
+ "handleDraggedClass"?: string;
5511
+ /**
5512
+ * A css query selector which matches an element *within* the `itemSelector` element which will act like a drag handle. **Note** For keyboard a11y it's recommended to use `handleSelector` when possible. Alternatively, the `createKeyboardHandle` prop will be used
5513
+ */
5514
+ "handleSelector"?: string;
5515
+ /**
5516
+ * Accessibility helper text applied to handle controls
5517
+ */
5518
+ "helperText"?: string;
5519
+ /**
5520
+ * As a sortable element is interacted with, announcements are made to screen readers - informing the user what is changing. By default, the text from the element is extracted to describe the interacted with element. Use this function to provide a more meaningful, concise item descriptor
5521
+ * @param el the element being interacted with
5522
+ * @returns a string, describing the element being interacted with
5523
+ */
5524
+ "itemDescriptor"?: (el: Element) => string;
5525
+ /**
5526
+ * A css query selector which matches a set of elements that should be sortable. e.g. `<li>` or `<tr>`
5527
+ */
5528
+ "itemSelector"?: string;
5529
+ /**
5530
+ * Fired when a sortable element is dropped after having been picked up.
5531
+ */
5532
+ "onNanoDropped"?: (event: NanoSortableCustomEvent<{ element: HTMLElement }>) => void;
5533
+ /**
5534
+ * Fired when a sortable element is picked-up; via keyboard, mouse or touch. `event.preventDefault()` to prevent the element being picked-up.
5535
+ */
5536
+ "onNanoGrabbed"?: (event: NanoSortableCustomEvent<{ element: HTMLElement; index: number }>) => void;
5537
+ /**
5538
+ * Fired when an the order changes. Use this to update any underlying data model. `event.preventDefault()` to prevent the element being moved; will revert to original position.
5539
+ */
5540
+ "onNanoOrderChange"?: (event: NanoSortableCustomEvent<{
5541
+ element: HTMLElement;
5542
+ originalIndex: number;
5543
+ targetIndex: number;
5544
+ }>) => void;
5545
+ /**
5546
+ * The axis to lock dragging elements to. `undefined` means any axis
5547
+ */
5548
+ "orientation"?: 'horizontal' | 'vertical';
5549
+ /**
5550
+ * Use this class to change how the element looks when acting as a placeholder
5551
+ */
5552
+ "placeholderClass"?: string;
5553
+ /**
5554
+ * Used to generate a screen reader live update, informing the user when items have been reordered.
5555
+ * @param el the element that has been reordered by the user
5556
+ * @param elements the elements in the sortable list
5557
+ * @param position the new position of the dropped element
5558
+ * @returns a string, describing the element being dropped
5559
+ */
5560
+ "reorderHelperText"?: (el: Element, elements: Element[], position: number) => string;
5561
+ /**
5562
+ * use `sortableHostElement` to watch a sortable list without needing to wrap in `nano-sortable`. Note that the `sortableHostElement` element css `position` will be set to `relative`
5563
+ */
5564
+ "sortableHostElement"?: HTMLElement;
5565
+ }
5314
5566
  /**
5315
5567
  * Spinners are used to show the progress of an indeterminate operation.
5316
5568
  */
@@ -5517,7 +5769,6 @@ declare namespace LocalJSX {
5517
5769
  * - Built-in column sort
5518
5770
  * - Easily swap in API / async based search / filter & sort
5519
5771
  * - Pin headers, footers, rows, columns
5520
- * - Drag-&-Drop columns to re-order
5521
5772
  * - Add custom rendering at every level
5522
5773
  * - Add custom properties at every level
5523
5774
  */
@@ -5547,10 +5798,6 @@ declare namespace LocalJSX {
5547
5798
  property: TableTypes.Prop,
5548
5799
  order: TableTypes.Order
5549
5800
  ) => Promise<true | TableTypes.Falsy>;
5550
- /**
5551
- * The default draggable option for all columns. `true` will enable column drag-to-reorder unless you set `draggable: false` on a column `false` will disable column drag-to-reorder unless you set `draggable: true` on a column
5552
- */
5553
- "defaultColDraggable"?: boolean;
5554
5801
  /**
5555
5802
  * The default sortable option for all columns. `true` will enable column sorting unless you set `sortable: false` on a column `false` will disable column sorting unless you set `sortable: true` on a column
5556
5803
  */
@@ -5607,21 +5854,6 @@ declare namespace LocalJSX {
5607
5854
  "onNanoTblBlockRendered"?: (event: NanoTableCustomEvent<{
5608
5855
  block: number;
5609
5856
  totalBlocks: number;
5610
- }>) => void;
5611
- /**
5612
- * Fired when a column has started dragging
5613
- */
5614
- "onNanoTblColDrag"?: (event: NanoTableCustomEvent<{
5615
- column: TableTypes.Prop;
5616
- }>) => void;
5617
- /**
5618
- * Fired when a column has been dropped (after dragging) `event.preventDefault()` to stop column re-order.
5619
- */
5620
- "onNanoTblColDrop"?: (event: NanoTableCustomEvent<{
5621
- fromCol: TableTypes.Prop;
5622
- toCol: TableTypes.Prop;
5623
- fromIndex: number;
5624
- toIndex: number;
5625
5857
  }>) => void;
5626
5858
  /**
5627
5859
  * Fired when the table has done it's first complete render
@@ -5773,6 +6005,7 @@ declare namespace LocalJSX {
5773
6005
  "nano-skeleton": NanoSkeleton;
5774
6006
  "nano-slide": NanoSlide;
5775
6007
  "nano-slides": NanoSlides;
6008
+ "nano-sortable": NanoSortable;
5776
6009
  "nano-spinner": NanoSpinner;
5777
6010
  "nano-split-pane": NanoSplitPane;
5778
6011
  "nano-sticker": NanoSticker;
@@ -5905,11 +6138,16 @@ declare module "@stencil/core" {
5905
6138
  */
5906
6139
  "nano-global-search-results": LocalJSX.NanoGlobalSearchResults & JSXBase.HTMLAttributes<HTMLNanoGlobalSearchResultsElement>;
5907
6140
  /**
5908
- * A context-aware CSS grid implementation.
5909
- * Uses it's own width to choose column number - not screen width.
6141
+ * A lightweight, context-aware CSS grid implementation.
6142
+ * - Define multiple grids templates at different breakpoints
6143
+ * - Uses `@container` queries to select the correct grid depending on the current dimensions
6144
+ * - Use `grid-states="..."` on direct descendants for `column` / `row` - `start` / `end`
6145
+ * - SSR optimised
5910
6146
  */
5911
6147
  "nano-grid": LocalJSX.NanoGrid & JSXBase.HTMLAttributes<HTMLNanoGridElement>;
5912
6148
  /**
6149
+ * @deprecated - you can now use `grid-states="..."`
6150
+ * on any direct `nano-grid` descendent without limitation rendering `nano-grid-item` obsolete.
5913
6151
  * Grid items to be used with [grid](/story/nano-components-grid) elements
5914
6152
  */
5915
6153
  "nano-grid-item": LocalJSX.NanoGridItem & JSXBase.HTMLAttributes<HTMLNanoGridItemElement>;
@@ -6007,6 +6245,13 @@ declare module "@stencil/core" {
6007
6245
  * Uses [Flickity](https://flickity.metafizzy.co/) under the hood.
6008
6246
  */
6009
6247
  "nano-slides": LocalJSX.NanoSlides & JSXBase.HTMLAttributes<HTMLNanoSlidesElement>;
6248
+ /**
6249
+ * An accessible and flexible re-order / sort utility component.
6250
+ * - Drag and drop via mouse, touch or keyboard
6251
+ * - Live announcements for screen readers
6252
+ * - Works with or without an explicit handle (although with is preferable)
6253
+ */
6254
+ "nano-sortable": LocalJSX.NanoSortable & JSXBase.HTMLAttributes<HTMLNanoSortableElement>;
6010
6255
  /**
6011
6256
  * Spinners are used to show the progress of an indeterminate operation.
6012
6257
  */
@@ -6035,7 +6280,6 @@ declare module "@stencil/core" {
6035
6280
  * - Built-in column sort
6036
6281
  * - Easily swap in API / async based search / filter & sort
6037
6282
  * - Pin headers, footers, rows, columns
6038
- * - Drag-&-Drop columns to re-order
6039
6283
  * - Add custom rendering at every level
6040
6284
  * - Add custom properties at every level
6041
6285
  */