@navikt/ds-react 8.9.1 → 8.10.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (408) hide show
  1. package/cjs/alert/base-alert/content/BaseAlertContent.js +4 -1
  2. package/cjs/alert/base-alert/content/BaseAlertContent.js.map +1 -1
  3. package/cjs/data/drag-and-drop/drag-handler/DragAndDropDragHandler.d.ts +3 -1
  4. package/cjs/data/drag-and-drop/drag-handler/DragAndDropDragHandler.js +38 -19
  5. package/cjs/data/drag-and-drop/drag-handler/DragAndDropDragHandler.js.map +1 -1
  6. package/cjs/data/drag-and-drop/item/DragAndDropItem.d.ts +3 -2
  7. package/cjs/data/drag-and-drop/item/DragAndDropItem.js +6 -4
  8. package/cjs/data/drag-and-drop/item/DragAndDropItem.js.map +1 -1
  9. package/cjs/data/drag-and-drop/root/DragAndDrop.context.d.ts +2 -2
  10. package/cjs/data/drag-and-drop/root/DragAndDropRoot.d.ts +7 -32
  11. package/cjs/data/drag-and-drop/root/DragAndDropRoot.js +73 -46
  12. package/cjs/data/drag-and-drop/root/DragAndDropRoot.js.map +1 -1
  13. package/cjs/data/drag-and-drop/types.d.ts +4 -0
  14. package/cjs/data/table/base-cell/DataTableBaseCell.d.ts +46 -0
  15. package/cjs/data/table/base-cell/DataTableBaseCell.js +63 -0
  16. package/cjs/data/table/base-cell/DataTableBaseCell.js.map +1 -0
  17. package/cjs/data/table/column-header/DataTableColumnHeader.d.ts +31 -0
  18. package/cjs/data/table/column-header/DataTableColumnHeader.js +107 -0
  19. package/cjs/data/table/column-header/DataTableColumnHeader.js.map +1 -0
  20. package/cjs/data/table/column-header/useTableColumnResize.js.map +1 -0
  21. package/cjs/data/table/empty-state/DataTableEmptyState.d.ts +6 -2
  22. package/cjs/data/table/empty-state/DataTableEmptyState.js +2 -2
  23. package/cjs/data/table/empty-state/DataTableEmptyState.js.map +1 -1
  24. package/cjs/data/table/helpers/selection/getMultipleSelectProps.d.ts +7 -7
  25. package/cjs/data/table/helpers/selection/getMultipleSelectProps.js +29 -28
  26. package/cjs/data/table/helpers/selection/getMultipleSelectProps.js.map +1 -1
  27. package/cjs/data/table/helpers/selection/getSingleSelectProps.d.ts +5 -3
  28. package/cjs/data/table/helpers/selection/getSingleSelectProps.js +8 -12
  29. package/cjs/data/table/helpers/selection/getSingleSelectProps.js.map +1 -1
  30. package/cjs/data/table/helpers/selection/selection.types.d.ts +39 -16
  31. package/cjs/data/table/helpers/table-keyboard.js +3 -0
  32. package/cjs/data/table/helpers/table-keyboard.js.map +1 -1
  33. package/cjs/data/table/hooks/useColumnOptions.d.ts +19 -0
  34. package/cjs/data/table/hooks/useColumnOptions.js +19 -0
  35. package/cjs/data/table/hooks/useColumnOptions.js.map +1 -0
  36. package/cjs/data/table/hooks/useTableExpansion.d.ts +26 -0
  37. package/cjs/data/table/hooks/useTableExpansion.js +68 -0
  38. package/cjs/data/table/hooks/useTableExpansion.js.map +1 -0
  39. package/cjs/data/table/hooks/useTableKeyboardNav.d.ts +2 -1
  40. package/cjs/data/table/hooks/useTableKeyboardNav.js +3 -1
  41. package/cjs/data/table/hooks/useTableKeyboardNav.js.map +1 -1
  42. package/cjs/data/table/hooks/useTableSelection.d.ts +14 -7
  43. package/cjs/data/table/hooks/useTableSelection.js +40 -27
  44. package/cjs/data/table/hooks/useTableSelection.js.map +1 -1
  45. package/cjs/data/table/hooks/useTableSort.d.ts +37 -0
  46. package/cjs/data/table/hooks/useTableSort.js +49 -0
  47. package/cjs/data/table/hooks/useTableSort.js.map +1 -0
  48. package/cjs/data/table/loading-state/DataTableLoadingState.d.ts +6 -2
  49. package/cjs/data/table/loading-state/DataTableLoadingState.js +2 -2
  50. package/cjs/data/table/loading-state/DataTableLoadingState.js.map +1 -1
  51. package/cjs/data/table/root/DataTable.types.d.ts +55 -4
  52. package/cjs/data/table/root/DataTableAuto.d.ts +97 -1
  53. package/cjs/data/table/root/DataTableAuto.js +92 -39
  54. package/cjs/data/table/root/DataTableAuto.js.map +1 -1
  55. package/cjs/data/table/root/DataTableRoot.context.d.ts +22 -1
  56. package/cjs/data/table/root/DataTableRoot.context.js +7 -1
  57. package/cjs/data/table/root/DataTableRoot.context.js.map +1 -1
  58. package/cjs/data/table/root/DataTableRoot.d.ts +0 -6
  59. package/cjs/data/table/root/DataTableRoot.js +5 -4
  60. package/cjs/data/table/root/DataTableRoot.js.map +1 -1
  61. package/cjs/data/table/tbody/DataTableTbody.js +7 -1
  62. package/cjs/data/table/tbody/DataTableTbody.js.map +1 -1
  63. package/cjs/data/table/td/DataTableTd.d.ts +3 -23
  64. package/cjs/data/table/td/DataTableTd.js +3 -7
  65. package/cjs/data/table/td/DataTableTd.js.map +1 -1
  66. package/cjs/data/table/tfoot/DataTableTfoot.js +3 -1
  67. package/cjs/data/table/tfoot/DataTableTfoot.js.map +1 -1
  68. package/cjs/data/table/th/DataTableTh.d.ts +3 -48
  69. package/cjs/data/table/th/DataTableTh.js +3 -57
  70. package/cjs/data/table/th/DataTableTh.js.map +1 -1
  71. package/cjs/data/table/thead/DataTableThead.js +2 -2
  72. package/cjs/data/table/thead/DataTableThead.js.map +1 -1
  73. package/cjs/data/table/tr/DataTableTr.d.ts +8 -0
  74. package/cjs/data/table/tr/DataTableTr.js +131 -9
  75. package/cjs/data/table/tr/DataTableTr.js.map +1 -1
  76. package/cjs/date/datepicker/hooks/useRangeDatepicker.js +1 -1
  77. package/cjs/date/datepicker/hooks/useRangeDatepicker.js.map +1 -1
  78. package/cjs/date/datepicker/parts/DatePicker.DayButton.js +3 -1
  79. package/cjs/date/datepicker/parts/DatePicker.DayButton.js.map +1 -1
  80. package/cjs/date/datepicker/parts/DatePicker.RDP.d.ts +1 -1
  81. package/cjs/date/datepicker/parts/DatePicker.RDP.js +26 -11
  82. package/cjs/date/datepicker/parts/DatePicker.RDP.js.map +1 -1
  83. package/cjs/date/monthpicker/parts/MonthPicker.Button.js +7 -5
  84. package/cjs/date/monthpicker/parts/MonthPicker.Button.js.map +1 -1
  85. package/cjs/date/monthpicker/parts/MonthPicker.Standalone.d.ts +1 -1
  86. package/cjs/dialog/popup/DialogPopupInternal.js +1 -1
  87. package/cjs/dialog/popup/DialogPopupInternal.js.map +1 -1
  88. package/cjs/form/checkbox/CheckboxGroup.context.d.ts +6 -0
  89. package/cjs/form/checkbox/CheckboxGroup.context.js +6 -0
  90. package/cjs/form/checkbox/CheckboxGroup.context.js.map +1 -0
  91. package/cjs/form/checkbox/CheckboxGroup.d.ts +0 -6
  92. package/cjs/form/checkbox/CheckboxGroup.js +8 -8
  93. package/cjs/form/checkbox/CheckboxGroup.js.map +1 -1
  94. package/cjs/form/checkbox/useCheckbox.js +2 -2
  95. package/cjs/form/checkbox/useCheckbox.js.map +1 -1
  96. package/cjs/form/combobox/ComboboxWrapper.js +1 -3
  97. package/cjs/form/combobox/ComboboxWrapper.js.map +1 -1
  98. package/cjs/form/error-summary/ErrorSummary.js +1 -3
  99. package/cjs/form/error-summary/ErrorSummary.js.map +1 -1
  100. package/cjs/form/fieldset/Fieldset.d.ts +0 -4
  101. package/cjs/form/fieldset/Fieldset.js +3 -3
  102. package/cjs/form/fieldset/Fieldset.js.map +1 -1
  103. package/cjs/form/fieldset/useFieldset.d.ts +5 -3
  104. package/cjs/form/fieldset/useFieldset.js +9 -4
  105. package/cjs/form/fieldset/useFieldset.js.map +1 -1
  106. package/cjs/form/radio/RadioGroup.context.d.ts +8 -0
  107. package/cjs/form/radio/RadioGroup.context.js +6 -0
  108. package/cjs/form/radio/RadioGroup.context.js.map +1 -0
  109. package/cjs/form/radio/RadioGroup.d.ts +0 -8
  110. package/cjs/form/radio/RadioGroup.js +10 -10
  111. package/cjs/form/radio/RadioGroup.js.map +1 -1
  112. package/cjs/form/radio/useRadio.js +2 -2
  113. package/cjs/form/radio/useRadio.js.map +1 -1
  114. package/cjs/form/search/Search.js +1 -3
  115. package/cjs/form/search/Search.js.map +1 -1
  116. package/cjs/inline-message/root/InlineMessage.js +2 -5
  117. package/cjs/inline-message/root/InlineMessage.js.map +1 -1
  118. package/cjs/modal/Modal.js +4 -6
  119. package/cjs/modal/Modal.js.map +1 -1
  120. package/cjs/modal/ModalUtils.js +1 -1
  121. package/cjs/modal/ModalUtils.js.map +1 -1
  122. package/cjs/modal/types.d.ts +1 -0
  123. package/cjs/primitives/box/Box.d.ts +1 -1
  124. package/cjs/process/Process.js +1 -5
  125. package/cjs/process/Process.js.map +1 -1
  126. package/cjs/tabs/useTabs.js +3 -7
  127. package/cjs/tabs/useTabs.js.map +1 -1
  128. package/cjs/timeline/Timeline.js +25 -62
  129. package/cjs/timeline/Timeline.js.map +1 -1
  130. package/cjs/timeline/TimelineRow.js +10 -14
  131. package/cjs/timeline/TimelineRow.js.map +1 -1
  132. package/cjs/timeline/hooks/TimelineKeyboardNavProvider.d.ts +16 -0
  133. package/cjs/timeline/hooks/TimelineKeyboardNavProvider.js +179 -0
  134. package/cjs/timeline/hooks/TimelineKeyboardNavProvider.js.map +1 -0
  135. package/cjs/timeline/hooks/usePeriodContext.d.ts +0 -1
  136. package/cjs/timeline/hooks/usePeriodContext.js +0 -1
  137. package/cjs/timeline/hooks/usePeriodContext.js.map +1 -1
  138. package/cjs/timeline/hooks/useRowContext.d.ts +0 -1
  139. package/cjs/timeline/hooks/useRowContext.js +0 -1
  140. package/cjs/timeline/hooks/useRowContext.js.map +1 -1
  141. package/cjs/timeline/hooks/useTimelineContext.d.ts +0 -4
  142. package/cjs/timeline/hooks/useTimelineContext.js +0 -4
  143. package/cjs/timeline/hooks/useTimelineContext.js.map +1 -1
  144. package/cjs/timeline/period/ClickablePeriod.js +6 -20
  145. package/cjs/timeline/period/ClickablePeriod.js.map +1 -1
  146. package/cjs/timeline/period/NonClickablePeriod.js +1 -1
  147. package/cjs/timeline/period/NonClickablePeriod.js.map +1 -1
  148. package/cjs/timeline/pin/PinInternal.js +9 -10
  149. package/cjs/timeline/pin/PinInternal.js.map +1 -1
  150. package/cjs/toggle-group/useToggleGroup.js +1 -1
  151. package/cjs/toggle-group/useToggleGroup.js.map +1 -1
  152. package/cjs/utils/components/HighlightText/HighlightText.js +1 -4
  153. package/cjs/utils/components/HighlightText/HighlightText.js.map +1 -1
  154. package/cjs/utils/components/dismissablelayer/DismissableLayer.js +1 -1
  155. package/cjs/utils/components/dismissablelayer/DismissableLayer.js.map +1 -1
  156. package/cjs/utils/helpers/create-strict-context.js +1 -1
  157. package/cjs/utils/helpers/create-strict-context.js.map +1 -1
  158. package/cjs/utils/hooks/useEventCallback.js +1 -1
  159. package/cjs/utils/hooks/useEventCallback.js.map +1 -1
  160. package/cjs/utils/hooks/useMedia.js +1 -1
  161. package/cjs/utils/hooks/useMedia.js.map +1 -1
  162. package/esm/alert/base-alert/content/BaseAlertContent.js +4 -1
  163. package/esm/alert/base-alert/content/BaseAlertContent.js.map +1 -1
  164. package/esm/data/drag-and-drop/drag-handler/DragAndDropDragHandler.d.ts +3 -1
  165. package/esm/data/drag-and-drop/drag-handler/DragAndDropDragHandler.js +38 -19
  166. package/esm/data/drag-and-drop/drag-handler/DragAndDropDragHandler.js.map +1 -1
  167. package/esm/data/drag-and-drop/item/DragAndDropItem.d.ts +3 -2
  168. package/esm/data/drag-and-drop/item/DragAndDropItem.js +6 -4
  169. package/esm/data/drag-and-drop/item/DragAndDropItem.js.map +1 -1
  170. package/esm/data/drag-and-drop/root/DragAndDrop.context.d.ts +2 -2
  171. package/esm/data/drag-and-drop/root/DragAndDropRoot.d.ts +7 -32
  172. package/esm/data/drag-and-drop/root/DragAndDropRoot.js +74 -47
  173. package/esm/data/drag-and-drop/root/DragAndDropRoot.js.map +1 -1
  174. package/esm/data/drag-and-drop/types.d.ts +4 -0
  175. package/esm/data/table/base-cell/DataTableBaseCell.d.ts +46 -0
  176. package/esm/data/table/base-cell/DataTableBaseCell.js +27 -0
  177. package/esm/data/table/base-cell/DataTableBaseCell.js.map +1 -0
  178. package/esm/data/table/column-header/DataTableColumnHeader.d.ts +31 -0
  179. package/esm/data/table/column-header/DataTableColumnHeader.js +71 -0
  180. package/esm/data/table/column-header/DataTableColumnHeader.js.map +1 -0
  181. package/esm/data/table/column-header/useTableColumnResize.js.map +1 -0
  182. package/esm/data/table/empty-state/DataTableEmptyState.d.ts +6 -2
  183. package/esm/data/table/empty-state/DataTableEmptyState.js +2 -2
  184. package/esm/data/table/empty-state/DataTableEmptyState.js.map +1 -1
  185. package/esm/data/table/helpers/selection/getMultipleSelectProps.d.ts +7 -7
  186. package/esm/data/table/helpers/selection/getMultipleSelectProps.js +29 -28
  187. package/esm/data/table/helpers/selection/getMultipleSelectProps.js.map +1 -1
  188. package/esm/data/table/helpers/selection/getSingleSelectProps.d.ts +5 -3
  189. package/esm/data/table/helpers/selection/getSingleSelectProps.js +8 -12
  190. package/esm/data/table/helpers/selection/getSingleSelectProps.js.map +1 -1
  191. package/esm/data/table/helpers/selection/selection.types.d.ts +39 -16
  192. package/esm/data/table/helpers/table-keyboard.js +3 -0
  193. package/esm/data/table/helpers/table-keyboard.js.map +1 -1
  194. package/esm/data/table/hooks/useColumnOptions.d.ts +19 -0
  195. package/esm/data/table/hooks/useColumnOptions.js +17 -0
  196. package/esm/data/table/hooks/useColumnOptions.js.map +1 -0
  197. package/esm/data/table/hooks/useTableExpansion.d.ts +26 -0
  198. package/esm/data/table/hooks/useTableExpansion.js +31 -0
  199. package/esm/data/table/hooks/useTableExpansion.js.map +1 -0
  200. package/esm/data/table/hooks/useTableKeyboardNav.d.ts +2 -1
  201. package/esm/data/table/hooks/useTableKeyboardNav.js +4 -2
  202. package/esm/data/table/hooks/useTableKeyboardNav.js.map +1 -1
  203. package/esm/data/table/hooks/useTableSelection.d.ts +14 -7
  204. package/esm/data/table/hooks/useTableSelection.js +40 -29
  205. package/esm/data/table/hooks/useTableSelection.js.map +1 -1
  206. package/esm/data/table/hooks/useTableSort.d.ts +37 -0
  207. package/esm/data/table/hooks/useTableSort.js +47 -0
  208. package/esm/data/table/hooks/useTableSort.js.map +1 -0
  209. package/esm/data/table/loading-state/DataTableLoadingState.d.ts +6 -2
  210. package/esm/data/table/loading-state/DataTableLoadingState.js +2 -2
  211. package/esm/data/table/loading-state/DataTableLoadingState.js.map +1 -1
  212. package/esm/data/table/root/DataTable.types.d.ts +55 -4
  213. package/esm/data/table/root/DataTableAuto.d.ts +97 -1
  214. package/esm/data/table/root/DataTableAuto.js +94 -41
  215. package/esm/data/table/root/DataTableAuto.js.map +1 -1
  216. package/esm/data/table/root/DataTableRoot.context.d.ts +22 -1
  217. package/esm/data/table/root/DataTableRoot.context.js +5 -1
  218. package/esm/data/table/root/DataTableRoot.context.js.map +1 -1
  219. package/esm/data/table/root/DataTableRoot.d.ts +0 -6
  220. package/esm/data/table/root/DataTableRoot.js +6 -5
  221. package/esm/data/table/root/DataTableRoot.js.map +1 -1
  222. package/esm/data/table/tbody/DataTableTbody.js +8 -2
  223. package/esm/data/table/tbody/DataTableTbody.js.map +1 -1
  224. package/esm/data/table/td/DataTableTd.d.ts +3 -23
  225. package/esm/data/table/td/DataTableTd.js +3 -7
  226. package/esm/data/table/td/DataTableTd.js.map +1 -1
  227. package/esm/data/table/tfoot/DataTableTfoot.js +3 -1
  228. package/esm/data/table/tfoot/DataTableTfoot.js.map +1 -1
  229. package/esm/data/table/th/DataTableTh.d.ts +3 -48
  230. package/esm/data/table/th/DataTableTh.js +4 -58
  231. package/esm/data/table/th/DataTableTh.js.map +1 -1
  232. package/esm/data/table/thead/DataTableThead.js +2 -2
  233. package/esm/data/table/thead/DataTableThead.js.map +1 -1
  234. package/esm/data/table/tr/DataTableTr.d.ts +8 -0
  235. package/esm/data/table/tr/DataTableTr.js +134 -12
  236. package/esm/data/table/tr/DataTableTr.js.map +1 -1
  237. package/esm/date/datepicker/hooks/useRangeDatepicker.js +1 -1
  238. package/esm/date/datepicker/hooks/useRangeDatepicker.js.map +1 -1
  239. package/esm/date/datepicker/parts/DatePicker.DayButton.js +3 -1
  240. package/esm/date/datepicker/parts/DatePicker.DayButton.js.map +1 -1
  241. package/esm/date/datepicker/parts/DatePicker.RDP.d.ts +1 -1
  242. package/esm/date/datepicker/parts/DatePicker.RDP.js +27 -12
  243. package/esm/date/datepicker/parts/DatePicker.RDP.js.map +1 -1
  244. package/esm/date/monthpicker/parts/MonthPicker.Button.js +7 -5
  245. package/esm/date/monthpicker/parts/MonthPicker.Button.js.map +1 -1
  246. package/esm/date/monthpicker/parts/MonthPicker.Standalone.d.ts +1 -1
  247. package/esm/dialog/popup/DialogPopupInternal.js +1 -1
  248. package/esm/dialog/popup/DialogPopupInternal.js.map +1 -1
  249. package/esm/form/checkbox/CheckboxGroup.context.d.ts +6 -0
  250. package/esm/form/checkbox/CheckboxGroup.context.js +3 -0
  251. package/esm/form/checkbox/CheckboxGroup.context.js.map +1 -0
  252. package/esm/form/checkbox/CheckboxGroup.d.ts +0 -6
  253. package/esm/form/checkbox/CheckboxGroup.js +8 -8
  254. package/esm/form/checkbox/CheckboxGroup.js.map +1 -1
  255. package/esm/form/checkbox/useCheckbox.js +1 -1
  256. package/esm/form/checkbox/useCheckbox.js.map +1 -1
  257. package/esm/form/combobox/ComboboxWrapper.js +1 -3
  258. package/esm/form/combobox/ComboboxWrapper.js.map +1 -1
  259. package/esm/form/error-summary/ErrorSummary.js +1 -3
  260. package/esm/form/error-summary/ErrorSummary.js.map +1 -1
  261. package/esm/form/fieldset/Fieldset.d.ts +0 -4
  262. package/esm/form/fieldset/Fieldset.js +3 -3
  263. package/esm/form/fieldset/Fieldset.js.map +1 -1
  264. package/esm/form/fieldset/useFieldset.d.ts +5 -3
  265. package/esm/form/fieldset/useFieldset.js +10 -5
  266. package/esm/form/fieldset/useFieldset.js.map +1 -1
  267. package/esm/form/radio/RadioGroup.context.d.ts +8 -0
  268. package/esm/form/radio/RadioGroup.context.js +3 -0
  269. package/esm/form/radio/RadioGroup.context.js.map +1 -0
  270. package/esm/form/radio/RadioGroup.d.ts +0 -8
  271. package/esm/form/radio/RadioGroup.js +9 -9
  272. package/esm/form/radio/RadioGroup.js.map +1 -1
  273. package/esm/form/radio/useRadio.js +1 -1
  274. package/esm/form/radio/useRadio.js.map +1 -1
  275. package/esm/form/search/Search.js +1 -3
  276. package/esm/form/search/Search.js.map +1 -1
  277. package/esm/inline-message/root/InlineMessage.js +2 -5
  278. package/esm/inline-message/root/InlineMessage.js.map +1 -1
  279. package/esm/modal/Modal.js +4 -6
  280. package/esm/modal/Modal.js.map +1 -1
  281. package/esm/modal/ModalUtils.js +1 -1
  282. package/esm/modal/ModalUtils.js.map +1 -1
  283. package/esm/modal/types.d.ts +1 -0
  284. package/esm/primitives/box/Box.d.ts +1 -1
  285. package/esm/process/Process.js +1 -5
  286. package/esm/process/Process.js.map +1 -1
  287. package/esm/tabs/useTabs.js +3 -7
  288. package/esm/tabs/useTabs.js.map +1 -1
  289. package/esm/timeline/Timeline.js +26 -63
  290. package/esm/timeline/Timeline.js.map +1 -1
  291. package/esm/timeline/TimelineRow.js +10 -14
  292. package/esm/timeline/TimelineRow.js.map +1 -1
  293. package/esm/timeline/hooks/TimelineKeyboardNavProvider.d.ts +16 -0
  294. package/esm/timeline/hooks/TimelineKeyboardNavProvider.js +141 -0
  295. package/esm/timeline/hooks/TimelineKeyboardNavProvider.js.map +1 -0
  296. package/esm/timeline/hooks/usePeriodContext.d.ts +0 -1
  297. package/esm/timeline/hooks/usePeriodContext.js +0 -1
  298. package/esm/timeline/hooks/usePeriodContext.js.map +1 -1
  299. package/esm/timeline/hooks/useRowContext.d.ts +0 -1
  300. package/esm/timeline/hooks/useRowContext.js +0 -1
  301. package/esm/timeline/hooks/useRowContext.js.map +1 -1
  302. package/esm/timeline/hooks/useTimelineContext.d.ts +0 -4
  303. package/esm/timeline/hooks/useTimelineContext.js +0 -4
  304. package/esm/timeline/hooks/useTimelineContext.js.map +1 -1
  305. package/esm/timeline/period/ClickablePeriod.js +7 -21
  306. package/esm/timeline/period/ClickablePeriod.js.map +1 -1
  307. package/esm/timeline/period/NonClickablePeriod.js +1 -1
  308. package/esm/timeline/period/NonClickablePeriod.js.map +1 -1
  309. package/esm/timeline/pin/PinInternal.js +10 -11
  310. package/esm/timeline/pin/PinInternal.js.map +1 -1
  311. package/esm/toggle-group/useToggleGroup.js +1 -1
  312. package/esm/toggle-group/useToggleGroup.js.map +1 -1
  313. package/esm/utils/components/HighlightText/HighlightText.js +1 -4
  314. package/esm/utils/components/HighlightText/HighlightText.js.map +1 -1
  315. package/esm/utils/components/dismissablelayer/DismissableLayer.js +1 -1
  316. package/esm/utils/components/dismissablelayer/DismissableLayer.js.map +1 -1
  317. package/esm/utils/helpers/create-strict-context.js +1 -1
  318. package/esm/utils/helpers/create-strict-context.js.map +1 -1
  319. package/esm/utils/hooks/useEventCallback.js +1 -1
  320. package/esm/utils/hooks/useEventCallback.js.map +1 -1
  321. package/esm/utils/hooks/useMedia.js +1 -1
  322. package/esm/utils/hooks/useMedia.js.map +1 -1
  323. package/package.json +9 -7
  324. package/src/alert/base-alert/content/BaseAlertContent.tsx +7 -2
  325. package/src/data/drag-and-drop/drag-handler/DragAndDropDragHandler.tsx +69 -29
  326. package/src/data/drag-and-drop/item/DragAndDropItem.tsx +16 -10
  327. package/src/data/drag-and-drop/root/DragAndDrop.context.tsx +2 -2
  328. package/src/data/drag-and-drop/root/DragAndDropRoot.tsx +291 -246
  329. package/src/data/drag-and-drop/types.ts +5 -0
  330. package/src/data/table/base-cell/DataTableBaseCell.tsx +92 -0
  331. package/src/data/table/column-header/DataTableColumnHeader.tsx +180 -0
  332. package/src/data/table/empty-state/DataTableEmptyState.tsx +5 -3
  333. package/src/data/table/helpers/selection/getMultipleSelectProps.ts +47 -43
  334. package/src/data/table/helpers/selection/getSingleSelectProps.ts +13 -14
  335. package/src/data/table/helpers/selection/selection.types.ts +41 -16
  336. package/src/data/table/helpers/table-keyboard.ts +4 -0
  337. package/src/data/table/hooks/__tests__/useTableSelection.test.ts +93 -56
  338. package/src/data/table/hooks/useColumnOptions.ts +48 -0
  339. package/src/data/table/hooks/useTableExpansion.tsx +100 -0
  340. package/src/data/table/hooks/useTableKeyboardNav.ts +7 -5
  341. package/src/data/table/hooks/useTableSelection.ts +77 -46
  342. package/src/data/table/hooks/useTableSort.ts +103 -0
  343. package/src/data/table/loading-state/DataTableLoadingState.tsx +5 -3
  344. package/src/data/table/root/DataTable.types.ts +64 -5
  345. package/src/data/table/root/DataTableAuto.tsx +382 -104
  346. package/src/data/table/root/DataTableRoot.context.ts +30 -1
  347. package/src/data/table/root/DataTableRoot.tsx +14 -11
  348. package/src/data/table/tbody/DataTableTbody.tsx +17 -6
  349. package/src/data/table/td/DataTableTd.tsx +11 -47
  350. package/src/data/table/tfoot/DataTableTfoot.tsx +10 -7
  351. package/src/data/table/th/DataTableTh.tsx +11 -183
  352. package/src/data/table/thead/DataTableThead.tsx +3 -3
  353. package/src/data/table/tr/DataTableTr.tsx +300 -11
  354. package/src/date/datepicker/hooks/useRangeDatepicker.tsx +1 -1
  355. package/src/date/datepicker/parts/DatePicker.DayButton.tsx +2 -1
  356. package/src/date/datepicker/parts/DatePicker.RDP.tsx +34 -15
  357. package/src/date/monthpicker/parts/MonthPicker.Button.tsx +11 -9
  358. package/src/date/monthpicker/parts/MonthPicker.Standalone.tsx +1 -1
  359. package/src/dialog/popup/DialogPopupInternal.tsx +1 -1
  360. package/src/form/checkbox/CheckboxGroup.context.ts +10 -0
  361. package/src/form/checkbox/CheckboxGroup.tsx +18 -28
  362. package/src/form/checkbox/useCheckbox.ts +1 -1
  363. package/src/form/fieldset/Fieldset.tsx +4 -8
  364. package/src/form/fieldset/useFieldset.ts +13 -6
  365. package/src/form/radio/RadioGroup.context.ts +13 -0
  366. package/src/form/radio/RadioGroup.tsx +22 -31
  367. package/src/form/radio/useRadio.ts +1 -1
  368. package/src/inline-message/root/InlineMessage.tsx +3 -13
  369. package/src/modal/Modal.tsx +12 -6
  370. package/src/modal/ModalUtils.ts +1 -1
  371. package/src/modal/types.ts +1 -0
  372. package/src/primitives/box/Box.tsx +1 -1
  373. package/src/tabs/useTabs.ts +3 -7
  374. package/src/timeline/Timeline.tsx +62 -91
  375. package/src/timeline/TimelineRow.tsx +19 -17
  376. package/src/timeline/hooks/TimelineKeyboardNavProvider.tsx +237 -0
  377. package/src/timeline/hooks/usePeriodContext.tsx +0 -2
  378. package/src/timeline/hooks/useRowContext.tsx +0 -2
  379. package/src/timeline/hooks/useTimelineContext.tsx +0 -8
  380. package/src/timeline/period/ClickablePeriod.tsx +8 -19
  381. package/src/timeline/period/NonClickablePeriod.tsx +2 -0
  382. package/src/timeline/pin/PinInternal.tsx +10 -13
  383. package/src/toggle-group/useToggleGroup.ts +1 -1
  384. package/src/utils/components/dismissablelayer/DismissableLayer.tsx +1 -1
  385. package/src/utils/helpers/create-strict-context.tsx +1 -1
  386. package/src/utils/hooks/useEventCallback.ts +1 -1
  387. package/src/utils/hooks/useMedia.ts +1 -1
  388. package/cjs/data/table/th/DataTableThActions.d.ts +0 -5
  389. package/cjs/data/table/th/DataTableThActions.js +0 -23
  390. package/cjs/data/table/th/DataTableThActions.js.map +0 -1
  391. package/cjs/data/table/th/useTableColumnResize.js.map +0 -1
  392. package/cjs/data/table/thead/DataTableThead.context.d.ts +0 -4
  393. package/cjs/data/table/thead/DataTableThead.context.js +0 -45
  394. package/cjs/data/table/thead/DataTableThead.context.js.map +0 -1
  395. package/esm/data/table/th/DataTableThActions.d.ts +0 -5
  396. package/esm/data/table/th/DataTableThActions.js +0 -18
  397. package/esm/data/table/th/DataTableThActions.js.map +0 -1
  398. package/esm/data/table/th/useTableColumnResize.js.map +0 -1
  399. package/esm/data/table/thead/DataTableThead.context.d.ts +0 -4
  400. package/esm/data/table/thead/DataTableThead.context.js +0 -8
  401. package/esm/data/table/thead/DataTableThead.context.js.map +0 -1
  402. package/src/data/table/th/DataTableThActions.tsx +0 -32
  403. package/src/data/table/thead/DataTableThead.context.ts +0 -10
  404. /package/cjs/data/table/{th → column-header}/useTableColumnResize.d.ts +0 -0
  405. /package/cjs/data/table/{th → column-header}/useTableColumnResize.js +0 -0
  406. /package/esm/data/table/{th → column-header}/useTableColumnResize.d.ts +0 -0
  407. /package/esm/data/table/{th → column-header}/useTableColumnResize.js +0 -0
  408. /package/src/data/table/{th → column-header}/useTableColumnResize.ts +0 -0
@@ -52,6 +52,7 @@ const date_fns_1 = require("date-fns");
52
52
  const react_1 = __importStar(require("react"));
53
53
  const AxisLabels_1 = require("./AxisLabels");
54
54
  const TimelineRow_1 = __importDefault(require("./TimelineRow"));
55
+ const TimelineKeyboardNavProvider_1 = require("./hooks/TimelineKeyboardNavProvider");
55
56
  const useRowContext_1 = require("./hooks/useRowContext");
56
57
  const useTimelineContext_1 = require("./hooks/useTimelineContext");
57
58
  const useTimelineRows_1 = require("./hooks/useTimelineRows");
@@ -78,30 +79,27 @@ const zoom_1 = __importDefault(require("./zoom"));
78
79
  * </Timeline>
79
80
  * ```
80
81
  */
81
- exports.Timeline = (0, react_1.forwardRef)((_a, ref) => {
82
+ exports.Timeline = (0, react_1.forwardRef)((_a, forwardedRef) => {
82
83
  var { children, startDate, endDate, direction = "left", axisLabelTemplates } = _a, rest = __rest(_a, ["children", "startDate", "endDate", "direction", "axisLabelTemplates"]);
83
- const isMultipleRows = Array.isArray(children);
84
- const firstFocusabled = (0, react_1.useRef)([]);
85
- if (!isMultipleRows) {
86
- children = [children];
87
- }
88
- const rowChildren = react_1.default.Children.toArray(children).filter((c) => { var _a; return ((_a = c === null || c === void 0 ? void 0 : c.type) === null || _a === void 0 ? void 0 : _a.componentType) === "row"; });
89
- const pins = react_1.default.Children.toArray(children)
84
+ const childArray = (0, react_1.useMemo)(() => react_1.default.Children.toArray(Array.isArray(children) ? children : [children]), [children]);
85
+ const rowChildren = (0, react_1.useMemo)(() => {
86
+ return childArray.filter((c) => { var _a; return ((_a = c === null || c === void 0 ? void 0 : c.type) === null || _a === void 0 ? void 0 : _a.componentType) === "row"; });
87
+ }, [childArray]);
88
+ const pins = (0, react_1.useMemo)(() => childArray
90
89
  .filter((c) => { var _a; return ((_a = c === null || c === void 0 ? void 0 : c.type) === null || _a === void 0 ? void 0 : _a.componentType) === "pin"; })
91
- .map((x) => () => x);
92
- const zoomComponent = react_1.default.Children.toArray(children).find((c) => { var _a; return ((_a = c === null || c === void 0 ? void 0 : c.type) === null || _a === void 0 ? void 0 : _a.componentType) === "zoom"; });
90
+ .map((x) => () => x), [childArray]);
91
+ const zoomComponent = (0, react_1.useMemo)(() => childArray.find((c) => { var _a; return ((_a = c === null || c === void 0 ? void 0 : c.type) === null || _a === void 0 ? void 0 : _a.componentType) === "zoom"; }), [childArray]);
93
92
  const rowsRaw = (0, react_1.useMemo)(() => {
94
93
  return (0, timeline_1.parseRows)(rowChildren);
95
94
  }, [rowChildren]);
96
- const rows = rowsRaw.map((r) => {
95
+ const rows = (0, react_1.useMemo)(() => rowsRaw.map((r) => {
97
96
  if (r === null || r === void 0 ? void 0 : r.periods) {
98
97
  return r.periods;
99
98
  }
100
99
  return [];
101
- });
100
+ }), [rowsRaw]);
102
101
  const initialStartDate = (0, date_fns_1.startOfDay)((0, useTimelineRows_1.useEarliestDate)({ startDate, rows }));
103
102
  const [start, setStart] = (0, react_1.useState)(initialStartDate);
104
- const [activeRow, setActiveRow] = (0, react_1.useState)(null);
105
103
  const [endInclusive, setEndInclusive] = (0, react_1.useState)((0, date_fns_1.endOfDay)((0, useTimelineRows_1.useLatestDate)({ endDate, rows })));
106
104
  const initialEndDate = (0, date_fns_1.endOfDay)((0, useTimelineRows_1.useLatestDate)({ endDate, rows }));
107
105
  const processedRows = (0, useTimelineRows_1.useTimelineRows)(rowsRaw, startDate !== null && startDate !== void 0 ? startDate : start, endDate !== null && endDate !== void 0 ? endDate : endInclusive, direction);
@@ -127,62 +125,27 @@ exports.Timeline = (0, react_1.forwardRef)((_a, ref) => {
127
125
  setEndInclusive(zoomStart);
128
126
  }
129
127
  };
130
- const handleActiveRowChange = (key) => {
131
- var _a, _b, _c, _d;
132
- if (activeRow !== null && key === "ArrowDown") {
133
- for (let i = activeRow + 1; i < processedRows.length; i++) {
134
- const row = processedRows[i];
135
- if (row.periods.find((p) => !!p.children || !!p.onSelectPeriod)) {
136
- setActiveRow(i);
137
- (_b = (_a = firstFocusabled.current.find((x) => x.id === i)) === null || _a === void 0 ? void 0 : _a.ref) === null || _b === void 0 ? void 0 : _b.focus();
138
- break;
139
- }
140
- }
141
- return;
142
- }
143
- if (activeRow !== null && key === "ArrowUp") {
144
- for (let i = activeRow - 1; i >= 0; i--) {
145
- const row = processedRows[i];
146
- if (row.periods.find((p) => !!p.children || !!p.onSelectPeriod)) {
147
- setActiveRow(i);
148
- (_d = (_c = firstFocusabled.current.find((x) => x.id === i)) === null || _c === void 0 ? void 0 : _c.ref) === null || _d === void 0 ? void 0 : _d.focus();
149
- break;
150
- }
151
- }
152
- return;
153
- }
154
- };
155
- const addFocusable = (btnRef, id) => {
156
- let items = firstFocusabled.current;
157
- items = items.filter((x) => x.id !== id);
158
- items.push({ ref: btnRef, id });
159
- firstFocusabled.current = items;
160
- };
161
128
  return (react_1.default.createElement(useTimelineContext_1.TimelineContext.Provider, { value: {
162
129
  startDate: startDate !== null && startDate !== void 0 ? startDate : start,
163
130
  endDate: endDate !== null && endDate !== void 0 ? endDate : endInclusive,
164
131
  direction,
165
132
  setStart: (d) => handleZoomChange(d),
166
133
  setEndInclusive: (d) => setEndInclusive(d),
167
- activeRow,
168
- setActiveRow: (key) => handleActiveRowChange(key),
169
- initiate: (i) => setActiveRow(i),
170
- addFocusable,
171
134
  } },
172
- react_1.default.createElement("div", Object.assign({}, rest, { ref: ref }),
173
- react_1.default.createElement("div", { className: "aksel-timeline" },
174
- react_1.default.createElement(AxisLabels_1.AxisLabels, { templates: axisLabelTemplates }),
175
- pins.map((PinChild, i) => (react_1.default.createElement(PinChild, { key: `pin-${i}` }))),
176
- processedRows.map((row, i) => {
177
- return (react_1.default.createElement(useRowContext_1.RowContext.Provider, { key: `row-${row.id}`, value: {
178
- periods: row.periods,
179
- id: row.id,
180
- active: activeRow === i,
181
- index: i,
182
- } },
183
- react_1.default.createElement(TimelineRow_1.default, Object.assign({}, row === null || row === void 0 ? void 0 : row.restProps, { ref: row === null || row === void 0 ? void 0 : row.ref, label: row.label, icon: row.icon, headingTag: row.headingTag }))));
184
- })),
185
- zoomComponent)));
135
+ react_1.default.createElement(TimelineKeyboardNavProvider_1.TimelineKeyboardNavProvider, null,
136
+ react_1.default.createElement("div", Object.assign({}, rest, { ref: forwardedRef }),
137
+ react_1.default.createElement("div", { className: "aksel-timeline" },
138
+ react_1.default.createElement(AxisLabels_1.AxisLabels, { templates: axisLabelTemplates }),
139
+ pins.map((PinChild, i) => (react_1.default.createElement(PinChild, { key: `pin-${i}` }))),
140
+ processedRows.map((row, i) => {
141
+ return (react_1.default.createElement(useRowContext_1.RowContext.Provider, { key: `row-${row.id}`, value: {
142
+ periods: row.periods,
143
+ id: row.id,
144
+ index: i,
145
+ } },
146
+ react_1.default.createElement(TimelineRow_1.default, Object.assign({}, row === null || row === void 0 ? void 0 : row.restProps, { ref: row === null || row === void 0 ? void 0 : row.ref, label: row.label, icon: row.icon, headingTag: row.headingTag }))));
147
+ })),
148
+ zoomComponent))));
186
149
  });
187
150
  exports.Timeline.Row = TimelineRow_1.default;
188
151
  exports.Timeline.Period = period_1.default;
@@ -1 +1 @@
1
- {"version":3,"file":"Timeline.js","sourceRoot":"","sources":["../../src/timeline/Timeline.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Timeline.js","sourceRoot":"","sources":["../../src/timeline/Timeline.tsx"],"names":[],"mappings":"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"}
@@ -48,50 +48,46 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
48
48
  };
49
49
  Object.defineProperty(exports, "__esModule", { value: true });
50
50
  exports.TimelineRow = void 0;
51
+ /* eslint-disable jsx-a11y/no-static-element-interactions */
51
52
  const date_fns_1 = require("date-fns");
52
53
  const react_1 = __importStar(require("react"));
53
54
  const BodyShort_1 = require("../typography/BodyShort");
54
55
  const helpers_1 = require("../utils/helpers");
55
56
  const i18n_hooks_1 = require("../utils/i18n/i18n.hooks");
57
+ const TimelineKeyboardNavProvider_1 = require("./hooks/TimelineKeyboardNavProvider");
56
58
  const usePeriodContext_1 = require("./hooks/usePeriodContext");
57
59
  const useRowContext_1 = require("./hooks/useRowContext");
58
- const useTimelineContext_1 = require("./hooks/useTimelineContext");
59
60
  const period_1 = __importDefault(require("./period"));
60
61
  exports.TimelineRow = (0, react_1.forwardRef)((_a, ref) => {
61
62
  var { label, className, headingTag = "h3", icon } = _a, rest = __rest(_a, ["label", "className", "headingTag", "icon"]);
62
- const { periods, active } = (0, useRowContext_1.useRowContext)();
63
- const { setActiveRow } = (0, useTimelineContext_1.useTimelineContext)();
63
+ const { periods } = (0, useRowContext_1.useRowContext)();
64
+ const { updateActiveRow, handleRowKeyDown } = (0, TimelineKeyboardNavProvider_1.useTimelineKeyboardContext)();
65
+ const { activeRow } = (0, TimelineKeyboardNavProvider_1.useTimelineKeyboardActiveRow)();
64
66
  const translate = (0, i18n_hooks_1.useI18n)("Timeline");
67
+ const [elementRefState, setElementRefState] = react_1.default.useState(null);
65
68
  const latest = periods.reduce((a, b) => {
66
69
  return a.end > b.end ? a : b;
67
70
  }, {});
68
71
  const earliest = periods.reduce((a, b) => {
69
72
  return a.end < b.end ? a : b;
70
73
  }, {});
71
- const firstFocusable = periods.find((p) => !!p.children || !!p.onSelectPeriod);
72
74
  return (react_1.default.createElement(react_1.default.Fragment, null,
73
75
  label &&
74
76
  (typeof label === "string" ? (react_1.default.createElement(BodyShort_1.BodyShort, { as: headingTag, className: "aksel-timeline__row-label", size: "small" },
75
77
  icon,
76
78
  label)) : (react_1.default.createElement("div", { className: "aksel-timeline__row-label" }, label))),
77
79
  react_1.default.createElement("div", { className: (0, helpers_1.cl)("aksel-timeline__row", {
78
- "aksel-timeline__row--active": active,
79
- }) },
80
- react_1.default.createElement("ol", Object.assign({}, rest, { tabIndex: -1, ref: ref, "aria-label": periods.length === 0
80
+ "aksel-timeline__row--active": activeRow === elementRefState,
81
+ }), ref: setElementRefState, tabIndex: -1, onFocusCapture: () => updateActiveRow(elementRefState), onKeyDown: handleRowKeyDown, "data-timeline-row": true },
82
+ react_1.default.createElement("ol", Object.assign({}, rest, { ref: ref, "aria-label": periods.length === 0
81
83
  ? translate("Row.noPeriods")
82
84
  : translate("Row.period", {
83
85
  start: (0, date_fns_1.format)(earliest.start, translate("dateFormat")),
84
86
  end: (0, date_fns_1.format)(latest.end, translate("dateFormat")),
85
- }), className: (0, helpers_1.cl)("aksel-timeline__row-periods", className), onKeyDown: (e) => {
86
- if (e.key === "ArrowDown" || e.key === "ArrowUp") {
87
- e.preventDefault();
88
- setActiveRow(e.key);
89
- }
90
- } }), periods === null || periods === void 0 ? void 0 : periods.map((period) => {
87
+ }), className: (0, helpers_1.cl)("aksel-timeline__row-periods", className) }), periods === null || periods === void 0 ? void 0 : periods.map((period) => {
91
88
  return (react_1.default.createElement("li", { key: `period-${period.id}` },
92
89
  react_1.default.createElement(usePeriodContext_1.PeriodContext.Provider, { value: {
93
90
  periodId: period.id,
94
- firstFocus: (firstFocusable === null || firstFocusable === void 0 ? void 0 : firstFocusable.id) === period.id,
95
91
  restProps: period === null || period === void 0 ? void 0 : period.restProps,
96
92
  } },
97
93
  react_1.default.createElement(period_1.default, { start: period.start, end: period.endInclusive, icon: period.icon, ref: period === null || period === void 0 ? void 0 : period.ref }))));
@@ -1 +1 @@
1
- {"version":3,"file":"TimelineRow.js","sourceRoot":"","sources":["../../src/timeline/TimelineRow.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TimelineRow.js","sourceRoot":"","sources":["../../src/timeline/TimelineRow.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ import React from "react";
2
+ type TimelineKeyboardNavStableContextType = {
3
+ updateActiveRow: (element: HTMLElement | null) => void;
4
+ handleRowKeyDown: (event: React.KeyboardEvent<HTMLElement>) => void;
5
+ handlePinKeyDown: (event: React.KeyboardEvent<Element>) => void;
6
+ };
7
+ type TimelineKeyboardNavActiveRowContextType = {
8
+ activeRow: HTMLElement | null;
9
+ };
10
+ declare const useTimelineKeyboardContext: <S extends boolean = true>(strict?: S | undefined) => S extends true ? TimelineKeyboardNavStableContextType : TimelineKeyboardNavStableContextType | undefined;
11
+ declare const useTimelineKeyboardActiveRow: <S extends boolean = true>(strict?: S | undefined) => S extends true ? TimelineKeyboardNavActiveRowContextType : TimelineKeyboardNavActiveRowContextType | undefined;
12
+ type TimelineKeyboardNavProviderProps = {
13
+ children: React.ReactElement;
14
+ };
15
+ declare function TimelineKeyboardNavProvider({ children, }: TimelineKeyboardNavProviderProps): React.JSX.Element;
16
+ export { TimelineKeyboardNavProvider, useTimelineKeyboardContext, useTimelineKeyboardActiveRow, };
@@ -0,0 +1,179 @@
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
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.useTimelineKeyboardActiveRow = exports.useTimelineKeyboardContext = void 0;
37
+ exports.TimelineKeyboardNavProvider = TimelineKeyboardNavProvider;
38
+ const react_1 = __importStar(require("react"));
39
+ const Slot_1 = require("../../utils/components/slot/Slot");
40
+ const helpers_1 = require("../../utils/helpers");
41
+ const { Provider: TimelineKeyboardNavStableContextProvider, useContext: useTimelineKeyboardContext, } = (0, helpers_1.createStrictContext)({
42
+ name: "TimelineKeyboardNavStableContext",
43
+ errorMessage: "useTimelineKeyboardContext must be used within a TimelineKeyboardNavProvider",
44
+ });
45
+ exports.useTimelineKeyboardContext = useTimelineKeyboardContext;
46
+ const { Provider: TimelineKeyboardNavActiveRowContextProvider, useContext: useTimelineKeyboardActiveRow, } = (0, helpers_1.createStrictContext)({
47
+ name: "TimelineKeyboardNavActiveRowContext",
48
+ errorMessage: "useTimelineKeyboardActiveRow must be used within a TimelineKeyboardNavProvider",
49
+ });
50
+ exports.useTimelineKeyboardActiveRow = useTimelineKeyboardActiveRow;
51
+ function TimelineKeyboardNavProvider({ children, }) {
52
+ const [activeRow, setActiveRow] = react_1.default.useState(null);
53
+ const activeRowRef = react_1.default.useRef(null);
54
+ const timelineElementRef = (0, react_1.useRef)(null);
55
+ const updateActiveRow = react_1.default.useCallback((element) => {
56
+ activeRowRef.current = element;
57
+ setActiveRow(element);
58
+ }, []);
59
+ const handleRowKeyDown = (0, react_1.useCallback)((event) => {
60
+ var _a, _b, _c;
61
+ const currentActiveRow = activeRowRef.current;
62
+ if (!currentActiveRow) {
63
+ return;
64
+ }
65
+ /* Skip interaction if focus is inside popover */
66
+ if ((_a = document.activeElement) === null || _a === void 0 ? void 0 : _a.closest("[data-timeline-popover]")) {
67
+ return;
68
+ }
69
+ const { key } = event;
70
+ if (key === "ArrowDown" || key === "ArrowUp") {
71
+ const rows = (_b = currentActiveRow.parentElement) === null || _b === void 0 ? void 0 : _b.querySelectorAll("[data-timeline-row]");
72
+ const firstPin = (_c = currentActiveRow.parentElement) === null || _c === void 0 ? void 0 : _c.querySelector("[data-timeline-pin]");
73
+ if (!rows || rows.length === 0) {
74
+ return;
75
+ }
76
+ const currentIndex = Array.from(rows).indexOf(currentActiveRow);
77
+ if (currentIndex === -1) {
78
+ return;
79
+ }
80
+ const atBoundary = currentIndex === 0 && key === "ArrowUp";
81
+ if (atBoundary && firstPin) {
82
+ focusElement(firstPin, event);
83
+ return;
84
+ }
85
+ const nextIndex = key === "ArrowDown" ? currentIndex + 1 : currentIndex - 1;
86
+ /* We want to avoid looping */
87
+ if (nextIndex < 0 || nextIndex >= rows.length) {
88
+ return;
89
+ }
90
+ const nextRow = rows[nextIndex];
91
+ const periods = nextRow === null || nextRow === void 0 ? void 0 : nextRow.querySelectorAll("[data-timeline-period]");
92
+ if ((periods === null || periods === void 0 ? void 0 : periods.length) > 0) {
93
+ focusElement(periods[0], event);
94
+ }
95
+ else if (nextRow) {
96
+ focusElement(nextRow, event);
97
+ }
98
+ return;
99
+ }
100
+ if (key === "ArrowRight" || key === "ArrowLeft") {
101
+ event.preventDefault();
102
+ const periods = currentActiveRow.querySelectorAll("[data-timeline-period]");
103
+ if (periods.length === 0) {
104
+ return;
105
+ }
106
+ const currentIndex = Array.from(periods).indexOf(document.activeElement);
107
+ if (currentIndex === -1) {
108
+ /* If just the row has focus, we want to focus either the first or last period inside based on key */
109
+ focusElement(periods[key === "ArrowRight" ? 0 : periods.length - 1], event);
110
+ return;
111
+ }
112
+ const nextIndex = key === "ArrowRight" ? currentIndex + 1 : currentIndex - 1;
113
+ /* We want to avoid looping */
114
+ if (nextIndex < 0 || nextIndex >= periods.length) {
115
+ return;
116
+ }
117
+ focusElement(periods[nextIndex], event);
118
+ }
119
+ }, []);
120
+ const handlePinKeyDown = (0, react_1.useCallback)((event) => {
121
+ var _a;
122
+ const timelineElement = timelineElementRef.current;
123
+ if (!timelineElement) {
124
+ return;
125
+ }
126
+ /* Skip interaction if focus is inside popover */
127
+ if ((_a = document.activeElement) === null || _a === void 0 ? void 0 : _a.closest("[data-timeline-popover]")) {
128
+ return;
129
+ }
130
+ const { key } = event;
131
+ if (key === "ArrowDown") {
132
+ const rows = timelineElement.querySelectorAll("[data-timeline-row]");
133
+ if (rows.length === 0) {
134
+ return;
135
+ }
136
+ const rowToFocus = rows[0];
137
+ if (rowToFocus) {
138
+ const periods = rowToFocus === null || rowToFocus === void 0 ? void 0 : rowToFocus.querySelectorAll("[data-timeline-period]");
139
+ if ((periods === null || periods === void 0 ? void 0 : periods.length) > 0) {
140
+ focusElement(periods[0], event);
141
+ }
142
+ else if (rowToFocus) {
143
+ focusElement(rowToFocus, event);
144
+ }
145
+ }
146
+ }
147
+ if (key === "ArrowRight" || key === "ArrowLeft") {
148
+ event.preventDefault();
149
+ const pins = timelineElement.querySelectorAll("[data-timeline-pin]");
150
+ if (pins.length === 0) {
151
+ return;
152
+ }
153
+ const currentIndex = Array.from(pins).indexOf(document.activeElement);
154
+ if (currentIndex === -1) {
155
+ return;
156
+ }
157
+ const nextIndex = key === "ArrowRight" ? currentIndex + 1 : currentIndex - 1;
158
+ /* We want to avoid looping */
159
+ if (nextIndex < 0 || nextIndex >= pins.length) {
160
+ return;
161
+ }
162
+ focusElement(pins[nextIndex], event);
163
+ }
164
+ }, []);
165
+ return (react_1.default.createElement(TimelineKeyboardNavStableContextProvider, { updateActiveRow: updateActiveRow, handleRowKeyDown: handleRowKeyDown, handlePinKeyDown: handlePinKeyDown },
166
+ react_1.default.createElement(TimelineKeyboardNavActiveRowContextProvider, { activeRow: activeRow },
167
+ react_1.default.createElement(Slot_1.Slot, { ref: timelineElementRef }, children))));
168
+ }
169
+ /**
170
+ * Focuses the given element and prevents default behavior of the event if focus is called.
171
+ */
172
+ function focusElement(element, event) {
173
+ if (!element) {
174
+ return;
175
+ }
176
+ event.preventDefault();
177
+ element.focus();
178
+ }
179
+ //# sourceMappingURL=TimelineKeyboardNavProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TimelineKeyboardNavProvider.js","sourceRoot":"","sources":["../../../src/timeline/hooks/TimelineKeyboardNavProvider.tsx"],"names":[],"mappings":"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"}
@@ -1,6 +1,5 @@
1
1
  interface PeriodContextProps {
2
2
  periodId: string;
3
- firstFocus: boolean;
4
3
  restProps?: any;
5
4
  }
6
5
  export declare const PeriodContext: import("react").Context<PeriodContextProps>;
@@ -4,7 +4,6 @@ exports.usePeriodContext = exports.PeriodContext = void 0;
4
4
  const react_1 = require("react");
5
5
  exports.PeriodContext = (0, react_1.createContext)({
6
6
  periodId: "",
7
- firstFocus: false,
8
7
  });
9
8
  const usePeriodContext = () => {
10
9
  const context = (0, react_1.useContext)(exports.PeriodContext);
@@ -1 +1 @@
1
- {"version":3,"file":"usePeriodContext.js","sourceRoot":"","sources":["../../../src/timeline/hooks/usePeriodContext.tsx"],"names":[],"mappings":";;;AAAA,iCAAkD;AAQrC,QAAA,aAAa,GAAG,IAAA,qBAAa,EAAqB;IAC7D,QAAQ,EAAE,EAAE;IACZ,UAAU,EAAE,KAAK;CAClB,CAAC,CAAC;AAEI,MAAM,gBAAgB,GAAG,GAAG,EAAE;IACnC,MAAM,OAAO,GAAG,IAAA,kBAAU,EAAC,qBAAa,CAAC,CAAC;IAE1C,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,CAAC,IAAI,CAAC,kDAAkD,CAAC,CAAC;IACnE,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AARW,QAAA,gBAAgB,oBAQ3B"}
1
+ {"version":3,"file":"usePeriodContext.js","sourceRoot":"","sources":["../../../src/timeline/hooks/usePeriodContext.tsx"],"names":[],"mappings":";;;AAAA,iCAAkD;AAOrC,QAAA,aAAa,GAAG,IAAA,qBAAa,EAAqB;IAC7D,QAAQ,EAAE,EAAE;CACb,CAAC,CAAC;AAEI,MAAM,gBAAgB,GAAG,GAAG,EAAE;IACnC,MAAM,OAAO,GAAG,IAAA,kBAAU,EAAC,qBAAa,CAAC,CAAC;IAE1C,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,CAAC,IAAI,CAAC,kDAAkD,CAAC,CAAC;IACnE,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AARW,QAAA,gBAAgB,oBAQ3B"}
@@ -2,7 +2,6 @@ import { PositionedPeriod } from "../utils/types.internal";
2
2
  interface RowContextProps {
3
3
  periods: PositionedPeriod[];
4
4
  id: string;
5
- active: boolean;
6
5
  index: number;
7
6
  }
8
7
  export declare const RowContext: import("react").Context<RowContextProps>;
@@ -5,7 +5,6 @@ const react_1 = require("react");
5
5
  exports.RowContext = (0, react_1.createContext)({
6
6
  periods: [],
7
7
  id: "",
8
- active: false,
9
8
  index: 0,
10
9
  });
11
10
  const useRowContext = () => {
@@ -1 +1 @@
1
- {"version":3,"file":"useRowContext.js","sourceRoot":"","sources":["../../../src/timeline/hooks/useRowContext.tsx"],"names":[],"mappings":";;;AAAA,iCAAkD;AAUrC,QAAA,UAAU,GAAG,IAAA,qBAAa,EAAkB;IACvD,OAAO,EAAE,EAAE;IACX,EAAE,EAAE,EAAE;IACN,MAAM,EAAE,KAAK;IACb,KAAK,EAAE,CAAC;CACT,CAAC,CAAC;AAEI,MAAM,aAAa,GAAG,GAAG,EAAE;IAChC,MAAM,OAAO,GAAG,IAAA,kBAAU,EAAC,kBAAU,CAAC,CAAC;IAEvC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,CAAC,IAAI,CAAC,4CAA4C,CAAC,CAAC;IAC7D,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AARW,QAAA,aAAa,iBAQxB"}
1
+ {"version":3,"file":"useRowContext.js","sourceRoot":"","sources":["../../../src/timeline/hooks/useRowContext.tsx"],"names":[],"mappings":";;;AAAA,iCAAkD;AASrC,QAAA,UAAU,GAAG,IAAA,qBAAa,EAAkB;IACvD,OAAO,EAAE,EAAE;IACX,EAAE,EAAE,EAAE;IACN,KAAK,EAAE,CAAC;CACT,CAAC,CAAC;AAEI,MAAM,aAAa,GAAG,GAAG,EAAE;IAChC,MAAM,OAAO,GAAG,IAAA,kBAAU,EAAC,kBAAU,CAAC,CAAC;IAEvC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,CAAC,IAAI,CAAC,4CAA4C,CAAC,CAAC;IAC7D,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AARW,QAAA,aAAa,iBAQxB"}
@@ -4,10 +4,6 @@ interface TimelineContextProps {
4
4
  direction: "left" | "right";
5
5
  setStart: (d: Date) => void;
6
6
  setEndInclusive: (d: Date) => void;
7
- activeRow: number | null;
8
- setActiveRow: (i: string) => void;
9
- initiate: (i: number) => void;
10
- addFocusable: (ref: HTMLButtonElement | null, id: number) => void;
11
7
  }
12
8
  export declare const TimelineContext: import("react").Context<TimelineContextProps>;
13
9
  export declare const useTimelineContext: () => TimelineContextProps;
@@ -8,10 +8,6 @@ exports.TimelineContext = (0, react_1.createContext)({
8
8
  direction: "left",
9
9
  setStart: () => null,
10
10
  setEndInclusive: () => null,
11
- activeRow: 0,
12
- setActiveRow: () => null,
13
- initiate: () => null,
14
- addFocusable: () => null,
15
11
  });
16
12
  const useTimelineContext = () => {
17
13
  const context = (0, react_1.useContext)(exports.TimelineContext);
@@ -1 +1 @@
1
- {"version":3,"file":"useTimelineContext.js","sourceRoot":"","sources":["../../../src/timeline/hooks/useTimelineContext.tsx"],"names":[],"mappings":";;;AAAA,iCAAkD;AAcrC,QAAA,eAAe,GAAG,IAAA,qBAAa,EAAuB;IACjE,SAAS,EAAE,IAAI,IAAI,EAAE;IACrB,OAAO,EAAE,IAAI,IAAI,EAAE;IACnB,SAAS,EAAE,MAAM;IACjB,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI;IACpB,eAAe,EAAE,GAAG,EAAE,CAAC,IAAI;IAC3B,SAAS,EAAE,CAAC;IACZ,YAAY,EAAE,GAAG,EAAE,CAAC,IAAI;IACxB,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI;IACpB,YAAY,EAAE,GAAG,EAAE,CAAC,IAAI;CACzB,CAAC,CAAC;AAEI,MAAM,kBAAkB,GAAG,GAAG,EAAE;IACrC,MAAM,OAAO,GAAG,IAAA,kBAAU,EAAC,uBAAe,CAAC,CAAC;IAE5C,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,CAAC,IAAI,CACV,qEAAqE,CACtE,CAAC;IACJ,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AAVW,QAAA,kBAAkB,sBAU7B"}
1
+ {"version":3,"file":"useTimelineContext.js","sourceRoot":"","sources":["../../../src/timeline/hooks/useTimelineContext.tsx"],"names":[],"mappings":";;;AAAA,iCAAkD;AAUrC,QAAA,eAAe,GAAG,IAAA,qBAAa,EAAuB;IACjE,SAAS,EAAE,IAAI,IAAI,EAAE;IACrB,OAAO,EAAE,IAAI,IAAI,EAAE;IACnB,SAAS,EAAE,MAAM;IACjB,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI;IACpB,eAAe,EAAE,GAAG,EAAE,CAAC,IAAI;CAC5B,CAAC,CAAC;AAEI,MAAM,kBAAkB,GAAG,GAAG,EAAE;IACrC,MAAM,OAAO,GAAG,IAAA,kBAAU,EAAC,uBAAe,CAAC,CAAC;IAE5C,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,CAAC,IAAI,CACV,qEAAqE,CACtE,CAAC;IACJ,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AAVW,QAAA,kBAAkB,sBAU7B"}
@@ -38,16 +38,10 @@ const react_2 = __importStar(require("react"));
38
38
  const helpers_1 = require("../../utils/helpers");
39
39
  const hooks_1 = require("../../utils/hooks");
40
40
  const i18n_hooks_1 = require("../../utils/i18n/i18n.hooks");
41
- const usePeriodContext_1 = require("../hooks/usePeriodContext");
42
- const useRowContext_1 = require("../hooks/useRowContext");
43
- const useTimelineContext_1 = require("../hooks/useTimelineContext");
44
41
  const period_1 = require("../utils/period");
45
42
  const ClickablePeriod = react_2.default.memo(({ onSelectPeriod, start, end, status, cropped, direction, left, width, icon, children, isActive, statusLabel, restProps, periodRef, }) => {
46
43
  var _a, _b;
47
44
  const [open, setOpen] = (0, react_2.useState)(false);
48
- const { index } = (0, useRowContext_1.useRowContext)();
49
- const { firstFocus } = (0, usePeriodContext_1.usePeriodContext)();
50
- const { initiate, addFocusable } = (0, useTimelineContext_1.useTimelineContext)();
51
45
  const translate = (0, i18n_hooks_1.useI18n)("Timeline");
52
46
  const { context, placement, refs, floatingStyles } = (0, react_1.useFloating)({
53
47
  placement: (_a = restProps === null || restProps === void 0 ? void 0 : restProps.placement) !== null && _a !== void 0 ? _a : "top",
@@ -68,7 +62,9 @@ const ClickablePeriod = react_2.default.memo(({ onSelectPeriod, start, end, stat
68
62
  });
69
63
  const focus = (0, react_1.useFocus)(context);
70
64
  const dismiss = (0, react_1.useDismiss)(context);
65
+ const click = (0, react_1.useClick)(context);
71
66
  const { getFloatingProps, getReferenceProps } = (0, react_1.useInteractions)([
67
+ click,
72
68
  hover,
73
69
  focus,
74
70
  dismiss,
@@ -76,24 +72,14 @@ const ClickablePeriod = react_2.default.memo(({ onSelectPeriod, start, end, stat
76
72
  const mergedRef = (0, hooks_1.useMergeRefs)(refs.setReference, periodRef);
77
73
  const label = (0, period_1.ariaLabel)(start, end, status, statusLabel, translate);
78
74
  return (react_2.default.createElement(react_2.default.Fragment, null,
79
- react_2.default.createElement("button", Object.assign({}, restProps, { "data-color": (_b = restProps === null || restProps === void 0 ? void 0 : restProps["data-color"]) !== null && _b !== void 0 ? _b : status, type: "button", ref: (r) => {
80
- firstFocus && addFocusable(r, index);
81
- mergedRef === null || mergedRef === void 0 ? void 0 : mergedRef(r);
82
- }, "aria-label": label, className: (0, helpers_1.cl)("aksel-timeline__period--clickable", (0, period_1.getConditionalClasses)(cropped, direction, status), restProps === null || restProps === void 0 ? void 0 : restProps.className, {
75
+ react_2.default.createElement("button", Object.assign({ "data-timeline-period": true }, restProps, { "data-color": (_b = restProps === null || restProps === void 0 ? void 0 : restProps["data-color"]) !== null && _b !== void 0 ? _b : status, type: "button", ref: mergedRef, "aria-label": label, className: (0, helpers_1.cl)("aksel-timeline__period--clickable", (0, period_1.getConditionalClasses)(cropped, direction, status), restProps === null || restProps === void 0 ? void 0 : restProps.className, {
83
76
  "aksel-timeline__period--selected": isActive,
84
77
  }), "aria-expanded": children ? open : undefined, "aria-current": isActive || undefined }, getReferenceProps({
85
- onFocus: () => {
86
- initiate(index);
87
- },
88
78
  onKeyDown: (e) => {
89
79
  var _a;
90
- (_a = restProps === null || restProps === void 0 ? void 0 : restProps.onKeydown) === null || _a === void 0 ? void 0 : _a.call(restProps, e);
91
- if (e.key === "Enter") {
92
- setOpen((prev) => !prev);
93
- }
80
+ (_a = restProps === null || restProps === void 0 ? void 0 : restProps.onKeyDown) === null || _a === void 0 ? void 0 : _a.call(restProps, e);
94
81
  if (e.key === " ") {
95
82
  onSelectPeriod === null || onSelectPeriod === void 0 ? void 0 : onSelectPeriod(e);
96
- setOpen(false);
97
83
  }
98
84
  },
99
85
  style: {
@@ -110,8 +96,8 @@ const ClickablePeriod = react_2.default.memo(({ onSelectPeriod, start, end, stat
110
96
  },
111
97
  })),
112
98
  react_2.default.createElement("span", { className: "aksel-timeline__period--inner" }, icon)),
113
- children && open && (react_2.default.createElement(react_1.FloatingFocusManager, { context: context, modal: false, initialFocus: -1, returnFocus: false },
114
- react_2.default.createElement("div", Object.assign({ className: "aksel-timeline__popover", "data-placement": placement, ref: refs.setFloating, role: "dialog", "aria-label": label }, getFloatingProps(), { style: floatingStyles }), children)))));
99
+ children && open && (react_2.default.createElement(react_1.FloatingFocusManager, { context: context, modal: false, initialFocus: -1, returnFocus: true },
100
+ react_2.default.createElement("div", Object.assign({ className: "aksel-timeline__popover", "data-timeline-popover": true, "data-placement": placement, ref: refs.setFloating, role: "dialog", "aria-label": label }, getFloatingProps(), { style: floatingStyles }), children)))));
115
101
  });
116
102
  exports.default = ClickablePeriod;
117
103
  //# sourceMappingURL=ClickablePeriod.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ClickablePeriod.js","sourceRoot":"","sources":["../../../src/timeline/period/ClickablePeriod.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ClickablePeriod.js","sourceRoot":"","sources":["../../../src/timeline/period/ClickablePeriod.tsx"],"names":[],"mappings":"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"}
@@ -10,7 +10,7 @@ const period_1 = require("../utils/period");
10
10
  const NonClickablePeriod = ({ start, end, status, cropped, direction, left, width, icon, statusLabel, restProps, periodRef, }) => {
11
11
  var _a;
12
12
  const translate = (0, i18n_hooks_1.useI18n)("Timeline");
13
- return (react_1.default.createElement("div", Object.assign({ ref: periodRef }, restProps, { "data-color": (_a = restProps === null || restProps === void 0 ? void 0 : restProps["data-color"]) !== null && _a !== void 0 ? _a : status, className: (0, helpers_1.cl)((0, period_1.getConditionalClasses)(cropped, direction, status), restProps === null || restProps === void 0 ? void 0 : restProps.className), style: {
13
+ return (react_1.default.createElement("div", Object.assign({ "data-timeline-period": true, ref: periodRef, tabIndex: -1 }, restProps, { "data-color": (_a = restProps === null || restProps === void 0 ? void 0 : restProps["data-color"]) !== null && _a !== void 0 ? _a : status, className: (0, helpers_1.cl)((0, period_1.getConditionalClasses)(cropped, direction, status), restProps === null || restProps === void 0 ? void 0 : restProps.className), style: {
14
14
  width: `${width}%`,
15
15
  [direction]: `${left}%`,
16
16
  } }),