@vibe/core 4.5.28-alpha-871ee.0 → 4.5.28

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 (339) hide show
  1. package/dist/components/combobox/dist/Combobox/Combobox.js +2 -0
  2. package/dist/components/combobox/dist/Combobox/Combobox.js.map +1 -0
  3. package/dist/components/combobox/dist/Combobox/Combobox.module.scss.js +2 -0
  4. package/dist/components/combobox/dist/Combobox/ComboboxHelpers/ComboboxHelpers.js +2 -0
  5. package/dist/components/combobox/dist/Combobox/ComboboxHelpers/ComboboxHelpers.js.map +1 -0
  6. package/dist/components/combobox/dist/Combobox/ComboboxHelpers/ComboboxHelpers.module.scss.js +2 -0
  7. package/dist/{mocked_classnames/src/components → components/combobox/dist}/Combobox/ComboboxService.js +1 -1
  8. package/dist/components/combobox/dist/Combobox/ComboboxService.js.map +1 -0
  9. package/dist/components/combobox/dist/Combobox/components/ComboboxCategory/ComboboxCategory.js +2 -0
  10. package/dist/components/combobox/dist/Combobox/components/ComboboxCategory/ComboboxCategory.js.map +1 -0
  11. package/dist/components/combobox/dist/Combobox/components/ComboboxCategory/ComboboxCategory.module.scss.js +2 -0
  12. package/dist/components/combobox/dist/Combobox/components/ComboboxConstants.js +2 -0
  13. package/dist/components/combobox/dist/Combobox/components/ComboboxConstants.js.map +1 -0
  14. package/dist/components/combobox/dist/Combobox/components/ComboboxItems/ComboboxItems.js +2 -0
  15. package/dist/components/combobox/dist/Combobox/components/ComboboxItems/ComboboxItems.js.map +1 -0
  16. package/dist/components/combobox/dist/Combobox/components/ComboboxItems/ComboboxItems.module.scss.js +2 -0
  17. package/dist/components/combobox/dist/Combobox/components/ComboboxOption/ComboboxOption.js +2 -0
  18. package/dist/components/combobox/dist/Combobox/components/ComboboxOption/ComboboxOption.js.map +1 -0
  19. package/dist/components/combobox/dist/Combobox/components/ComboboxOption/ComboboxOption.module.scss.js +2 -0
  20. package/dist/{mocked_classnames/src/components → components/combobox/dist}/Combobox/components/StickyCategoryHeader/StickyCategoryHeader.js +1 -1
  21. package/dist/components/combobox/dist/Combobox/components/StickyCategoryHeader/StickyCategoryHeader.js.map +1 -0
  22. package/dist/components/combobox/dist/Combobox/components/StickyCategoryHeader/StickyCategoryHeader.module.scss.js +2 -0
  23. package/dist/components/combobox/dist/Combobox/helpers.js +2 -0
  24. package/dist/components/combobox/dist/Combobox/helpers.js.map +1 -0
  25. package/dist/components/combobox/dist/_virtual/_tslib.js +2 -0
  26. package/dist/components/combobox/dist/_virtual/_tslib.js.map +1 -0
  27. package/dist/components/date-picker/dist/DatePicker/DatePicker.js +1 -1
  28. package/dist/components/index.d.ts +2 -2
  29. package/dist/components/menu/dist/Menu/MenuItem/components/MenuItemSubMenu/MenuItemSubMenu.js +1 -1
  30. package/dist/components/menu/dist/Menu/MenuItem/components/MenuItemSubMenu/MenuItemSubMenu.js.map +1 -1
  31. package/dist/components/table/dist/Table/Table/Table.js +2 -0
  32. package/dist/components/table/dist/Table/Table/Table.js.map +1 -0
  33. package/dist/components/table/dist/Table/Table/Table.module.scss.js +2 -0
  34. package/dist/components/table/dist/Table/Table/TableConsts.js +2 -0
  35. package/dist/components/table/dist/Table/Table/TableConsts.js.map +1 -0
  36. package/dist/components/table/dist/Table/Table/tableHelpers.js +2 -0
  37. package/dist/components/table/dist/Table/Table/tableHelpers.js.map +1 -0
  38. package/dist/components/table/dist/Table/TableBody/TableBody.js +2 -0
  39. package/dist/components/table/dist/Table/TableBody/TableBody.js.map +1 -0
  40. package/dist/components/table/dist/Table/TableBody/TableBody.module.scss.js +2 -0
  41. package/dist/components/table/dist/Table/TableCell/TableCell.js +2 -0
  42. package/dist/components/table/dist/Table/TableCell/TableCell.js.map +1 -0
  43. package/dist/components/table/dist/Table/TableCell/TableCell.module.scss.js +2 -0
  44. package/dist/components/table/dist/Table/TableCellSkeleton/TableCellSkeleton.js +2 -0
  45. package/dist/components/table/dist/Table/TableCellSkeleton/TableCellSkeleton.js.map +1 -0
  46. package/dist/components/table/dist/Table/TableCellSkeleton/TableCellSkeleton.module.scss.js +2 -0
  47. package/dist/components/table/dist/Table/TableContainer/TableContainer.js +2 -0
  48. package/dist/components/table/dist/Table/TableContainer/TableContainer.js.map +1 -0
  49. package/dist/components/table/dist/Table/TableContainer/TableContainer.module.scss.js +2 -0
  50. package/dist/components/table/dist/Table/TableHeader/TableHeader.js +2 -0
  51. package/dist/components/table/dist/Table/TableHeader/TableHeader.js.map +1 -0
  52. package/dist/components/table/dist/Table/TableHeader/TableHeader.module.scss.js +2 -0
  53. package/dist/components/table/dist/Table/TableHeaderCell/TableHeaderCell.js +2 -0
  54. package/dist/components/table/dist/Table/TableHeaderCell/TableHeaderCell.js.map +1 -0
  55. package/dist/components/table/dist/Table/TableHeaderCell/TableHeaderCell.module.scss.js +2 -0
  56. package/dist/components/table/dist/Table/TableRow/TableRow.js +2 -0
  57. package/dist/components/table/dist/Table/TableRow/TableRow.js.map +1 -0
  58. package/dist/components/table/dist/Table/TableRow/TableRow.module.scss.js +2 -0
  59. package/dist/components/table/dist/Table/TableRowMenu/TableRowMenu.js +2 -0
  60. package/dist/components/table/dist/Table/TableRowMenu/TableRowMenu.js.map +1 -0
  61. package/dist/components/table/dist/Table/TableRowMenu/TableRowMenu.module.scss.js +2 -0
  62. package/dist/components/table/dist/Table/TableVirtualizedBody/TableVirtualizedBody.js +2 -0
  63. package/dist/components/table/dist/Table/TableVirtualizedBody/TableVirtualizedBody.js.map +1 -0
  64. package/dist/components/table/dist/Table/TableVirtualizedBody/TableVirtualizedBody.module.scss.js +2 -0
  65. package/dist/components/table/dist/Table/context/TableContainerContext/TableContainerContext.js +2 -0
  66. package/dist/components/table/dist/Table/context/TableContainerContext/TableContainerContext.js.map +1 -0
  67. package/dist/components/table/dist/Table/context/TableContext/TableContext.js +2 -0
  68. package/dist/components/table/dist/Table/context/TableContext/TableContext.js.map +1 -0
  69. package/dist/components/table/dist/Table/context/TableRowMenuContext/TableRowMenuContext.js +2 -0
  70. package/dist/components/table/dist/Table/context/TableRowMenuContext/TableRowMenuContext.js.map +1 -0
  71. package/dist/components/table/dist/_virtual/_tslib.js +2 -0
  72. package/dist/components/table/dist/_virtual/_tslib.js.map +1 -0
  73. package/dist/hooks/dist/useActiveDescendantListFocus/index.js +2 -0
  74. package/dist/hooks/dist/useActiveDescendantListFocus/index.js.map +1 -0
  75. package/dist/hooks/dist/useActiveDescendantListFocus/useActiveDescendantListFocusHelpers.js +2 -0
  76. package/dist/hooks/dist/useActiveDescendantListFocus/useActiveDescendantListFocusHelpers.js.map +1 -0
  77. package/dist/hooks/dist/useActiveDescendantListFocus/useActiveDescendantListFocusHooks.js +2 -0
  78. package/dist/hooks/dist/useActiveDescendantListFocus/useActiveDescendantListFocusHooks.js.map +1 -0
  79. package/dist/hooks/dist/useListenFocusTriggers/index.js.map +1 -0
  80. package/dist/hooks/index.d.ts +1 -1
  81. package/dist/metadata/components.json +10 -18
  82. package/dist/metadata.json +10 -18
  83. package/dist/mocked_classnames/components/index.d.ts +2 -2
  84. package/dist/mocked_classnames/hooks/index.d.ts +1 -1
  85. package/dist/mocked_classnames/src/components/ListItem/ListItem.js +1 -1
  86. package/dist/mocked_classnames/src/components/ListItem/ListItem.js.map +1 -1
  87. package/dist/mocked_classnames/src/index.js +1 -1
  88. package/dist/src/components/ListItem/ListItem.js +1 -1
  89. package/dist/src/components/ListItem/ListItem.js.map +1 -1
  90. package/dist/src/index.js +1 -1
  91. package/package.json +44 -42
  92. package/dist/components/Combobox/Combobox.d.ts +0 -163
  93. package/dist/components/Combobox/Combobox.types.d.ts +0 -3
  94. package/dist/components/Combobox/ComboboxHelpers/ComboboxHelpers.d.ts +0 -62
  95. package/dist/components/Combobox/ComboboxService.d.ts +0 -7
  96. package/dist/components/Combobox/components/ComboboxCategory/ComboboxCategory.d.ts +0 -14
  97. package/dist/components/Combobox/components/ComboboxConstants.d.ts +0 -239
  98. package/dist/components/Combobox/components/ComboboxItems/ComboboxItems.d.ts +0 -65
  99. package/dist/components/Combobox/components/ComboboxOption/ComboboxOption.d.ts +0 -46
  100. package/dist/components/Combobox/components/StickyCategoryHeader/StickyCategoryHeader.d.ts +0 -6
  101. package/dist/components/Combobox/helpers.d.ts +0 -1
  102. package/dist/components/Combobox/index.d.ts +0 -2
  103. package/dist/components/Table/Table/Table.d.ts +0 -76
  104. package/dist/components/Table/Table/Table.types.d.ts +0 -1
  105. package/dist/components/Table/Table/TableConsts.d.ts +0 -14
  106. package/dist/components/Table/Table/tableHelpers.d.ts +0 -12
  107. package/dist/components/Table/TableBody/TableBody.d.ts +0 -12
  108. package/dist/components/Table/TableCell/TableCell.d.ts +0 -14
  109. package/dist/components/Table/TableCellSkeleton/TableCellSkeleton.d.ts +0 -15
  110. package/dist/components/Table/TableContainer/TableContainer.d.ts +0 -4
  111. package/dist/components/Table/TableContainer/TableContainer.types.d.ts +0 -12
  112. package/dist/components/Table/TableHeader/TableHeader.d.ts +0 -11
  113. package/dist/components/Table/TableHeaderCell/TableHeaderCell.d.ts +0 -35
  114. package/dist/components/Table/TableRow/TableRow.d.ts +0 -19
  115. package/dist/components/Table/TableRowMenu/TableRowMenu.d.ts +0 -4
  116. package/dist/components/Table/TableRowMenu/TableRowMenu.types.d.ts +0 -12
  117. package/dist/components/Table/TableVirtualizedBody/TableVirtualizedBody.d.ts +0 -35
  118. package/dist/components/Table/context/TableContainerContext/TableContainerContext.d.ts +0 -4
  119. package/dist/components/Table/context/TableContainerContext/TableContainerContext.types.d.ts +0 -9
  120. package/dist/components/Table/context/TableContext/TableContext.d.ts +0 -4
  121. package/dist/components/Table/context/TableContext/TableContext.types.d.ts +0 -27
  122. package/dist/components/Table/context/TableRowMenuContext/TableRowMenuContext.d.ts +0 -4
  123. package/dist/components/Table/context/TableRowMenuContext/TableRowMenuContext.types.d.ts +0 -23
  124. package/dist/components/Table/index.d.ts +0 -12
  125. package/dist/hooks/useActiveDescendantListFocus/index.d.ts +0 -35
  126. package/dist/hooks/useActiveDescendantListFocus/useActiveDescendantListFocusHelpers.d.ts +0 -8
  127. package/dist/hooks/useActiveDescendantListFocus/useActiveDescendantListFocusHooks.d.ts +0 -44
  128. package/dist/hooks/useListenFocusTriggers/index.d.ts +0 -6
  129. package/dist/mocked_classnames/components/Combobox/Combobox.d.ts +0 -163
  130. package/dist/mocked_classnames/components/Combobox/Combobox.types.d.ts +0 -3
  131. package/dist/mocked_classnames/components/Combobox/ComboboxHelpers/ComboboxHelpers.d.ts +0 -62
  132. package/dist/mocked_classnames/components/Combobox/ComboboxService.d.ts +0 -7
  133. package/dist/mocked_classnames/components/Combobox/components/ComboboxCategory/ComboboxCategory.d.ts +0 -14
  134. package/dist/mocked_classnames/components/Combobox/components/ComboboxConstants.d.ts +0 -239
  135. package/dist/mocked_classnames/components/Combobox/components/ComboboxItems/ComboboxItems.d.ts +0 -65
  136. package/dist/mocked_classnames/components/Combobox/components/ComboboxOption/ComboboxOption.d.ts +0 -46
  137. package/dist/mocked_classnames/components/Combobox/components/StickyCategoryHeader/StickyCategoryHeader.d.ts +0 -6
  138. package/dist/mocked_classnames/components/Combobox/helpers.d.ts +0 -1
  139. package/dist/mocked_classnames/components/Combobox/index.d.ts +0 -2
  140. package/dist/mocked_classnames/components/Table/Table/Table.d.ts +0 -76
  141. package/dist/mocked_classnames/components/Table/Table/Table.types.d.ts +0 -1
  142. package/dist/mocked_classnames/components/Table/Table/TableConsts.d.ts +0 -14
  143. package/dist/mocked_classnames/components/Table/Table/tableHelpers.d.ts +0 -12
  144. package/dist/mocked_classnames/components/Table/TableBody/TableBody.d.ts +0 -12
  145. package/dist/mocked_classnames/components/Table/TableCell/TableCell.d.ts +0 -14
  146. package/dist/mocked_classnames/components/Table/TableCellSkeleton/TableCellSkeleton.d.ts +0 -15
  147. package/dist/mocked_classnames/components/Table/TableContainer/TableContainer.d.ts +0 -4
  148. package/dist/mocked_classnames/components/Table/TableContainer/TableContainer.types.d.ts +0 -12
  149. package/dist/mocked_classnames/components/Table/TableHeader/TableHeader.d.ts +0 -11
  150. package/dist/mocked_classnames/components/Table/TableHeaderCell/TableHeaderCell.d.ts +0 -35
  151. package/dist/mocked_classnames/components/Table/TableRow/TableRow.d.ts +0 -19
  152. package/dist/mocked_classnames/components/Table/TableRowMenu/TableRowMenu.d.ts +0 -4
  153. package/dist/mocked_classnames/components/Table/TableRowMenu/TableRowMenu.types.d.ts +0 -12
  154. package/dist/mocked_classnames/components/Table/TableVirtualizedBody/TableVirtualizedBody.d.ts +0 -35
  155. package/dist/mocked_classnames/components/Table/context/TableContainerContext/TableContainerContext.d.ts +0 -4
  156. package/dist/mocked_classnames/components/Table/context/TableContainerContext/TableContainerContext.types.d.ts +0 -9
  157. package/dist/mocked_classnames/components/Table/context/TableContext/TableContext.d.ts +0 -4
  158. package/dist/mocked_classnames/components/Table/context/TableContext/TableContext.types.d.ts +0 -27
  159. package/dist/mocked_classnames/components/Table/context/TableRowMenuContext/TableRowMenuContext.d.ts +0 -4
  160. package/dist/mocked_classnames/components/Table/context/TableRowMenuContext/TableRowMenuContext.types.d.ts +0 -23
  161. package/dist/mocked_classnames/components/Table/index.d.ts +0 -12
  162. package/dist/mocked_classnames/hooks/useActiveDescendantListFocus/index.d.ts +0 -35
  163. package/dist/mocked_classnames/hooks/useActiveDescendantListFocus/useActiveDescendantListFocusHelpers.d.ts +0 -8
  164. package/dist/mocked_classnames/hooks/useActiveDescendantListFocus/useActiveDescendantListFocusHooks.d.ts +0 -44
  165. package/dist/mocked_classnames/hooks/useListenFocusTriggers/index.d.ts +0 -6
  166. package/dist/mocked_classnames/src/components/Combobox/Combobox.js +0 -2
  167. package/dist/mocked_classnames/src/components/Combobox/Combobox.js.map +0 -1
  168. package/dist/mocked_classnames/src/components/Combobox/Combobox.module.scss.js +0 -2
  169. package/dist/mocked_classnames/src/components/Combobox/ComboboxHelpers/ComboboxHelpers.js +0 -2
  170. package/dist/mocked_classnames/src/components/Combobox/ComboboxHelpers/ComboboxHelpers.js.map +0 -1
  171. package/dist/mocked_classnames/src/components/Combobox/ComboboxHelpers/ComboboxHelpers.module.scss.js +0 -2
  172. package/dist/mocked_classnames/src/components/Combobox/ComboboxService.js.map +0 -1
  173. package/dist/mocked_classnames/src/components/Combobox/components/ComboboxCategory/ComboboxCategory.js +0 -2
  174. package/dist/mocked_classnames/src/components/Combobox/components/ComboboxCategory/ComboboxCategory.js.map +0 -1
  175. package/dist/mocked_classnames/src/components/Combobox/components/ComboboxCategory/ComboboxCategory.module.scss.js +0 -2
  176. package/dist/mocked_classnames/src/components/Combobox/components/ComboboxConstants.js +0 -2
  177. package/dist/mocked_classnames/src/components/Combobox/components/ComboboxConstants.js.map +0 -1
  178. package/dist/mocked_classnames/src/components/Combobox/components/ComboboxItems/ComboboxItems.js +0 -2
  179. package/dist/mocked_classnames/src/components/Combobox/components/ComboboxItems/ComboboxItems.js.map +0 -1
  180. package/dist/mocked_classnames/src/components/Combobox/components/ComboboxItems/ComboboxItems.module.scss.js +0 -2
  181. package/dist/mocked_classnames/src/components/Combobox/components/ComboboxOption/ComboboxOption.js +0 -2
  182. package/dist/mocked_classnames/src/components/Combobox/components/ComboboxOption/ComboboxOption.js.map +0 -1
  183. package/dist/mocked_classnames/src/components/Combobox/components/ComboboxOption/ComboboxOption.module.scss.js +0 -2
  184. package/dist/mocked_classnames/src/components/Combobox/components/StickyCategoryHeader/StickyCategoryHeader.js.map +0 -1
  185. package/dist/mocked_classnames/src/components/Combobox/components/StickyCategoryHeader/StickyCategoryHeader.module.scss.js +0 -2
  186. package/dist/mocked_classnames/src/components/Combobox/helpers.js +0 -2
  187. package/dist/mocked_classnames/src/components/Combobox/helpers.js.map +0 -1
  188. package/dist/mocked_classnames/src/components/Table/Table/Table.js +0 -2
  189. package/dist/mocked_classnames/src/components/Table/Table/Table.js.map +0 -1
  190. package/dist/mocked_classnames/src/components/Table/Table/Table.module.scss.js +0 -2
  191. package/dist/mocked_classnames/src/components/Table/Table/TableConsts.js +0 -2
  192. package/dist/mocked_classnames/src/components/Table/Table/TableConsts.js.map +0 -1
  193. package/dist/mocked_classnames/src/components/Table/Table/tableHelpers.js +0 -2
  194. package/dist/mocked_classnames/src/components/Table/Table/tableHelpers.js.map +0 -1
  195. package/dist/mocked_classnames/src/components/Table/TableBody/TableBody.js +0 -2
  196. package/dist/mocked_classnames/src/components/Table/TableBody/TableBody.js.map +0 -1
  197. package/dist/mocked_classnames/src/components/Table/TableBody/TableBody.module.scss.js +0 -2
  198. package/dist/mocked_classnames/src/components/Table/TableCell/TableCell.js +0 -2
  199. package/dist/mocked_classnames/src/components/Table/TableCell/TableCell.js.map +0 -1
  200. package/dist/mocked_classnames/src/components/Table/TableCell/TableCell.module.scss.js +0 -2
  201. package/dist/mocked_classnames/src/components/Table/TableCellSkeleton/TableCellSkeleton.js +0 -2
  202. package/dist/mocked_classnames/src/components/Table/TableCellSkeleton/TableCellSkeleton.js.map +0 -1
  203. package/dist/mocked_classnames/src/components/Table/TableCellSkeleton/TableCellSkeleton.module.scss.js +0 -2
  204. package/dist/mocked_classnames/src/components/Table/TableContainer/TableContainer.js +0 -2
  205. package/dist/mocked_classnames/src/components/Table/TableContainer/TableContainer.js.map +0 -1
  206. package/dist/mocked_classnames/src/components/Table/TableContainer/TableContainer.module.scss.js +0 -2
  207. package/dist/mocked_classnames/src/components/Table/TableHeader/TableHeader.js +0 -2
  208. package/dist/mocked_classnames/src/components/Table/TableHeader/TableHeader.js.map +0 -1
  209. package/dist/mocked_classnames/src/components/Table/TableHeader/TableHeader.module.scss.js +0 -2
  210. package/dist/mocked_classnames/src/components/Table/TableHeaderCell/TableHeaderCell.js +0 -2
  211. package/dist/mocked_classnames/src/components/Table/TableHeaderCell/TableHeaderCell.js.map +0 -1
  212. package/dist/mocked_classnames/src/components/Table/TableHeaderCell/TableHeaderCell.module.scss.js +0 -2
  213. package/dist/mocked_classnames/src/components/Table/TableRow/TableRow.js +0 -2
  214. package/dist/mocked_classnames/src/components/Table/TableRow/TableRow.js.map +0 -1
  215. package/dist/mocked_classnames/src/components/Table/TableRow/TableRow.module.scss.js +0 -2
  216. package/dist/mocked_classnames/src/components/Table/TableRowMenu/TableRowMenu.js +0 -2
  217. package/dist/mocked_classnames/src/components/Table/TableRowMenu/TableRowMenu.js.map +0 -1
  218. package/dist/mocked_classnames/src/components/Table/TableRowMenu/TableRowMenu.module.scss.js +0 -2
  219. package/dist/mocked_classnames/src/components/Table/TableVirtualizedBody/TableVirtualizedBody.js +0 -2
  220. package/dist/mocked_classnames/src/components/Table/TableVirtualizedBody/TableVirtualizedBody.js.map +0 -1
  221. package/dist/mocked_classnames/src/components/Table/TableVirtualizedBody/TableVirtualizedBody.module.scss.js +0 -2
  222. package/dist/mocked_classnames/src/components/Table/context/TableContainerContext/TableContainerContext.js +0 -2
  223. package/dist/mocked_classnames/src/components/Table/context/TableContainerContext/TableContainerContext.js.map +0 -1
  224. package/dist/mocked_classnames/src/components/Table/context/TableContext/TableContext.js +0 -2
  225. package/dist/mocked_classnames/src/components/Table/context/TableContext/TableContext.js.map +0 -1
  226. package/dist/mocked_classnames/src/components/Table/context/TableRowMenuContext/TableRowMenuContext.js +0 -2
  227. package/dist/mocked_classnames/src/components/Table/context/TableRowMenuContext/TableRowMenuContext.js.map +0 -1
  228. package/dist/mocked_classnames/src/hooks/useActiveDescendantListFocus/index.js +0 -2
  229. package/dist/mocked_classnames/src/hooks/useActiveDescendantListFocus/index.js.map +0 -1
  230. package/dist/mocked_classnames/src/hooks/useActiveDescendantListFocus/useActiveDescendantListFocusHelpers.js +0 -2
  231. package/dist/mocked_classnames/src/hooks/useActiveDescendantListFocus/useActiveDescendantListFocusHelpers.js.map +0 -1
  232. package/dist/mocked_classnames/src/hooks/useActiveDescendantListFocus/useActiveDescendantListFocusHooks.js +0 -2
  233. package/dist/mocked_classnames/src/hooks/useActiveDescendantListFocus/useActiveDescendantListFocusHooks.js.map +0 -1
  234. package/dist/mocked_classnames/src/hooks/useListenFocusTriggers/index.js +0 -2
  235. package/dist/mocked_classnames/src/hooks/useListenFocusTriggers/index.js.map +0 -1
  236. package/dist/src/components/Combobox/Combobox.js +0 -2
  237. package/dist/src/components/Combobox/Combobox.js.map +0 -1
  238. package/dist/src/components/Combobox/Combobox.module.scss.js +0 -2
  239. package/dist/src/components/Combobox/Combobox.module.scss.js.map +0 -1
  240. package/dist/src/components/Combobox/ComboboxHelpers/ComboboxHelpers.js +0 -2
  241. package/dist/src/components/Combobox/ComboboxHelpers/ComboboxHelpers.js.map +0 -1
  242. package/dist/src/components/Combobox/ComboboxHelpers/ComboboxHelpers.module.scss.js +0 -2
  243. package/dist/src/components/Combobox/ComboboxHelpers/ComboboxHelpers.module.scss.js.map +0 -1
  244. package/dist/src/components/Combobox/ComboboxService.js +0 -2
  245. package/dist/src/components/Combobox/ComboboxService.js.map +0 -1
  246. package/dist/src/components/Combobox/components/ComboboxCategory/ComboboxCategory.js +0 -2
  247. package/dist/src/components/Combobox/components/ComboboxCategory/ComboboxCategory.js.map +0 -1
  248. package/dist/src/components/Combobox/components/ComboboxCategory/ComboboxCategory.module.scss.js +0 -2
  249. package/dist/src/components/Combobox/components/ComboboxCategory/ComboboxCategory.module.scss.js.map +0 -1
  250. package/dist/src/components/Combobox/components/ComboboxConstants.js +0 -2
  251. package/dist/src/components/Combobox/components/ComboboxConstants.js.map +0 -1
  252. package/dist/src/components/Combobox/components/ComboboxItems/ComboboxItems.js +0 -2
  253. package/dist/src/components/Combobox/components/ComboboxItems/ComboboxItems.js.map +0 -1
  254. package/dist/src/components/Combobox/components/ComboboxItems/ComboboxItems.module.scss.js +0 -2
  255. package/dist/src/components/Combobox/components/ComboboxItems/ComboboxItems.module.scss.js.map +0 -1
  256. package/dist/src/components/Combobox/components/ComboboxOption/ComboboxOption.js +0 -2
  257. package/dist/src/components/Combobox/components/ComboboxOption/ComboboxOption.js.map +0 -1
  258. package/dist/src/components/Combobox/components/ComboboxOption/ComboboxOption.module.scss.js +0 -2
  259. package/dist/src/components/Combobox/components/ComboboxOption/ComboboxOption.module.scss.js.map +0 -1
  260. package/dist/src/components/Combobox/components/StickyCategoryHeader/StickyCategoryHeader.js +0 -2
  261. package/dist/src/components/Combobox/components/StickyCategoryHeader/StickyCategoryHeader.js.map +0 -1
  262. package/dist/src/components/Combobox/components/StickyCategoryHeader/StickyCategoryHeader.module.scss.js +0 -2
  263. package/dist/src/components/Combobox/components/StickyCategoryHeader/StickyCategoryHeader.module.scss.js.map +0 -1
  264. package/dist/src/components/Combobox/helpers.js +0 -2
  265. package/dist/src/components/Combobox/helpers.js.map +0 -1
  266. package/dist/src/components/Table/Table/Table.js +0 -2
  267. package/dist/src/components/Table/Table/Table.js.map +0 -1
  268. package/dist/src/components/Table/Table/Table.module.scss.js +0 -2
  269. package/dist/src/components/Table/Table/Table.module.scss.js.map +0 -1
  270. package/dist/src/components/Table/Table/TableConsts.js +0 -2
  271. package/dist/src/components/Table/Table/TableConsts.js.map +0 -1
  272. package/dist/src/components/Table/Table/tableHelpers.js +0 -2
  273. package/dist/src/components/Table/Table/tableHelpers.js.map +0 -1
  274. package/dist/src/components/Table/TableBody/TableBody.js +0 -2
  275. package/dist/src/components/Table/TableBody/TableBody.js.map +0 -1
  276. package/dist/src/components/Table/TableBody/TableBody.module.scss.js +0 -2
  277. package/dist/src/components/Table/TableBody/TableBody.module.scss.js.map +0 -1
  278. package/dist/src/components/Table/TableCell/TableCell.js +0 -2
  279. package/dist/src/components/Table/TableCell/TableCell.js.map +0 -1
  280. package/dist/src/components/Table/TableCell/TableCell.module.scss.js +0 -2
  281. package/dist/src/components/Table/TableCell/TableCell.module.scss.js.map +0 -1
  282. package/dist/src/components/Table/TableCellSkeleton/TableCellSkeleton.js +0 -2
  283. package/dist/src/components/Table/TableCellSkeleton/TableCellSkeleton.js.map +0 -1
  284. package/dist/src/components/Table/TableCellSkeleton/TableCellSkeleton.module.scss.js +0 -2
  285. package/dist/src/components/Table/TableCellSkeleton/TableCellSkeleton.module.scss.js.map +0 -1
  286. package/dist/src/components/Table/TableContainer/TableContainer.js +0 -2
  287. package/dist/src/components/Table/TableContainer/TableContainer.js.map +0 -1
  288. package/dist/src/components/Table/TableContainer/TableContainer.module.scss.js +0 -2
  289. package/dist/src/components/Table/TableContainer/TableContainer.module.scss.js.map +0 -1
  290. package/dist/src/components/Table/TableHeader/TableHeader.js +0 -2
  291. package/dist/src/components/Table/TableHeader/TableHeader.js.map +0 -1
  292. package/dist/src/components/Table/TableHeader/TableHeader.module.scss.js +0 -2
  293. package/dist/src/components/Table/TableHeader/TableHeader.module.scss.js.map +0 -1
  294. package/dist/src/components/Table/TableHeaderCell/TableHeaderCell.js +0 -2
  295. package/dist/src/components/Table/TableHeaderCell/TableHeaderCell.js.map +0 -1
  296. package/dist/src/components/Table/TableHeaderCell/TableHeaderCell.module.scss.js +0 -2
  297. package/dist/src/components/Table/TableHeaderCell/TableHeaderCell.module.scss.js.map +0 -1
  298. package/dist/src/components/Table/TableRow/TableRow.js +0 -2
  299. package/dist/src/components/Table/TableRow/TableRow.js.map +0 -1
  300. package/dist/src/components/Table/TableRow/TableRow.module.scss.js +0 -2
  301. package/dist/src/components/Table/TableRow/TableRow.module.scss.js.map +0 -1
  302. package/dist/src/components/Table/TableRowMenu/TableRowMenu.js +0 -2
  303. package/dist/src/components/Table/TableRowMenu/TableRowMenu.js.map +0 -1
  304. package/dist/src/components/Table/TableRowMenu/TableRowMenu.module.scss.js +0 -2
  305. package/dist/src/components/Table/TableRowMenu/TableRowMenu.module.scss.js.map +0 -1
  306. package/dist/src/components/Table/TableVirtualizedBody/TableVirtualizedBody.js +0 -2
  307. package/dist/src/components/Table/TableVirtualizedBody/TableVirtualizedBody.js.map +0 -1
  308. package/dist/src/components/Table/TableVirtualizedBody/TableVirtualizedBody.module.scss.js +0 -2
  309. package/dist/src/components/Table/TableVirtualizedBody/TableVirtualizedBody.module.scss.js.map +0 -1
  310. package/dist/src/components/Table/context/TableContainerContext/TableContainerContext.js +0 -2
  311. package/dist/src/components/Table/context/TableContainerContext/TableContainerContext.js.map +0 -1
  312. package/dist/src/components/Table/context/TableContext/TableContext.js +0 -2
  313. package/dist/src/components/Table/context/TableContext/TableContext.js.map +0 -1
  314. package/dist/src/components/Table/context/TableRowMenuContext/TableRowMenuContext.js +0 -2
  315. package/dist/src/components/Table/context/TableRowMenuContext/TableRowMenuContext.js.map +0 -1
  316. package/dist/src/hooks/useActiveDescendantListFocus/index.js +0 -2
  317. package/dist/src/hooks/useActiveDescendantListFocus/index.js.map +0 -1
  318. package/dist/src/hooks/useActiveDescendantListFocus/useActiveDescendantListFocusHelpers.js +0 -2
  319. package/dist/src/hooks/useActiveDescendantListFocus/useActiveDescendantListFocusHelpers.js.map +0 -1
  320. package/dist/src/hooks/useActiveDescendantListFocus/useActiveDescendantListFocusHooks.js +0 -2
  321. package/dist/src/hooks/useActiveDescendantListFocus/useActiveDescendantListFocusHooks.js.map +0 -1
  322. package/dist/src/hooks/useListenFocusTriggers/index.js.map +0 -1
  323. /package/dist/{mocked_classnames/src/components → components/combobox/dist}/Combobox/Combobox.module.scss.js.map +0 -0
  324. /package/dist/{mocked_classnames/src/components → components/combobox/dist}/Combobox/ComboboxHelpers/ComboboxHelpers.module.scss.js.map +0 -0
  325. /package/dist/{mocked_classnames/src/components → components/combobox/dist}/Combobox/components/ComboboxCategory/ComboboxCategory.module.scss.js.map +0 -0
  326. /package/dist/{mocked_classnames/src/components → components/combobox/dist}/Combobox/components/ComboboxItems/ComboboxItems.module.scss.js.map +0 -0
  327. /package/dist/{mocked_classnames/src/components → components/combobox/dist}/Combobox/components/ComboboxOption/ComboboxOption.module.scss.js.map +0 -0
  328. /package/dist/{mocked_classnames/src/components → components/combobox/dist}/Combobox/components/StickyCategoryHeader/StickyCategoryHeader.module.scss.js.map +0 -0
  329. /package/dist/{mocked_classnames/src/components → components/table/dist}/Table/Table/Table.module.scss.js.map +0 -0
  330. /package/dist/{mocked_classnames/src/components → components/table/dist}/Table/TableBody/TableBody.module.scss.js.map +0 -0
  331. /package/dist/{mocked_classnames/src/components → components/table/dist}/Table/TableCell/TableCell.module.scss.js.map +0 -0
  332. /package/dist/{mocked_classnames/src/components → components/table/dist}/Table/TableCellSkeleton/TableCellSkeleton.module.scss.js.map +0 -0
  333. /package/dist/{mocked_classnames/src/components → components/table/dist}/Table/TableContainer/TableContainer.module.scss.js.map +0 -0
  334. /package/dist/{mocked_classnames/src/components → components/table/dist}/Table/TableHeader/TableHeader.module.scss.js.map +0 -0
  335. /package/dist/{mocked_classnames/src/components → components/table/dist}/Table/TableHeaderCell/TableHeaderCell.module.scss.js.map +0 -0
  336. /package/dist/{mocked_classnames/src/components → components/table/dist}/Table/TableRow/TableRow.module.scss.js.map +0 -0
  337. /package/dist/{mocked_classnames/src/components → components/table/dist}/Table/TableRowMenu/TableRowMenu.module.scss.js.map +0 -0
  338. /package/dist/{mocked_classnames/src/components → components/table/dist}/Table/TableVirtualizedBody/TableVirtualizedBody.module.scss.js.map +0 -0
  339. /package/dist/{src/hooks → hooks/dist}/useListenFocusTriggers/index.js +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"file":"Table.js","sources":["../../../../../src/components/Table/Table/Table.tsx"],"sourcesContent":["import React, {\n forwardRef,\n type ReactElement,\n type UIEventHandler,\n useCallback,\n useMemo,\n useRef,\n useState\n} from \"react\";\nimport cx from \"classnames\";\nimport { type VibeComponentProps } from \"../../../types\";\nimport { type TableHeaderProps } from \"../TableHeader/TableHeader\";\nimport { type TableBodyProps } from \"../TableBody/TableBody\";\nimport { getTableRowLayoutStyles } from \"./tableHelpers\";\nimport { getTestId } from \"../../../tests/test-ids-utils\";\nimport { ComponentDefaultTestId, ComponentVibeId } from \"../../../tests/constants\";\nimport { RowHeights } from \"./TableConsts\";\nimport { type RowSizes } from \"./Table.types\";\nimport styles from \"./Table.module.scss\";\nimport { TableProvider } from \"../context/TableContext/TableContext\";\nimport { TableRowMenuProvider } from \"../context/TableRowMenuContext/TableRowMenuContext\";\nimport { useMergeRef } from \"@vibe/shared\";\nimport { type TableProviderValue } from \"../context/TableContext/TableContext.types\";\nimport { type TableRowMenuProviderValue } from \"../context/TableRowMenuContext/TableRowMenuContext.types\";\nimport { type SubIcon } from \"@vibe/icon\";\n\nexport type TableLoadingStateType = \"long-text\" | \"medium-text\" | \"circle\" | \"rectangle\";\n\ntype Width = number | `${number}%` | `${number}px` | `${number}fr`;\n\nexport interface TableColumn {\n /**\n * Unique identifier for the column.\n */\n id: string;\n /**\n * Column title displayed in the header.\n */\n title: string;\n /**\n * Additional information displayed as a tooltip.\n */\n infoContent?: string;\n /**\n * Column width configuration.\n */\n width?: Width | { min: Width; max: Width };\n /**\n * Icon displayed next to the column title.\n */\n icon?: SubIcon;\n /**\n * Loading state type for the column when data is being fetched.\n */\n loadingStateType?: TableLoadingStateType;\n}\n\nexport interface TableProps extends VibeComponentProps {\n /**\n * Defines the columns of the table.\n */\n columns: TableColumn[];\n /**\n * State of the data being displayed (loading or error).\n */\n dataState?: {\n isLoading?: boolean;\n isError?: boolean;\n };\n /**\n * React element displayed when there is an error state.\n */\n errorState: ReactElement;\n /**\n * React element displayed when there is no data.\n */\n emptyState: ReactElement;\n /**\n * Custom styles for the table.\n */\n style?: React.CSSProperties;\n /**\n * The child components inside the table, such as `<TableHeader />` and `<TableBody />`.\n */\n children?:\n | ReactElement<TableHeaderProps>\n | ReactElement<TableBodyProps>\n | Array<ReactElement<TableHeaderProps> | ReactElement<TableBodyProps>>;\n /**\n * The row size of the table.\n */\n size?: RowSizes;\n /**\n * If true, removes the table's outer border.\n */\n withoutBorder?: boolean;\n}\n\nconst Table = forwardRef(\n (\n {\n id,\n className,\n \"data-testid\": dataTestId,\n columns,\n errorState,\n emptyState,\n dataState,\n style,\n children,\n size = \"medium\",\n withoutBorder\n }: TableProps,\n ref: React.ForwardedRef<HTMLDivElement>\n ) => {\n const tableRootRef = useRef<HTMLDivElement>(null);\n const mergedRef = useMergeRef(ref, tableRootRef);\n\n const [isMenuOpen, setIsMenuOpen] = useState<boolean>(false);\n const [hoveredRowRef, setHoveredRowRef] = useState<React.RefObject<HTMLDivElement>>(null);\n\n const resetHoveredRow = useCallback(() => {\n setIsMenuOpen(false);\n setHoveredRowRef(null);\n }, []);\n\n const [isVirtualized, setIsVirtualized] = useState<boolean>(false);\n const markTableAsVirtualized = useCallback(() => {\n setIsVirtualized(true);\n }, []);\n\n const [isScrolled, setIsScrolled] = useState<boolean>(false);\n\n const onScroll = useCallback<UIEventHandler<HTMLDivElement>>(\n e => {\n resetHoveredRow();\n if (!isVirtualized) {\n const newLeft = (e.target as HTMLDivElement).scrollLeft;\n const hasScroll = newLeft > 0;\n setIsScrolled(prevScroll => (prevScroll !== hasScroll ? hasScroll : prevScroll));\n }\n },\n [resetHoveredRow, isVirtualized]\n );\n\n const { gridTemplateColumns } = getTableRowLayoutStyles(columns);\n\n /**\n * The `--table-grid-template-columns` and `--table-row-size` variables will be available under each <Table /> scope\n * and will be consumed in the stylesheets of its children (<TableHeader />, <TableRow />, <TableHeaderCell />)\n */\n const calculatedStyle = {\n \"--table-grid-template-columns\": gridTemplateColumns,\n \"--table-row-size\": `${RowHeights[size]}px`,\n ...style\n } as React.CSSProperties;\n\n const tableProviderValue = useMemo<TableProviderValue>(\n () => ({\n columns,\n dataState,\n emptyState,\n errorState,\n size,\n tableRootRef,\n isVirtualized,\n markTableAsVirtualized,\n isScrolled,\n setIsScrolled: (scrollLeft: boolean) => setIsScrolled(scrollLeft)\n }),\n [columns, dataState, emptyState, errorState, isVirtualized, markTableAsVirtualized, isScrolled, size]\n );\n\n const tableRowMenuProviderValue = useMemo<TableRowMenuProviderValue>(\n () => ({\n tableRootRef,\n hoveredRowRef,\n isMenuOpen,\n resetHoveredRow,\n setHoveredRowRef: (rowRef: React.RefObject<HTMLDivElement>) => setHoveredRowRef(rowRef),\n setIsMenuOpen: (isOpen: boolean) => setIsMenuOpen(isOpen)\n }),\n [hoveredRowRef, isMenuOpen, resetHoveredRow, setHoveredRowRef]\n );\n\n return (\n <TableProvider value={tableProviderValue}>\n <TableRowMenuProvider value={tableRowMenuProviderValue}>\n <div\n ref={mergedRef}\n id={id}\n className={cx(\n styles.table,\n {\n [styles.border]: !withoutBorder,\n [styles.virtualized]: isVirtualized,\n [styles.hasScroll]: isScrolled\n },\n className\n )}\n data-testid={dataTestId || getTestId(ComponentDefaultTestId.TABLE, id)}\n data-vibe={ComponentVibeId.TABLE}\n role=\"table\"\n style={calculatedStyle}\n onScroll={onScroll}\n >\n {children}\n </div>\n </TableRowMenuProvider>\n </TableProvider>\n );\n }\n);\n\nexport default Table;\n"],"names":["Table","forwardRef","_ref","ref","id","className","dataTestId","columns","errorState","emptyState","dataState","style","children","_ref$size","size","withoutBorder","tableRootRef","useRef","mergedRef","useMergeRef","_useState","useState","_useState2","_slicedToArray","isMenuOpen","setIsMenuOpen","_useState3","_useState4","hoveredRowRef","setHoveredRowRef","resetHoveredRow","useCallback","_useState5","_useState6","isVirtualized","setIsVirtualized","markTableAsVirtualized","_useState7","_useState8","isScrolled","setIsScrolled","onScroll","e","hasScroll","target","scrollLeft","prevScroll","_getTableRowLayoutSty","getTableRowLayoutStyles","calculatedStyle","Object","assign","gridTemplateColumns","concat","RowHeights","tableProviderValue","useMemo","tableRowMenuProviderValue","rowRef","isOpen","React","createElement","TableProvider","value","TableRowMenuProvider","cx","styles","table","_defineProperty","border","virtualized","getTestId","ComponentDefaultTestId","TABLE","ComponentVibeId","role"],"mappings":"8uBAkGMA,IAAAA,EAAQC,GACZ,SAAAC,EAcEC,GACE,IAbAC,EAAEF,EAAFE,GACAC,EAASH,EAATG,UACeC,EAAUJ,EAAzB,eACAK,EAAOL,EAAPK,QACAC,EAAUN,EAAVM,WACAC,EAAUP,EAAVO,WACAC,EAASR,EAATQ,UACAC,EAAKT,EAALS,MACAC,EAAQV,EAARU,SAAQC,EAAAX,EACRY,KAAAA,OAAO,IAAHD,EAAG,SAAQA,EACfE,EAAab,EAAba,cAIIC,EAAeC,EAAuB,MACtCC,EAAYC,EAAYhB,EAAKa,GAEnCI,EAAoCC,GAAkB,GAAMC,EAAAC,EAAAH,EAAA,GAArDI,EAAUF,EAAA,GAAEG,EAAaH,EAAA,GAChCI,EAA0CL,EAA0C,MAAKM,EAAAJ,EAAAG,EAAA,GAAlFE,EAAaD,EAAA,GAAEE,EAAgBF,EAAA,GAEhCG,EAAkBC,GAAY,WAClCN,GAAc,GACdI,EAAiB,KAClB,GAAE,IAEHG,EAA0CX,GAAkB,GAAMY,EAAAV,EAAAS,EAAA,GAA3DE,EAAaD,EAAA,GAAEE,EAAgBF,EAAA,GAChCG,EAAyBL,GAAY,WACzCI,GAAiB,EAClB,GAAE,IAEHE,EAAoChB,GAAkB,GAAMiB,EAAAf,EAAAc,EAAA,GAArDE,EAAUD,EAAA,GAAEE,EAAaF,EAAA,GAE1BG,EAAWV,GACf,SAAAW,GAEE,GADAZ,KACKI,EAAe,CAClB,IACMS,EADWD,EAAEE,OAA0BC,WACjB,EAC5BL,GAAc,SAAAM,GAAU,OAAKA,IAAeH,EAAYA,EAAYG,CAAU,GAChF,CACF,GACA,CAAChB,EAAiBI,IAGpBa,EAAgCC,EAAwBzC,GAMlD0C,EAAkBC,OAAAC,OAAA,CACtB,gCAPyBJ,EAAnBK,oBAQN,sBAAkBC,OAAKC,EAAWxC,GAAK,OACpCH,GAGC4C,GAAqBC,GACzB,WAAA,MAAO,CACLjD,QAAAA,EACAG,UAAAA,EACAD,WAAAA,EACAD,WAAAA,EACAM,KAAAA,EACAE,aAAAA,EACAkB,cAAAA,EACAE,uBAAAA,EACAG,WAAAA,EACAC,cAAe,SAACK,GAAmB,OAAKL,EAAcK,EAAW,EAClE,GACD,CAACtC,EAASG,EAAWD,EAAYD,EAAY0B,EAAeE,EAAwBG,EAAYzB,IAG5F2C,GAA4BD,GAChC,WAAA,MAAO,CACLxC,aAAAA,EACAY,cAAAA,EACAJ,WAAAA,EACAM,gBAAAA,EACAD,iBAAkB,SAAC6B,GAAuC,OAAK7B,EAAiB6B,EAAO,EACvFjC,cAAe,SAACkC,GAAe,OAAKlC,EAAckC,EAAO,EACzD,GACF,CAAC/B,EAAeJ,EAAYM,EAAiBD,IAG/C,OACE+B,EAACC,cAAAC,EAAc,CAAAC,MAAOR,IACpBK,EAAAC,cAACG,EAAoB,CAACD,MAAON,IAC3BG,EAAAC,cAAA,MAAA,CACE1D,IAAKe,EACLd,GAAIA,EACJC,UAAW4D,EACTC,EAAOC,MAAKC,EAAAA,EAAAA,EAAA,CAAA,EAETF,EAAOG,QAAUtD,GACjBmD,EAAOI,YAAcpC,GACrBgC,EAAOvB,UAAYJ,GAEtBlC,GAEW,cAAAC,GAAciE,EAAUC,EAAuBC,MAAOrE,GAAG,YAC3DsE,EAAgBD,MAC3BE,KAAK,QACLhE,MAAOsC,EACPR,SAAUA,GAET7B,IAKX"}
@@ -1,2 +0,0 @@
1
- var e={table:"table_c11d11ae00",border:"border_f9a397533b",virtualized:"virtualized_36ec5ba4db",hasScroll:"hasScroll_f359728a5d"};!function(e){const r="s_id-a9ed4419fbb6_4_5_27";if("undefined"!=typeof document){const o=document.head||document.getElementsByTagName("head")[0];if(o.querySelector("#"+r))return;const a=document.createElement("style");a.id=r,o.firstChild?o.insertBefore(a,o.firstChild):o.appendChild(a),a.appendChild(document.createTextNode(e))}else globalThis.injectedStyles&&(globalThis.injectedStyles[r]=e)}("/* stylelint-disable */\n/* stylelint-enable */\n.table_c11d11ae00 {\n --sticky-cell-hover-background: linear-gradient(\n to right,\n var(--primary-background-hover-color),\n var(--primary-background-hover-color)\n ),\n linear-gradient(to right, var(--primary-background-color), var(--primary-background-color));\n background-color: var(--primary-background-color);\n overflow: auto;\n width: 100%;\n height: 100%;\n}\n.table_c11d11ae00::-webkit-scrollbar {\n width: 6px;\n height: 6px;\n}\n.table_c11d11ae00::-webkit-scrollbar-thumb {\n background-color: var(--ui-border-color);\n border-radius: 4px;\n}\n.table_c11d11ae00.border_f9a397533b {\n border: 1px solid var(--layout-border-color);\n border-radius: var(--border-radius-small);\n}\n.table_c11d11ae00 [role=rowgroup] [role=row] > [role=cell] {\n border-bottom: 1px solid var(--layout-border-color);\n}\n.table_c11d11ae00 [role=rowgroup] > [role=row]:last-of-type > [role=cell] {\n border-bottom: none;\n}\n.table_c11d11ae00.virtualized_36ec5ba4db {\n overflow: hidden;\n}\n.table_c11d11ae00.hasScroll_f359728a5d {\n --sticky-cell-box-shadow: 3px 0 4px rgba(0, 0, 0, 0.1);\n}");export{e as default};
2
- //# sourceMappingURL=Table.module.scss.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Table.module.scss.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- import{defineProperty as r}from"../../../../_virtual/_rollupPluginBabelHelpers.js";var e,l=5;!function(r){r.SMALL="small",r.MEDIUM="medium",r.LARGE="large"}(e||(e={}));var a=r(r(r({},e.SMALL,32),e.MEDIUM,40),e.LARGE,48);export{a as RowHeights,e as RowSizes,l as SKELETON_ROWS_AMOUNT};
2
- //# sourceMappingURL=TableConsts.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TableConsts.js","sources":["../../../../../src/components/Table/Table/TableConsts.ts"],"sourcesContent":["export const SKELETON_ROWS_AMOUNT = 5;\n\n/**\n * @deprecated\n */\nexport enum RowSizes {\n SMALL = \"small\",\n MEDIUM = \"medium\",\n LARGE = \"large\"\n}\n\nexport const RowHeights = {\n [RowSizes.SMALL]: 32,\n [RowSizes.MEDIUM]: 40,\n [RowSizes.LARGE]: 48\n};\n"],"names":["RowSizes","SKELETON_ROWS_AMOUNT","RowHeights","_defineProperty","SMALL","MEDIUM","LARGE"],"mappings":"mFAAO,IAKKA,EALCC,EAAuB,GAKpC,SAAYD,GACVA,EAAA,MAAA,QACAA,EAAA,OAAA,SACAA,EAAA,MAAA,OACD,CAJD,CAAYA,IAAAA,EAIX,CAAA,IAEM,IAAME,EAAUC,EAAAA,EAAAA,EAAA,CAAA,EACpBH,EAASI,MAAQ,IACjBJ,EAASK,OAAS,IAClBL,EAASM,MAAQ"}
@@ -1,2 +0,0 @@
1
- import n from"../../../../icons/dist/react/SortAscending.js";import t from"../../../../icons/dist/react/SortDescending.js";import e from"../../../../icons/dist/react/Sort.js";function c(n){return"number"==typeof n?"".concat(n,"px"):"string"==typeof n?/%|px|fr$/.test(n)?n:"".concat(n,"px"):(null==n?void 0:n.min)&&(null==n?void 0:n.max)?"minmax(".concat(c(n.min),", ").concat(c(n.max),")"):"minmax(112px, 1fr)"}function i(n){return Object.assign(Object.assign({},arguments.length>1&&void 0!==arguments[1]?arguments[1]:{}),{display:"grid",gridTemplateColumns:n.map((function(n){return c(n.width)})).join(" ")})}function r(c){return"asc"===c?n:"desc"===c?t:e}function o(n){return"asc"===n?"desc":"desc"===n?"none":"asc"}function s(n){return"asc"===n?"ascending":"desc"===n?"descending":"none"}function a(n){return"circle"===n?"circle":"rectangle"===n?"rectangle":"text"}function u(n,t){return"long-text"===n?["long-text","medium-text"][t%2]:n}export{c as generateWidth,s as getAriaSort,u as getLoadingTypeForCell,o as getNextSortState,a as getSkeletonType,r as getSortIcon,i as getTableRowLayoutStyles};
2
- //# sourceMappingURL=tableHelpers.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tableHelpers.js","sources":["../../../../../src/components/Table/Table/tableHelpers.ts"],"sourcesContent":["import { type AriaAttributes } from \"react\";\nimport type React from \"react\";\nimport { type TableColumn, type TableLoadingStateType } from \"./Table\";\nimport { Sort } from \"@vibe/icons\";\nimport { type TableHeaderCellProps } from \"../TableHeaderCell/TableHeaderCell\";\nimport { SortAscending, SortDescending } from \"@vibe/icons\";\nimport { type SkeletonType } from \"@vibe/skeleton\";\nexport function generateWidth(width: TableColumn[\"width\"]): string {\n if (typeof width === \"number\") {\n return `${width}px`;\n } else if (typeof width === \"string\") {\n return /%|px|fr$/.test(width) ? width : `${width}px`;\n } else if (width?.min && width?.max) {\n return `minmax(${generateWidth(width.min)}, ${generateWidth(width.max)})`;\n } else {\n return \"minmax(112px, 1fr)\";\n }\n}\n\nexport function getTableRowLayoutStyles(columns: TableColumn[], style: React.CSSProperties = {}): React.CSSProperties {\n return {\n ...style,\n display: \"grid\",\n gridTemplateColumns: columns.map(cell => generateWidth(cell.width)).join(\" \")\n };\n}\n\nexport function getSortIcon(sortState: TableHeaderCellProps[\"sortState\"]) {\n if (sortState === \"asc\") {\n return SortAscending;\n } else if (sortState === \"desc\") {\n return SortDescending;\n } else {\n return Sort;\n }\n}\n\nexport function getNextSortState(sortState: TableHeaderCellProps[\"sortState\"]): TableHeaderCellProps[\"sortState\"] {\n if (sortState === \"asc\") {\n return \"desc\";\n } else if (sortState === \"desc\") {\n return \"none\";\n } else {\n return \"asc\";\n }\n}\n\nexport function getAriaSort(sortState: TableHeaderCellProps[\"sortState\"]): AriaAttributes[\"aria-sort\"] {\n if (sortState === \"asc\") {\n return \"ascending\";\n }\n if (sortState === \"desc\") {\n return \"descending\";\n }\n return \"none\";\n}\n\nexport function getSkeletonType(loadingStateType: TableLoadingStateType): SkeletonType {\n if (loadingStateType === \"circle\") {\n return \"circle\";\n }\n if (loadingStateType === \"rectangle\") {\n return \"rectangle\";\n }\n return \"text\";\n}\n\nexport function getLoadingTypeForCell(\n loadingStateType: TableLoadingStateType,\n rowIndex: number\n): TableLoadingStateType {\n return loadingStateType === \"long-text\"\n ? ([\"long-text\", \"medium-text\"] as TableLoadingStateType[])[rowIndex % 2]\n : loadingStateType;\n}\n"],"names":["generateWidth","width","concat","test","min","max","getTableRowLayoutStyles","columns","Object","assign","display","gridTemplateColumns","map","cell","join","getSortIcon","sortState","SortAscending","SortDescending","Sort","getNextSortState","getAriaSort","getSkeletonType","loadingStateType","getLoadingTypeForCell","rowIndex"],"mappings":"+KAOM,SAAUA,EAAcC,GAC5B,MAAqB,iBAAVA,EACTC,GAAAA,OAAUD,EAAK,MACW,iBAAVA,EACT,WAAWE,KAAKF,GAASA,EAAKC,GAAAA,OAAMD,EAAS,OAC3CA,aAAA,EAAAA,EAAOG,OAAOH,aAAA,EAAAA,EAAOI,KAC9B,UAAAH,OAAiBF,EAAcC,EAAMG,KAAIF,MAAAA,OAAKF,EAAcC,EAAMI,KAAI,KAE/D,oBAEX,UAEgBC,EAAwBC,GACtC,OAAAC,OAAAC,OAAAD,OAAAC,OAAA,CAAA,yDAD2F,CAAA,GAEjF,CACRC,QAAS,OACTC,oBAAqBJ,EAAQK,KAAI,SAAAC,GAAI,OAAIb,EAAca,EAAKZ,UAAQa,KAAK,MAE7E,CAEM,SAAUC,EAAYC,GAC1B,MAAkB,QAAdA,EACKC,EACgB,SAAdD,EACFE,EAEAC,CAEX,CAEM,SAAUC,EAAiBJ,GAC/B,MAAkB,QAAdA,EACK,OACgB,SAAdA,EACF,OAEA,KAEX,CAEM,SAAUK,EAAYL,GAC1B,MAAkB,QAAdA,EACK,YAES,SAAdA,EACK,aAEF,MACT,CAEM,SAAUM,EAAgBC,GAC9B,MAAyB,WAArBA,EACK,SAEgB,cAArBA,EACK,YAEF,MACT,CAEgB,SAAAC,EACdD,EACAE,GAEA,MAA4B,cAArBF,EACF,CAAC,YAAa,eAA2CE,EAAW,GACrEF,CACN"}
@@ -1,2 +0,0 @@
1
- import{toConsumableArray as e}from"../../../../_virtual/_rollupPluginBabelHelpers.js";import t,{forwardRef as r}from"react";import a from"classnames";import o from"../TableRow/TableRow.js";import s from"./TableBody.module.scss.js";import{useTable as l}from"../context/TableContext/TableContext.js";import m from"../TableCellSkeleton/TableCellSkeleton.js";import{SKELETON_ROWS_AMOUNT as n}from"../Table/TableConsts.js";import{getLoadingTypeForCell as i}from"../Table/tableHelpers.js";import{getTestId as p}from"../../../tests/testIds.js";import{ComponentDefaultTestId as c}from"../../../tests/constants.js";var d=r((function(r,d){var f=r.id,b=r.className,u=r["data-testid"],T=r.children,y=l(),j=y.emptyState,C=y.errorState,S=y.columns,g=y.dataState||{},v=g.isLoading,A=g.isError,B=e(Array(n)).map((function(e,r){return t.createElement(o,{key:r},S.map((function(e,a){var o=e.loadingStateType;return t.createElement(m,{key:"".concat(r,"-").concat(a),type:i(o,r)})})))}));return t.createElement("div",{ref:d,id:f,className:a(s.tableBody,b),"data-testid":u||p(c.TABLE_BODY,f),role:"rowgroup"},v?B:A?C:!T||Array.isArray(T)&&0===T.length?j:T)}));export{d as default};
2
- //# sourceMappingURL=TableBody.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TableBody.js","sources":["../../../../../src/components/Table/TableBody/TableBody.tsx"],"sourcesContent":["import React, { type ReactElement, type ComponentProps, forwardRef } from \"react\";\nimport cx from \"classnames\";\nimport { type VibeComponentProps } from \"../../../types\";\nimport TableRow, { type TableRowProps } from \"../TableRow/TableRow\";\nimport type { VirtualizedList } from \"@vibe/virtualized-list\";\nimport styles from \"./TableBody.module.scss\";\nimport { useTable } from \"../context/TableContext/TableContext\";\nimport TableCellSkeleton from \"../TableCellSkeleton/TableCellSkeleton\";\nimport { SKELETON_ROWS_AMOUNT } from \"../Table/TableConsts\";\nimport { getLoadingTypeForCell } from \"../Table/tableHelpers\";\nimport { getTestId } from \"../../../tests/test-ids-utils\";\nimport { ComponentDefaultTestId } from \"../../../tests/constants\";\n\nexport interface TableBodyProps extends VibeComponentProps {\n /**\n * The child components inside the table body, such as `<TableRow />` elements.\n */\n children?:\n | ReactElement<TableRowProps>\n | ReactElement<TableRowProps>[]\n | ReactElement<ComponentProps<typeof VirtualizedList>>;\n}\n\nconst TableBody = forwardRef(\n ({ id, className, \"data-testid\": dataTestId, children }: TableBodyProps, ref: React.ForwardedRef<HTMLDivElement>) => {\n const { dataState, emptyState, errorState, columns } = useTable();\n const { isLoading, isError } = dataState || {};\n\n const skeletonRender = [...new Array(SKELETON_ROWS_AMOUNT)].map((_, rowIndex) => (\n <TableRow key={rowIndex}>\n {columns.map(({ loadingStateType }, columnIndex) => (\n <TableCellSkeleton\n key={`${rowIndex}-${columnIndex}`}\n type={getLoadingTypeForCell(loadingStateType, rowIndex)}\n />\n ))}\n </TableRow>\n ));\n\n return (\n <div\n ref={ref}\n id={id}\n className={cx(styles.tableBody, className)}\n data-testid={dataTestId || getTestId(ComponentDefaultTestId.TABLE_BODY, id)}\n role=\"rowgroup\"\n >\n {isLoading\n ? skeletonRender\n : isError\n ? errorState\n : !children || (Array.isArray(children) && children.length === 0)\n ? emptyState\n : children}\n </div>\n );\n }\n);\n\nexport default TableBody;\n"],"names":["TableBody","forwardRef","_ref","ref","id","className","dataTestId","children","_useTable","useTable","emptyState","errorState","columns","_ref2","dataState","isLoading","isError","skeletonRender","_toConsumableArray","Array","SKELETON_ROWS_AMOUNT","map","_","rowIndex","React","TableRow","key","_ref3","columnIndex","loadingStateType","createElement","TableCellSkeleton","concat","type","getLoadingTypeForCell","cx","styles","tableBody","getTestId","ComponentDefaultTestId","TABLE_BODY","role","isArray","length"],"mappings":"8lBAuBMA,IAAAA,EAAYC,GAChB,SAAAC,EAAyEC,GAA2C,IAAjHC,EAAEF,EAAFE,GAAIC,EAASH,EAATG,UAA0BC,EAAUJ,EAAzB,eAA2BK,EAAQL,EAARK,SAC3CC,EAAuDC,IAApCC,EAAUF,EAAVE,WAAYC,EAAUH,EAAVG,WAAYC,EAAOJ,EAAPI,QAC3CC,EADiBL,EAATM,WACoC,CAAE,EAAtCC,EAASF,EAATE,UAAWC,EAAOH,EAAPG,QAEbC,EAAiBC,EAAQC,MAAMC,IAAuBC,KAAI,SAACC,EAAGC,GAAQ,OAC1EC,gBAACC,EAAQ,CAACC,IAAKH,GACZX,EAAQS,KAAI,SAAAM,EAAuBC,GAAW,IAA/BC,EAAgBF,EAAhBE,iBAAgB,OAC9BL,EAACM,cAAAC,EACC,CAAAL,IAAG,GAAAM,OAAKT,OAAQS,OAAIJ,GACpBK,KAAMC,EAAsBL,EAAkBN,IAEjD,IACQ,IAGb,OACEC,EACEM,cAAA,MAAA,CAAA3B,IAAKA,EACLC,GAAIA,EACJC,UAAW8B,EAAGC,EAAOC,UAAWhC,iBACnBC,GAAcgC,EAAUC,EAAuBC,WAAYpC,GACxEqC,KAAK,YAEJ1B,EACGE,EACAD,EACAL,GACCJ,GAAaY,MAAMuB,QAAQnC,IAAiC,IAApBA,EAASoC,OAClDjC,EACAH,EAGV"}
@@ -1,2 +0,0 @@
1
- var e={tableBody:"tableBody_d2ce9bd01c"};!function(e){const t="s_id-afed3a5f5737_4_5_27";if("undefined"!=typeof document){const d=document.head||document.getElementsByTagName("head")[0];if(d.querySelector("#"+t))return;const n=document.createElement("style");n.id=t,d.firstChild?d.insertBefore(n,d.firstChild):d.appendChild(n),n.appendChild(document.createTextNode(e))}else globalThis.injectedStyles&&(globalThis.injectedStyles[t]=e)}(".tableBody_d2ce9bd01c {\n height: 100%;\n}");export{e as default};
2
- //# sourceMappingURL=TableBody.module.scss.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TableBody.module.scss.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- import{typeof as t,defineProperty as e}from"../../../../_virtual/_rollupPluginBabelHelpers.js";import r,{forwardRef as s}from"react";import o from"./TableCell.module.scss.js";import a from"classnames";import{getTestId as l}from"../../../tests/testIds.js";import{ComponentDefaultTestId as i}from"../../../tests/constants.js";import m from"../../../../components/typography/dist/Text/Text.js";var n=s((function(s,n){var p=s.sticky,c=s.id,d=s.className,f=s["data-testid"],u=s.children,y=1===r.Children.count(u),j=t(r.Children.toArray(u)[0]),C="string"===j||"number"===j;return r.createElement("div",{ref:n,id:c,className:a(o.tableCell,e({},o.sticky,p),d),"data-testid":f||l(i.TABLE_CELL,c),role:"cell"},y&&C?r.createElement(m,{type:"text2",color:"primary"},u):u)}));export{n as default};
2
- //# sourceMappingURL=TableCell.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TableCell.js","sources":["../../../../../src/components/Table/TableCell/TableCell.tsx"],"sourcesContent":["import React, { forwardRef } from \"react\";\nimport { type VibeComponentProps } from \"../../../types\";\nimport { Text } from \"@vibe/typography\";\nimport styles from \"./TableCell.module.scss\";\nimport cx from \"classnames\";\nimport { getTestId } from \"../../../tests/test-ids-utils\";\nimport { ComponentDefaultTestId } from \"../../../tests/constants\";\n\nexport interface TableCellProps extends VibeComponentProps {\n /**\n * The content inside the table cell.\n */\n children?: React.ReactNode;\n /**\n * If true, makes the cell sticky (typically used for frozen columns).\n */\n sticky?: boolean;\n}\n\nconst TableCell = forwardRef(\n (\n { sticky, id, className, \"data-testid\": dataTestId, children }: TableCellProps,\n ref: React.ForwardedRef<HTMLDivElement>\n ) => {\n const isSingleChild = React.Children.count(children) === 1;\n const typeOfFirstChild = typeof React.Children.toArray(children)[0];\n const isFirstChildString = typeOfFirstChild === \"string\" || typeOfFirstChild === \"number\";\n\n return (\n <div\n ref={ref}\n id={id}\n className={cx(styles.tableCell, { [styles.sticky]: sticky }, className)}\n data-testid={dataTestId || getTestId(ComponentDefaultTestId.TABLE_CELL, id)}\n role=\"cell\"\n >\n {isSingleChild && isFirstChildString ? (\n <Text type=\"text2\" color=\"primary\">\n {children}\n </Text>\n ) : (\n children\n )}\n </div>\n );\n }\n);\n\nexport default TableCell;\n"],"names":["TableCell","forwardRef","_ref","ref","sticky","id","className","dataTestId","children","isSingleChild","React","Children","count","typeOfFirstChild","_typeof","toArray","isFirstChildString","createElement","cx","styles","tableCell","_defineProperty","getTestId","ComponentDefaultTestId","TABLE_CELL","role","Text","type","color"],"mappings":"uYAmBMA,IAAAA,EAAYC,GAChB,SAAAC,EAEEC,GACE,IAFAC,EAAMF,EAANE,OAAQC,EAAEH,EAAFG,GAAIC,EAASJ,EAATI,UAA0BC,EAAUL,EAAzB,eAA2BM,EAAQN,EAARM,SAG9CC,EAAmD,IAAnCC,EAAMC,SAASC,MAAMJ,GACrCK,EAAgBC,EAAUJ,EAAMC,SAASI,QAAQP,GAAU,IAC3DQ,EAA0C,WAArBH,GAAsD,WAArBA,EAE5D,OACEH,EAAAO,cAAA,MAAA,CACEd,IAAKA,EACLE,GAAIA,EACJC,UAAWY,EAAGC,EAAOC,UAASC,EAAKF,GAAAA,EAAOf,OAASA,GAAUE,GAChD,cAAAC,GAAce,EAAUC,EAAuBC,WAAYnB,GACxEoB,KAAK,QAEJhB,GAAiBO,EAChBN,EAAAO,cAACS,EAAK,CAAAC,KAAK,QAAQC,MAAM,WACtBpB,GAGHA,EAIR"}
@@ -1,2 +0,0 @@
1
- var e={tableCell:"tableCell_5863c66cdb",sticky:"sticky_a119c2ee3b"};!function(e){const t="s_id-391f4300ac17_4_5_27";if("undefined"!=typeof document){const n=document.head||document.getElementsByTagName("head")[0];if(n.querySelector("#"+t))return;const l=document.createElement("style");l.id=t,n.firstChild?n.insertBefore(l,n.firstChild):n.appendChild(l),l.appendChild(document.createTextNode(e))}else globalThis.injectedStyles&&(globalThis.injectedStyles[t]=e)}(".tableCell_5863c66cdb {\n padding: 9px 16px;\n overflow: hidden;\n display: flex;\n align-items: center;\n}\n.tableCell_5863c66cdb.sticky_a119c2ee3b {\n z-index: 1;\n position: sticky;\n inset-inline-start: 0;\n box-shadow: var(--sticky-cell-box-shadow);\n}");export{e as default};
2
- //# sourceMappingURL=TableCell.module.scss.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TableCell.module.scss.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- import{defineProperty as e}from"../../../../_virtual/_rollupPluginBabelHelpers.js";import l from"react";import t from"classnames";import r from"../TableCell/TableCell.js";import o from"./TableCellSkeleton.module.scss.js";import{getSkeletonType as s}from"../Table/tableHelpers.js";import{camelCase as m}from"es-toolkit";import a from"../../../../components/skeleton/dist/Skeleton/Skeleton.js";import{getStyle as p}from"../../../../shared/dist/utils/typesciptCssModulesHelper.js";var i=function(i){var n=i.type,f=void 0===n?"long-text":n,u=["long-text","medium-text"].includes(f);return l.createElement(r,null,l.createElement(a,{type:s(f),wrapperClassName:t(o.tableCellSkeletonWrapper,p(o,m(f))),className:t(o.tableCellSkeleton,e({},p(o,m(f)),!u)),fullWidth:!0}))};export{i as default};
2
- //# sourceMappingURL=TableCellSkeleton.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TableCellSkeleton.js","sources":["../../../../../src/components/Table/TableCellSkeleton/TableCellSkeleton.tsx"],"sourcesContent":["import React from \"react\";\nimport cx from \"classnames\";\nimport TableCell from \"../TableCell/TableCell\";\nimport { Skeleton } from \"@vibe/skeleton\";\nimport styles from \"./TableCellSkeleton.module.scss\";\nimport { type VibeComponentProps } from \"../../../types\";\nimport { getStyle } from \"@vibe/shared\";\nimport { type TableLoadingStateType } from \"../Table/Table\";\nimport { getSkeletonType } from \"../Table/tableHelpers\";\nimport { camelCase } from \"es-toolkit\";\n\nexport interface TableCellSkeletonProps extends VibeComponentProps {\n /**\n * The type of loading state for the skeleton.\n */\n type?: TableLoadingStateType;\n /**\n * If true, renders a shorter skeleton for text-based loading states.\n */\n short?: boolean;\n}\n\nconst TableCellSkeleton: React.FC<TableCellSkeletonProps> = ({ type = \"long-text\" }) => {\n const isText = [\"long-text\", \"medium-text\"].includes(type);\n return (\n <TableCell>\n <Skeleton\n type={getSkeletonType(type)}\n wrapperClassName={cx(styles.tableCellSkeletonWrapper, getStyle(styles, camelCase(type)))}\n className={cx(styles.tableCellSkeleton, { [getStyle(styles, camelCase(type))]: !isText })}\n fullWidth\n />\n </TableCell>\n );\n};\n\nexport default TableCellSkeleton;\n"],"names":["TableCellSkeleton","_ref","_ref$type","type","isText","includes","React","TableCell","createElement","Skeleton","getSkeletonType","wrapperClassName","cx","styles","tableCellSkeletonWrapper","getStyle","camelCase","className","tableCellSkeleton","_defineProperty","fullWidth"],"mappings":"8dAsBA,IAAMA,EAAsD,SAArCC,GAAgE,IAAAC,EAAAD,EAAxBE,KAAAA,OAAO,IAAHD,EAAG,YAAWA,EACzEE,EAAS,CAAC,YAAa,eAAeC,SAASF,GACrD,OACEG,gBAACC,EAAS,KACRD,EAACE,cAAAC,EACC,CAAAN,KAAMO,EAAgBP,GACtBQ,iBAAkBC,EAAGC,EAAOC,yBAA0BC,EAASF,EAAQG,EAAUb,KACjFc,UAAWL,EAAGC,EAAOK,kBAAiBC,EAAA,CAAA,EAAKJ,EAASF,EAAQG,EAAUb,KAAUC,IAChFgB,WAAS,IAIjB"}
@@ -1,2 +0,0 @@
1
- var e={tableCellSkeletonWrapper:"tableCellSkeletonWrapper_d2ce9bd01c",longText:"longText_6ef9d595aa",mediumText:"mediumText_581c49976e",tableCellSkeleton:"tableCellSkeleton_d2ce9bd01c",circle:"circle_29f2469bdd",rectangle:"rectangle_c3e3f45908"};!function(e){const l="s_id-b9f641959683_4_5_27";if("undefined"!=typeof document){const t=document.head||document.getElementsByTagName("head")[0];if(t.querySelector("#"+l))return;const n=document.createElement("style");n.id=l,t.firstChild?t.insertBefore(n,t.firstChild):t.appendChild(n),n.appendChild(document.createTextNode(e))}else globalThis.injectedStyles&&(globalThis.injectedStyles[l]=e)}(".tableCellSkeletonWrapper_d2ce9bd01c {\n height: 100%;\n}\n.tableCellSkeletonWrapper_d2ce9bd01c.longText_6ef9d595aa {\n padding-inline-end: var(--space-24);\n}\n.tableCellSkeletonWrapper_d2ce9bd01c.mediumText_581c49976e {\n padding-inline-end: var(--space-64);\n}\n.tableCellSkeletonWrapper_d2ce9bd01c .tableCellSkeleton_d2ce9bd01c {\n height: 100%;\n}\n.tableCellSkeletonWrapper_d2ce9bd01c .tableCellSkeleton_d2ce9bd01c.circle_29f2469bdd, .tableCellSkeletonWrapper_d2ce9bd01c .tableCellSkeleton_d2ce9bd01c.rectangle_c3e3f45908 {\n width: auto;\n aspect-ratio: 1/1;\n}");export{e as default};
2
- //# sourceMappingURL=TableCellSkeleton.module.scss.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TableCellSkeleton.module.scss.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- import e,{forwardRef as t,useRef as a}from"react";import{TableContainerProvider as r}from"../context/TableContainerContext/TableContainerContext.js";import{getTestId as s}from"../../../tests/testIds.js";import{ComponentDefaultTestId as n}from"../../../tests/constants.js";import o from"classnames";import m from"./TableContainer.module.scss.js";var i=t((function(t,i){var l=t.id,c=t.className,d=t["data-testid"],f=t.style,C=t.children,u=a(null);return e.createElement(r,{value:{menuContainerRef:u}},e.createElement("div",{ref:i,id:l,className:o(m.tableContainer,c),"data-testid":d||s(n.TABLE_CONTAINER,l),style:f},e.createElement("div",{ref:u,className:m.menuContainer}),C))}));export{i as default};
2
- //# sourceMappingURL=TableContainer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TableContainer.js","sources":["../../../../../src/components/Table/TableContainer/TableContainer.tsx"],"sourcesContent":["import React, { forwardRef, useRef } from \"react\";\nimport { TableContainerProvider } from \"../context/TableContainerContext/TableContainerContext\";\nimport { type TableContainerProps } from \"./TableContainer.types\";\nimport { getTestId } from \"../../../tests/test-ids-utils\";\nimport { ComponentDefaultTestId } from \"../../../tests/constants\";\nimport cx from \"classnames\";\nimport styles from \"./TableContainer.module.scss\";\n\nconst TableContainer = forwardRef(\n (\n { id, className, \"data-testid\": dataTestId, style, children }: TableContainerProps,\n ref: React.ForwardedRef<HTMLDivElement>\n ) => {\n const menuContainerRef = useRef<HTMLDivElement>(null);\n\n return (\n <TableContainerProvider value={{ menuContainerRef }}>\n <div\n ref={ref}\n id={id}\n className={cx(styles.tableContainer, className)}\n data-testid={dataTestId || getTestId(ComponentDefaultTestId.TABLE_CONTAINER, id)}\n style={style}\n >\n <div ref={menuContainerRef} className={styles.menuContainer} />\n {children}\n </div>\n </TableContainerProvider>\n );\n }\n);\n\nexport default TableContainer;\n"],"names":["TableContainer","forwardRef","_ref","ref","id","className","dataTestId","style","children","menuContainerRef","useRef","React","TableContainerProvider","value","createElement","cx","styles","tableContainer","getTestId","ComponentDefaultTestId","TABLE_CONTAINER","menuContainer"],"mappings":"yVAQMA,IAAAA,EAAiBC,GACrB,SAAAC,EAEEC,GACE,IAFAC,EAAEF,EAAFE,GAAIC,EAASH,EAATG,UAA0BC,EAAUJ,EAAzB,eAA2BK,EAAKL,EAALK,MAAOC,EAAQN,EAARM,SAG7CC,EAAmBC,EAAuB,MAEhD,OACEC,gBAACC,EAAsB,CAACC,MAAO,CAAEJ,iBAAAA,IAC/BE,EAAAG,cAAA,MAAA,CACEX,IAAKA,EACLC,GAAIA,EACJC,UAAWU,EAAGC,EAAOC,eAAgBZ,GACxB,cAAAC,GAAcY,EAAUC,EAAuBC,gBAAiBhB,GAC7EG,MAAOA,GAEPI,EAAKG,cAAA,MAAA,CAAAX,IAAKM,EAAkBJ,UAAWW,EAAOK,gBAC7Cb,GAIT"}
@@ -1,2 +0,0 @@
1
- var e={tableContainer:"tableContainer_30ce9e9d31",menuContainer:"menuContainer_50f4c3fea9"};!function(e){const n="s_id-a0ba3cbb8774_4_5_27";if("undefined"!=typeof document){const t=document.head||document.getElementsByTagName("head")[0];if(t.querySelector("#"+n))return;const i=document.createElement("style");i.id=n,t.firstChild?t.insertBefore(i,t.firstChild):t.appendChild(i),i.appendChild(document.createTextNode(e))}else globalThis.injectedStyles&&(globalThis.injectedStyles[n]=e)}(".tableContainer_30ce9e9d31 {\n width: 100%;\n height: 100%;\n position: relative;\n}\n.tableContainer_30ce9e9d31 .menuContainer_50f4c3fea9 {\n --cell-width: 40px;\n position: absolute;\n overflow: hidden;\n inset-inline-start: calc(1px - var(--cell-width));\n width: var(--cell-width);\n height: 100%;\n}");export{e as default};
2
- //# sourceMappingURL=TableContainer.module.scss.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TableContainer.module.scss.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- import{defineProperty as e}from"../../../../_virtual/_rollupPluginBabelHelpers.js";import r,{forwardRef as t}from"react";import o from"./TableHeader.module.scss.js";import s from"classnames";import{getTestId as a}from"../../../tests/testIds.js";import{ComponentDefaultTestId as i}from"../../../tests/constants.js";import{useTable as l}from"../context/TableContext/TableContext.js";import{useMergeRef as m}from"../../../../shared/dist/hooks/useMergeRef.js";var d=t((function(t,d){var n=t.id,f=t.className,p=t["data-testid"],c=t.children,u=l(),j=u.onHeadScroll,b=u.isVirtualized,v=m(u.headRef,d);return r.createElement("div",{ref:v,id:n,className:s(o.tableHeader,e({},o.virtualized,b),f),"data-testid":p||a(i.TABLE_HEADER,n),role:"rowgroup",onScroll:j},c)}));export{d as default};
2
- //# sourceMappingURL=TableHeader.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TableHeader.js","sources":["../../../../../src/components/Table/TableHeader/TableHeader.tsx"],"sourcesContent":["import React, { forwardRef } from \"react\";\nimport { type VibeComponentProps } from \"../../../types\";\nimport styles from \"./TableHeader.module.scss\";\nimport { type TableHeaderCellProps } from \"../TableHeaderCell/TableHeaderCell\";\nimport cx from \"classnames\";\nimport { getTestId } from \"../../../tests/test-ids-utils\";\nimport { ComponentDefaultTestId } from \"../../../tests/constants\";\nimport { useTable } from \"../context/TableContext/TableContext\";\nimport { useMergeRef } from \"@vibe/shared\";\n\nexport interface TableHeaderProps extends VibeComponentProps {\n /**\n * The child elements inside the table header, typically `<TableHeaderCell />` components.\n */\n children?: React.ReactElement<TableHeaderCellProps> | React.ReactElement<TableHeaderCellProps>[];\n}\n\nconst TableHeader = forwardRef(\n (\n { id, className, \"data-testid\": dataTestId, children }: TableHeaderProps,\n ref: React.ForwardedRef<HTMLDivElement>\n ) => {\n const { headRef, onHeadScroll, isVirtualized } = useTable();\n const mergedRef = useMergeRef(headRef, ref);\n\n return (\n <div\n ref={mergedRef}\n id={id}\n className={cx(styles.tableHeader, { [styles.virtualized]: isVirtualized }, className)}\n data-testid={dataTestId || getTestId(ComponentDefaultTestId.TABLE_HEADER, id)}\n role=\"rowgroup\"\n onScroll={onHeadScroll}\n >\n {children}\n </div>\n );\n }\n);\n\nexport default TableHeader;\n"],"names":["TableHeader","forwardRef","_ref","ref","id","className","dataTestId","children","_useTable","useTable","onHeadScroll","isVirtualized","mergedRef","useMergeRef","headRef","React","createElement","cx","styles","tableHeader","_defineProperty","virtualized","getTestId","ComponentDefaultTestId","TABLE_HEADER","role","onScroll"],"mappings":"wcAiBMA,IAAAA,EAAcC,GAClB,SAAAC,EAEEC,GACE,IAFAC,EAAEF,EAAFE,GAAIC,EAASH,EAATG,UAA0BC,EAAUJ,EAAzB,eAA2BK,EAAQL,EAARK,SAG5CC,EAAiDC,IAAhCC,EAAYF,EAAZE,aAAcC,EAAaH,EAAbG,cACzBC,EAAYC,EADHL,EAAPM,QAC+BX,GAEvC,OACEY,EACEC,cAAA,MAAA,CAAAb,IAAKS,EACLR,GAAIA,EACJC,UAAWY,EAAGC,EAAOC,YAAWC,EAAKF,GAAAA,EAAOG,YAAcV,GAAiBN,GAAU,cACxEC,GAAcgB,EAAUC,EAAuBC,aAAcpB,GAC1EqB,KAAK,WACLC,SAAUhB,GAETH,EAGP"}
@@ -1,2 +0,0 @@
1
- var e={tableHeader:"tableHeader_f1718050b0",virtualized:"virtualized_ef71657b14"};!function(e){const t="s_id-8e924ee64aa4_4_5_27";if("undefined"!=typeof document){const n=document.head||document.getElementsByTagName("head")[0];if(n.querySelector("#"+t))return;const a=document.createElement("style");a.id=t,n.firstChild?n.insertBefore(a,n.firstChild):n.appendChild(a),a.appendChild(document.createTextNode(e))}else globalThis.injectedStyles&&(globalThis.injectedStyles[t]=e)}(".tableHeader_f1718050b0 {\n display: grid;\n grid-template-columns: var(--table-grid-template-columns);\n position: sticky;\n top: 0;\n z-index: 2;\n background-color: var(--primary-background-color);\n min-width: 100%;\n width: fit-content;\n}\n.tableHeader_f1718050b0 > [role=columnheader] {\n background-color: inherit;\n}\n.tableHeader_f1718050b0.virtualized_ef71657b14 {\n overflow: auto;\n width: auto;\n scrollbar-width: none;\n}\n.tableHeader_f1718050b0.virtualized_ef71657b14::-webkit-scrollbar {\n display: none;\n}");export{e as default};
2
- //# sourceMappingURL=TableHeader.module.scss.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TableHeader.module.scss.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- import{slicedToArray as e,defineProperty as t}from"../../../../_virtual/_rollupPluginBabelHelpers.js";import o,{forwardRef as r,useState as n}from"react";import s from"classnames";import i from"./TableHeaderCell.module.scss.js";import{getSortIcon as a,getNextSortState as l,getAriaSort as c}from"../Table/tableHelpers.js";import{getTestId as m}from"../../../tests/testIds.js";import{ComponentDefaultTestId as d}from"../../../tests/constants.js";import p from"../../../../components/layout/dist/Flex/Flex.js";import u from"../../../../components/icon/dist/Icon/Icon.js";import f from"../../../../components/typography/dist/Text/Text.js";import b from"../../../../components/tooltip/dist/Tooltip/Tooltip.js";import j from"../../../../icons/dist/react/Info.js";import y from"../../../../components/icon-button/dist/IconButton/IconButton.js";import{getStyle as E}from"../../../../shared/dist/utils/typesciptCssModulesHelper.js";var v=r((function(r,v){var C=r.id,x=r.className,T=r["data-testid"],H=r.title,g=r.onSortClicked,I=r.infoContent,N=r.icon,h=r.sortState,B=void 0===h?"none":h,k=r.sortButtonAriaLabel,A=void 0===k?"Sort":k,L=r.sticky,w=n(!1),S=e(w,2),_=S[0],F=S[1],M=c(B),P="none"!==M||_;return o.createElement("div",{ref:v,id:C,className:s(i.tableHeaderCell,t(t({},i.sortActive,g&&"none"!==M),i.sticky,L),x),"data-testid":T||m(d.TABLE_HEADER_CELL,C),role:"columnheader",onMouseOver:function(){return F(!0)},onMouseLeave:function(){return F(!1)},onFocus:function(){return F(!0)},onBlur:function(){return F(!1)},"aria-sort":g?M:void 0,tabIndex:g?0:void 0},o.createElement(p,{direction:"row",align:"center",className:i.tableHeaderCellContent,gap:"xs"},N&&o.createElement(u,{icon:N,className:i.icon}),"string"==typeof H?o.createElement(f,{type:"text2",weight:"medium",color:"secondary"},H):H,I&&o.createElement(b,{content:I,referenceWrapperClassName:i.infoTooltip},o.createElement(u,{icon:j,label:I}))),g&&o.createElement(p,{direction:"row",align:"center",className:i.tableHeaderCellSort},o.createElement(y,{icon:a(B),kind:"tertiary",size:"xs","aria-label":A,"aria-hidden":!P,className:s(i.sort,E(i,B),t({},i.show,P)),onClick:function(){return g(l(B))}})))}));export{v as default};
2
- //# sourceMappingURL=TableHeaderCell.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TableHeaderCell.js","sources":["../../../../../src/components/Table/TableHeaderCell/TableHeaderCell.tsx"],"sourcesContent":["import React, { forwardRef, useState } from \"react\";\nimport cx from \"classnames\";\nimport { type VibeComponentProps } from \"../../../types\";\nimport styles from \"./TableHeaderCell.module.scss\";\nimport { Icon, type SubIcon } from \"@vibe/icon\";\nimport { IconButton } from \"@vibe/icon-button\";\nimport { Info } from \"@vibe/icons\";\nimport { Text } from \"@vibe/typography\";\nimport { Flex } from \"@vibe/layout\";\nimport { getAriaSort, getNextSortState, getSortIcon } from \"../Table/tableHelpers\";\nimport { Tooltip } from \"@vibe/tooltip\";\nimport { getTestId } from \"../../../tests/test-ids-utils\";\nimport { ComponentDefaultTestId } from \"../../../tests/constants\";\nimport { getStyle } from \"@vibe/shared\";\n\nexport interface TableHeaderCellProps extends VibeComponentProps {\n /**\n * The title of the column, displayed inside the header cell.\n */\n title: string | React.ReactNode;\n /**\n * Icon displayed next to the column title.\n */\n icon?: SubIcon;\n /**\n * Tooltip content for additional information about the column.\n */\n infoContent?: string;\n /**\n * Current sorting state of the column.\n */\n sortState?: \"asc\" | \"desc\" | \"none\";\n /**\n * Callback fired when the column header is clicked to change sorting.\n */\n onSortClicked?: (direction: \"asc\" | \"desc\" | \"none\") => void;\n /**\n * ARIA label for the sort button.\n */\n sortButtonAriaLabel?: string;\n /**\n * If true, the header cell remains visible while scrolling horizontally.\n */\n sticky?: boolean;\n}\n\nconst TableHeaderCell = forwardRef(\n (\n {\n id,\n className,\n \"data-testid\": dataTestId,\n title,\n onSortClicked,\n infoContent,\n icon,\n sortState = \"none\",\n sortButtonAriaLabel = \"Sort\",\n sticky\n }: TableHeaderCellProps,\n ref: React.ForwardedRef<HTMLDivElement>\n ) => {\n const [isHovered, setIsHovered] = useState<boolean>(false);\n const ariaSort = getAriaSort(sortState);\n const isSortActive = onSortClicked && ariaSort !== \"none\";\n const shouldShowSortIcon = ariaSort !== \"none\" || isHovered;\n\n return (\n <div\n ref={ref}\n id={id}\n className={cx(\n styles.tableHeaderCell,\n { [styles.sortActive]: isSortActive, [styles.sticky]: sticky },\n className\n )}\n data-testid={dataTestId || getTestId(ComponentDefaultTestId.TABLE_HEADER_CELL, id)}\n role=\"columnheader\"\n onMouseOver={() => setIsHovered(true)}\n onMouseLeave={() => setIsHovered(false)}\n onFocus={() => setIsHovered(true)}\n onBlur={() => setIsHovered(false)}\n aria-sort={onSortClicked ? ariaSort : undefined}\n tabIndex={onSortClicked ? 0 : undefined}\n >\n <Flex direction=\"row\" align=\"center\" className={styles.tableHeaderCellContent} gap=\"xs\">\n {icon && <Icon icon={icon} className={styles.icon} />}\n {typeof title === \"string\" ? (\n <Text type=\"text2\" weight=\"medium\" color=\"secondary\">\n {title}\n </Text>\n ) : (\n title\n )}\n {infoContent && (\n <Tooltip content={infoContent} referenceWrapperClassName={styles.infoTooltip}>\n <Icon icon={Info} label={infoContent} />\n </Tooltip>\n )}\n </Flex>\n {onSortClicked && (\n <Flex direction=\"row\" align=\"center\" className={styles.tableHeaderCellSort}>\n <IconButton\n icon={getSortIcon(sortState)}\n kind=\"tertiary\"\n size=\"xs\"\n aria-label={sortButtonAriaLabel}\n aria-hidden={!shouldShowSortIcon}\n className={cx(styles.sort, getStyle(styles, sortState), {\n [styles.show]: shouldShowSortIcon\n })}\n onClick={() => onSortClicked(getNextSortState(sortState))}\n />\n </Flex>\n )}\n </div>\n );\n }\n);\n\nexport default TableHeaderCell;\n"],"names":["TableHeaderCell","forwardRef","_ref","ref","id","className","dataTestId","title","onSortClicked","infoContent","icon","_ref$sortState","sortState","_ref$sortButtonAriaLa","sortButtonAriaLabel","sticky","_useState","useState","_useState2","_slicedToArray","isHovered","setIsHovered","ariaSort","getAriaSort","shouldShowSortIcon","React","createElement","cx","styles","tableHeaderCell","_defineProperty","sortActive","getTestId","ComponentDefaultTestId","TABLE_HEADER_CELL","role","onMouseOver","onMouseLeave","onFocus","onBlur","undefined","tabIndex","Flex","direction","align","tableHeaderCellContent","gap","Icon","Text","type","weight","color","Tooltip","content","referenceWrapperClassName","infoTooltip","Info","label","tableHeaderCellSort","IconButton","getSortIcon","kind","size","sort","getStyle","show","onClick","getNextSortState"],"mappings":"45BA8CMA,IAAAA,EAAkBC,GACtB,SAAAC,EAaEC,GACE,IAZAC,EAAEF,EAAFE,GACAC,EAASH,EAATG,UACeC,EAAUJ,EAAzB,eACAK,EAAKL,EAALK,MACAC,EAAaN,EAAbM,cACAC,EAAWP,EAAXO,YACAC,EAAIR,EAAJQ,KAAIC,EAAAT,EACJU,UAAAA,OAAY,IAAHD,EAAG,OAAMA,EAAAE,EAAAX,EAClBY,oBAAAA,OAAsB,IAAHD,EAAG,OAAMA,EAC5BE,EAAMb,EAANa,OAIFC,EAAkCC,GAAkB,GAAMC,EAAAC,EAAAH,EAAA,GAAnDI,EAASF,EAAA,GAAEG,EAAYH,EAAA,GACxBI,EAAWC,EAAYX,GAEvBY,EAAkC,SAAbF,GAAuBF,EAElD,OACEK,EACEC,cAAA,MAAA,CAAAvB,IAAKA,EACLC,GAAIA,EACJC,UAAWsB,EACTC,EAAOC,gBAAeC,EAAAA,EACnBF,CAAAA,EAAAA,EAAOG,WATKvB,GAA8B,SAAbc,GASMM,EAAOb,OAASA,GACtDV,GAEW,cAAAC,GAAc0B,EAAUC,EAAuBC,kBAAmB9B,GAC/E+B,KAAK,eACLC,YAAa,WAAA,OAAMf,GAAa,EAAK,EACrCgB,aAAc,WAAA,OAAMhB,GAAa,EAAM,EACvCiB,QAAS,WAAA,OAAMjB,GAAa,EAAK,EACjCkB,OAAQ,WAAA,OAAMlB,GAAa,EAAM,EACtB,YAAAb,EAAgBc,OAAWkB,EACtCC,SAAUjC,EAAgB,OAAIgC,GAE9Bf,EAAAC,cAACgB,EAAK,CAAAC,UAAU,MAAMC,MAAM,SAASvC,UAAWuB,EAAOiB,uBAAwBC,IAAI,MAChFpC,GAAQe,EAAAC,cAACqB,EAAI,CAACrC,KAAMA,EAAML,UAAWuB,EAAOlB,OAC3B,iBAAVH,EACNkB,EAAAC,cAACsB,EAAI,CAACC,KAAK,QAAQC,OAAO,SAASC,MAAM,aACtC5C,GAGHA,EAEDE,GACCgB,EAACC,cAAA0B,EAAQ,CAAAC,QAAS5C,EAAa6C,0BAA2B1B,EAAO2B,aAC/D9B,EAAAC,cAACqB,EAAI,CAACrC,KAAM8C,EAAMC,MAAOhD,MAI9BD,GACCiB,EAAAC,cAACgB,EAAI,CAACC,UAAU,MAAMC,MAAM,SAASvC,UAAWuB,EAAO8B,qBACrDjC,EAAAC,cAACiC,EACC,CAAAjD,KAAMkD,EAAYhD,GAClBiD,KAAK,WACLC,KAAK,KACO,aAAAhD,EACC,eAACU,EACdnB,UAAWsB,EAAGC,EAAOmC,KAAMC,EAASpC,EAAQhB,GAAUkB,EACnDF,CAAAA,EAAAA,EAAOqC,KAAOzC,IAEjB0C,QAAS,WAAA,OAAM1D,EAAc2D,EAAiBvD,GAAW,KAMrE"}
@@ -1,2 +0,0 @@
1
- var e={tableHeaderCell:"tableHeaderCell_573f8c3569","focus-visible":"focus-visible_ed26feb448",sticky:"sticky_a119c2ee3b",sortActive:"sortActive_f5abb5031a",tableHeaderCellContent:"tableHeaderCellContent_ab3ff362cc",icon:"icon_ecf273f8c2",infoTooltip:"infoTooltip_7f9a9830d5",tableHeaderCellSort:"tableHeaderCellSort_ae1e76b07a",sort:"sort_a5797aa891",asc:"asc_2fbbe953e3",desc:"desc_64ef5c0d1a",show:"show_8e01684fb2"};!function(e){const a="s_id-0fa2e97aa7c9_4_5_27";if("undefined"!=typeof document){const l=document.head||document.getElementsByTagName("head")[0];if(l.querySelector("#"+a))return;const n=document.createElement("style");n.id=a,l.firstChild?l.insertBefore(n,l.firstChild):l.appendChild(n),n.appendChild(document.createTextNode(e))}else globalThis.injectedStyles&&(globalThis.injectedStyles[a]=e)}("/* stylelint-disable */\n/* stylelint-enable */\n.tableHeaderCell_573f8c3569 {\n height: var(--table-row-size);\n padding: var(--space-8);\n padding-inline-start: var(--space-16);\n color: var(--secondary-text-color);\n box-sizing: border-box;\n text-align: initial;\n border-bottom: 1px solid var(--layout-border-color);\n display: flex;\n justify-content: space-between;\n background-color: inherit;\n}\n.tableHeaderCell_573f8c3569:focus-visible, .tableHeaderCell_573f8c3569.focus-visible_ed26feb448 {\n outline: none;\n z-index: 11;\n border-radius: 4px;\n box-shadow: 0 0 0 3px hsla(209, 100%, 50%, 0.5), 0 0 0 1px var(--primary-hover-color) inset;\n}\n.tableHeaderCell_573f8c3569:focus:not(.focus-visible_ed26feb448) {\n outline: none;\n}\n.tableHeaderCell_573f8c3569.sticky_a119c2ee3b {\n z-index: 1;\n position: sticky;\n inset-inline-start: 0;\n box-shadow: var(--sticky-cell-box-shadow);\n}\n.tableHeaderCell_573f8c3569.sticky_a119c2ee3b:hover {\n background: var(--sticky-cell-hover-background);\n}\n.tableHeaderCell_573f8c3569:hover, .tableHeaderCell_573f8c3569.sortActive_f5abb5031a {\n background-color: var(--primary-background-hover-color);\n}\n.tableHeaderCell_573f8c3569 .tableHeaderCellContent_ab3ff362cc {\n min-width: 0;\n}\n.tableHeaderCell_573f8c3569 .tableHeaderCellContent_ab3ff362cc .icon_ecf273f8c2 {\n min-width: var(--space-16);\n}\n.tableHeaderCell_573f8c3569 .tableHeaderCellContent_ab3ff362cc .infoTooltip_7f9a9830d5 {\n display: inline-flex;\n}\n.tableHeaderCell_573f8c3569 .tableHeaderCellSort_ae1e76b07a {\n padding-inline-start: var(--space-8);\n}\n.tableHeaderCell_573f8c3569 .tableHeaderCellSort_ae1e76b07a .sort_a5797aa891 {\n color: var(--icon-color);\n transition: opacity 0.1s;\n}\n.tableHeaderCell_573f8c3569 .tableHeaderCellSort_ae1e76b07a .sort_a5797aa891.asc_2fbbe953e3, .tableHeaderCell_573f8c3569 .tableHeaderCellSort_ae1e76b07a .sort_a5797aa891.desc_64ef5c0d1a {\n color: var(--primary-text-color);\n}\n.tableHeaderCell_573f8c3569 .tableHeaderCellSort_ae1e76b07a .sort_a5797aa891:not(.show_8e01684fb2) {\n opacity: 0;\n pointer-events: none;\n}");export{e as default};
2
- //# sourceMappingURL=TableHeaderCell.module.scss.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TableHeaderCell.module.scss.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- import e,{forwardRef as t,useRef as o,useCallback as s}from"react";import{getTestId as r}from"../../../tests/testIds.js";import{ComponentDefaultTestId as a}from"../../../tests/constants.js";import n from"classnames";import i from"./TableRow.module.scss.js";import{useTableRowMenu as m}from"../context/TableRowMenuContext/TableRowMenuContext.js";import{useMergeRef as l}from"../../../../shared/dist/hooks/useMergeRef.js";var d=t((function(t,d){var u=t.highlighted,c=t.children,f=t.style,p=t.id,R=t.className,w=t["data-testid"],M=o(null),h=l(M,d),v=m(),b=v.onMouseOverRow,j=v.onMouseLeaveRow,x=s((function(){b(M)}),[b]);return e.createElement("div",{id:p,"data-testid":w||r(a.TABLE_ROW,p),ref:h,role:"row","aria-selected":u||!1,className:n(i.tableRow,R),style:f,onMouseEnter:x,onMouseLeave:j,tabIndex:-1},c)}));export{d as default};
2
- //# sourceMappingURL=TableRow.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TableRow.js","sources":["../../../../../src/components/Table/TableRow/TableRow.tsx"],"sourcesContent":["import React, { forwardRef, useCallback, useRef } from \"react\";\nimport { type VibeComponentProps } from \"../../../types\";\nimport { type TableCellProps } from \"../TableCell/TableCell\";\nimport { useMergeRef } from \"@vibe/shared\";\nimport { getTestId } from \"../../../tests/test-ids-utils\";\nimport { ComponentDefaultTestId } from \"../../../tests/constants\";\nimport cx from \"classnames\";\nimport styles from \"./TableRow.module.scss\";\nimport { useTableRowMenu } from \"../context/TableRowMenuContext/TableRowMenuContext\";\n\nexport interface TableRowProps extends VibeComponentProps {\n /**\n * If true, applies a highlighted style to the row.\n */\n highlighted?: boolean;\n /**\n * The child components inside the table row, typically `<TableCell />` elements.\n */\n children?: React.ReactElement<TableCellProps> | React.ReactElement<TableCellProps>[];\n /**\n * Custom styles applied to the table row.\n */\n style?: React.CSSProperties;\n}\n\nconst TableRow = forwardRef(\n (\n { highlighted, children, style, id, className, \"data-testid\": dataTestId }: TableRowProps,\n ref: React.ForwardedRef<HTMLDivElement>\n ) => {\n const componentRef = useRef<HTMLDivElement>(null);\n const mergedRef = useMergeRef(componentRef, ref);\n const { onMouseOverRow, onMouseLeaveRow } = useTableRowMenu();\n\n const onMouseEnter = useCallback(() => {\n onMouseOverRow(componentRef);\n }, [onMouseOverRow]);\n\n return (\n <div\n id={id}\n data-testid={dataTestId || getTestId(ComponentDefaultTestId.TABLE_ROW, id)}\n ref={mergedRef}\n role=\"row\"\n aria-selected={highlighted || false}\n className={cx(styles.tableRow, className)}\n style={style}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeaveRow}\n tabIndex={-1}\n >\n {children}\n </div>\n );\n }\n);\n\nexport default TableRow;\n"],"names":["TableRow","forwardRef","_ref","ref","highlighted","children","style","id","className","dataTestId","componentRef","useRef","mergedRef","useMergeRef","_useTableRowMenu","useTableRowMenu","onMouseOverRow","onMouseLeaveRow","onMouseEnter","useCallback","React","createElement","getTestId","ComponentDefaultTestId","TABLE_ROW","role","cx","styles","tableRow","onMouseLeave","tabIndex"],"mappings":"oaAyBMA,IAAAA,EAAWC,GACf,SAAAC,EAEEC,GACE,IAFAC,EAAWF,EAAXE,YAAaC,EAAQH,EAARG,SAAUC,EAAKJ,EAALI,MAAOC,EAAEL,EAAFK,GAAIC,EAASN,EAATM,UAA0BC,EAAUP,EAAzB,eAGzCQ,EAAeC,EAAuB,MACtCC,EAAYC,EAAYH,EAAcP,GAC5CW,EAA4CC,IAApCC,EAAcF,EAAdE,eAAgBC,EAAeH,EAAfG,gBAElBC,EAAeC,GAAY,WAC/BH,EAAeN,EACjB,GAAG,CAACM,IAEJ,OACEI,EAAAC,cAAA,MAAA,CACEd,GAAIA,EAAE,cACOE,GAAca,EAAUC,EAAuBC,UAAWjB,GACvEJ,IAAKS,EACLa,KAAK,MACU,gBAAArB,IAAe,EAC9BI,UAAWkB,EAAGC,EAAOC,SAAUpB,GAC/BF,MAAOA,EACPY,aAAcA,EACdW,aAAcZ,EACda,UAAW,GAEVzB,EAGP"}
@@ -1,2 +0,0 @@
1
- var e={tableRow:"tableRow_7ef8922f9d"};!function(e){const t="s_id-72a799b963ca_4_5_27";if("undefined"!=typeof document){const l=document.head||document.getElementsByTagName("head")[0];if(l.querySelector("#"+t))return;const r=document.createElement("style");r.id=t,l.firstChild?l.insertBefore(r,l.firstChild):l.appendChild(r),r.appendChild(document.createTextNode(e))}else globalThis.injectedStyles&&(globalThis.injectedStyles[t]=e)}("/* stylelint-disable selector-class-pattern */\n.tableRow_7ef8922f9d {\n height: var(--table-row-size);\n display: grid;\n grid-template-columns: var(--table-grid-template-columns);\n min-width: 100%;\n width: fit-content;\n}\n.tableRow_7ef8922f9d[aria-selected=true] > [role=cell] {\n background-color: var(--primary-selected-color);\n}\n.tableRow_7ef8922f9d > [role=cell] {\n background-color: var(--primary-background-color);\n}\n.tableRow_7ef8922f9d:hover > [role=cell] {\n background: var(--sticky-cell-hover-background);\n}\n.tableRow_7ef8922f9d:hover[aria-selected=true] > [role=cell] {\n background: var(--primary-selected-hover-color);\n}");export{e as default};
2
- //# sourceMappingURL=TableRow.module.scss.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TableRow.module.scss.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- import e,{forwardRef as t,useCallback as o}from"react";import n from"classnames";import{getTestId as s}from"../../../tests/testIds.js";import{ComponentDefaultTestId as r}from"../../../tests/constants.js";import a from"./TableRowMenu.module.scss.js";import{createPortal as m}from"react-dom";import{useTable as u}from"../context/TableContext/TableContext.js";import{useTableRowMenu as i}from"../context/TableRowMenuContext/TableRowMenuContext.js";import{useTableContainer as l}from"../context/TableContainerContext/TableContainerContext.js";import c from"../../../../components/menu-button/dist/MenuButton/MenuButton.js";import d from"../../../../components/menu/dist/Menu/Menu/Menu.js";import{getStyle as M}from"../../../../shared/dist/utils/typesciptCssModulesHelper.js";var p=t((function(t,p){var f=t.rowId,b=t.className,x=t.id,C=t["data-testid"],w=t.children,T=l().menuContainerRef,j=u().size,R=i(),v=R.hoveredRowId,E=R.setTableMenuHidden,h=R.setTableMenuShown,B=R.menuButtonPosition,N=R.onMouseOverRowMenu,H=R.onMouseLeaveRowMenu,I=o((function(){E()}),[E]),L=o((function(){h()}),[h]);return T.current&&v&&v===f?e.createElement(e.Fragment,null,m(e.createElement("div",{className:n(a.rowMenuContainer,M(a,j)),style:{top:B},onMouseEnter:N,onMouseLeave:H},e.createElement(c,{id:x,ref:p,className:n(a.tableMenu,b),size:"xs",onMenuHide:I,onMenuShow:L,"data-testid":C||s(r.TABLE_ROW_MENU,x)},e.createElement(d,null,w))),T.current)):null}));export{p as default};
2
- //# sourceMappingURL=TableRowMenu.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TableRowMenu.js","sources":["../../../../../src/components/Table/TableRowMenu/TableRowMenu.tsx"],"sourcesContent":["import React, { forwardRef, useCallback } from \"react\";\nimport cx from \"classnames\";\nimport { getTestId } from \"../../../tests/test-ids-utils\";\nimport { ComponentDefaultTestId } from \"../../../tests/constants\";\nimport styles from \"./TableRowMenu.module.scss\";\nimport { MenuButton } from \"@vibe/menu-button\";\nimport { Menu } from \"@vibe/menu\";\nimport { createPortal } from \"react-dom\";\nimport { useTable } from \"../context/TableContext/TableContext\";\nimport { getStyle } from \"@vibe/shared\";\nimport { useTableRowMenu } from \"../context/TableRowMenuContext/TableRowMenuContext\";\nimport { useTableContainer } from \"../context/TableContainerContext/TableContainerContext\";\nimport { type TableMenuProps } from \"./TableRowMenu.types\";\n\nconst TableRowMenu = forwardRef(\n (\n { rowId, className, id, \"data-testid\": dataTestId, children }: TableMenuProps,\n ref: React.ForwardedRef<HTMLDivElement>\n ) => {\n const { menuContainerRef } = useTableContainer();\n const { size } = useTable();\n const {\n hoveredRowId,\n setTableMenuHidden,\n setTableMenuShown,\n menuButtonPosition,\n onMouseOverRowMenu,\n onMouseLeaveRowMenu\n } = useTableRowMenu();\n\n const onMenuHide = useCallback(() => {\n setTableMenuHidden();\n }, [setTableMenuHidden]);\n\n const onMenuShow = useCallback(() => {\n setTableMenuShown();\n }, [setTableMenuShown]);\n\n const shouldShowMenu = menuContainerRef.current && hoveredRowId && hoveredRowId === rowId;\n if (!shouldShowMenu) return null;\n\n return (\n <>\n {createPortal(\n <div\n className={cx(styles.rowMenuContainer, getStyle(styles, size))}\n style={{ top: menuButtonPosition }}\n onMouseEnter={onMouseOverRowMenu}\n onMouseLeave={onMouseLeaveRowMenu}\n >\n <MenuButton\n id={id}\n ref={ref}\n className={cx(styles.tableMenu, className)}\n size=\"xs\"\n onMenuHide={onMenuHide}\n onMenuShow={onMenuShow}\n data-testid={dataTestId || getTestId(ComponentDefaultTestId.TABLE_ROW_MENU, id)}\n >\n <Menu>{children}</Menu>\n </MenuButton>\n </div>,\n menuContainerRef.current\n )}\n </>\n );\n }\n);\n\nexport default TableRowMenu;\n"],"names":["TableRowMenu","forwardRef","_ref","ref","rowId","className","id","dataTestId","children","menuContainerRef","useTableContainer","size","useTable","_useTableRowMenu","useTableRowMenu","hoveredRowId","setTableMenuHidden","setTableMenuShown","menuButtonPosition","onMouseOverRowMenu","onMouseLeaveRowMenu","onMenuHide","useCallback","onMenuShow","current","React","createElement","Fragment","createPortal","cx","styles","rowMenuContainer","getStyle","style","top","onMouseEnter","onMouseLeave","MenuButton","tableMenu","getTestId","ComponentDefaultTestId","TABLE_ROW_MENU","Menu"],"mappings":"mwBAcMA,IAAAA,EAAeC,GACnB,SAAAC,EAEEC,GACE,IAFAC,EAAKF,EAALE,MAAOC,EAASH,EAATG,UAAWC,EAAEJ,EAAFI,GAAmBC,EAAUL,EAAzB,eAA2BM,EAAQN,EAARM,SAG3CC,EAAqBC,IAArBD,iBACAE,EAASC,IAATD,KACRE,EAOIC,IANFC,EAAYF,EAAZE,aACAC,EAAkBH,EAAlBG,mBACAC,EAAiBJ,EAAjBI,kBACAC,EAAkBL,EAAlBK,mBACAC,EAAkBN,EAAlBM,mBACAC,EAAmBP,EAAnBO,oBAGIC,EAAaC,GAAY,WAC7BN,GACF,GAAG,CAACA,IAEEO,EAAaD,GAAY,WAC7BL,GACF,GAAG,CAACA,IAGJ,OADuBR,EAAiBe,SAAWT,GAAgBA,IAAiBX,EAIlFqB,EAAAC,cAAAD,EAAAE,SAAA,KACGC,EACCH,uBACEpB,UAAWwB,EAAGC,EAAOC,iBAAkBC,EAASF,EAAQnB,IACxDsB,MAAO,CAAEC,IAAKhB,GACdiB,aAAchB,EACdiB,aAAchB,GAEdK,EAAAC,cAACW,EACC,CAAA/B,GAAIA,EACJH,IAAKA,EACLE,UAAWwB,EAAGC,EAAOQ,UAAWjC,GAChCM,KAAK,KACLU,WAAYA,EACZE,WAAYA,gBACChB,GAAcgC,EAAUC,EAAuBC,eAAgBnC,IAE5EmB,EAAAC,cAACgB,EAAI,KAAElC,KAGXC,EAAiBe,UAvBK,IA2B9B"}
@@ -1,2 +0,0 @@
1
- var e={rowMenuContainer:"rowMenuContainer_1d81bb6313",small:"small_00eeabf9a1",medium:"medium_1dc3a2db71",large:"large_8dc2e6531d"};!function(e){const n="s_id-6ebd091550ab_4_5_27";if("undefined"!=typeof document){const d=document.head||document.getElementsByTagName("head")[0];if(d.querySelector("#"+n))return;const a=document.createElement("style");a.id=n,d.firstChild?d.insertBefore(a,d.firstChild):d.appendChild(a),a.appendChild(document.createTextNode(e))}else globalThis.injectedStyles&&(globalThis.injectedStyles[n]=e)}(".rowMenuContainer_1d81bb6313 {\n position: absolute;\n display: flex;\n align-items: center;\n justify-content: center;\n padding-inline: var(--space-8);\n}\n.rowMenuContainer_1d81bb6313.small_00eeabf9a1 {\n padding-block: var(--space-4);\n}\n.rowMenuContainer_1d81bb6313.medium_1dc3a2db71 {\n padding-block: var(--space-8);\n}\n.rowMenuContainer_1d81bb6313.large_8dc2e6531d {\n padding-block: 12px;\n}");export{e as default};
2
- //# sourceMappingURL=TableRowMenu.module.scss.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TableRowMenu.module.scss.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- import{defineProperty as e}from"../../../../_virtual/_rollupPluginBabelHelpers.js";import{__rest as t}from"../../../../_virtual/_tslib.js";import r,{forwardRef as n,useCallback as o,useEffect as i,useMemo as l}from"react";import a from"../TableBody/TableBody.js";import s from"./TableVirtualizedBody.module.scss.js";import{FixedSizeList as c}from"react-window";import{useTable as d}from"../context/TableContext/TableContext.js";import m from"classnames";import{getTestId as u}from"../../../tests/testIds.js";import{ComponentDefaultTestId as f}from"../../../tests/constants.js";import{RowHeights as v}from"../Table/TableConsts.js";import p from"react-virtualized-auto-sizer";import{useTableRowMenu as b}from"../context/TableRowMenuContext/TableRowMenuContext.js";var T=r.memo((function(e){var n,o=e.style,i=(0,e.rowRenderer)(e.item),l=t(o,["width"]);return r.cloneElement(i,{style:Object.assign(Object.assign({},l),null===(n=i.props)||void 0===n?void 0:n.style)})})),h=n((function(h,E){var g=h.items,w=h.rowRenderer,y=h.onScroll,j=h.columns,R=h.headerRenderer,B=h.id,L=h.className,x=h["data-testid"],z=h.overscanCount,C=void 0===z?1:z,_=d(),I=_.size,O=_.virtualizedListRef,A=_.onVirtualizedListScroll,D=_.markTableAsVirtualized,S=_.dataState,V=b().resetHoveredRow,H=!!j&&!!R,N=(S||{}).isLoading,U=o((function(e){var t=e.target;V(),A({target:t,currentTarget:t})}),[V,A]);i((function(){var e=O.current;if(e)return e.addEventListener("scroll",U),function(){e.removeEventListener("scroll",U)}}),[U,O]);var M=o((function(e){H||null==y||y(e.scrollDirection,e.scrollOffset,e.scrollUpdateWasRequested)}),[y,H]),P=o((function(e){var t=e.index;return H&&0===t?null:r.createElement(T,{item:g[H?t-1:t],rowRenderer:w,style:e.style})}),[g,w,H]);i((function(){H||D()}),[D,H]);var Y=l((function(){return H?n((function(e,n){var o=e.children,i=t(e,["children"]);return r.createElement("div",Object.assign({ref:n},i),R(j),o)})):void 0}),[H,R,j]);return N&&H?r.createElement("div",{ref:E,id:B,className:m(s.tableBody,s.withHeader,L),"data-testid":x||u(f.TABLE_VIRTUALIZED_BODY,B)},R(j),r.createElement(a,null)):r.createElement(a,{className:m(s.tableBody,e({},s.withHeader,H),L),id:B,"data-testid":x||u(f.TABLE_VIRTUALIZED_BODY,B),ref:E},(null==g?void 0:g.length)&&r.createElement(p,null,(function(e){return r.createElement(c,{className:s.tableBodyItems,itemSize:v[I],height:e.height,itemCount:H?g.length+1:g.length,width:e.width,overscanCount:C,onScroll:M,outerRef:function(e){O.current=e},innerElementType:Y},P)})))}));export{h as default};
2
- //# sourceMappingURL=TableVirtualizedBody.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TableVirtualizedBody.js","sources":["../../../../../src/components/Table/TableVirtualizedBody/TableVirtualizedBody.tsx"],"sourcesContent":["import React, { type ComponentType, forwardRef, useCallback, useEffect, useMemo } from \"react\";\nimport { type VibeComponentProps } from \"../../../types\";\nimport TableBody from \"../TableBody/TableBody\";\nimport styles from \"./TableVirtualizedBody.module.scss\";\nimport { FixedSizeList as List, type ListChildComponentProps, type ScrollDirection } from \"react-window\";\nimport { useTable } from \"../context/TableContext/TableContext\";\nimport cx from \"classnames\";\nimport { getTestId } from \"../../../tests/test-ids-utils\";\nimport { ComponentDefaultTestId } from \"../../../tests/constants\";\nimport { RowHeights } from \"../Table/TableConsts\";\nimport AutoSizer, { type Size as AutoSizerSize } from \"react-virtualized-auto-sizer\";\nimport { useTableRowMenu } from \"../context/TableRowMenuContext/TableRowMenuContext\";\nimport { type TableColumn } from \"../Table/Table\";\n\nexport type TableVirtualizedRow = Record<string, unknown> & { id: string };\n\nexport interface TableVirtualizedBodyProps<T extends TableVirtualizedRow = TableVirtualizedRow>\n extends VibeComponentProps {\n /**\n * The list of items to render in the virtualized table.\n */\n items: T[];\n /**\n * Function to render a row in the table.\n */\n rowRenderer: (item: T) => JSX.Element;\n /**\n * Callback function triggered on scroll.\n */\n onScroll?: (horizontalScrollDirection: ScrollDirection, scrollTop: number, scrollUpdateWasRequested: boolean) => void;\n /**\n * The columns configuration for the table.\n */\n columns?: TableColumn[];\n /**\n * Function to render the table header.\n */\n headerRenderer?: (columns: TableColumn[]) => JSX.Element;\n /**\n * Number of rows to render above/below the visible area.\n */\n overscanCount?: number;\n}\n\nconst MemoizedRow = React.memo(\n <T extends TableVirtualizedRow>({\n item,\n rowRenderer,\n style\n }: {\n item: T;\n rowRenderer: (item: T) => JSX.Element;\n style: React.CSSProperties;\n }) => {\n const element = rowRenderer(item);\n const { width: _width, ...styleWithoutWidth } = style;\n return React.cloneElement(element, {\n style: { ...styleWithoutWidth, ...element.props?.style }\n });\n }\n);\n\nconst TableVirtualizedBody = forwardRef(\n <T extends TableVirtualizedRow = TableVirtualizedRow>(\n {\n items,\n rowRenderer,\n onScroll,\n columns,\n headerRenderer,\n id,\n className,\n \"data-testid\": dataTestId,\n overscanCount = 1\n }: TableVirtualizedBodyProps<T>,\n ref: React.ForwardedRef<HTMLDivElement>\n ) => {\n const { size, virtualizedListRef, onVirtualizedListScroll, markTableAsVirtualized, dataState } = useTable();\n const { resetHoveredRow } = useTableRowMenu();\n const virtualizedWithHeader = !!columns && !!headerRenderer;\n const { isLoading } = dataState || {};\n\n const handleOuterScroll = useCallback(\n (e: Event) => {\n const target = e.target as HTMLDivElement;\n resetHoveredRow();\n onVirtualizedListScroll({\n target,\n currentTarget: target\n } as unknown as React.UIEvent<HTMLDivElement>);\n },\n [resetHoveredRow, onVirtualizedListScroll]\n );\n\n useEffect(() => {\n const scrollElement = virtualizedListRef.current;\n if (!scrollElement) return;\n\n scrollElement.addEventListener(\"scroll\", handleOuterScroll);\n\n return () => {\n scrollElement.removeEventListener(\"scroll\", handleOuterScroll);\n };\n }, [handleOuterScroll, virtualizedListRef]);\n\n const handleVirtualizedVerticalScroll = useCallback(\n ({\n scrollDirection,\n scrollOffset,\n scrollUpdateWasRequested\n }: {\n scrollDirection: ScrollDirection;\n scrollOffset: number;\n scrollUpdateWasRequested: boolean;\n }) => {\n if (virtualizedWithHeader) return;\n onScroll?.(scrollDirection, scrollOffset, scrollUpdateWasRequested);\n },\n [onScroll, virtualizedWithHeader]\n );\n\n const itemRenderer = useCallback<ComponentType<ListChildComponentProps<T>>>(\n ({ index, style }) => {\n if (virtualizedWithHeader && index === 0) {\n return null; //placeholder for virtualized with header\n }\n const currentIndex = virtualizedWithHeader ? index - 1 : index;\n const currentItem = items[currentIndex];\n\n return <MemoizedRow item={currentItem} rowRenderer={rowRenderer} style={style} />;\n },\n [items, rowRenderer, virtualizedWithHeader]\n );\n\n useEffect(() => {\n if (!virtualizedWithHeader) markTableAsVirtualized();\n }, [markTableAsVirtualized, virtualizedWithHeader]);\n\n const memoizedInnerElementType = useMemo(\n () =>\n virtualizedWithHeader\n ? forwardRef(({ children, ...rest }: any, ref: React.Ref<HTMLDivElement>) => (\n <div ref={ref} {...rest}>\n {headerRenderer!(columns!)}\n {children}\n </div>\n ))\n : undefined,\n [virtualizedWithHeader, headerRenderer, columns]\n );\n\n // When in loading state and we have a header renderer, render header separately\n if (isLoading && virtualizedWithHeader) {\n return (\n <div\n ref={ref}\n id={id}\n className={cx(styles.tableBody, styles.withHeader, className)}\n data-testid={dataTestId || getTestId(ComponentDefaultTestId.TABLE_VIRTUALIZED_BODY, id)}\n >\n {headerRenderer!(columns!)}\n <TableBody />\n </div>\n );\n }\n\n return (\n <TableBody\n className={cx(\n styles.tableBody,\n {\n [styles.withHeader]: virtualizedWithHeader\n },\n className\n )}\n id={id}\n data-testid={dataTestId || getTestId(ComponentDefaultTestId.TABLE_VIRTUALIZED_BODY, id)}\n ref={ref}\n >\n {items?.length && (\n <AutoSizer>\n {({ height, width }: AutoSizerSize) => (\n <List\n className={styles.tableBodyItems}\n itemSize={RowHeights[size]}\n height={height}\n itemCount={virtualizedWithHeader ? items.length + 1 : items.length}\n width={width}\n overscanCount={overscanCount}\n onScroll={handleVirtualizedVerticalScroll}\n outerRef={element => {\n virtualizedListRef.current = element;\n }}\n innerElementType={memoizedInnerElementType}\n >\n {itemRenderer}\n </List>\n )}\n </AutoSizer>\n )}\n </TableBody>\n );\n }\n);\n\nexport default TableVirtualizedBody;\n"],"names":["MemoizedRow","React","memo","_ref","style","element","rowRenderer","item","styleWithoutWidth","__rest","cloneElement","Object","assign","_a","props","TableVirtualizedBody","forwardRef","_ref2","ref","items","onScroll","columns","headerRenderer","id","className","dataTestId","_ref2$overscanCount","overscanCount","_useTable","useTable","size","virtualizedListRef","onVirtualizedListScroll","markTableAsVirtualized","dataState","resetHoveredRow","useTableRowMenu","virtualizedWithHeader","isLoading","handleOuterScroll","useCallback","e","target","currentTarget","useEffect","scrollElement","current","addEventListener","removeEventListener","handleVirtualizedVerticalScroll","_ref4","scrollDirection","scrollOffset","scrollUpdateWasRequested","itemRenderer","_ref5","index","createElement","memoizedInnerElementType","useMemo","children","rest","undefined","cx","styles","tableBody","withHeader","getTestId","ComponentDefaultTestId","TABLE_VIRTUALIZED_BODY","TableBody","_defineProperty","length","AutoSizer","_ref6","List","tableBodyItems","itemSize","RowHeights","height","itemCount","width","outerRef","innerElementType"],"mappings":"0vBA4CA,IAAMA,EAAcC,EAAMC,MACxB,SAAAC,GAQK,MALHC,EAAKD,EAALC,MAMMC,GAAUC,EAPLH,EAAXG,aADIH,EAAJI,MAS0BC,EAAsBC,EAAAL,EAA1C,CAAA,UACN,OAAOH,EAAMS,aAAaL,EAAS,CACjCD,MAAKO,OAAAC,OAAAD,OAAAC,OAAA,CAAA,EAAOJ,GAAqC,QAAfK,EAAAR,EAAQS,aAAO,IAAAD,OAAA,EAAAA,EAAAT,QAErD,IAGIW,EAAuBC,GAC3B,SAAAC,EAYEC,GACE,IAXAC,EAAKF,EAALE,MACAb,EAAWW,EAAXX,YACAc,EAAQH,EAARG,SACAC,EAAOJ,EAAPI,QACAC,EAAcL,EAAdK,eACAC,EAAEN,EAAFM,GACAC,EAASP,EAATO,UACeC,EAAUR,EAAzB,eAAaS,EAAAT,EACbU,cAAAA,OAAgB,IAAHD,EAAG,EAACA,EAInBE,EAAiGC,IAAzFC,EAAIF,EAAJE,KAAMC,EAAkBH,EAAlBG,mBAAoBC,EAAuBJ,EAAvBI,wBAAyBC,EAAsBL,EAAtBK,uBAAwBC,EAASN,EAATM,UAC3EC,EAAoBC,IAApBD,gBACFE,IAA0BhB,KAAaC,EACrCgB,GAAcJ,GAAa,CAAE,GAA7BI,UAEFC,EAAoBC,GACxB,SAACC,GACC,IAAMC,EAASD,EAAEC,OACjBP,IACAH,EAAwB,CACtBU,OAAAA,EACAC,cAAeD,GAEnB,GACA,CAACP,EAAiBH,IAGpBY,GAAU,WACR,IAAMC,EAAgBd,EAAmBe,QACzC,GAAKD,EAIL,OAFAA,EAAcE,iBAAiB,SAAUR,GAElC,WACLM,EAAcG,oBAAoB,SAAUT,GAEhD,GAAG,CAACA,EAAmBR,IAEvB,IAAMkB,EAAkCT,GACtC,SAAAU,GASMb,GACJjB,SAAAA,EATe8B,EAAfC,gBACYD,EAAZE,aACwBF,EAAxBG,yBAQF,GACA,CAACjC,EAAUiB,IAGPiB,EAAed,GACnB,SAAAe,GAAqB,IAAlBC,EAAKD,EAALC,MACD,OAAInB,GAAmC,IAAVmB,EACpB,KAKFvD,EAACwD,cAAAzD,EAAY,CAAAO,KAFAY,EADCkB,EAAwBmB,EAAQ,EAAIA,GAGlBlD,YAAaA,EAAaF,MAPpDmD,EAALnD,OAQT,GACD,CAACe,EAAOb,EAAa+B,IAGvBO,GAAU,WACHP,GAAuBJ,GAC9B,GAAG,CAACA,EAAwBI,IAE5B,IAAMqB,EAA2BC,GAC/B,WAAA,OACEtB,EACIrB,GAAW,SAACH,EAA4BK,GAA5B,IAAE0C,EAAwB/C,EAAxB+C,SAAaC,EAAIpD,EAAAI,EAAnB,cAA+D,OACzEZ,EAAKwD,cAAA,MAAA9C,OAAAC,OAAA,CAAAM,IAAKA,GAAS2C,GAChBvC,EAAgBD,GAChBuC,EAEJ,SACDE,CAAS,GACf,CAACzB,EAAuBf,EAAgBD,IAI1C,OAAIiB,GAAaD,EAEbpC,EAAAwD,cAAA,MAAA,CACEvC,IAAKA,EACLK,GAAIA,EACJC,UAAWuC,EAAGC,EAAOC,UAAWD,EAAOE,WAAY1C,GACtC,cAAAC,GAAc0C,EAAUC,EAAuBC,uBAAwB9C,IAEnFD,EAAgBD,GACjBpB,EAAAwD,cAACa,EAAS,OAMdrE,EAACwD,cAAAa,EACC,CAAA9C,UAAWuC,EACTC,EAAOC,UAASM,EAEbP,GAAAA,EAAOE,WAAa7B,GAEvBb,GAEFD,GAAIA,EAAE,cACOE,GAAc0C,EAAUC,EAAuBC,uBAAwB9C,GACpFL,IAAKA,IAEJC,eAAAA,EAAOqD,SACNvE,EAACwD,cAAAgB,EACE,MAAA,SAAAC,GAAgB,OACfzE,EAACwD,cAAAkB,EACC,CAAAnD,UAAWwC,EAAOY,eAClBC,SAAUC,EAAWhD,GACrBiD,OAJML,EAANK,OAKAC,UAAW3C,EAAwBlB,EAAMqD,OAAS,EAAIrD,EAAMqD,OAC5DS,MANaP,EAALO,MAORtD,cAAeA,EACfP,SAAU6B,EACViC,SAAU,SAAA7E,GACR0B,EAAmBe,QAAUzC,CAC9B,EACD8E,iBAAkBzB,GAEjBJ,EAEJ,IAKX"}
@@ -1,2 +0,0 @@
1
- var e={tableBody:"tableBody_3398d6ae4e",tableBodyItems:"tableBodyItems_770c27a017",withHeader:"withHeader_a107dd381c"};!function(e){const t="s_id-e63e6a70f113_4_5_27";if("undefined"!=typeof document){const d=document.head||document.getElementsByTagName("head")[0];if(d.querySelector("#"+t))return;const a=document.createElement("style");a.id=t,d.firstChild?d.insertBefore(a,d.firstChild):d.appendChild(a),a.appendChild(document.createTextNode(e))}else globalThis.injectedStyles&&(globalThis.injectedStyles[t]=e)}("/* stylelint-disable */\n/* stylelint-enable */\n.tableBody_3398d6ae4e {\n height: calc(100% - var(--table-row-size));\n}\n.tableBody_3398d6ae4e .tableBodyItems_770c27a017::-webkit-scrollbar {\n width: 6px;\n height: 6px;\n}\n.tableBody_3398d6ae4e .tableBodyItems_770c27a017::-webkit-scrollbar-thumb {\n background-color: var(--ui-border-color);\n border-radius: 4px;\n}\n.tableBody_3398d6ae4e.withHeader_a107dd381c {\n height: 100%;\n overflow: hidden;\n}");export{e as default};
2
- //# sourceMappingURL=TableVirtualizedBody.module.scss.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TableVirtualizedBody.module.scss.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- import r,{useContext as e,createContext as t}from"react";var n=t(void 0),i=function(e){return r.createElement(n.Provider,{value:e.value},e.children)},o=function(){var r=e(n);if(!r)throw Error("useTableContainer must be used within a TableContainerProvider");return r};export{i as TableContainerProvider,o as useTableContainer};
2
- //# sourceMappingURL=TableContainerContext.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TableContainerContext.js","sources":["../../../../../../src/components/Table/context/TableContainerContext/TableContainerContext.tsx"],"sourcesContent":["import React, { createContext, useContext } from \"react\";\nimport {\n type TableContainerContext as ITableContainerContext,\n type TableContainerProviderProps\n} from \"./TableContainerContext.types\";\n\nconst TableContainerContext = createContext<ITableContainerContext | undefined>(undefined);\n\nexport const TableContainerProvider = ({ value, children }: TableContainerProviderProps) => {\n return <TableContainerContext.Provider value={value}>{children}</TableContainerContext.Provider>;\n};\n\nexport const useTableContainer = () => {\n const context = useContext(TableContainerContext);\n if (!context) {\n throw new Error(\"useTableContainer must be used within a TableContainerProvider\");\n }\n return context;\n};\n"],"names":["TableContainerContext","createContext","undefined","TableContainerProvider","_ref","React","createElement","Provider","value","children","useTableContainer","context","useContext","Error"],"mappings":"yDAMA,IAAMA,EAAwBC,OAAkDC,GAEnEC,EAAyB,SAAHC,GACjC,OAAOC,EAAAC,cAACN,EAAsBO,SAAQ,CAACC,MADKJ,EAALI,OAAeJ,EAARK,SAEhD,EAEaC,EAAoB,WAC/B,IAAMC,EAAUC,EAAWZ,GAC3B,IAAKW,EACH,MAAUE,MAAM,kEAElB,OAAOF,CACT"}
@@ -1,2 +0,0 @@
1
- import r,{useRef as e,useCallback as t,useMemo as n,useContext as o,createContext as l}from"react";var u=l(void 0),c=function(o){var l=o.value,c=o.children,i=l.setIsScrolled,a=e(null),f=e(null),d=e(0),s=t((function(r,e){if(r!==d.current){"body"===e&&a.current&&(a.current.scrollLeft=r),"head"===e&&f.current&&(f.current.scrollLeft=r);var t=r>0;i((function(r){return r!==t?t:r})),d.current=r}}),[i]),v=t((function(r){s(r.target.scrollLeft,"head")}),[s]),b=t((function(r){s(r.target.scrollLeft,"body")}),[s]),h=n((function(){return Object.assign(Object.assign({},l),{headRef:a,onHeadScroll:v,virtualizedListRef:f,onVirtualizedListScroll:b})}),[l,v,b]);return r.createElement(u.Provider,{value:h},c)},i=function(){var r=o(u);if(void 0===r)throw Error("useTable must be used within a TableProvider");return r};export{c as TableProvider,i as useTable};
2
- //# sourceMappingURL=TableContext.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TableContext.js","sources":["../../../../../../src/components/Table/context/TableContext/TableContext.tsx"],"sourcesContent":["import React, { createContext, type UIEventHandler, useCallback, useContext, useMemo, useRef } from \"react\";\nimport { type TableContext as ITableContext, type TableProviderProps } from \"./TableContext.types\";\n\nconst TableContext = createContext<ITableContext | undefined>(undefined);\n\nexport const TableProvider = ({ value, children }: TableProviderProps) => {\n const { setIsScrolled } = value;\n const headRef = useRef<HTMLDivElement>(null);\n const virtualizedListRef = useRef<HTMLDivElement>(null);\n const lastScrollLeft = useRef<number>(0);\n\n const syncScroll = useCallback(\n (newScrollLeft: number, source: \"head\" | \"body\") => {\n if (newScrollLeft === lastScrollLeft.current) return;\n\n if (source === \"body\" && headRef.current) {\n headRef.current.scrollLeft = newScrollLeft;\n }\n if (source === \"head\" && virtualizedListRef.current) {\n virtualizedListRef.current.scrollLeft = newScrollLeft;\n }\n\n const hasScroll = newScrollLeft > 0;\n setIsScrolled(prevScroll => (prevScroll !== hasScroll ? hasScroll : prevScroll));\n\n lastScrollLeft.current = newScrollLeft;\n },\n [setIsScrolled]\n );\n\n const onHeadScroll: UIEventHandler<HTMLDivElement> = useCallback(\n e => {\n const newLeft = (e.target as HTMLDivElement).scrollLeft;\n syncScroll(newLeft, \"head\");\n },\n [syncScroll]\n );\n\n const onVirtualizedListScroll = useCallback<UIEventHandler<HTMLDivElement>>(\n e => {\n const newLeft = (e.target as HTMLDivElement).scrollLeft;\n syncScroll(newLeft, \"body\");\n },\n [syncScroll]\n );\n\n const contextValue = useMemo<ITableContext>(\n () => ({\n ...value,\n headRef,\n onHeadScroll,\n virtualizedListRef,\n onVirtualizedListScroll\n }),\n [value, onHeadScroll, onVirtualizedListScroll]\n );\n\n return <TableContext.Provider value={contextValue}>{children}</TableContext.Provider>;\n};\n\nexport const useTable = () => {\n const context = useContext(TableContext);\n if (context === undefined) {\n throw new Error(\"useTable must be used within a TableProvider\");\n }\n return context;\n};\n"],"names":["TableContext","createContext","undefined","TableProvider","_ref","value","children","setIsScrolled","headRef","useRef","virtualizedListRef","lastScrollLeft","syncScroll","useCallback","newScrollLeft","source","current","scrollLeft","hasScroll","prevScroll","onHeadScroll","e","target","onVirtualizedListScroll","contextValue","useMemo","Object","assign","React","createElement","Provider","useTable","context","useContext","Error"],"mappings":"mGAGA,IAAMA,EAAeC,OAAyCC,GAEjDC,EAAgB,SAAHC,GAA+C,IAAzCC,EAAKD,EAALC,MAAOC,EAAQF,EAARE,SAC7BC,EAAkBF,EAAlBE,cACFC,EAAUC,EAAuB,MACjCC,EAAqBD,EAAuB,MAC5CE,EAAiBF,EAAe,GAEhCG,EAAaC,GACjB,SAACC,EAAuBC,GACtB,GAAID,IAAkBH,EAAeK,QAArC,CAEe,SAAXD,GAAqBP,EAAQQ,UAC/BR,EAAQQ,QAAQC,WAAaH,GAEhB,SAAXC,GAAqBL,EAAmBM,UAC1CN,EAAmBM,QAAQC,WAAaH,GAG1C,IAAMI,EAAYJ,EAAgB,EAClCP,GAAc,SAAAY,GAAU,OAAKA,IAAeD,EAAYA,EAAYC,CAAU,IAE9ER,EAAeK,QAAUF,CAZqB,CAahD,GACA,CAACP,IAGGa,EAA+CP,GACnD,SAAAQ,GAEET,EADiBS,EAAEC,OAA0BL,WACzB,OACtB,GACA,CAACL,IAGGW,EAA0BV,GAC9B,SAAAQ,GAEET,EADiBS,EAAEC,OAA0BL,WACzB,OACtB,GACA,CAACL,IAGGY,EAAeC,GACnB,WAAA,OAAMC,OAAAC,OAAAD,OAAAC,OAAA,CAAA,EACDtB,GAAK,CACRG,QAAAA,EACAY,aAAAA,EACAV,mBAAAA,EACAa,wBAAAA,GACA,GACF,CAAClB,EAAOe,EAAcG,IAGxB,OAAOK,EAAAC,cAAC7B,EAAa8B,SAAQ,CAACzB,MAAOmB,GAAelB,EACtD,EAEayB,EAAW,WACtB,IAAMC,EAAUC,EAAWjC,GAC3B,QAAgBE,IAAZ8B,EACF,MAAUE,MAAM,gDAElB,OAAOF,CACT"}
@@ -1,2 +0,0 @@
1
- import{slicedToArray as e}from"../../../../../_virtual/_rollupPluginBabelHelpers.js";import n,{useState as o,useRef as r,useCallback as t,useMemo as u,useContext as i,createContext as l}from"react";var v=l(void 0),c=function(i){var l=i.value,c=i.children,a=l.tableRootRef,d=l.hoveredRowRef,s=l.isMenuOpen,R=l.resetHoveredRow,f=l.setHoveredRowRef,w=l.setIsMenuOpen,M=o(0),p=e(M,2),b=p[0],m=p[1],h=r(!1),g=t((function(e){if(!s){f(e);var n=a.current.getBoundingClientRect().top,o=e.current.getBoundingClientRect().top;m(o-n)}}),[s,f,a]),H=t((function(){s||h.current||f(null)}),[s,f]),T=t((function(){h.current=!0}),[]),B=t((function(){h.current=!1,s||(null==d?void 0:d.current)||f(null)}),[s,d,f]),O=t((function(){w(!0)}),[w]),P=t((function(){w(!1)}),[w]),C=u((function(){var e;return{hoveredRowId:null===(e=null==d?void 0:d.current)||void 0===e?void 0:e.id,resetHoveredRow:R,menuButtonPosition:b,onMouseOverRow:g,onMouseLeaveRow:H,onMouseOverRowMenu:T,onMouseLeaveRowMenu:B,setTableMenuShown:O,setTableMenuHidden:P}}),[d,R,b,H,B,g,T,O,P]);return n.createElement(v.Provider,{value:C},c)},a=function(){var e=i(v);if(!e)throw Error("useTableRowMenuContext must be used within a TableRowMenuProvider");return e};export{c as TableRowMenuProvider,a as useTableRowMenu};
2
- //# sourceMappingURL=TableRowMenuContext.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TableRowMenuContext.js","sources":["../../../../../../src/components/Table/context/TableRowMenuContext/TableRowMenuContext.tsx"],"sourcesContent":["import React, { createContext, useCallback, useContext, useMemo, useRef, useState } from \"react\";\nimport {\n type TableRowMenuContext as ITableRowMenuContext,\n type TableRowMenuProviderProps\n} from \"./TableRowMenuContext.types\";\n\nconst TableRowMenuContext = createContext<ITableRowMenuContext | undefined>(undefined);\n\nexport const TableRowMenuProvider = ({ value, children }: TableRowMenuProviderProps) => {\n const { tableRootRef, hoveredRowRef, isMenuOpen, resetHoveredRow, setHoveredRowRef, setIsMenuOpen } = value;\n const [menuButtonPosition, setMenuButtonPosition] = useState(0);\n const isMenuHovered = useRef(false);\n\n const onMouseOverRow = useCallback(\n (rowRef: React.RefObject<HTMLDivElement>) => {\n if (isMenuOpen) return;\n\n setHoveredRowRef(rowRef);\n const tableRootTop = tableRootRef.current.getBoundingClientRect().top;\n const rowTop = rowRef.current.getBoundingClientRect().top;\n setMenuButtonPosition(rowTop - tableRootTop);\n },\n [isMenuOpen, setHoveredRowRef, tableRootRef]\n );\n\n const onMouseLeaveRow = useCallback(() => {\n if (isMenuOpen || isMenuHovered.current) return;\n setHoveredRowRef(null);\n }, [isMenuOpen, setHoveredRowRef]);\n\n const onMouseOverRowMenu = useCallback(() => {\n isMenuHovered.current = true;\n }, []);\n\n const onMouseLeaveRowMenu = useCallback(() => {\n isMenuHovered.current = false;\n if (isMenuOpen) return;\n\n if (!hoveredRowRef?.current) {\n setHoveredRowRef(null);\n }\n }, [isMenuOpen, hoveredRowRef, setHoveredRowRef]);\n\n const setTableMenuShown = useCallback(() => {\n setIsMenuOpen(true);\n }, [setIsMenuOpen]);\n\n const setTableMenuHidden = useCallback(() => {\n setIsMenuOpen(false);\n }, [setIsMenuOpen]);\n\n const contextValue = useMemo<ITableRowMenuContext>(\n () => ({\n hoveredRowId: hoveredRowRef?.current?.id,\n resetHoveredRow,\n menuButtonPosition,\n onMouseOverRow,\n onMouseLeaveRow,\n onMouseOverRowMenu,\n onMouseLeaveRowMenu,\n setTableMenuShown,\n setTableMenuHidden\n }),\n [\n hoveredRowRef,\n resetHoveredRow,\n menuButtonPosition,\n onMouseLeaveRow,\n onMouseLeaveRowMenu,\n onMouseOverRow,\n onMouseOverRowMenu,\n setTableMenuShown,\n setTableMenuHidden\n ]\n );\n\n return <TableRowMenuContext.Provider value={contextValue}>{children}</TableRowMenuContext.Provider>;\n};\n\nexport const useTableRowMenu = () => {\n const context = useContext(TableRowMenuContext);\n if (!context) {\n throw new Error(\"useTableRowMenuContext must be used within a TableRowMenuProvider\");\n }\n return context;\n};\n"],"names":["TableRowMenuContext","createContext","undefined","TableRowMenuProvider","_ref","value","children","tableRootRef","hoveredRowRef","isMenuOpen","resetHoveredRow","setHoveredRowRef","setIsMenuOpen","_useState","useState","_useState2","_slicedToArray","menuButtonPosition","setMenuButtonPosition","isMenuHovered","useRef","onMouseOverRow","useCallback","rowRef","tableRootTop","current","getBoundingClientRect","top","rowTop","onMouseLeaveRow","onMouseOverRowMenu","onMouseLeaveRowMenu","setTableMenuShown","setTableMenuHidden","contextValue","useMemo","hoveredRowId","_a","id","React","createElement","Provider","useTableRowMenu","context","useContext","Error"],"mappings":"sMAMA,IAAMA,EAAsBC,OAAgDC,GAE/DC,EAAuB,SAAHC,GAAsD,IAAhDC,EAAKD,EAALC,MAAOC,EAAQF,EAARE,SACpCC,EAA8FF,EAA9FE,aAAcC,EAAgFH,EAAhFG,cAAeC,EAAiEJ,EAAjEI,WAAYC,EAAqDL,EAArDK,gBAAiBC,EAAoCN,EAApCM,iBAAkBC,EAAkBP,EAAlBO,cACpFC,EAAoDC,EAAS,GAAEC,EAAAC,EAAAH,EAAA,GAAxDI,EAAkBF,EAAA,GAAEG,EAAqBH,EAAA,GAC1CI,EAAgBC,GAAO,GAEvBC,EAAiBC,GACrB,SAACC,GACC,IAAId,EAAJ,CAEAE,EAAiBY,GACjB,IAAMC,EAAejB,EAAakB,QAAQC,wBAAwBC,IAC5DC,EAASL,EAAOE,QAAQC,wBAAwBC,IACtDT,EAAsBU,EAASJ,EALf,CAMjB,GACD,CAACf,EAAYE,EAAkBJ,IAG3BsB,EAAkBP,GAAY,WAC9Bb,GAAcU,EAAcM,SAChCd,EAAiB,KACnB,GAAG,CAACF,EAAYE,IAEVmB,EAAqBR,GAAY,WACrCH,EAAcM,SAAU,CACzB,GAAE,IAEGM,EAAsBT,GAAY,WACtCH,EAAcM,SAAU,EACpBhB,IAECD,aAAA,EAAAA,EAAeiB,UAClBd,EAAiB,KAEpB,GAAE,CAACF,EAAYD,EAAeG,IAEzBqB,EAAoBV,GAAY,WACpCV,GAAc,EAChB,GAAG,CAACA,IAEEqB,EAAqBX,GAAY,WACrCV,GAAc,EAChB,GAAG,CAACA,IAEEsB,EAAeC,GACnB,iBAAM,MAAC,CACLC,aAAoC,QAAtBC,EAAA7B,eAAAA,EAAeiB,eAAO,IAAAY,OAAA,EAAAA,EAAEC,GACtC5B,gBAAAA,EACAO,mBAAAA,EACAI,eAAAA,EACAQ,gBAAAA,EACAC,mBAAAA,EACAC,oBAAAA,EACAC,kBAAAA,EACAC,mBAAAA,EACA,GACF,CACEzB,EACAE,EACAO,EACAY,EACAE,EACAV,EACAS,EACAE,EACAC,IAIJ,OAAOM,EAAAC,cAACxC,EAAoByC,SAAQ,CAACpC,MAAO6B,GAAe5B,EAC7D,EAEaoC,EAAkB,WAC7B,IAAMC,EAAUC,EAAW5C,GAC3B,IAAK2C,EACH,MAAUE,MAAM,qEAElB,OAAOF,CACT"}
@@ -1,2 +0,0 @@
1
- import{slicedToArray as e}from"../../../_virtual/_rollupPluginBabelHelpers.js";import{useState as t,useMemo as s,useCallback as o}from"react";import{useSetDefaultItemOnFocusEvent as i,useSupportArrowsKeyboardNavigation as n,useSupportPressItemKeyboardNavigation as u,useKeepFocusOnItemWhenListChanged as l,useCleanVisualFocusOnBlur as c}from"./useActiveDescendantListFocusHooks.js";var a;function r(r){var m=r.focusedElementRef,d=r.itemsIds,I=r.isItemSelectable,f=r.onItemClick,v=r.defaultVisualFocusFirstIndex,F=r.focusedElementRole,p=void 0===F?a.GROUP:F,x=r.isHorizontalList,b=void 0!==x&&x,g=r.isIgnoreSpaceAsItemSelection,O=void 0!==g&&g,E=r.useDocumentEventListeners,S=void 0!==E&&E,C=r.ignoreDocumentFallback,P=void 0!==C&&C,R=void 0!==v&&v?0:-1,V=d.length,A=t(-1),B=e(A,2),k=B[0],y=B[1],D=d[k],L=s((function(){return S?P?{ignoreDocumentFallback:P}:void 0:{ref:m,preventDefault:!0,stopPropagation:!0}}),[S,m,P]),T=i({focusedElementRef:m,isItemSelectable:I,visualFocusItemIndex:k,setVisualFocusItemIndex:y,itemsCount:V,defaultVisualFocusItemIndex:R}).triggeredByKeyboard,H=o((function(e,t){T.current=t;var s=d.indexOf(e);s>-1&&s!==k&&y(s)}),[d,T,k]);return n({itemsCount:V,focusedElementRef:m,visualFocusItemIndex:k,setVisualFocusItemIndex:y,triggeredByKeyboard:T,isHorizontalList:b,isItemSelectable:I,listenerOptions:L}),u({visualFocusItemIndex:k,itemsCount:V,focusedElementRef:m,setVisualFocusItemIndex:y,onItemClick:f,isItemSelectable:I,listenerOptions:L,isIgnoreSpaceAsItemSelection:O}),l({visualFocusItemIndex:k,itemsIds:d,isItemSelectable:I,setVisualFocusItemIndex:y}),c({focusedElementRef:m,visualFocusItemIndex:k,setVisualFocusItemIndex:y}),{visualFocusItemIndex:T.current?k:void 0,visualFocusItemId:T.current?D:void 0,focusedElementProps:{"aria-activedescendant":T.current?D:void 0,role:p},setVisualFocusItemId:H}}!function(e){e.APPLICATION="application",e.COMBOBOX="combobox",e.COMPOSITE="composite",e.GROUP="group",e.TEXTBOX="textbox",e.MENU="menu"}(a||(a={})),r.roles=a;export{r as default};
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/hooks/useActiveDescendantListFocus/index.ts"],"sourcesContent":["import { type MutableRefObject } from \"react\";\nimport type React from \"react\";\nimport { useMemo, useState, useCallback } from \"react\";\nimport {\n useSupportArrowsKeyboardNavigation,\n useSupportPressItemKeyboardNavigation,\n useSetDefaultItemOnFocusEvent,\n useKeepFocusOnItemWhenListChanged,\n useCleanVisualFocusOnBlur\n} from \"./useActiveDescendantListFocusHooks\";\n\nenum Role {\n APPLICATION = \"application\",\n COMBOBOX = \"combobox\",\n COMPOSITE = \"composite\",\n GROUP = \"group\",\n TEXTBOX = \"textbox\",\n MENU = \"menu\"\n}\n\nfunction useActiveDescendantListFocus({\n focusedElementRef, // the reference for the component that listens to keyboard\n itemsIds,\n isItemSelectable,\n onItemClick,\n defaultVisualFocusFirstIndex = false,\n focusedElementRole = Role.GROUP,\n isHorizontalList = false,\n isIgnoreSpaceAsItemSelection = false,\n useDocumentEventListeners = false,\n ignoreDocumentFallback = false\n}: {\n focusedElementRef: MutableRefObject<HTMLElement>;\n itemsIds: string[];\n isItemSelectable: (index: number) => boolean;\n onItemClick: (event: React.KeyboardEvent | React.MouseEvent, index: number) => void;\n defaultVisualFocusFirstIndex?: boolean;\n focusedElementRole?: Role;\n isHorizontalList?: boolean;\n isIgnoreSpaceAsItemSelection?: boolean;\n useDocumentEventListeners?: boolean;\n ignoreDocumentFallback?: boolean;\n}) {\n const defaultVisualFocusItemIndex = defaultVisualFocusFirstIndex ? 0 : -1;\n const itemsCount = itemsIds.length;\n const [visualFocusItemIndex, setVisualFocusItemIndex] = useState<number>(-1);\n const visualFocusItemId = itemsIds[visualFocusItemIndex];\n\n const listenerOptions = useMemo(() => {\n if (useDocumentEventListeners) {\n return ignoreDocumentFallback ? { ignoreDocumentFallback } : undefined;\n }\n\n return {\n ref: focusedElementRef,\n preventDefault: true,\n stopPropagation: true\n };\n }, [useDocumentEventListeners, focusedElementRef, ignoreDocumentFallback]);\n\n const { triggeredByKeyboard } = useSetDefaultItemOnFocusEvent({\n focusedElementRef,\n isItemSelectable,\n visualFocusItemIndex,\n setVisualFocusItemIndex,\n itemsCount,\n defaultVisualFocusItemIndex\n });\n\n const setVisualFocusItemId = useCallback(\n (visualFocusItemId: string, isTriggeredByKeyboard: boolean) => {\n triggeredByKeyboard.current = isTriggeredByKeyboard;\n const itemIndex = itemsIds.indexOf(visualFocusItemId);\n if (itemIndex > -1 && itemIndex !== visualFocusItemIndex) {\n setVisualFocusItemIndex(itemIndex);\n }\n },\n [itemsIds, triggeredByKeyboard, visualFocusItemIndex]\n );\n\n useSupportArrowsKeyboardNavigation({\n itemsCount,\n focusedElementRef,\n visualFocusItemIndex,\n setVisualFocusItemIndex,\n triggeredByKeyboard,\n isHorizontalList,\n isItemSelectable,\n listenerOptions\n });\n\n useSupportPressItemKeyboardNavigation({\n visualFocusItemIndex,\n itemsCount,\n focusedElementRef,\n setVisualFocusItemIndex,\n onItemClick,\n isItemSelectable,\n listenerOptions,\n isIgnoreSpaceAsItemSelection\n });\n\n useKeepFocusOnItemWhenListChanged({\n visualFocusItemIndex,\n itemsIds,\n isItemSelectable,\n setVisualFocusItemIndex\n });\n\n useCleanVisualFocusOnBlur({ focusedElementRef, visualFocusItemIndex, setVisualFocusItemIndex });\n\n return {\n visualFocusItemIndex: triggeredByKeyboard.current ? visualFocusItemIndex : undefined,\n visualFocusItemId: triggeredByKeyboard.current ? visualFocusItemId : undefined,\n focusedElementProps: {\n \"aria-activedescendant\": triggeredByKeyboard.current ? visualFocusItemId : undefined,\n role: focusedElementRole\n },\n setVisualFocusItemId\n };\n}\n\nuseActiveDescendantListFocus.roles = Role;\n\nexport default useActiveDescendantListFocus;\n"],"names":["Role","useActiveDescendantListFocus","_ref","focusedElementRef","itemsIds","isItemSelectable","onItemClick","_ref$defaultVisualFoc","defaultVisualFocusFirstIndex","_ref$focusedElementRo","focusedElementRole","GROUP","_ref$isHorizontalList","isHorizontalList","_ref$isIgnoreSpaceAsI","isIgnoreSpaceAsItemSelection","_ref$useDocumentEvent","useDocumentEventListeners","_ref$ignoreDocumentFa","ignoreDocumentFallback","defaultVisualFocusItemIndex","itemsCount","length","_useState","useState","_useState2","_slicedToArray","visualFocusItemIndex","setVisualFocusItemIndex","visualFocusItemId","listenerOptions","useMemo","undefined","ref","preventDefault","stopPropagation","triggeredByKeyboard","useSetDefaultItemOnFocusEvent","setVisualFocusItemId","useCallback","isTriggeredByKeyboard","current","itemIndex","indexOf","useSupportArrowsKeyboardNavigation","useSupportPressItemKeyboardNavigation","useKeepFocusOnItemWhenListChanged","useCleanVisualFocusOnBlur","focusedElementProps","role","roles"],"mappings":"8XAWA,IAAKA,EASL,SAASC,EAA4BC,GAsBpC,IArBCC,EAAiBD,EAAjBC,kBACAC,EAAQF,EAARE,SACAC,EAAgBH,EAAhBG,iBACAC,EAAWJ,EAAXI,YAAWC,EAAAL,EACXM,6BAAoCC,EAAAP,EACpCQ,mBAAAA,OAAkB,IAAAD,EAAGT,EAAKW,MAAKF,EAAAG,EAAAV,EAC/BW,iBAAAA,OAAmB,IAAHD,GAAQA,EAAAE,EAAAZ,EACxBa,6BAAAA,OAA+B,IAAHD,GAAQA,EAAAE,EAAAd,EACpCe,0BAAAA,OAA4B,IAAHD,GAAQA,EAAAE,EAAAhB,EACjCiB,uBAAAA,OAAyB,IAAHD,GAAQA,EAaxBE,OAlByB,IAAHb,GAAQA,EAkB+B,GAAK,EAClEc,EAAajB,EAASkB,OAC5BC,EAAwDC,GAAkB,GAAEC,EAAAC,EAAAH,EAAA,GAArEI,EAAoBF,EAAA,GAAEG,EAAuBH,EAAA,GAC9CI,EAAoBzB,EAASuB,GAE7BG,EAAkBC,GAAQ,WAC9B,OAAId,EACKE,EAAyB,CAAEA,uBAAAA,QAA2Ba,EAGxD,CACLC,IAAK9B,EACL+B,gBAAgB,EAChBC,iBAAiB,EAEpB,GAAE,CAAClB,EAA2Bd,EAAmBgB,IAE1CiB,EAAwBC,EAA8B,CAC5DlC,kBAAAA,EACAE,iBAAAA,EACAsB,qBAAAA,EACAC,wBAAAA,EACAP,WAAAA,EACAD,4BAAAA,IANMgB,oBASFE,EAAuBC,GAC3B,SAACV,EAA2BW,GAC1BJ,EAAoBK,QAAUD,EAC9B,IAAME,EAAYtC,EAASuC,QAAQd,GAC/Ba,GAAa,GAAKA,IAAcf,GAClCC,EAAwBc,EAE3B,GACD,CAACtC,EAAUgC,EAAqBT,IAkClC,OA/BAiB,EAAmC,CACjCvB,WAAAA,EACAlB,kBAAAA,EACAwB,qBAAAA,EACAC,wBAAAA,EACAQ,oBAAAA,EACAvB,iBAAAA,EACAR,iBAAAA,EACAyB,gBAAAA,IAGFe,EAAsC,CACpClB,qBAAAA,EACAN,WAAAA,EACAlB,kBAAAA,EACAyB,wBAAAA,EACAtB,YAAAA,EACAD,iBAAAA,EACAyB,gBAAAA,EACAf,6BAAAA,IAGF+B,EAAkC,CAChCnB,qBAAAA,EACAvB,SAAAA,EACAC,iBAAAA,EACAuB,wBAAAA,IAGFmB,EAA0B,CAAE5C,kBAAAA,EAAmBwB,qBAAAA,EAAsBC,wBAAAA,IAE9D,CACLD,qBAAsBS,EAAoBK,QAAUd,OAAuBK,EAC3EH,kBAAmBO,EAAoBK,QAAUZ,OAAoBG,EACrEgB,oBAAqB,CACnB,wBAAyBZ,EAAoBK,QAAUZ,OAAoBG,EAC3EiB,KAAMvC,GAER4B,qBAAAA,EAEJ,EA7GA,SAAKtC,GACHA,EAAA,YAAA,cACAA,EAAA,SAAA,WACAA,EAAA,UAAA,YACAA,EAAA,MAAA,QACAA,EAAA,QAAA,UACAA,EAAA,KAAA,MACD,CAPD,CAAKA,IAAAA,EAOJ,CAAA,IAwGDC,EAA6BiD,MAAQlD"}
@@ -1,2 +0,0 @@
1
- function e(e){var t=e.isItemSelectable,r=e.visualFocusItemIndex,i=e.itemsCount;if(i-1>=r)for(var n=1;i>=n;n++){var u=(r+n)%i;if(t(u))return u}}function t(e){for(var t=e.isItemSelectable,r=e.visualFocusItemIndex,i=e.itemsCount,n=1;i-1>=n;n++){var u=r-n;if(0>u&&(u=i+u),t(u))return u}}export{e as getNextSelectableIndex,t as getPreviousSelectableIndex};
2
- //# sourceMappingURL=useActiveDescendantListFocusHelpers.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useActiveDescendantListFocusHelpers.js","sources":["../../../../src/hooks/useActiveDescendantListFocus/useActiveDescendantListFocusHelpers.ts"],"sourcesContent":["type ActiveDependentHelper = {\n isItemSelectable: (index: number) => boolean;\n visualFocusItemIndex: number;\n itemsCount: number;\n};\n\nexport function getNextSelectableIndex({ isItemSelectable, visualFocusItemIndex, itemsCount }: ActiveDependentHelper) {\n if (visualFocusItemIndex > itemsCount - 1) return;\n // Go over all the next items until found one which is selectable\n for (let offset = 1; offset <= itemsCount; offset++) {\n const nextIndex = (visualFocusItemIndex + offset) % itemsCount;\n if (isItemSelectable(nextIndex)) {\n return nextIndex;\n }\n }\n}\nexport function getPreviousSelectableIndex({\n isItemSelectable,\n visualFocusItemIndex,\n itemsCount\n}: ActiveDependentHelper) {\n for (let offset = 1; offset <= itemsCount - 1; offset++) {\n let prevIndex = visualFocusItemIndex - offset;\n if (prevIndex < 0) {\n prevIndex = itemsCount + prevIndex;\n }\n if (isItemSelectable(prevIndex)) {\n return prevIndex;\n }\n }\n}\n"],"names":["getNextSelectableIndex","_ref","isItemSelectable","visualFocusItemIndex","itemsCount","offset","nextIndex","getPreviousSelectableIndex","_ref2","prevIndex"],"mappings":"AAMM,SAAUA,EAAsBC,GAA8E,IAA3EC,EAAgBD,EAAhBC,iBAAkBC,EAAoBF,EAApBE,qBAAsBC,EAAUH,EAAVG,WAC/E,GAA2BA,EAAa,GAApCD,EAEJ,IAAK,IAAIE,EAAS,EAAaD,GAAVC,EAAsBA,IAAU,CACnD,IAAMC,GAAaH,EAAuBE,GAAUD,EACpD,GAAIF,EAAiBI,GACnB,OAAOA,CAEX,CACF,CACM,SAAUC,EAA0BC,GAKxC,IADsB,IAHtBN,EAAgBM,EAAhBN,iBACAC,EAAoBK,EAApBL,qBACAC,EAAUI,EAAVJ,WAESC,EAAS,EAAaD,EAAa,GAAvBC,EAA0BA,IAAU,CACvD,IAAII,EAAYN,EAAuBE,EAIvC,GAHgB,EAAZI,IACFA,EAAYL,EAAaK,GAEvBP,EAAiBO,GACnB,OAAOA,CAEX,CACF"}
@@ -1,2 +0,0 @@
1
- import{useCallback as e,useMemo as t,useEffect as n,useRef as s}from"react";import{getNextSelectableIndex as o,getPreviousSelectableIndex as i}from"./useActiveDescendantListFocusHelpers.js";import u from"../useListenFocusTriggers/index.js";import c from"../../../hooks/dist/usePrevious/index.js";import{useKeyEvent as r}from"../../../shared/dist/hooks/useKeyEvent.js";import{useEventListener as l}from"../../../shared/dist/hooks/useEventListener.js";var a;!function(e){e.UP="ArrowUp",e.DOWN="ArrowDown",e.RIGHT="ArrowRight",e.LEFT="ArrowLeft"}(a||(a={}));var m="Enter";function d(t){var n=t.itemsCount,s=t.focusedElementRef,u=t.visualFocusItemIndex,c=t.setVisualFocusItemIndex,l=t.isHorizontalList,m=t.isItemSelectable,d=t.listenerOptions,I=t.triggeredByKeyboard,f=l?a.RIGHT:a.DOWN,v=l?a.LEFT:a.UP,F=e((function(e){var t;document.activeElement===s.current&&(!I.current&&(I.current=!0,u>-1)||(e===f?t=o({isItemSelectable:m,visualFocusItemIndex:u,itemsCount:n}):e===v&&(t=i({isItemSelectable:m,visualFocusItemIndex:u,itemsCount:n})),t>-1&&t!==u&&c(t)))}),[s,I,f,v,u,c,m,n]),b=e((function(){F(v)}),[v,F]),x=e((function(){F(f)}),[f,F]);r(Object.assign({keys:[f],callback:x},d)),r(Object.assign({keys:[v],callback:b},d))}function I(n){var s=n.visualFocusItemIndex,o=n.focusedElementRef,i=n.itemsCount,u=n.setVisualFocusItemIndex,c=n.onItemClick,l=n.isItemSelectable,a=n.listenerOptions,d=void 0===a?void 0:a,I=n.isIgnoreSpaceAsItemSelection,f=void 0!==I&&I,v=t((function(){return f?[m]:[m," "]}),[f]),F=e((function(e,t){c&&(t>=0&&i>t)&&l(t)&&(s!==t&&u(t),c(e,t))}),[i,c,l,s,u]),b=e((function(e){o.current.contains(document.activeElement)&&F(e,s)}),[F,o,s]);r(Object.assign({keys:v,callback:b},d))}function f(t){var s=t.focusedElementRef,o=t.visualFocusItemIndex,i=t.setVisualFocusItemIndex,u=c(s),r=e((function(){-1!==o&&i(-1)}),[i,o]);n((function(){null===(null==s?void 0:s.current)&&null!==(null==u?void 0:u.current)&&r()}),[s.current,u,r]),l({eventName:"blur",ref:s,callback:r})}function v(t){var n=t.focusedElementRef,i=t.isItemSelectable,c=t.visualFocusItemIndex,r=t.setVisualFocusItemIndex,l=t.itemsCount,a=t.defaultVisualFocusItemIndex,m=void 0===a?-1:a,d=s(!1),I=e((function(){var e;(d.current=!0,c!==m)&&(e=i(m)?m:o({isItemSelectable:i,itemsCount:l,visualFocusItemIndex:m}),r(e))}),[m,i,l,r,d,c]),f=e((function(){d.current=!1}),[d]);return u({ref:n,onFocusByKeyboard:I,onFocusByMouse:f}),{triggeredByKeyboard:d}}function F(e){var t=e.visualFocusItemIndex,s=e.itemsIds,i=e.isItemSelectable,u=e.setVisualFocusItemIndex,r=c(s);n((function(){var e;void 0!==r&&r!==s&&void 0!==r&&-1!==t?e=s.indexOf(r[t]):e=t;if(e!==t)if(i(e))u(e);else{var n=o({isItemSelectable:i,visualFocusItemIndex:e,itemsCount:s.length});u(n)}}),[t,s,i,u,r])}export{f as useCleanVisualFocusOnBlur,F as useKeepFocusOnItemWhenListChanged,v as useSetDefaultItemOnFocusEvent,d as useSupportArrowsKeyboardNavigation,I as useSupportPressItemKeyboardNavigation};
2
- //# sourceMappingURL=useActiveDescendantListFocusHooks.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useActiveDescendantListFocusHooks.js","sources":["../../../../src/hooks/useActiveDescendantListFocus/useActiveDescendantListFocusHooks.ts"],"sourcesContent":["import { type MutableRefObject } from \"react\";\nimport type React from \"react\";\nimport { useCallback, useEffect, useMemo, useRef } from \"react\";\nimport useKeyEvent, { type UseKeyEventArgs } from \"../useKeyEvent\";\nimport useEventListener from \"../useEventListener\";\nimport { usePrevious } from \"@vibe/hooks\";\nimport { getNextSelectableIndex, getPreviousSelectableIndex } from \"./useActiveDescendantListFocusHelpers\";\nimport useListenFocusTriggers from \"../useListenFocusTriggers\";\n\nenum ArrowDirection {\n UP = \"ArrowUp\",\n DOWN = \"ArrowDown\",\n RIGHT = \"ArrowRight\",\n LEFT = \"ArrowLeft\"\n}\n\nconst ENTER_KEY = \"Enter\";\nconst SPACE_KEY = \" \";\n\nexport function useSupportArrowsKeyboardNavigation({\n itemsCount,\n focusedElementRef,\n visualFocusItemIndex,\n setVisualFocusItemIndex,\n isHorizontalList,\n isItemSelectable,\n listenerOptions,\n triggeredByKeyboard\n}: {\n itemsCount: number;\n focusedElementRef: MutableRefObject<HTMLElement>;\n visualFocusItemIndex: number;\n setVisualFocusItemIndex: (index: number) => void;\n isHorizontalList: boolean;\n isItemSelectable: (index: number) => boolean;\n triggeredByKeyboard: MutableRefObject<boolean>;\n listenerOptions: Omit<UseKeyEventArgs, \"keys\" | \"callback\">;\n}) {\n const nextArrow = isHorizontalList ? ArrowDirection.RIGHT : ArrowDirection.DOWN;\n const backArrow = isHorizontalList ? ArrowDirection.LEFT : ArrowDirection.UP;\n\n const onArrowKeyEvent = useCallback(\n (direction: ArrowDirection) => {\n // we desire to change the visual focus item only if the user pressed on the keyboard arrows keys while\n // the focusedElementRef is naturally focus\n if (document.activeElement !== focusedElementRef.current) {\n return;\n }\n\n // If the focusedElementRef is naturally focus but this is the first keyboard interaction of the user, we will mark future user interactions as trigger by keyboard (until the next mouse interaction)\n // that from now on the interactions are trigger by keyboard (until the next mouse interaction)\n if (!triggeredByKeyboard.current) {\n triggeredByKeyboard.current = true;\n\n // If the focusedElementRef is naturally focus but this is the first keyboard interaction of the user, we want only to display the item\n // which right now visually focus without changing it.\n if (visualFocusItemIndex > -1) {\n return;\n }\n }\n\n let newIndex;\n\n // We will change the visual focused item index according to the direction of the pressed arrow\n if (direction === nextArrow) {\n newIndex = getNextSelectableIndex({ isItemSelectable, visualFocusItemIndex, itemsCount });\n } else if (direction === backArrow) {\n newIndex = getPreviousSelectableIndex({ isItemSelectable, visualFocusItemIndex, itemsCount });\n }\n\n if (newIndex > -1 && newIndex !== visualFocusItemIndex) setVisualFocusItemIndex(newIndex);\n },\n [\n focusedElementRef,\n triggeredByKeyboard,\n nextArrow,\n backArrow,\n visualFocusItemIndex,\n setVisualFocusItemIndex,\n isItemSelectable,\n itemsCount\n ]\n );\n const onArrowBack = useCallback(() => {\n onArrowKeyEvent(backArrow);\n }, [backArrow, onArrowKeyEvent]);\n\n const onArrowNext = useCallback(() => {\n onArrowKeyEvent(nextArrow);\n }, [nextArrow, onArrowKeyEvent]);\n\n useKeyEvent({\n keys: [nextArrow],\n callback: onArrowNext,\n ...listenerOptions\n });\n\n useKeyEvent({\n keys: [backArrow],\n callback: onArrowBack,\n ...listenerOptions\n });\n}\n\nexport function useSupportPressItemKeyboardNavigation({\n visualFocusItemIndex,\n focusedElementRef,\n itemsCount,\n setVisualFocusItemIndex,\n onItemClick,\n isItemSelectable,\n listenerOptions = undefined,\n isIgnoreSpaceAsItemSelection = false\n}: {\n visualFocusItemIndex: number;\n focusedElementRef: MutableRefObject<HTMLElement>;\n itemsCount: number;\n setVisualFocusItemIndex: (index: number) => void;\n onItemClick: (event: React.MouseEvent | React.KeyboardEvent, index: number) => void;\n isItemSelectable: (index: number) => boolean;\n listenerOptions: Omit<UseKeyEventArgs, \"keys\" | \"callback\">;\n isIgnoreSpaceAsItemSelection: boolean;\n}) {\n const pressKeys = useMemo(\n () => (isIgnoreSpaceAsItemSelection ? [ENTER_KEY] : [ENTER_KEY, SPACE_KEY]),\n [isIgnoreSpaceAsItemSelection]\n );\n\n const baseOnClickCallback = useCallback(\n (event: React.KeyboardEvent, itemIndex: number) => {\n const hasValidIndex = itemIndex >= 0 && itemIndex < itemsCount;\n if (!onItemClick || !hasValidIndex || !isItemSelectable(itemIndex)) return;\n if (visualFocusItemIndex !== itemIndex) setVisualFocusItemIndex(itemIndex);\n onItemClick(event, itemIndex);\n },\n [itemsCount, onItemClick, isItemSelectable, visualFocusItemIndex, setVisualFocusItemIndex]\n );\n\n const keyboardOnSelectCallback = useCallback(\n (event: React.KeyboardEvent) => {\n // we desire to change the trigger the active item on click callback only if the user pressed on the keyboard arrows keys while\n // the focusedElementRef is naturally focus\n if (focusedElementRef.current.contains(document.activeElement)) {\n baseOnClickCallback(event, visualFocusItemIndex);\n }\n },\n [baseOnClickCallback, focusedElementRef, visualFocusItemIndex]\n );\n\n useKeyEvent({\n keys: pressKeys,\n callback: keyboardOnSelectCallback,\n ...listenerOptions\n });\n}\n\nexport function useCleanVisualFocusOnBlur({\n focusedElementRef,\n visualFocusItemIndex,\n setVisualFocusItemIndex\n}: {\n focusedElementRef: MutableRefObject<HTMLElement>;\n visualFocusItemIndex: number;\n setVisualFocusItemIndex: (index: number) => void;\n}) {\n const previousFocusedElementRef = usePrevious(focusedElementRef);\n\n const onBlurCallback = useCallback(() => {\n if (visualFocusItemIndex !== -1) {\n setVisualFocusItemIndex(-1);\n }\n }, [setVisualFocusItemIndex, visualFocusItemIndex]);\n\n // if element unmount act like element got blur event\n useEffect(() => {\n // if element unmount\n if (focusedElementRef?.current === null && previousFocusedElementRef?.current !== null) {\n onBlurCallback();\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [focusedElementRef.current, previousFocusedElementRef, onBlurCallback]);\n\n useEventListener({\n eventName: \"blur\",\n ref: focusedElementRef,\n callback: onBlurCallback\n });\n}\n\nexport function useSetDefaultItemOnFocusEvent({\n focusedElementRef,\n isItemSelectable,\n visualFocusItemIndex,\n setVisualFocusItemIndex,\n itemsCount,\n defaultVisualFocusItemIndex = -1\n}: {\n focusedElementRef: MutableRefObject<HTMLElement>;\n isItemSelectable: (index: number) => boolean;\n visualFocusItemIndex: number;\n setVisualFocusItemIndex: (index: number) => void;\n itemsCount: number;\n defaultVisualFocusItemIndex: number;\n}) {\n const triggeredByKeyboard = useRef(false);\n\n const onFocusByKeyboard = useCallback(() => {\n triggeredByKeyboard.current = true;\n if (visualFocusItemIndex !== defaultVisualFocusItemIndex) {\n let newVisualFocusIndex;\n if (isItemSelectable(defaultVisualFocusItemIndex)) {\n newVisualFocusIndex = defaultVisualFocusItemIndex;\n } else {\n newVisualFocusIndex = getNextSelectableIndex({\n isItemSelectable,\n itemsCount,\n visualFocusItemIndex: defaultVisualFocusItemIndex\n });\n }\n setVisualFocusItemIndex(newVisualFocusIndex);\n }\n }, [\n defaultVisualFocusItemIndex,\n isItemSelectable,\n itemsCount,\n setVisualFocusItemIndex,\n triggeredByKeyboard,\n visualFocusItemIndex\n ]);\n const onFocusByMouse = useCallback(() => {\n triggeredByKeyboard.current = false;\n }, [triggeredByKeyboard]);\n useListenFocusTriggers({ ref: focusedElementRef, onFocusByKeyboard, onFocusByMouse });\n\n return { triggeredByKeyboard };\n}\n\nexport function useKeepFocusOnItemWhenListChanged({\n visualFocusItemIndex,\n itemsIds,\n isItemSelectable,\n setVisualFocusItemIndex\n}: {\n visualFocusItemIndex: number;\n itemsIds: string[];\n isItemSelectable: (index: number) => boolean;\n setVisualFocusItemIndex: (index: number) => void;\n}) {\n const prevItemIds = usePrevious(itemsIds);\n\n // When item list changed, keep the focus on the same item\n useEffect(() => {\n // When the list is changing the index of the focused item is point to a different item then before and\n // this is why we want to search for the new index of the item and change the index to point to it.\n let overrideIndexAfterListChanged;\n const isListChanged = prevItemIds !== undefined && prevItemIds !== itemsIds;\n if (isListChanged && prevItemIds !== undefined && visualFocusItemIndex !== -1) {\n const focusedItemId = prevItemIds[visualFocusItemIndex];\n overrideIndexAfterListChanged = itemsIds.indexOf(focusedItemId);\n } else {\n overrideIndexAfterListChanged = visualFocusItemIndex;\n }\n\n if (overrideIndexAfterListChanged !== visualFocusItemIndex) {\n if (isItemSelectable(overrideIndexAfterListChanged)) {\n setVisualFocusItemIndex(overrideIndexAfterListChanged);\n } else {\n const closestSelectableIndex = getNextSelectableIndex({\n isItemSelectable,\n visualFocusItemIndex: overrideIndexAfterListChanged,\n itemsCount: itemsIds.length\n });\n setVisualFocusItemIndex(closestSelectableIndex);\n }\n }\n }, [visualFocusItemIndex, itemsIds, isItemSelectable, setVisualFocusItemIndex, prevItemIds]);\n}\n"],"names":["ArrowDirection","ENTER_KEY","useSupportArrowsKeyboardNavigation","_ref","itemsCount","focusedElementRef","visualFocusItemIndex","setVisualFocusItemIndex","isHorizontalList","isItemSelectable","listenerOptions","triggeredByKeyboard","nextArrow","RIGHT","DOWN","backArrow","LEFT","UP","onArrowKeyEvent","useCallback","direction","newIndex","document","activeElement","current","getNextSelectableIndex","getPreviousSelectableIndex","onArrowBack","onArrowNext","useKeyEvent","Object","assign","keys","callback","useSupportPressItemKeyboardNavigation","_ref2","onItemClick","_ref2$listenerOptions","undefined","_ref2$isIgnoreSpaceAs","isIgnoreSpaceAsItemSelection","pressKeys","useMemo","baseOnClickCallback","event","itemIndex","keyboardOnSelectCallback","contains","useCleanVisualFocusOnBlur","_ref3","previousFocusedElementRef","usePrevious","onBlurCallback","useEffect","useEventListener","eventName","ref","useSetDefaultItemOnFocusEvent","_ref4","_ref4$defaultVisualFo","defaultVisualFocusItemIndex","useRef","onFocusByKeyboard","newVisualFocusIndex","onFocusByMouse","useListenFocusTriggers","useKeepFocusOnItemWhenListChanged","_ref5","itemsIds","prevItemIds","overrideIndexAfterListChanged","indexOf","closestSelectableIndex","length"],"mappings":"kcASA,IAAKA,GAAL,SAAKA,GACHA,EAAA,GAAA,UACAA,EAAA,KAAA,YACAA,EAAA,MAAA,aACAA,EAAA,KAAA,WACD,CALD,CAAKA,IAAAA,EAKJ,CAAA,IAED,IAAMC,EAAY,iBAGFC,EAAkCC,GAkBjD,IAjBCC,EAAUD,EAAVC,WACAC,EAAiBF,EAAjBE,kBACAC,EAAoBH,EAApBG,qBACAC,EAAuBJ,EAAvBI,wBACAC,EAAgBL,EAAhBK,iBACAC,EAAgBN,EAAhBM,iBACAC,EAAeP,EAAfO,gBACAC,EAAmBR,EAAnBQ,oBAWMC,EAAYJ,EAAmBR,EAAea,MAAQb,EAAec,KACrEC,EAAYP,EAAmBR,EAAegB,KAAOhB,EAAeiB,GAEpEC,EAAkBC,GACtB,SAACC,GAmBC,IAAIC,EAhBAC,SAASC,gBAAkBlB,EAAkBmB,WAM5Cb,EAAoBa,UACvBb,EAAoBa,SAAU,EAI1BlB,GAAwB,KAQ1Bc,IAAcR,EAChBS,EAAWI,EAAuB,CAAEhB,iBAAAA,EAAkBH,qBAAAA,EAAsBF,WAAAA,IACnEgB,IAAcL,IACvBM,EAAWK,EAA2B,CAAEjB,iBAAAA,EAAkBH,qBAAAA,EAAsBF,WAAAA,KAG9EiB,GAAY,GAAKA,IAAaf,GAAsBC,EAAwBc,IAClF,GACA,CACEhB,EACAM,EACAC,EACAG,EACAT,EACAC,EACAE,EACAL,IAGEuB,EAAcR,GAAY,WAC9BD,EAAgBH,EAClB,GAAG,CAACA,EAAWG,IAETU,EAAcT,GAAY,WAC9BD,EAAgBN,EAClB,GAAG,CAACA,EAAWM,IAEfW,EACEC,OAAAC,OAAA,CAAAC,KAAM,CAACpB,GACPqB,SAAUL,GACPlB,IAGLmB,EACEC,OAAAC,OAAA,CAAAC,KAAM,CAACjB,GACPkB,SAAUN,GACPjB,GAEP,CAEM,SAAUwB,EAAqCC,GAkBpD,IAjBC7B,EAAoB6B,EAApB7B,qBACAD,EAAiB8B,EAAjB9B,kBACAD,EAAU+B,EAAV/B,WACAG,EAAuB4B,EAAvB5B,wBACA6B,EAAWD,EAAXC,YACA3B,EAAgB0B,EAAhB1B,iBAAgB4B,EAAAF,EAChBzB,gBAAAA,OAAkB4B,IAAHD,OAAGC,EAASD,EAAAE,EAAAJ,EAC3BK,6BAAAA,OAA+B,IAAHD,GAAQA,EAW9BE,EAAYC,GAChB,WAAA,OAAOF,EAA+B,CAACvC,GAAa,CAACA,EA3GvC,IA2G4D,GAC1E,CAACuC,IAGGG,EAAsBxB,GAC1B,SAACyB,EAA4BC,GAEtBT,IADiBS,GAAa,GAAiBzC,EAAZyC,IACDpC,EAAiBoC,KACpDvC,IAAyBuC,GAAWtC,EAAwBsC,GAChET,EAAYQ,EAAOC,GACrB,GACA,CAACzC,EAAYgC,EAAa3B,EAAkBH,EAAsBC,IAG9DuC,EAA2B3B,GAC/B,SAACyB,GAGKvC,EAAkBmB,QAAQuB,SAASzB,SAASC,gBAC9CoB,EAAoBC,EAAOtC,EAE9B,GACD,CAACqC,EAAqBtC,EAAmBC,IAG3CuB,EAAWC,OAAAC,OAAA,CACTC,KAAMS,EACNR,SAAUa,GACPpC,GAEP,CAEM,SAAUsC,EAAyBC,GAQxC,IAPC5C,EAAiB4C,EAAjB5C,kBACAC,EAAoB2C,EAApB3C,qBACAC,EAAuB0C,EAAvB1C,wBAMM2C,EAA4BC,EAAY9C,GAExC+C,EAAiBjC,GAAY,YACH,IAA1Bb,GACFC,GAAyB,EAE7B,GAAG,CAACA,EAAyBD,IAG7B+C,GAAU,WAE2B,QAA/BhD,eAAAA,EAAmBmB,UAA2D,QAAvC0B,aAAA,EAAAA,EAA2B1B,UACpE4B,GAGH,GAAE,CAAC/C,EAAkBmB,QAAS0B,EAA2BE,IAE1DE,EAAiB,CACfC,UAAW,OACXC,IAAKnD,EACL4B,SAAUmB,GAEd,UAEgBK,EAA6BC,GAc5C,IAbCrD,EAAiBqD,EAAjBrD,kBACAI,EAAgBiD,EAAhBjD,iBACAH,EAAoBoD,EAApBpD,qBACAC,EAAuBmD,EAAvBnD,wBACAH,EAAUsD,EAAVtD,WAAUuD,EAAAD,EACVE,4BAAAA,OAA2B,IAAAD,GAAI,EAACA,EAS1BhD,EAAsBkD,GAAO,GAE7BC,EAAoB3C,GAAY,WAGlC,IAAI4C,GAFNpD,EAAoBa,SAAU,EAC1BlB,IAAyBsD,KAGzBG,EADEtD,EAAiBmD,GACGA,EAEAnC,EAAuB,CAC3ChB,iBAAAA,EACAL,WAAAA,EACAE,qBAAsBsD,IAG1BrD,EAAwBwD,GAE5B,GAAG,CACDH,EACAnD,EACAL,EACAG,EACAI,EACAL,IAEI0D,EAAiB7C,GAAY,WACjCR,EAAoBa,SAAU,CAChC,GAAG,CAACb,IAGJ,OAFAsD,EAAuB,CAAET,IAAKnD,EAAmByD,kBAAAA,EAAmBE,eAAAA,IAE7D,CAAErD,oBAAAA,EACX,CAEM,SAAUuD,EAAiCC,GAUhD,IATC7D,EAAoB6D,EAApB7D,qBACA8D,EAAQD,EAARC,SACA3D,EAAgB0D,EAAhB1D,iBACAF,EAAuB4D,EAAvB5D,wBAOM8D,EAAclB,EAAYiB,GAGhCf,GAAU,WAGR,IAAIiB,OACkChC,IAAhB+B,GAA6BA,IAAgBD,QAC9B9B,IAAhB+B,IAAuD,IAA1B/D,EAEhDgE,EAAgCF,EAASG,QADnBF,EAAY/D,IAGlCgE,EAAgChE,EAGlC,GAAIgE,IAAkChE,EACpC,GAAIG,EAAiB6D,GACnB/D,EAAwB+D,OACnB,CACL,IAAME,EAAyB/C,EAAuB,CACpDhB,iBAAAA,EACAH,qBAAsBgE,EACtBlE,WAAYgE,EAASK,SAEvBlE,EAAwBiE,EAC1B,CAEJ,GAAG,CAAClE,EAAsB8D,EAAU3D,EAAkBF,EAAyB8D,GACjF"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/hooks/useListenFocusTriggers/index.ts"],"sourcesContent":["import useEventListener from \"../useEventListener\";\nimport { type RefObject, useCallback, useRef } from \"react\";\n\nexport default function useListenFocusTriggers({\n ref,\n onFocusByKeyboard,\n onFocusByMouse\n}: {\n ref: RefObject<HTMLElement>;\n onFocusByKeyboard?: (event: FocusEvent) => void;\n onFocusByMouse?: (event: FocusEvent) => void;\n}) {\n const isElementMouseDown = useRef(false);\n\n const onMouseDown = useCallback(() => {\n isElementMouseDown.current = true;\n }, [isElementMouseDown]);\n\n const onFocus = useCallback(\n (e: FocusEvent) => {\n // if focus triggered by mouse down, call onFocusByMouse\n if (isElementMouseDown.current) {\n onFocusByMouse?.(e);\n } else {\n onFocusByKeyboard?.(e);\n }\n },\n [onFocusByKeyboard, onFocusByMouse]\n );\n const onMouseUp = useCallback(() => {\n isElementMouseDown.current = false;\n }, [isElementMouseDown]);\n\n useEventListener({\n eventName: \"mousedown\",\n ref,\n callback: onMouseDown\n });\n\n useEventListener({\n eventName: \"focus\",\n ref,\n callback: onFocus\n });\n\n useEventListener({\n eventName: \"mouseup\",\n ref,\n callback: onMouseUp\n });\n}\n"],"names":["useListenFocusTriggers","_ref","ref","onFocusByKeyboard","onFocusByMouse","isElementMouseDown","useRef","onMouseDown","useCallback","current","onFocus","e","onMouseUp","useEventListener","eventName","callback"],"mappings":"kIAGc,SAAUA,EAAsBC,GAQ7C,IAPCC,EAAGD,EAAHC,IACAC,EAAiBF,EAAjBE,kBACAC,EAAcH,EAAdG,eAMMC,EAAqBC,GAAO,GAE5BC,EAAcC,GAAY,WAC9BH,EAAmBI,SAAU,CAC/B,GAAG,CAACJ,IAEEK,EAAUF,GACd,SAACG,GAEKN,EAAmBI,QACrBL,SAAAA,EAAiBO,GAEjBR,SAAAA,EAAoBQ,EAExB,GACA,CAACR,EAAmBC,IAEhBQ,EAAYJ,GAAY,WAC5BH,EAAmBI,SAAU,CAC/B,GAAG,CAACJ,IAEJQ,EAAiB,CACfC,UAAW,YACXZ,IAAAA,EACAa,SAAUR,IAGZM,EAAiB,CACfC,UAAW,QACXZ,IAAAA,EACAa,SAAUL,IAGZG,EAAiB,CACfC,UAAW,UACXZ,IAAAA,EACAa,SAAUH,GAEd"}