@navikt/ds-react 8.7.0 → 8.9.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 (408) hide show
  1. package/cjs/alert/base-alert/root/BaseAlertRoot.js +1 -2
  2. package/cjs/alert/base-alert/root/BaseAlertRoot.js.map +1 -1
  3. package/cjs/alert/info-card/index.d.ts +2 -2
  4. package/cjs/alert/info-card/index.js +2 -1
  5. package/cjs/alert/info-card/index.js.map +1 -1
  6. package/cjs/alert/info-card/message/InfoCardMessage.d.ts +23 -0
  7. package/cjs/alert/info-card/message/InfoCardMessage.js +73 -0
  8. package/cjs/alert/info-card/message/InfoCardMessage.js.map +1 -0
  9. package/cjs/alert/info-card/root/InfoCardRoot.d.ts +15 -2
  10. package/cjs/alert/info-card/root/InfoCardRoot.js +4 -1
  11. package/cjs/alert/info-card/root/InfoCardRoot.js.map +1 -1
  12. package/cjs/data/drag-and-drop/drag-handler/DragAndDropDragHandler.d.ts +12 -0
  13. package/cjs/data/drag-and-drop/drag-handler/DragAndDropDragHandler.js +57 -0
  14. package/cjs/data/drag-and-drop/drag-handler/DragAndDropDragHandler.js.map +1 -0
  15. package/cjs/data/drag-and-drop/item/DragAndDropItem.d.ts +27 -0
  16. package/cjs/data/drag-and-drop/item/DragAndDropItem.js +52 -0
  17. package/cjs/data/drag-and-drop/item/DragAndDropItem.js.map +1 -0
  18. package/cjs/data/drag-and-drop/root/DragAndDrop.context.d.ts +16 -0
  19. package/cjs/data/drag-and-drop/root/DragAndDrop.context.js +10 -0
  20. package/cjs/data/drag-and-drop/root/DragAndDrop.context.js.map +1 -0
  21. package/cjs/data/drag-and-drop/root/DragAndDropRoot.d.ts +36 -0
  22. package/cjs/data/drag-and-drop/root/DragAndDropRoot.js +187 -0
  23. package/cjs/data/drag-and-drop/root/DragAndDropRoot.js.map +1 -0
  24. package/cjs/data/drag-and-drop/types.d.ts +4 -0
  25. package/cjs/data/drag-and-drop/types.js +3 -0
  26. package/cjs/data/drag-and-drop/types.js.map +1 -0
  27. package/cjs/data/drag-and-drop-old/drag-handler/DataDragAndDropDragHandler.d.ts +22 -0
  28. package/cjs/data/drag-and-drop-old/drag-handler/DataDragAndDropDragHandler.js +35 -0
  29. package/cjs/data/drag-and-drop-old/drag-handler/DataDragAndDropDragHandler.js.map +1 -0
  30. package/cjs/data/{drag-and-drop → drag-and-drop-old}/item/DataDragAndDropItem.js +2 -7
  31. package/cjs/data/drag-and-drop-old/item/DataDragAndDropItem.js.map +1 -0
  32. package/cjs/data/drag-and-drop-old/root/DataDragAndDrop.context.js.map +1 -0
  33. package/cjs/data/{drag-and-drop → drag-and-drop-old}/root/DataDragAndDropRoot.d.ts +2 -2
  34. package/cjs/data/{drag-and-drop → drag-and-drop-old}/root/DataDragAndDropRoot.js +5 -8
  35. package/cjs/data/drag-and-drop-old/root/DataDragAndDropRoot.js.map +1 -0
  36. package/cjs/data/table/empty-state/DataTableEmptyState.d.ts +5 -0
  37. package/cjs/data/table/empty-state/DataTableEmptyState.js +57 -0
  38. package/cjs/data/table/empty-state/DataTableEmptyState.js.map +1 -0
  39. package/cjs/data/table/helpers/selection/getMultipleSelectProps.d.ts +14 -0
  40. package/cjs/data/table/helpers/selection/getMultipleSelectProps.js +48 -0
  41. package/cjs/data/table/helpers/selection/getMultipleSelectProps.js.map +1 -0
  42. package/cjs/data/table/helpers/selection/getSingleSelectProps.d.ts +10 -0
  43. package/cjs/data/table/helpers/selection/getSingleSelectProps.js +23 -0
  44. package/cjs/data/table/helpers/selection/getSingleSelectProps.js.map +1 -0
  45. package/cjs/data/table/helpers/selection/selection.types.d.ts +42 -0
  46. package/cjs/data/table/helpers/selection/selection.types.js +3 -0
  47. package/cjs/data/table/helpers/selection/selection.types.js.map +1 -0
  48. package/cjs/data/table/helpers/table-focus.js +7 -1
  49. package/cjs/data/table/helpers/table-focus.js.map +1 -1
  50. package/cjs/data/table/helpers/table-keyboard.d.ts +0 -1
  51. package/cjs/data/table/helpers/table-keyboard.js +2 -4
  52. package/cjs/data/table/helpers/table-keyboard.js.map +1 -1
  53. package/cjs/data/table/{root → hooks}/useTableKeyboardNav.js +2 -1
  54. package/cjs/data/table/hooks/useTableKeyboardNav.js.map +1 -0
  55. package/cjs/data/table/hooks/useTableSelection.d.ts +8 -0
  56. package/cjs/data/table/hooks/useTableSelection.js +49 -0
  57. package/cjs/data/table/hooks/useTableSelection.js.map +1 -0
  58. package/cjs/data/table/loading-state/DataTableLoadingState.d.ts +5 -0
  59. package/cjs/data/table/loading-state/DataTableLoadingState.js +57 -0
  60. package/cjs/data/table/loading-state/DataTableLoadingState.js.map +1 -0
  61. package/cjs/data/table/root/DataTable.types.d.ts +13 -0
  62. package/cjs/data/table/root/DataTable.types.js +3 -0
  63. package/cjs/data/table/root/DataTable.types.js.map +1 -0
  64. package/cjs/data/table/root/DataTableAuto.d.ts +60 -0
  65. package/cjs/data/table/root/DataTableAuto.js +113 -0
  66. package/cjs/data/table/root/DataTableAuto.js.map +1 -0
  67. package/cjs/data/table/root/DataTableRoot.context.d.ts +3 -2
  68. package/cjs/data/table/root/DataTableRoot.context.js.map +1 -1
  69. package/cjs/data/table/root/DataTableRoot.d.ts +30 -3
  70. package/cjs/data/table/root/DataTableRoot.js +9 -3
  71. package/cjs/data/table/root/DataTableRoot.js.map +1 -1
  72. package/cjs/data/table/td/DataTableTd.d.ts +10 -0
  73. package/cjs/data/table/td/DataTableTd.js +4 -2
  74. package/cjs/data/table/td/DataTableTd.js.map +1 -1
  75. package/cjs/data/table/th/DataTableTh.d.ts +10 -4
  76. package/cjs/data/table/th/DataTableTh.js +24 -22
  77. package/cjs/data/table/th/DataTableTh.js.map +1 -1
  78. package/cjs/data/table/th/useTableColumnResize.d.ts +64 -0
  79. package/cjs/data/table/th/useTableColumnResize.js +144 -0
  80. package/cjs/data/table/th/useTableColumnResize.js.map +1 -0
  81. package/cjs/data/table/thead/DataTableThead.context.d.ts +4 -0
  82. package/cjs/data/table/thead/DataTableThead.context.js +45 -0
  83. package/cjs/data/table/thead/DataTableThead.context.js.map +1 -0
  84. package/cjs/data/table/thead/DataTableThead.js +3 -1
  85. package/cjs/data/table/thead/DataTableThead.js.map +1 -1
  86. package/cjs/data/table/tr/DataTableTr.js +4 -3
  87. package/cjs/data/table/tr/DataTableTr.js.map +1 -1
  88. package/cjs/data/token-filter/AutoSuggest.js +40 -9
  89. package/cjs/data/token-filter/AutoSuggest.js.map +1 -1
  90. package/cjs/data/token-filter/TokenFilter.d.ts +1 -0
  91. package/cjs/data/token-filter/TokenFilter.js +1 -0
  92. package/cjs/data/token-filter/TokenFilter.js.map +1 -1
  93. package/cjs/data/toolbar/root/DataToolbarRoot.d.ts +6 -23
  94. package/cjs/data/toolbar/root/DataToolbarRoot.js +42 -7
  95. package/cjs/data/toolbar/root/DataToolbarRoot.js.map +1 -1
  96. package/cjs/date/Date.Input.js +8 -9
  97. package/cjs/date/Date.Input.js.map +1 -1
  98. package/cjs/date/datepicker/hooks/useDatepicker.d.ts +12 -1
  99. package/cjs/date/datepicker/hooks/useDatepicker.js +4 -3
  100. package/cjs/date/datepicker/hooks/useDatepicker.js.map +1 -1
  101. package/cjs/date/monthpicker/hooks/useMonthPicker.d.ts +11 -1
  102. package/cjs/date/monthpicker/hooks/useMonthPicker.js +3 -2
  103. package/cjs/date/monthpicker/hooks/useMonthPicker.js.map +1 -1
  104. package/cjs/form/checkbox/CheckboxGroup.js +1 -1
  105. package/cjs/form/checkbox/CheckboxGroup.js.map +1 -1
  106. package/cjs/form/fieldset/Fieldset.d.ts +25 -5
  107. package/cjs/form/fieldset/Fieldset.js +19 -2
  108. package/cjs/form/fieldset/Fieldset.js.map +1 -1
  109. package/cjs/form/radio/RadioGroup.js +1 -1
  110. package/cjs/form/radio/RadioGroup.js.map +1 -1
  111. package/cjs/index.d.ts +1 -1
  112. package/cjs/index.js.map +1 -1
  113. package/cjs/internal-header/InternalHeaderButton.d.ts +5 -0
  114. package/cjs/internal-header/InternalHeaderButton.js +2 -2
  115. package/cjs/internal-header/InternalHeaderButton.js.map +1 -1
  116. package/cjs/read-more/ReadMore.d.ts +10 -0
  117. package/cjs/read-more/ReadMore.js +4 -6
  118. package/cjs/read-more/ReadMore.js.map +1 -1
  119. package/cjs/types/index.d.ts +1 -1
  120. package/cjs/types/index.js +0 -15
  121. package/cjs/types/index.js.map +1 -1
  122. package/cjs/utils/components/Listbox/group/ListboxGroup.js +2 -1
  123. package/cjs/utils/components/Listbox/group/ListboxGroup.js.map +1 -1
  124. package/cjs/utils/components/Listbox/input-slot/ListboxInputSlot.js +1 -1
  125. package/cjs/utils/components/Listbox/input-slot/ListboxInputSlot.js.map +1 -1
  126. package/cjs/utils/components/Listbox/option/ListboxOption.d.ts +24 -0
  127. package/cjs/utils/components/Listbox/{item/ListboxItem.js → option/ListboxOption.js} +8 -8
  128. package/cjs/utils/components/Listbox/option/ListboxOption.js.map +1 -0
  129. package/cjs/utils/components/Listbox/options/ListboxOptions.d.ts +8 -0
  130. package/cjs/utils/components/Listbox/{list/ListboxList.js → options/ListboxOptions.js} +8 -8
  131. package/cjs/utils/components/Listbox/options/ListboxOptions.js.map +1 -0
  132. package/cjs/utils/components/Listbox/root/ListboxRoot.d.ts +6 -6
  133. package/cjs/utils/components/Listbox/root/ListboxRoot.js +28 -28
  134. package/cjs/utils/components/Listbox/root/ListboxRoot.js.map +1 -1
  135. package/cjs/utils/components/Listbox/root/domHelpers.d.ts +3 -3
  136. package/cjs/utils/components/Listbox/root/domHelpers.js +8 -8
  137. package/cjs/utils/components/Listbox/root/domHelpers.js.map +1 -1
  138. package/cjs/utils/components/floating/Floating.d.ts +1 -1
  139. package/cjs/utils/components/floating/Floating.js +1 -1
  140. package/cjs/utils/components/floating/Floating.js.map +1 -1
  141. package/cjs/utils/components/focus-boundary/FocusBoundary.d.ts +0 -1
  142. package/cjs/utils/components/focus-boundary/FocusBoundary.js +1 -1
  143. package/cjs/utils/components/focus-boundary/FocusBoundary.js.map +1 -1
  144. package/cjs/utils/components/link-anchor/LinkAnchor.js +10 -0
  145. package/cjs/utils/components/link-anchor/LinkAnchor.js.map +1 -1
  146. package/cjs/utils/helpers/className.js +1 -1
  147. package/cjs/utils/helpers/className.js.map +1 -1
  148. package/cjs/utils/helpers/focus.d.ts +3 -1
  149. package/cjs/utils/helpers/focus.js +2 -2
  150. package/cjs/utils/helpers/focus.js.map +1 -1
  151. package/cjs/utils/helpers/index.d.ts +9 -9
  152. package/cjs/utils/helpers/index.js +22 -23
  153. package/cjs/utils/helpers/index.js.map +1 -1
  154. package/cjs/utils/hooks/index.d.ts +13 -13
  155. package/cjs/utils/hooks/index.js +31 -28
  156. package/cjs/utils/hooks/index.js.map +1 -1
  157. package/cjs/utils/hooks/useScrollLock.js +41 -11
  158. package/cjs/utils/hooks/useScrollLock.js.map +1 -1
  159. package/esm/alert/base-alert/root/BaseAlertRoot.js +1 -2
  160. package/esm/alert/base-alert/root/BaseAlertRoot.js.map +1 -1
  161. package/esm/alert/info-card/index.d.ts +2 -2
  162. package/esm/alert/info-card/index.js +1 -1
  163. package/esm/alert/info-card/index.js.map +1 -1
  164. package/esm/alert/info-card/message/InfoCardMessage.d.ts +23 -0
  165. package/esm/alert/info-card/message/InfoCardMessage.js +37 -0
  166. package/esm/alert/info-card/message/InfoCardMessage.js.map +1 -0
  167. package/esm/alert/info-card/root/InfoCardRoot.d.ts +15 -2
  168. package/esm/alert/info-card/root/InfoCardRoot.js +3 -1
  169. package/esm/alert/info-card/root/InfoCardRoot.js.map +1 -1
  170. package/esm/data/drag-and-drop/drag-handler/DragAndDropDragHandler.d.ts +12 -0
  171. package/esm/data/drag-and-drop/drag-handler/DragAndDropDragHandler.js +51 -0
  172. package/esm/data/drag-and-drop/drag-handler/DragAndDropDragHandler.js.map +1 -0
  173. package/esm/data/drag-and-drop/item/DragAndDropItem.d.ts +27 -0
  174. package/esm/data/drag-and-drop/item/DragAndDropItem.js +46 -0
  175. package/esm/data/drag-and-drop/item/DragAndDropItem.js.map +1 -0
  176. package/esm/data/drag-and-drop/root/DragAndDrop.context.d.ts +16 -0
  177. package/esm/data/drag-and-drop/root/DragAndDrop.context.js +6 -0
  178. package/esm/data/drag-and-drop/root/DragAndDrop.context.js.map +1 -0
  179. package/esm/data/drag-and-drop/root/DragAndDropRoot.d.ts +36 -0
  180. package/esm/data/drag-and-drop/root/DragAndDropRoot.js +147 -0
  181. package/esm/data/drag-and-drop/root/DragAndDropRoot.js.map +1 -0
  182. package/esm/data/drag-and-drop/types.d.ts +4 -0
  183. package/esm/data/drag-and-drop/types.js +2 -0
  184. package/esm/data/drag-and-drop/types.js.map +1 -0
  185. package/esm/data/drag-and-drop-old/drag-handler/DataDragAndDropDragHandler.d.ts +22 -0
  186. package/esm/data/drag-and-drop-old/drag-handler/DataDragAndDropDragHandler.js +29 -0
  187. package/esm/data/drag-and-drop-old/drag-handler/DataDragAndDropDragHandler.js.map +1 -0
  188. package/esm/data/{drag-and-drop → drag-and-drop-old}/item/DataDragAndDropItem.js +2 -7
  189. package/esm/data/drag-and-drop-old/item/DataDragAndDropItem.js.map +1 -0
  190. package/esm/data/drag-and-drop-old/root/DataDragAndDrop.context.js.map +1 -0
  191. package/esm/data/{drag-and-drop → drag-and-drop-old}/root/DataDragAndDropRoot.d.ts +2 -2
  192. package/esm/data/{drag-and-drop → drag-and-drop-old}/root/DataDragAndDropRoot.js +5 -8
  193. package/esm/data/drag-and-drop-old/root/DataDragAndDropRoot.js.map +1 -0
  194. package/esm/data/table/empty-state/DataTableEmptyState.d.ts +5 -0
  195. package/esm/data/table/empty-state/DataTableEmptyState.js +21 -0
  196. package/esm/data/table/empty-state/DataTableEmptyState.js.map +1 -0
  197. package/esm/data/table/helpers/selection/getMultipleSelectProps.d.ts +14 -0
  198. package/esm/data/table/helpers/selection/getMultipleSelectProps.js +46 -0
  199. package/esm/data/table/helpers/selection/getMultipleSelectProps.js.map +1 -0
  200. package/esm/data/table/helpers/selection/getSingleSelectProps.d.ts +10 -0
  201. package/esm/data/table/helpers/selection/getSingleSelectProps.js +21 -0
  202. package/esm/data/table/helpers/selection/getSingleSelectProps.js.map +1 -0
  203. package/esm/data/table/helpers/selection/selection.types.d.ts +42 -0
  204. package/esm/data/table/helpers/selection/selection.types.js +2 -0
  205. package/esm/data/table/helpers/selection/selection.types.js.map +1 -0
  206. package/esm/data/table/helpers/table-focus.js +7 -1
  207. package/esm/data/table/helpers/table-focus.js.map +1 -1
  208. package/esm/data/table/helpers/table-keyboard.d.ts +0 -1
  209. package/esm/data/table/helpers/table-keyboard.js +2 -4
  210. package/esm/data/table/helpers/table-keyboard.js.map +1 -1
  211. package/esm/data/table/{root → hooks}/useTableKeyboardNav.js +2 -1
  212. package/esm/data/table/hooks/useTableKeyboardNav.js.map +1 -0
  213. package/esm/data/table/hooks/useTableSelection.d.ts +8 -0
  214. package/esm/data/table/hooks/useTableSelection.js +47 -0
  215. package/esm/data/table/hooks/useTableSelection.js.map +1 -0
  216. package/esm/data/table/loading-state/DataTableLoadingState.d.ts +5 -0
  217. package/esm/data/table/loading-state/DataTableLoadingState.js +21 -0
  218. package/esm/data/table/loading-state/DataTableLoadingState.js.map +1 -0
  219. package/esm/data/table/root/DataTable.types.d.ts +13 -0
  220. package/esm/data/table/root/DataTable.types.js +2 -0
  221. package/esm/data/table/root/DataTable.types.js.map +1 -0
  222. package/esm/data/table/root/DataTableAuto.d.ts +60 -0
  223. package/esm/data/table/root/DataTableAuto.js +77 -0
  224. package/esm/data/table/root/DataTableAuto.js.map +1 -0
  225. package/esm/data/table/root/DataTableRoot.context.d.ts +3 -2
  226. package/esm/data/table/root/DataTableRoot.context.js.map +1 -1
  227. package/esm/data/table/root/DataTableRoot.d.ts +30 -3
  228. package/esm/data/table/root/DataTableRoot.js +7 -3
  229. package/esm/data/table/root/DataTableRoot.js.map +1 -1
  230. package/esm/data/table/td/DataTableTd.d.ts +10 -0
  231. package/esm/data/table/td/DataTableTd.js +4 -2
  232. package/esm/data/table/td/DataTableTd.js.map +1 -1
  233. package/esm/data/table/th/DataTableTh.d.ts +10 -4
  234. package/esm/data/table/th/DataTableTh.js +25 -23
  235. package/esm/data/table/th/DataTableTh.js.map +1 -1
  236. package/esm/data/table/th/useTableColumnResize.d.ts +64 -0
  237. package/esm/data/table/th/useTableColumnResize.js +142 -0
  238. package/esm/data/table/th/useTableColumnResize.js.map +1 -0
  239. package/esm/data/table/thead/DataTableThead.context.d.ts +4 -0
  240. package/esm/data/table/thead/DataTableThead.context.js +8 -0
  241. package/esm/data/table/thead/DataTableThead.context.js.map +1 -0
  242. package/esm/data/table/thead/DataTableThead.js +3 -1
  243. package/esm/data/table/thead/DataTableThead.js.map +1 -1
  244. package/esm/data/table/tr/DataTableTr.js +4 -3
  245. package/esm/data/table/tr/DataTableTr.js.map +1 -1
  246. package/esm/data/token-filter/AutoSuggest.js +41 -10
  247. package/esm/data/token-filter/AutoSuggest.js.map +1 -1
  248. package/esm/data/token-filter/TokenFilter.d.ts +1 -0
  249. package/esm/data/token-filter/TokenFilter.js +1 -0
  250. package/esm/data/token-filter/TokenFilter.js.map +1 -1
  251. package/esm/data/toolbar/root/DataToolbarRoot.d.ts +6 -23
  252. package/esm/data/toolbar/root/DataToolbarRoot.js +9 -7
  253. package/esm/data/toolbar/root/DataToolbarRoot.js.map +1 -1
  254. package/esm/date/Date.Input.js +9 -10
  255. package/esm/date/Date.Input.js.map +1 -1
  256. package/esm/date/datepicker/hooks/useDatepicker.d.ts +12 -1
  257. package/esm/date/datepicker/hooks/useDatepicker.js +4 -3
  258. package/esm/date/datepicker/hooks/useDatepicker.js.map +1 -1
  259. package/esm/date/monthpicker/hooks/useMonthPicker.d.ts +11 -1
  260. package/esm/date/monthpicker/hooks/useMonthPicker.js +3 -2
  261. package/esm/date/monthpicker/hooks/useMonthPicker.js.map +1 -1
  262. package/esm/form/checkbox/CheckboxGroup.js +1 -1
  263. package/esm/form/checkbox/CheckboxGroup.js.map +1 -1
  264. package/esm/form/fieldset/Fieldset.d.ts +25 -5
  265. package/esm/form/fieldset/Fieldset.js +19 -2
  266. package/esm/form/fieldset/Fieldset.js.map +1 -1
  267. package/esm/form/radio/RadioGroup.js +1 -1
  268. package/esm/form/radio/RadioGroup.js.map +1 -1
  269. package/esm/index.d.ts +1 -1
  270. package/esm/index.js.map +1 -1
  271. package/esm/internal-header/InternalHeaderButton.d.ts +5 -0
  272. package/esm/internal-header/InternalHeaderButton.js +2 -2
  273. package/esm/internal-header/InternalHeaderButton.js.map +1 -1
  274. package/esm/read-more/ReadMore.d.ts +10 -0
  275. package/esm/read-more/ReadMore.js +4 -6
  276. package/esm/read-more/ReadMore.js.map +1 -1
  277. package/esm/types/index.d.ts +1 -1
  278. package/esm/types/index.js +1 -1
  279. package/esm/types/index.js.map +1 -1
  280. package/esm/utils/components/Listbox/group/ListboxGroup.js +2 -1
  281. package/esm/utils/components/Listbox/group/ListboxGroup.js.map +1 -1
  282. package/esm/utils/components/Listbox/input-slot/ListboxInputSlot.js +1 -1
  283. package/esm/utils/components/Listbox/input-slot/ListboxInputSlot.js.map +1 -1
  284. package/esm/utils/components/Listbox/option/ListboxOption.d.ts +24 -0
  285. package/esm/utils/components/Listbox/{item/ListboxItem.js → option/ListboxOption.js} +7 -7
  286. package/esm/utils/components/Listbox/option/ListboxOption.js.map +1 -0
  287. package/esm/utils/components/Listbox/options/ListboxOptions.d.ts +8 -0
  288. package/esm/utils/components/Listbox/{list/ListboxList.js → options/ListboxOptions.js} +8 -8
  289. package/esm/utils/components/Listbox/options/ListboxOptions.js.map +1 -0
  290. package/esm/utils/components/Listbox/root/ListboxRoot.d.ts +6 -6
  291. package/esm/utils/components/Listbox/root/ListboxRoot.js +29 -29
  292. package/esm/utils/components/Listbox/root/ListboxRoot.js.map +1 -1
  293. package/esm/utils/components/Listbox/root/domHelpers.d.ts +3 -3
  294. package/esm/utils/components/Listbox/root/domHelpers.js +7 -7
  295. package/esm/utils/components/Listbox/root/domHelpers.js.map +1 -1
  296. package/esm/utils/components/floating/Floating.d.ts +1 -1
  297. package/esm/utils/components/floating/Floating.js +1 -1
  298. package/esm/utils/components/floating/Floating.js.map +1 -1
  299. package/esm/utils/components/focus-boundary/FocusBoundary.d.ts +0 -1
  300. package/esm/utils/components/focus-boundary/FocusBoundary.js +1 -1
  301. package/esm/utils/components/focus-boundary/FocusBoundary.js.map +1 -1
  302. package/esm/utils/components/link-anchor/LinkAnchor.js +10 -0
  303. package/esm/utils/components/link-anchor/LinkAnchor.js.map +1 -1
  304. package/esm/utils/helpers/className.js +1 -1
  305. package/esm/utils/helpers/className.js.map +1 -1
  306. package/esm/utils/helpers/focus.d.ts +3 -1
  307. package/esm/utils/helpers/focus.js +2 -2
  308. package/esm/utils/helpers/focus.js.map +1 -1
  309. package/esm/utils/helpers/index.d.ts +9 -9
  310. package/esm/utils/helpers/index.js +9 -9
  311. package/esm/utils/helpers/index.js.map +1 -1
  312. package/esm/utils/hooks/index.d.ts +13 -13
  313. package/esm/utils/hooks/index.js +13 -13
  314. package/esm/utils/hooks/index.js.map +1 -1
  315. package/esm/utils/hooks/useScrollLock.js +41 -11
  316. package/esm/utils/hooks/useScrollLock.js.map +1 -1
  317. package/package.json +6 -6
  318. package/src/alert/base-alert/root/BaseAlertRoot.tsx +1 -1
  319. package/src/alert/info-card/index.ts +2 -0
  320. package/src/alert/info-card/message/InfoCardMessage.tsx +48 -0
  321. package/src/alert/info-card/root/InfoCardRoot.tsx +20 -1
  322. package/src/data/drag-and-drop/drag-handler/DragAndDropDragHandler.tsx +90 -0
  323. package/src/data/drag-and-drop/item/DragAndDropItem.tsx +71 -0
  324. package/src/data/drag-and-drop/root/DragAndDrop.context.tsx +25 -0
  325. package/src/data/drag-and-drop/root/DragAndDropRoot.tsx +245 -0
  326. package/src/data/drag-and-drop/types.ts +4 -0
  327. package/src/data/drag-and-drop-old/drag-handler/DataDragAndDropDragHandler.tsx +104 -0
  328. package/src/data/{drag-and-drop → drag-and-drop-old}/item/DataDragAndDropItem.tsx +6 -33
  329. package/src/data/{drag-and-drop → drag-and-drop-old}/root/DataDragAndDrop.context.tsx +2 -0
  330. package/src/data/{drag-and-drop → drag-and-drop-old}/root/DataDragAndDropRoot.tsx +6 -8
  331. package/src/data/table/empty-state/DataTableEmptyState.tsx +26 -0
  332. package/src/data/table/helpers/selection/getMultipleSelectProps.ts +70 -0
  333. package/src/data/table/helpers/selection/getSingleSelectProps.ts +33 -0
  334. package/src/data/table/helpers/selection/selection.types.ts +56 -0
  335. package/src/data/table/helpers/table-focus.ts +10 -1
  336. package/src/data/table/helpers/table-keyboard.ts +2 -6
  337. package/src/data/table/hooks/__tests__/useTableSelection.test.ts +327 -0
  338. package/src/data/table/{root → hooks}/useTableKeyboardNav.ts +2 -1
  339. package/src/data/table/hooks/useTableSelection.ts +78 -0
  340. package/src/data/table/loading-state/DataTableLoadingState.tsx +26 -0
  341. package/src/data/table/root/DataTable.types.ts +16 -0
  342. package/src/data/table/root/DataTableAuto.tsx +205 -0
  343. package/src/data/table/root/DataTableRoot.context.ts +3 -2
  344. package/src/data/table/root/DataTableRoot.tsx +46 -3
  345. package/src/data/table/td/DataTableTd.tsx +14 -1
  346. package/src/data/table/th/DataTableTh.tsx +48 -36
  347. package/src/data/table/th/useTableColumnResize.ts +276 -0
  348. package/src/data/table/thead/DataTableThead.context.ts +10 -0
  349. package/src/data/table/thead/DataTableThead.tsx +8 -5
  350. package/src/data/table/tr/DataTableTr.tsx +8 -3
  351. package/src/data/token-filter/AutoSuggest.tsx +76 -15
  352. package/src/data/token-filter/TokenFilter.tsx +1 -0
  353. package/src/data/toolbar/root/DataToolbarRoot.tsx +29 -32
  354. package/src/date/Date.Input.tsx +18 -17
  355. package/src/date/datepicker/hooks/useDatepicker.tsx +16 -6
  356. package/src/date/monthpicker/hooks/useMonthPicker.tsx +14 -5
  357. package/src/form/checkbox/CheckboxGroup.tsx +1 -1
  358. package/src/form/fieldset/Fieldset.tsx +31 -7
  359. package/src/form/radio/RadioGroup.tsx +1 -1
  360. package/src/index.ts +1 -0
  361. package/src/internal-header/InternalHeaderButton.tsx +18 -9
  362. package/src/read-more/ReadMore.tsx +15 -16
  363. package/src/types/index.ts +1 -1
  364. package/src/utils/components/Listbox/group/ListboxGroup.tsx +9 -2
  365. package/src/utils/components/Listbox/input-slot/ListboxInputSlot.tsx +1 -1
  366. package/src/utils/components/Listbox/{item/ListboxItem.tsx → option/ListboxOption.tsx} +14 -14
  367. package/src/utils/components/Listbox/{list/ListboxList.tsx → options/ListboxOptions.tsx} +10 -10
  368. package/src/utils/components/Listbox/root/ListboxRoot.tsx +31 -31
  369. package/src/utils/components/Listbox/root/domHelpers.ts +8 -7
  370. package/src/utils/components/floating/Floating.tsx +2 -2
  371. package/src/utils/components/focus-boundary/FocusBoundary.tsx +1 -2
  372. package/src/utils/components/link-anchor/LinkAnchor.tsx +11 -0
  373. package/src/utils/helpers/className.ts +1 -1
  374. package/src/utils/helpers/focus.ts +5 -2
  375. package/src/utils/helpers/index.ts +9 -9
  376. package/src/utils/hooks/index.ts +20 -13
  377. package/src/utils/hooks/useScrollLock.ts +57 -13
  378. package/cjs/data/action-bar/root/DataActionBarRoot.d.ts +0 -27
  379. package/cjs/data/action-bar/root/DataActionBarRoot.js +0 -49
  380. package/cjs/data/action-bar/root/DataActionBarRoot.js.map +0 -1
  381. package/cjs/data/drag-and-drop/item/DataDragAndDropItem.js.map +0 -1
  382. package/cjs/data/drag-and-drop/root/DataDragAndDrop.context.js.map +0 -1
  383. package/cjs/data/drag-and-drop/root/DataDragAndDropRoot.js.map +0 -1
  384. package/cjs/data/table/root/useTableKeyboardNav.js.map +0 -1
  385. package/cjs/utils/components/Listbox/item/ListboxItem.d.ts +0 -24
  386. package/cjs/utils/components/Listbox/item/ListboxItem.js.map +0 -1
  387. package/cjs/utils/components/Listbox/list/ListboxList.d.ts +0 -8
  388. package/cjs/utils/components/Listbox/list/ListboxList.js.map +0 -1
  389. package/esm/data/action-bar/root/DataActionBarRoot.d.ts +0 -27
  390. package/esm/data/action-bar/root/DataActionBarRoot.js +0 -43
  391. package/esm/data/action-bar/root/DataActionBarRoot.js.map +0 -1
  392. package/esm/data/drag-and-drop/item/DataDragAndDropItem.js.map +0 -1
  393. package/esm/data/drag-and-drop/root/DataDragAndDrop.context.js.map +0 -1
  394. package/esm/data/drag-and-drop/root/DataDragAndDropRoot.js.map +0 -1
  395. package/esm/data/table/root/useTableKeyboardNav.js.map +0 -1
  396. package/esm/utils/components/Listbox/item/ListboxItem.d.ts +0 -24
  397. package/esm/utils/components/Listbox/item/ListboxItem.js.map +0 -1
  398. package/esm/utils/components/Listbox/list/ListboxList.d.ts +0 -8
  399. package/esm/utils/components/Listbox/list/ListboxList.js.map +0 -1
  400. package/src/data/action-bar/root/DataActionBarRoot.tsx +0 -59
  401. /package/cjs/data/{drag-and-drop → drag-and-drop-old}/item/DataDragAndDropItem.d.ts +0 -0
  402. /package/cjs/data/{drag-and-drop → drag-and-drop-old}/root/DataDragAndDrop.context.d.ts +0 -0
  403. /package/cjs/data/{drag-and-drop → drag-and-drop-old}/root/DataDragAndDrop.context.js +0 -0
  404. /package/cjs/data/table/{root → hooks}/useTableKeyboardNav.d.ts +0 -0
  405. /package/esm/data/{drag-and-drop → drag-and-drop-old}/item/DataDragAndDropItem.d.ts +0 -0
  406. /package/esm/data/{drag-and-drop → drag-and-drop-old}/root/DataDragAndDrop.context.d.ts +0 -0
  407. /package/esm/data/{drag-and-drop → drag-and-drop-old}/root/DataDragAndDrop.context.js +0 -0
  408. /package/esm/data/table/{root → hooks}/useTableKeyboardNav.d.ts +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DragAndDropRoot.js","sourceRoot":"","sources":["../../../../src/data/drag-and-drop/root/DragAndDropRoot.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ export interface DragAndDropElement {
2
+ id: string;
3
+ index: number;
4
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/data/drag-and-drop/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,22 @@
1
+ import React from "react";
2
+ export interface DataDragAndDropDragHandlerProps {
3
+ /**
4
+ * Whether the drag handler is disabled
5
+ */
6
+ /**
7
+ * Wether dragging is done by keyboard. Used to conditionally render drag indicators.
8
+ */
9
+ keyboardDragging?: boolean;
10
+ /**
11
+ * Handle ref is forwarded to the button element serving as drag handle.
12
+ */
13
+ handleRef: React.Ref<HTMLDivElement>;
14
+ alt?: boolean;
15
+ }
16
+ /**
17
+ * DataDragAndDropDragHandler
18
+ *
19
+ * A button component that serves as a drag handle for drag and drop operations.
20
+ * Can be used to initiate dragging of elements in a data table or list.
21
+ */
22
+ export declare const DataDragAndDropDragHandler: React.ForwardRefExoticComponent<DataDragAndDropDragHandlerProps & React.RefAttributes<HTMLButtonElement>>;
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.DataDragAndDropDragHandler = void 0;
7
+ const react_1 = __importDefault(require("react"));
8
+ const aksel_icons_1 = require("@navikt/aksel-icons");
9
+ const Floating_1 = require("../../../utils/components/floating/Floating");
10
+ /**
11
+ * DataDragAndDropDragHandler
12
+ *
13
+ * A button component that serves as a drag handle for drag and drop operations.
14
+ * Can be used to initiate dragging of elements in a data table or list.
15
+ */
16
+ exports.DataDragAndDropDragHandler = react_1.default.forwardRef(({ keyboardDragging, handleRef, alt }) => {
17
+ if (alt) {
18
+ return (react_1.default.createElement("div", { className: "aksel-data-drag-and-drop__drag-handler__alt" },
19
+ keyboardDragging && (react_1.default.createElement("span", { className: "aksel-data-drag-and-drop__drag-handler__arrow", "data-direction": "up" },
20
+ react_1.default.createElement(aksel_icons_1.CaretUpCircleFillIcon, { "aria-hidden": true, fontSize: "1.2rem" }))),
21
+ react_1.default.createElement("div", { ref: handleRef, className: "aksel-data-drag-and-drop__drag-handler__button" },
22
+ react_1.default.createElement(aksel_icons_1.DragVerticalIcon, { "aria-hidden": true, title: "Dra for \u00E5 flytte", fontSize: "1.5rem" })),
23
+ keyboardDragging && (react_1.default.createElement("span", { className: "aksel-data-drag-and-drop__drag-handler__arrow", "data-direction": "down" },
24
+ react_1.default.createElement(aksel_icons_1.CaretDownCircleFillIcon, { "aria-hidden": true, fontSize: "1.2rem" })))));
25
+ }
26
+ return (react_1.default.createElement(Floating_1.Floating, null,
27
+ keyboardDragging && (react_1.default.createElement(Floating_1.Floating.Content, { side: "top", avoidCollisions: false, updatePositionStrategy: "always", className: "aksel-data-drag-and-drop__drag-handler__arrow" },
28
+ react_1.default.createElement(aksel_icons_1.CaretUpCircleFillIcon, { "aria-hidden": true, fontSize: "1.2rem" }))),
29
+ react_1.default.createElement(Floating_1.Floating.Anchor, { asChild: true },
30
+ react_1.default.createElement("div", { ref: handleRef, className: "aksel-data-drag-and-drop__drag-handler__button" },
31
+ react_1.default.createElement(aksel_icons_1.DragVerticalIcon, { "aria-hidden": true, title: "Dra for \u00E5 flytte", fontSize: "1.5rem" }))),
32
+ keyboardDragging && (react_1.default.createElement(Floating_1.Floating.Content, { avoidCollisions: false, updatePositionStrategy: "always", className: "aksel-data-drag-and-drop__drag-handler__arrow" },
33
+ react_1.default.createElement(aksel_icons_1.CaretDownCircleFillIcon, { "aria-hidden": true, fontSize: "1.2rem" })))));
34
+ });
35
+ //# sourceMappingURL=DataDragAndDropDragHandler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DataDragAndDropDragHandler.js","sourceRoot":"","sources":["../../../../src/data/drag-and-drop-old/drag-handler/DataDragAndDropDragHandler.tsx"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAC1B,qDAI6B;AAC7B,0EAAuE;AAmBvE;;;;;GAKG;AACU,QAAA,0BAA0B,GAAG,eAAK,CAAC,UAAU,CAGxD,CAAC,EAAE,gBAAgB,EAAE,SAAS,EAAE,GAAG,EAAE,EAAE,EAAE;IACzC,IAAI,GAAG,EAAE,CAAC;QACR,OAAO,CACL,uCAAK,SAAS,EAAC,6CAA6C;YACzD,gBAAgB,IAAI,CACnB,wCACE,SAAS,EAAC,+CAA+C,oBAC1C,IAAI;gBAEnB,8BAAC,mCAAqB,yBAAa,QAAQ,EAAC,QAAQ,GAAG,CAClD,CACR;YACD,uCACE,GAAG,EAAE,SAAS,EACd,SAAS,EAAC,gDAAgD;gBAE1D,8BAAC,8BAAgB,yBAEf,KAAK,EAAC,uBAAkB,EACxB,QAAQ,EAAC,QAAQ,GACjB,CACE;YACL,gBAAgB,IAAI,CACnB,wCACE,SAAS,EAAC,+CAA+C,oBAC1C,MAAM;gBAErB,8BAAC,qCAAuB,yBAAa,QAAQ,EAAC,QAAQ,GAAG,CACpD,CACR,CACG,CACP,CAAC;IACJ,CAAC;IAED,OAAO,CACL,8BAAC,mBAAQ;QACN,gBAAgB,IAAI,CACnB,8BAAC,mBAAQ,CAAC,OAAO,IACf,IAAI,EAAC,KAAK,EACV,eAAe,EAAE,KAAK,EACtB,sBAAsB,EAAC,QAAQ,EAC/B,SAAS,EAAC,+CAA+C;YAEzD,8BAAC,mCAAqB,yBAAa,QAAQ,EAAC,QAAQ,GAAG,CACtC,CACpB;QACD,8BAAC,mBAAQ,CAAC,MAAM,IAAC,OAAO;YACtB,uCACE,GAAG,EAAE,SAAS,EACd,SAAS,EAAC,gDAAgD;gBAE1D,8BAAC,8BAAgB,yBAEf,KAAK,EAAC,uBAAkB,EACxB,QAAQ,EAAC,QAAQ,GACjB,CACE,CACU;QACjB,gBAAgB,IAAI,CACnB,8BAAC,mBAAQ,CAAC,OAAO,IACf,eAAe,EAAE,KAAK,EACtB,sBAAsB,EAAC,QAAQ,EAC/B,SAAS,EAAC,+CAA+C;YAEzD,8BAAC,qCAAuB,yBAAa,QAAQ,EAAC,QAAQ,GAAG,CACxC,CACpB,CACQ,CACZ,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -47,10 +47,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
47
47
  exports.DataDragAndDropItem = void 0;
48
48
  const sortable_1 = require("@dnd-kit/react/sortable");
49
49
  const react_1 = __importStar(require("react"));
50
- const aksel_icons_1 = require("@navikt/aksel-icons");
51
50
  const stack_1 = require("../../../primitives/stack");
52
51
  const helpers_1 = require("../../../utils/helpers");
53
52
  const hooks_1 = require("../../../utils/hooks");
53
+ const DataDragAndDropDragHandler_1 = require("../drag-handler/DataDragAndDropDragHandler");
54
54
  const DataDragAndDrop_context_1 = require("../root/DataDragAndDrop.context");
55
55
  /**
56
56
  * TODO
@@ -78,12 +78,7 @@ const DataDragAndDropItem = react_1.default.forwardRef((_a, forwardedRef) => {
78
78
  const keyboardDragging = isDragging && (context === null || context === void 0 ? void 0 : context.inputMethod) === "keyboard";
79
79
  return (react_1.default.createElement(stack_1.HStack, { gap: "space-8", align: "center", wrap: false, asChild: true },
80
80
  react_1.default.createElement("div", Object.assign({ ref: mergedRef }, rest, { className: (0, helpers_1.cl)("aksel-data-table__drag-and-drop-item", className), "data-dragging": isDragging, "data-mouse-dragging": mouseDragging, "data-keyboard-dragging": keyboardDragging, "data-drop-target": mouseDropTarget, tabIndex: -1 }),
81
- react_1.default.createElement("div", { className: "aksel-data-table__drag-and-drop-item-drag-handler", ref: handleRef },
82
- keyboardDragging && (react_1.default.createElement("span", { className: "aksel-data-table__drag-and-drop-item-keyboard-drag-icon", "data-direction": "up" },
83
- react_1.default.createElement(aksel_icons_1.CaretUpCircleFillIcon, { "aria-hidden": true, fontSize: "1.2rem" }))),
84
- react_1.default.createElement(aksel_icons_1.DragVerticalIcon, { "aria-hidden": true, title: "Dra for \u00E5 flytte", fontSize: "1.5rem" }),
85
- keyboardDragging && (react_1.default.createElement("span", { className: "aksel-data-table__drag-and-drop-item-keyboard-drag-icon", "data-direction": "down" },
86
- react_1.default.createElement(aksel_icons_1.CaretDownCircleFillIcon, { "aria-hidden": true, fontSize: "1.2rem" })))),
81
+ react_1.default.createElement(DataDragAndDropDragHandler_1.DataDragAndDropDragHandler, { handleRef: handleRef, keyboardDragging: keyboardDragging, alt: true }),
87
82
  react_1.default.createElement("div", null, children))));
88
83
  });
89
84
  exports.DataDragAndDropItem = DataDragAndDropItem;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DataDragAndDropItem.js","sourceRoot":"","sources":["../../../../src/data/drag-and-drop-old/item/DataDragAndDropItem.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,sDAAsD;AACtD,+CAAsC;AACtC,qDAAmD;AACnD,oDAA4C;AAC5C,gDAAoD;AACpD,2FAAwF;AACxF,6EAAyE;AAczE;;;;;;;;;;GAUG;AACH,MAAM,mBAAmB,GAAG,eAAK,CAAC,UAAU,CAG1C,CAAC,EAA2C,EAAE,YAAY,EAAE,EAAE;QAA7D,EAAE,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,SAAS,OAAW,EAAN,IAAI,cAAzC,wCAA2C,CAAF;IAC1C,MAAM,SAAS,GAAG,IAAA,cAAM,EAAiB,IAAI,CAAC,CAAC;IAC/C,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,YAAY,EAAE,GAAG,IAAA,sBAAW,EAAC;QACpD,EAAE;QACF,KAAK;QACL,MAAM,EAAE,SAAS;KAClB,CAAC,CAAC;IACH,MAAM,SAAS,GAAG,IAAA,oBAAY,EAAC,GAAG,EAAE,YAAY,CAAC,CAAC;IAClD,MAAM,OAAO,GAAG,eAAK,CAAC,UAAU,CAAC,gDAAsB,CAAC,CAAC;IACzD,MAAM,aAAa,GAAG,UAAU,IAAI,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,WAAW,MAAK,OAAO,CAAC;IACrE,MAAM,eAAe,GAAG,YAAY,IAAI,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,WAAW,MAAK,OAAO,CAAC;IACzE,MAAM,gBAAgB,GAAG,UAAU,IAAI,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,WAAW,MAAK,UAAU,CAAC;IAE3E,OAAO,CACL,8BAAC,cAAM,IAAC,GAAG,EAAC,SAAS,EAAC,KAAK,EAAC,QAAQ,EAAC,IAAI,EAAE,KAAK,EAAE,OAAO;QAEvD,qDACE,GAAG,EAAE,SAAS,IACV,IAAI,IACR,SAAS,EAAE,IAAA,YAAE,EAAC,sCAAsC,EAAE,SAAS,CAAC,mBACjD,UAAU,yBACJ,aAAa,4BACV,gBAAgB,sBACtB,eAAe,EACjC,QAAQ,EAAE,CAAC,CAAC;YAEZ,8BAAC,uDAA0B,IACzB,SAAS,EAAE,SAAS,EACpB,gBAAgB,EAAE,gBAAgB,EAClC,GAAG,SACH;YACF,2CAAM,QAAQ,CAAO,CACjB,CACC,CACV,CAAC;AACJ,CAAC,CAAC,CAAC;AAGM,kDAAmB;AAD5B,kBAAe,mBAAmB,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DataDragAndDrop.context.js","sourceRoot":"","sources":["../../../../src/data/drag-and-drop-old/root/DataDragAndDrop.context.tsx"],"names":[],"mappings":";;;AAAA,iCAAsC;AAQzB,QAAA,sBAAsB,GAAG,IAAA,qBAAa,EAEjD,SAAS,CAAC,CAAC"}
@@ -1,10 +1,10 @@
1
1
  import React from "react";
2
2
  import DataDragAndDropItem, { DataDragAndDropItemProps } from "../item/DataDragAndDropItem";
3
- interface DataDragAndDropProps extends React.HTMLAttributes<HTMLTableElement> {
3
+ interface DataDragAndDropProps extends React.HTMLAttributes<HTMLDivElement> {
4
4
  children: any[];
5
5
  setItems: React.Dispatch<React.SetStateAction<any[]>>;
6
6
  }
7
- interface DataDragAndDropRootComponent extends React.ForwardRefExoticComponent<DataDragAndDropProps & React.RefAttributes<HTMLTableElement>> {
7
+ interface DataDragAndDropRootComponent extends React.ForwardRefExoticComponent<DataDragAndDropProps & React.RefAttributes<HTMLDivElement>> {
8
8
  /**
9
9
  * @see 🏷️ {@link DataDragAndDropItemProps}
10
10
  * * @example
@@ -83,17 +83,14 @@ const DataDragAndDrop = (0, react_2.forwardRef)((_a, forwardedRef) => {
83
83
  event.preventDefault();
84
84
  }
85
85
  }, onDragEnd: (event) => {
86
- var _a;
87
- if (((_a = event.operation.activatorEvent) === null || _a === void 0 ? void 0 : _a.type) === "pointerdown") {
88
- const { source, target } = event.operation;
89
- if (!(0, sortable_1.isSortable)(source) || !(0, sortable_1.isSortable)(target))
90
- return;
91
- setItemOrder(source.initialIndex, target.index);
92
- }
86
+ const { source, target } = event.operation;
87
+ if (!(0, sortable_1.isSortable)(source) || !(0, sortable_1.isSortable)(target))
88
+ return;
89
+ setItemOrder(source.initialIndex, target.index);
93
90
  } },
94
91
  react_2.default.createElement(stack_1.VStack, { asChild: true, gap: "space-12" },
95
92
  react_2.default.createElement("div", Object.assign({}, rest, { ref: forwardedRef }), children)),
96
- react_2.default.createElement(react_1.DragOverlay, null, (source) => {
93
+ react_2.default.createElement(react_1.DragOverlay, { dropAnimation: null }, (source) => {
97
94
  // Overlay not needed and causes glitching when using keyboard
98
95
  if (inputMethod === "keyboard")
99
96
  return null;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DataDragAndDropRoot.js","sourceRoot":"","sources":["../../../../src/data/drag-and-drop-old/root/DataDragAndDropRoot.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0CAA+D;AAC/D,sDAAqD;AACrD,+CAA0D;AAC1D,qDAAmD;AACnD,sFAEqC;AAuFX,8BAzFnB,6BAAmB,CAyFmB;AAtF7C,uEAAmE;AAwBnE,MAAM,eAAe,GAAG,IAAA,kBAAU,EAChC,CAAC,EAA+B,EAAE,YAAY,EAAE,EAAE;QAAjD,EAAE,QAAQ,EAAE,QAAQ,OAAW,EAAN,IAAI,cAA7B,wBAA+B,CAAF;IAC5B,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,eAAK,CAAC,QAAQ,CAElD,IAAI,CAAC,CAAC;IAER,MAAM,YAAY,GAAG,CAAC,WAAmB,EAAE,WAAmB,EAAE,EAAE;QAChE,QAAQ,CAAC,CAAC,KAAK,EAAE,EAAE;YACjB,MAAM,QAAQ,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC;YAC5B,MAAM,CAAC,SAAS,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;YACpD,QAAQ,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,EAAE,SAAS,CAAC,CAAC;YAC3C,OAAO,QAAQ,CAAC;QAClB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,OAAO,CACL,8BAAC,gDAAsB,CAAC,QAAQ,IAAC,KAAK,EAAE,EAAE,WAAW,EAAE;QACrD,8BAAC,wBAAgB;QACf,2EAA2E;;YAA3E,2EAA2E;YAC3E,iBAAiB,EAAE,CAAC,KAAK,EAAE,EAAE;;gBAC3B,OAAA,cAAc,CACZ,CAAA,MAAA,KAAK,CAAC,SAAS,CAAC,cAAc,0CAAE,IAAI,MAAK,aAAa;oBACpD,CAAC,CAAC,OAAO;oBACT,CAAC,CAAC,UAAU,CACf,CAAA;aAAA,EAEH,UAAU,EAAE,CAAC,KAAK,EAAE,EAAE;;gBACpB,IAAI,CAAA,MAAA,KAAK,CAAC,SAAS,CAAC,cAAc,0CAAE,IAAI,MAAK,aAAa,EAAE,CAAC;oBAC3D,0GAA0G;oBAC1G,KAAK,CAAC,cAAc,EAAE,CAAC;gBACzB,CAAC;YACH,CAAC,EACD,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE;gBACnB,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC,SAAS,CAAC;gBAC3C,IAAI,CAAC,IAAA,qBAAU,EAAC,MAAM,CAAC,IAAI,CAAC,IAAA,qBAAU,EAAC,MAAM,CAAC;oBAAE,OAAO;gBACvD,YAAY,CAAC,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;YAClD,CAAC;YAED,8BAAC,cAAM,IAAC,OAAO,QAAC,GAAG,EAAC,UAAU;gBAC5B,uDAAS,IAAI,IAAE,GAAG,EAAE,YAAY,KAC7B,QAAQ,CACL,CACC;YACT,8BAAC,mBAAW,IAAC,aAAa,EAAE,IAAI,IAC7B,CAAC,MAAM,EAAE,EAAE;gBACV,8DAA8D;gBAC9D,IAAI,WAAW,KAAK,UAAU;oBAAE,OAAO,IAAI,CAAC;gBAC5C,IAAI,CAAC,IAAA,qBAAU,EAAC,MAAM,CAAC;oBAAE,OAAO,IAAI,CAAC;gBACrC,IAAI,IAAA,sBAAc,EAAC,QAAQ,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC;oBAClD,OAAO,QAAQ,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;gBACvC,CAAC;gBACD,OAAO,IAAI,CAAC;YACd,CAAC,CACW,CACG,CACa,CACnC,CAAC;AACJ,CAAC,CAC8B,CAAC;AAIzB,0CAAe;AAFxB,eAAe,CAAC,IAAI,GAAG,6BAAmB,CAAC;AAG3C,kBAAe,eAAe,CAAC"}
@@ -0,0 +1,5 @@
1
+ import React from "react";
2
+ type DataTableEmptyStateProps = React.HTMLAttributes<HTMLDivElement>;
3
+ declare const DataTableEmptyState: React.ForwardRefExoticComponent<DataTableEmptyStateProps & React.RefAttributes<HTMLDivElement>>;
4
+ export { DataTableEmptyState };
5
+ export type { DataTableEmptyStateProps };
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __rest = (this && this.__rest) || function (s, e) {
36
+ var t = {};
37
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
38
+ t[p] = s[p];
39
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
40
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
41
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
42
+ t[p[i]] = s[p[i]];
43
+ }
44
+ return t;
45
+ };
46
+ Object.defineProperty(exports, "__esModule", { value: true });
47
+ exports.DataTableEmptyState = void 0;
48
+ const react_1 = __importStar(require("react"));
49
+ const helpers_1 = require("../../../utils/helpers");
50
+ const DataTableEmptyState = (0, react_1.forwardRef)((_a, forwardedRef) => {
51
+ var { className, children } = _a, rest = __rest(_a, ["className", "children"]);
52
+ return (react_1.default.createElement("tr", null,
53
+ react_1.default.createElement("td", { colSpan: 999 },
54
+ react_1.default.createElement("div", Object.assign({}, rest, { ref: forwardedRef, className: (0, helpers_1.cl)("aksel-data-table__empty-state", className) }), children))));
55
+ });
56
+ exports.DataTableEmptyState = DataTableEmptyState;
57
+ //# sourceMappingURL=DataTableEmptyState.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DataTableEmptyState.js","sourceRoot":"","sources":["../../../../src/data/table/empty-state/DataTableEmptyState.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAA0C;AAC1C,oDAA4C;AAI5C,MAAM,mBAAmB,GAAG,IAAA,kBAAU,EAGpC,CAAC,EAAgC,EAAE,YAAY,EAAE,EAAE;QAAlD,EAAE,SAAS,EAAE,QAAQ,OAAW,EAAN,IAAI,cAA9B,yBAAgC,CAAF;IAC/B,OAAO,CACL;QACE,sCAAI,OAAO,EAAE,GAAG;YACd,uDACM,IAAI,IACR,GAAG,EAAE,YAAY,EACjB,SAAS,EAAE,IAAA,YAAE,EAAC,+BAA+B,EAAE,SAAS,CAAC,KAExD,QAAQ,CACL,CACH,CACF,CACN,CAAC;AACJ,CAAC,CAAC,CAAC;AAEM,kDAAmB"}
@@ -0,0 +1,14 @@
1
+ import type { CheckboxProps } from "../../../../form/checkbox/types";
2
+ import type { SelectionT } from "./selection.types";
3
+ type GetMultipleSelectPropsArgs = {
4
+ selectedKeys: SelectionT;
5
+ setSelectedKeys: (keys: SelectionT) => void;
6
+ disabledKeys: (string | number)[];
7
+ allKeys: (string | number)[];
8
+ totalCount: number;
9
+ };
10
+ declare function getMultipleSelectProps({ selectedKeys, setSelectedKeys, disabledKeys, allKeys, totalCount, }: GetMultipleSelectPropsArgs): {
11
+ getTheadCheckboxProps: () => CheckboxProps;
12
+ getRowCheckboxProps: (key: string | number) => CheckboxProps;
13
+ };
14
+ export { getMultipleSelectProps };
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getMultipleSelectProps = getMultipleSelectProps;
4
+ function getMultipleSelectProps({ selectedKeys, setSelectedKeys, disabledKeys, allKeys, totalCount, }) {
5
+ const handleToggleAll = () => {
6
+ const allSelected = selectedKeys === "all" ||
7
+ (Array.isArray(selectedKeys) && selectedKeys.length === totalCount);
8
+ setSelectedKeys(allSelected ? [] : allKeys);
9
+ };
10
+ const handleToggleRow = (key) => {
11
+ if (selectedKeys === "all") {
12
+ setSelectedKeys(allKeys.filter((id) => id !== key));
13
+ }
14
+ else if (selectedKeys.includes(key)) {
15
+ setSelectedKeys(selectedKeys.filter((k) => k !== key));
16
+ }
17
+ else {
18
+ setSelectedKeys([...selectedKeys, key]);
19
+ }
20
+ };
21
+ const isChecked = (key) => selectedKeys === "all" ||
22
+ (Array.isArray(selectedKeys) && selectedKeys.includes(key));
23
+ return {
24
+ getTheadCheckboxProps: () => {
25
+ const indeterminate = Array.isArray(selectedKeys) &&
26
+ selectedKeys.length > 0 &&
27
+ selectedKeys.length < totalCount;
28
+ return {
29
+ children: "Select all rows",
30
+ onChange: handleToggleAll,
31
+ checked: (selectedKeys === "all" ||
32
+ (Array.isArray(selectedKeys) && selectedKeys.length > 0)) &&
33
+ !indeterminate,
34
+ indeterminate,
35
+ disabled: disabledKeys.length === totalCount,
36
+ hideLabel: true,
37
+ };
38
+ },
39
+ getRowCheckboxProps: (key) => ({
40
+ children: `Select row with id ${key}`,
41
+ onChange: () => handleToggleRow(key),
42
+ checked: isChecked(key),
43
+ disabled: disabledKeys.includes(key),
44
+ hideLabel: true,
45
+ }),
46
+ };
47
+ }
48
+ //# sourceMappingURL=getMultipleSelectProps.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getMultipleSelectProps.js","sourceRoot":"","sources":["../../../../../src/data/table/helpers/selection/getMultipleSelectProps.ts"],"names":[],"mappings":";;AAqES,wDAAsB;AA1D/B,SAAS,sBAAsB,CAAC,EAC9B,YAAY,EACZ,eAAe,EACf,YAAY,EACZ,OAAO,EACP,UAAU,GACiB;IAC3B,MAAM,eAAe,GAAG,GAAG,EAAE;QAC3B,MAAM,WAAW,GACf,YAAY,KAAK,KAAK;YACtB,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,YAAY,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC;QAEtE,eAAe,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IAC9C,CAAC,CAAC;IAEF,MAAM,eAAe,GAAG,CAAC,GAAoB,EAAE,EAAE;QAC/C,IAAI,YAAY,KAAK,KAAK,EAAE,CAAC;YAC3B,eAAe,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;QACtD,CAAC;aAAM,IAAI,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YACtC,eAAe,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;QACzD,CAAC;aAAM,CAAC;YACN,eAAe,CAAC,CAAC,GAAG,YAAY,EAAE,GAAG,CAAC,CAAC,CAAC;QAC1C,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,SAAS,GAAG,CAAC,GAAoB,EAAE,EAAE,CACzC,YAAY,KAAK,KAAK;QACtB,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;IAE9D,OAAO;QACL,qBAAqB,EAAE,GAAkB,EAAE;YACzC,MAAM,aAAa,GACjB,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC;gBAC3B,YAAY,CAAC,MAAM,GAAG,CAAC;gBACvB,YAAY,CAAC,MAAM,GAAG,UAAU,CAAC;YAEnC,OAAO;gBACL,QAAQ,EAAE,iBAAiB;gBAC3B,QAAQ,EAAE,eAAe;gBACzB,OAAO,EACL,CAAC,YAAY,KAAK,KAAK;oBACrB,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;oBAC3D,CAAC,aAAa;gBAChB,aAAa;gBACb,QAAQ,EAAE,YAAY,CAAC,MAAM,KAAK,UAAU;gBAC5C,SAAS,EAAE,IAAI;aAChB,CAAC;QACJ,CAAC;QACD,mBAAmB,EAAE,CAAC,GAAoB,EAAiB,EAAE,CAAC,CAAC;YAC7D,QAAQ,EAAE,sBAAsB,GAAG,EAAE;YACrC,QAAQ,EAAE,GAAG,EAAE,CAAC,eAAe,CAAC,GAAG,CAAC;YACpC,OAAO,EAAE,SAAS,CAAC,GAAG,CAAC;YACvB,QAAQ,EAAE,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC;YACpC,SAAS,EAAE,IAAI;SAChB,CAAC;KACH,CAAC;AACJ,CAAC"}
@@ -0,0 +1,10 @@
1
+ import type { RadioProps } from "../../../../form/radio/types";
2
+ type GetSingleSelectPropsArgs = {
3
+ selectedKeys: (string | number)[];
4
+ setSelectedKeys: (keys: (string | number)[]) => void;
5
+ disabledKeys: (string | number)[];
6
+ };
7
+ declare function getSingleSelectProps({ selectedKeys, setSelectedKeys, disabledKeys, }: GetSingleSelectPropsArgs): {
8
+ getRowRadioProps: (key: string | number) => RadioProps;
9
+ };
10
+ export { getSingleSelectProps };
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getSingleSelectProps = getSingleSelectProps;
4
+ function getSingleSelectProps({ selectedKeys, setSelectedKeys, disabledKeys, }) {
5
+ const handleSelectionChange = (key) => {
6
+ if (selectedKeys.includes(key)) {
7
+ setSelectedKeys([]);
8
+ }
9
+ else {
10
+ setSelectedKeys([key]);
11
+ }
12
+ };
13
+ return {
14
+ getRowRadioProps: (key) => ({
15
+ children: `Select row with id ${key}`,
16
+ checked: selectedKeys.includes(key),
17
+ onChange: () => handleSelectionChange(key),
18
+ disabled: disabledKeys.includes(key),
19
+ value: key,
20
+ }),
21
+ };
22
+ }
23
+ //# sourceMappingURL=getSingleSelectProps.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getSingleSelectProps.js","sourceRoot":"","sources":["../../../../../src/data/table/helpers/selection/getSingleSelectProps.ts"],"names":[],"mappings":";;AAgCS,oDAAoB;AAxB7B,SAAS,oBAAoB,CAAC,EAC5B,YAAY,EACZ,eAAe,EACf,YAAY,GACa;IACzB,MAAM,qBAAqB,GAAG,CAAC,GAAoB,EAAE,EAAE;QACrD,IAAI,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YAC/B,eAAe,CAAC,EAAE,CAAC,CAAC;QACtB,CAAC;aAAM,CAAC;YACN,eAAe,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACzB,CAAC;IACH,CAAC,CAAC;IAEF,OAAO;QACL,gBAAgB,EAAE,CAAC,GAAoB,EAAc,EAAE,CAAC,CAAC;YACvD,QAAQ,EAAE,sBAAsB,GAAG,EAAE;YACrC,OAAO,EAAE,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC;YACnC,QAAQ,EAAE,GAAG,EAAE,CAAC,qBAAqB,CAAC,GAAG,CAAC;YAC1C,QAAQ,EAAE,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC;YACpC,KAAK,EAAE,GAAG;SACX,CAAC;KACH,CAAC;AACJ,CAAC"}
@@ -0,0 +1,42 @@
1
+ import type { CheckboxProps } from "../../../../form/checkbox/types";
2
+ import type { RadioProps } from "../../../../form/radio/types";
3
+ type SelectionT = (string | number)[] | "all";
4
+ type SelectionProps = {
5
+ /**
6
+ * Enables selection of rows.
7
+ *
8
+ * When set to "single", only one row can be selected at a time (renders radio buttons).
9
+ *
10
+ * When set to "multiple", multiple rows can be selected (renders checkboxes).
11
+ *
12
+ * @default "none"
13
+ */
14
+ selectionMode?: "none" | "single" | "multiple";
15
+ selectedKeys?: SelectionT;
16
+ defaultSelectedKeys?: SelectionT;
17
+ onSelectionChange?: (keys: SelectionT) => void;
18
+ disabledKeys?: (string | number)[];
19
+ };
20
+ type NoneSelection = {
21
+ selectionMode: "none";
22
+ allKeys: (string | number)[];
23
+ selectedKeys: (string | number)[];
24
+ disabledKeys: (string | number)[];
25
+ };
26
+ type SingleSelection = {
27
+ selectionMode: "single";
28
+ allKeys: (string | number)[];
29
+ selectedKeys: (string | number)[];
30
+ disabledKeys: (string | number)[];
31
+ getRowRadioProps: (key: string | number) => RadioProps;
32
+ };
33
+ type MultipleSelection = {
34
+ selectionMode: "multiple";
35
+ allKeys: (string | number)[];
36
+ selectedKeys: SelectionT;
37
+ disabledKeys: (string | number)[];
38
+ getTheadCheckboxProps: () => CheckboxProps;
39
+ getRowCheckboxProps: (key: string | number) => CheckboxProps;
40
+ };
41
+ type TableSelection = NoneSelection | SingleSelection | MultipleSelection;
42
+ export type { MultipleSelection, NoneSelection, SelectionProps, SelectionT, SingleSelection, TableSelection, };
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=selection.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"selection.types.js","sourceRoot":"","sources":["../../../../../src/data/table/helpers/selection/selection.types.ts"],"names":[],"mappings":""}
@@ -41,7 +41,9 @@ function restoreTabIndex(cell) {
41
41
  */
42
42
  function findFocusableElementInCell(cell) {
43
43
  const el = cell;
44
- if (!el || isHiddenElement(el)) {
44
+ if (!el ||
45
+ isHiddenElement(el) ||
46
+ el.hasAttribute("data-block-keyboard-nav")) {
45
47
  return null;
46
48
  }
47
49
  const focusables = el.querySelectorAll('button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"]), [contenteditable="true"]');
@@ -50,6 +52,10 @@ function findFocusableElementInCell(cell) {
50
52
  }
51
53
  for (let i = 0; i < focusables.length; i += 1) {
52
54
  const focusable = focusables[i];
55
+ /* Ignore element if it has [data-block-keyboard-nav="true"] */
56
+ if (focusable.hasAttribute("data-block-keyboard-nav")) {
57
+ continue;
58
+ }
53
59
  if (!isHiddenElement(focusable) && !isDisabledElement(focusable)) {
54
60
  return focusable;
55
61
  }
@@ -1 +1 @@
1
- {"version":3,"file":"table-focus.js","sourceRoot":"","sources":["../../../../src/data/table/helpers/table-focus.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"table-focus.js","sourceRoot":"","sources":["../../../../src/data/table/helpers/table-focus.ts"],"names":[],"mappings":"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"}
@@ -30,7 +30,6 @@ declare function getNavigationAction(event: KeyboardEvent): NavigationAction | n
30
30
  * - Select arrow down/up for opening popup
31
31
  * - User is navigating inside multiline textarea
32
32
  * - contenteditable attrb is in use
33
- * - element has attribute data-block-keyboard-nav="true"
34
33
  */
35
34
  declare function shouldBlockNavigation(event: KeyboardEvent): boolean;
36
35
  export { getNavigationAction, shouldBlockNavigation };
@@ -41,7 +41,6 @@ function getNavigationAction(event) {
41
41
  * - Select arrow down/up for opening popup
42
42
  * - User is navigating inside multiline textarea
43
43
  * - contenteditable attrb is in use
44
- * - element has attribute data-block-keyboard-nav="true"
45
44
  */
46
45
  function shouldBlockNavigation(event) {
47
46
  const key = event.key;
@@ -56,7 +55,7 @@ function shouldBlockNavigation(event) {
56
55
  return true;
57
56
  }
58
57
  /* If not any of these elements, assume "safe" to navigate */
59
- const editable = el.closest('input, textarea, select, [contenteditable="true"], [data-block-keyboard-nav="true"]');
58
+ const editable = el.closest('input, textarea, select, [contenteditable="true"]');
60
59
  if (!editable) {
61
60
  return false;
62
61
  }
@@ -72,8 +71,7 @@ function shouldBlockNavigation(event) {
72
71
  }
73
72
  return false;
74
73
  }
75
- return (editable.hasAttribute("contenteditable") ||
76
- editable.hasAttribute("data-block-keyboard-nav"));
74
+ return editable.hasAttribute("contenteditable");
77
75
  }
78
76
  function shouldBlockInputArrow(input, key) {
79
77
  if (input.type === "checkbox" || input.type === "radio") {
@@ -1 +1 @@
1
- {"version":3,"file":"table-keyboard.js","sourceRoot":"","sources":["../../../../src/data/table/helpers/table-keyboard.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"table-keyboard.js","sourceRoot":"","sources":["../../../../src/data/table/helpers/table-keyboard.ts"],"names":[],"mappings":"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"}
@@ -7,7 +7,7 @@ const table_cell_1 = require("../helpers/table-cell");
7
7
  const table_focus_1 = require("../helpers/table-focus");
8
8
  const table_grid_nav_1 = require("../helpers/table-grid-nav");
9
9
  const table_keyboard_1 = require("../helpers/table-keyboard");
10
- const useGridCache_1 = require("../hooks/useGridCache");
10
+ const useGridCache_1 = require("./useGridCache");
11
11
  function useTableKeyboardNav(tableRef, { enabled, shouldBlockNavigation: customBlockFn }) {
12
12
  const { getTableGrid, activeCell, setActiveCell } = (0, useGridCache_1.useGridCache)(tableRef, enabled);
13
13
  /**
@@ -83,6 +83,7 @@ function useTableKeyboardNav(tableRef, { enabled, shouldBlockNavigation: customB
83
83
  /**
84
84
  * When focus is moved to elements inside a cell like inputs, checkbox etc
85
85
  * we want to update the active cell to the parent td/th, so that keyboard navigation continues to work as expected from there.
86
+ * Make sure td/th elements have tabIndex={-1} so they can receive focus on click
86
87
  */
87
88
  const handleTableFocusIn = (0, hooks_1.useEventCallback)((event) => {
88
89
  var _a;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useTableKeyboardNav.js","sourceRoot":"","sources":["../../../../src/data/table/hooks/useTableKeyboardNav.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import type { SelectionProps, SelectionT, TableSelection } from "../helpers/selection/selection.types";
2
+ type UseTableSelectionArgs<T> = SelectionProps & {
3
+ data: T[];
4
+ getRowId: (rowData: T, index: number) => string | number;
5
+ };
6
+ declare function useTableSelection<T>({ selectionMode, defaultSelectedKeys, selectedKeys: selectedKeysProp, onSelectionChange, disabledKeys, data, getRowId, }: UseTableSelectionArgs<T>): TableSelection;
7
+ export { useTableSelection };
8
+ export type { SelectionProps, SelectionT };
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useTableSelection = useTableSelection;
4
+ const react_1 = require("react");
5
+ const hooks_1 = require("../../../utils/hooks");
6
+ const getMultipleSelectProps_1 = require("../helpers/selection/getMultipleSelectProps");
7
+ const getSingleSelectProps_1 = require("../helpers/selection/getSingleSelectProps");
8
+ function useTableSelection({ selectionMode = "none", defaultSelectedKeys, selectedKeys: selectedKeysProp, onSelectionChange, disabledKeys = [], data, getRowId, }) {
9
+ const allKeys = (0, react_1.useMemo)(() => data.map((item, index) => getRowId(item, index)), [data, getRowId]);
10
+ const [selectedKeys, setSelectedKeys] = (0, hooks_1.useControllableState)({
11
+ value: selectionMode !== "none" ? selectedKeysProp : undefined,
12
+ defaultValue: defaultSelectedKeys !== null && defaultSelectedKeys !== void 0 ? defaultSelectedKeys : [],
13
+ onChange: onSelectionChange,
14
+ });
15
+ if (selectionMode === "none") {
16
+ return { selectionMode, allKeys, selectedKeys: [], disabledKeys };
17
+ }
18
+ if (selectionMode === "single") {
19
+ const arrayKeys = Array.isArray(selectedKeys) ? selectedKeys : [];
20
+ const { getRowRadioProps } = (0, getSingleSelectProps_1.getSingleSelectProps)({
21
+ selectedKeys: arrayKeys,
22
+ setSelectedKeys,
23
+ disabledKeys,
24
+ });
25
+ return {
26
+ selectionMode,
27
+ allKeys,
28
+ selectedKeys: arrayKeys,
29
+ disabledKeys,
30
+ getRowRadioProps,
31
+ };
32
+ }
33
+ const { getTheadCheckboxProps, getRowCheckboxProps } = (0, getMultipleSelectProps_1.getMultipleSelectProps)({
34
+ selectedKeys,
35
+ setSelectedKeys,
36
+ disabledKeys,
37
+ allKeys,
38
+ totalCount: data.length,
39
+ });
40
+ return {
41
+ selectionMode,
42
+ allKeys,
43
+ selectedKeys,
44
+ disabledKeys,
45
+ getTheadCheckboxProps,
46
+ getRowCheckboxProps,
47
+ };
48
+ }
49
+ //# sourceMappingURL=useTableSelection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useTableSelection.js","sourceRoot":"","sources":["../../../../src/data/table/hooks/useTableSelection.ts"],"names":[],"mappings":";;AA4ES,8CAAiB;AA5E1B,iCAAgC;AAChC,gDAA4D;AAC5D,wFAAqF;AACrF,oFAAiF;AAYjF,SAAS,iBAAiB,CAAI,EAC5B,aAAa,GAAG,MAAM,EACtB,mBAAmB,EACnB,YAAY,EAAE,gBAAgB,EAC9B,iBAAiB,EACjB,YAAY,GAAG,EAAE,EACjB,IAAI,EACJ,QAAQ,GACiB;IACzB,MAAM,OAAO,GAAG,IAAA,eAAO,EACrB,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,EACtD,CAAC,IAAI,EAAE,QAAQ,CAAC,CACjB,CAAC;IAEF,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,IAAA,4BAAoB,EAAa;QACvE,KAAK,EAAE,aAAa,KAAK,MAAM,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS;QAC9D,YAAY,EAAE,mBAAmB,aAAnB,mBAAmB,cAAnB,mBAAmB,GAAI,EAAE;QACvC,QAAQ,EAAE,iBAAiB;KAC5B,CAAC,CAAC;IAEH,IAAI,aAAa,KAAK,MAAM,EAAE,CAAC;QAC7B,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,YAAY,EAAE,EAAE,EAAE,YAAY,EAAE,CAAC;IACpE,CAAC;IAED,IAAI,aAAa,KAAK,QAAQ,EAAE,CAAC;QAC/B,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;QAClE,MAAM,EAAE,gBAAgB,EAAE,GAAG,IAAA,2CAAoB,EAAC;YAChD,YAAY,EAAE,SAAS;YACvB,eAAe;YACf,YAAY;SACb,CAAC,CAAC;QAEH,OAAO;YACL,aAAa;YACb,OAAO;YACP,YAAY,EAAE,SAAS;YACvB,YAAY;YACZ,gBAAgB;SACjB,CAAC;IACJ,CAAC;IAED,MAAM,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,GAAG,IAAA,+CAAsB,EAC3E;QACE,YAAY;QACZ,eAAe;QACf,YAAY;QACZ,OAAO;QACP,UAAU,EAAE,IAAI,CAAC,MAAM;KACxB,CACF,CAAC;IAEF,OAAO;QACL,aAAa;QACb,OAAO;QACP,YAAY;QACZ,YAAY;QACZ,qBAAqB;QACrB,mBAAmB;KACpB,CAAC;AACJ,CAAC"}
@@ -0,0 +1,5 @@
1
+ import React from "react";
2
+ type DataTableLoadingStateProps = React.HTMLAttributes<HTMLDivElement>;
3
+ declare const DataTableLoadingState: React.ForwardRefExoticComponent<DataTableLoadingStateProps & React.RefAttributes<HTMLDivElement>>;
4
+ export { DataTableLoadingState };
5
+ export type { DataTableLoadingStateProps };