@pathscale/ui 1.2.5 → 1.2.7

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 (385) hide show
  1. package/LICENSE +22 -22
  2. package/README.md +59 -59
  3. package/dist/components/_shared/index.js +2 -3
  4. package/dist/components/_shared/overlayPosition.js +5 -5
  5. package/dist/components/accordion/Accordion.css +158 -158
  6. package/dist/components/accordion/Accordion.js +44 -44
  7. package/dist/components/accordion/index.js +2 -9
  8. package/dist/components/alert/Alert.css +116 -116
  9. package/dist/components/alert/Alert.js +30 -30
  10. package/dist/components/alert/index.js +2 -8
  11. package/dist/components/auth-card/AuthCard.js +20 -20
  12. package/dist/components/auth-card/index.js +2 -3
  13. package/dist/components/auth-error-message/AuthErrorMessage.js +12 -12
  14. package/dist/components/auth-error-message/index.js +2 -3
  15. package/dist/components/auth-field-group/AuthFieldGroup.js +11 -11
  16. package/dist/components/auth-field-group/index.js +2 -3
  17. package/dist/components/auth-footer-links/AuthFooterLinks.js +20 -20
  18. package/dist/components/auth-footer-links/index.js +2 -3
  19. package/dist/components/auth-form/AuthForm.js +11 -11
  20. package/dist/components/auth-form/index.js +2 -3
  21. package/dist/components/auth-powered-by/AuthPoweredBy.js +15 -26
  22. package/dist/components/auth-powered-by/index.js +2 -3
  23. package/dist/components/auth-submit-button/AuthSubmitButton.js +10 -10
  24. package/dist/components/auth-submit-button/index.js +2 -3
  25. package/dist/components/auth-success-message/AuthSuccessMessage.js +9 -9
  26. package/dist/components/auth-success-message/index.js +2 -3
  27. package/dist/components/avatar/Avatar.css +124 -124
  28. package/dist/components/avatar/Avatar.js +27 -27
  29. package/dist/components/avatar/AvatarGroup.js +11 -11
  30. package/dist/components/avatar/index.js +2 -6
  31. package/dist/components/badge/Badge.css +164 -164
  32. package/dist/components/badge/Badge.js +19 -19
  33. package/dist/components/badge/index.js +6 -9
  34. package/dist/components/breadcrumbs/Breadcrumbs.css +63 -63
  35. package/dist/components/breadcrumbs/Breadcrumbs.js +25 -25
  36. package/dist/components/breadcrumbs/index.js +2 -5
  37. package/dist/components/button/Button.css +194 -194
  38. package/dist/components/button/Button.js +22 -22
  39. package/dist/components/button/index.js +2 -3
  40. package/dist/components/button-group/ButtonGroup.css +117 -117
  41. package/dist/components/button-group/ButtonGroup.js +14 -14
  42. package/dist/components/button-group/context.js +2 -2
  43. package/dist/components/button-group/index.js +2 -6
  44. package/dist/components/calendar/Calendar.css +258 -258
  45. package/dist/components/calendar/Calendar.js +85 -85
  46. package/dist/components/calendar/index.js +2 -3
  47. package/dist/components/card/Card.css +110 -110
  48. package/dist/components/card/Card.js +21 -21
  49. package/dist/components/card/index.js +2 -8
  50. package/dist/components/chatbubble/ChatBubble.css +164 -164
  51. package/dist/components/chatbubble/ChatBubble.js +19 -19
  52. package/dist/components/chatbubble/ChatBubbleAvatar.js +8 -8
  53. package/dist/components/chatbubble/ChatBubbleFooter.js +11 -11
  54. package/dist/components/chatbubble/ChatBubbleHeader.js +8 -8
  55. package/dist/components/chatbubble/ChatBubbleMessage.js +12 -12
  56. package/dist/components/chatbubble/ChatBubbleTime.js +11 -11
  57. package/dist/components/chatbubble/index.js +2 -3
  58. package/dist/components/checkbox/Checkbox.css +183 -183
  59. package/dist/components/checkbox/Checkbox.js +29 -29
  60. package/dist/components/checkbox/index.js +2 -3
  61. package/dist/components/checkbox-group/CheckboxGroup.css +10 -10
  62. package/dist/components/checkbox-group/CheckboxGroup.js +16 -16
  63. package/dist/components/checkbox-group/context.js +2 -2
  64. package/dist/components/checkbox-group/index.js +3 -4
  65. package/dist/components/chip/Chip.css +197 -197
  66. package/dist/components/chip/Chip.js +32 -32
  67. package/dist/components/chip/index.js +5 -7
  68. package/dist/components/close-button/CloseButton.css +81 -81
  69. package/dist/components/close-button/CloseButton.js +22 -22
  70. package/dist/components/close-button/index.js +2 -3
  71. package/dist/components/color-area/ColorArea.css +54 -54
  72. package/dist/components/color-area/ColorArea.js +13 -13
  73. package/dist/components/color-area/index.js +2 -2
  74. package/dist/components/color-field/ColorField.css +88 -88
  75. package/dist/components/color-field/ColorField.js +23 -23
  76. package/dist/components/color-field/index.js +2 -2
  77. package/dist/components/color-picker/ColorPicker.css +28 -28
  78. package/dist/components/color-picker/ColorPicker.js +44 -44
  79. package/dist/components/color-picker/index.js +2 -8
  80. package/dist/components/color-slider/ColorSlider.css +57 -57
  81. package/dist/components/color-slider/ColorSlider.js +21 -21
  82. package/dist/components/color-slider/index.js +2 -2
  83. package/dist/components/color-swatch/ColorSwatch.css +84 -84
  84. package/dist/components/color-swatch/ColorSwatch.js +14 -14
  85. package/dist/components/color-swatch/index.js +2 -2
  86. package/dist/components/color-swatch-picker/ColorSwatchPicker.css +12 -12
  87. package/dist/components/color-swatch-picker/ColorSwatchPicker.js +14 -14
  88. package/dist/components/color-swatch-picker/index.js +2 -5
  89. package/dist/components/color-wheel-flower/ColorWheelFlower.css +147 -147
  90. package/dist/components/color-wheel-flower/ColorWheelFlower.js +83 -83
  91. package/dist/components/color-wheel-flower/colorWheelFlowerContext.js +3 -3
  92. package/dist/components/color-wheel-flower/index.js +3 -6
  93. package/dist/components/combo-box/ComboBox.css +344 -344
  94. package/dist/components/combo-box/ComboBox.js +90 -90
  95. package/dist/components/combo-box/index.js +2 -10
  96. package/dist/components/date-field/DateField.css +215 -215
  97. package/dist/components/date-field/DateField.js +41 -41
  98. package/dist/components/date-field/index.js +2 -11
  99. package/dist/components/date-picker/DatePicker.css +143 -143
  100. package/dist/components/date-picker/DatePicker.js +40 -40
  101. package/dist/components/date-picker/index.js +2 -3
  102. package/dist/components/date-range-picker/DateRangePicker.css +149 -149
  103. package/dist/components/date-range-picker/DateRangePicker.js +55 -55
  104. package/dist/components/date-range-picker/index.js +2 -3
  105. package/dist/components/description/Description.css +10 -10
  106. package/dist/components/description/Description.js +9 -9
  107. package/dist/components/description/index.js +2 -5
  108. package/dist/components/disclosure/Disclosure.css +84 -84
  109. package/dist/components/disclosure/Disclosure.js +40 -40
  110. package/dist/components/disclosure/index.js +3 -9
  111. package/dist/components/disclosure-group/DisclosureGroup.css +9 -9
  112. package/dist/components/disclosure-group/DisclosureGroup.js +13 -13
  113. package/dist/components/disclosure-group/index.js +4 -6
  114. package/dist/components/disclosure-group/useDisclosureGroupNavigation.js +4 -4
  115. package/dist/components/drawer/Drawer.context.js +3 -3
  116. package/dist/components/drawer/Drawer.css +463 -463
  117. package/dist/components/drawer/Drawer.js +107 -107
  118. package/dist/components/drawer/index.js +2 -15
  119. package/dist/components/dropdown/Dropdown.css +211 -211
  120. package/dist/components/dropdown/Dropdown.js +66 -66
  121. package/dist/components/dropdown/index.js +2 -4
  122. package/dist/components/empty-state/EmptyState.css +39 -39
  123. package/dist/components/empty-state/EmptyState.js +25 -25
  124. package/dist/components/empty-state/index.js +2 -8
  125. package/dist/components/error-message/ErrorMessage.css +20 -20
  126. package/dist/components/error-message/ErrorMessage.js +12 -12
  127. package/dist/components/error-message/index.js +2 -5
  128. package/dist/components/field-error/FieldError.css +27 -27
  129. package/dist/components/field-error/FieldError.js +14 -14
  130. package/dist/components/field-error/index.js +2 -5
  131. package/dist/components/fieldset/Fieldset.css +30 -30
  132. package/dist/components/fieldset/Fieldset.js +21 -21
  133. package/dist/components/fieldset/index.js +2 -8
  134. package/dist/components/flex/Flex.css +5 -5
  135. package/dist/components/flex/Flex.js +14 -14
  136. package/dist/components/flex/index.js +2 -3
  137. package/dist/components/floating-dock/FloatingDock.css +208 -208
  138. package/dist/components/floating-dock/FloatingDock.js +76 -76
  139. package/dist/components/floating-dock/index.js +2 -3
  140. package/dist/components/footer/Footer.js +11 -11
  141. package/dist/components/footer/FooterTitle.js +9 -9
  142. package/dist/components/footer/footer.css +51 -51
  143. package/dist/components/footer/index.js +2 -3
  144. package/dist/components/form/FieldErrorMessage.js +8 -8
  145. package/dist/components/form/Form.css +5 -5
  146. package/dist/components/form/Form.js +21 -21
  147. package/dist/components/form/FormField.js +19 -19
  148. package/dist/components/form/FormSubmitButton.js +11 -11
  149. package/dist/components/form/index.js +5 -12
  150. package/dist/components/glass-panel/GlassPanel.css +359 -359
  151. package/dist/components/glass-panel/GlassPanel.js +29 -29
  152. package/dist/components/glass-panel/index.js +2 -3
  153. package/dist/components/glow-card/GlowCard.css +100 -100
  154. package/dist/components/glow-card/GlowCard.js +10 -10
  155. package/dist/components/glow-card/index.js +2 -3
  156. package/dist/components/grid/Grid.css +5 -5
  157. package/dist/components/grid/Grid.js +15 -15
  158. package/dist/components/grid/index.js +2 -3
  159. package/dist/components/header/Header.css +13 -13
  160. package/dist/components/header/Header.js +12 -12
  161. package/dist/components/header/index.js +2 -5
  162. package/dist/components/icon/Icon.css +10 -10
  163. package/dist/components/icon/Icon.js +8 -8
  164. package/dist/components/icon/index.js +2 -3
  165. package/dist/components/immersive-landing/ImmersiveLanding.css +565 -565
  166. package/dist/components/immersive-landing/ImmersiveLanding.js +44 -44
  167. package/dist/components/immersive-landing/ImmersiveLandingArrows.js +17 -17
  168. package/dist/components/immersive-landing/ImmersiveLandingContext.js +3 -3
  169. package/dist/components/immersive-landing/ImmersiveLandingNavigation.js +36 -36
  170. package/dist/components/immersive-landing/ImmersiveLandingPage.js +15 -15
  171. package/dist/components/immersive-landing/components/CookieConsent.js +71 -71
  172. package/dist/components/immersive-landing/components/FirefoxPWABanner.js +42 -42
  173. package/dist/components/immersive-landing/components/PWAInstallPrompt.js +40 -40
  174. package/dist/components/immersive-landing/index.js +7 -14
  175. package/dist/components/immersive-landing/useImmersiveLanding.js +7 -7
  176. package/dist/components/input/Input.css +155 -155
  177. package/dist/components/input/Input.js +48 -48
  178. package/dist/components/input/index.js +2 -2
  179. package/dist/components/input-group/InputGroup.css +172 -172
  180. package/dist/components/input-group/InputGroup.js +33 -33
  181. package/dist/components/input-group/index.js +2 -9
  182. package/dist/components/input-otp/InputOTP.css +170 -170
  183. package/dist/components/input-otp/InputOTP.js +48 -48
  184. package/dist/components/input-otp/index.js +2 -11
  185. package/dist/components/join/Join.js +14 -14
  186. package/dist/components/join/index.js +2 -3
  187. package/dist/components/kbd/Kbd.css +60 -60
  188. package/dist/components/kbd/Kbd.js +20 -20
  189. package/dist/components/kbd/index.js +2 -8
  190. package/dist/components/label/Label.css +30 -30
  191. package/dist/components/label/Label.js +9 -9
  192. package/dist/components/label/index.js +2 -5
  193. package/dist/components/language-switcher/LanguageSwitcher.css +56 -56
  194. package/dist/components/language-switcher/LanguageSwitcher.js +26 -26
  195. package/dist/components/language-switcher/createI18n.js +8 -8
  196. package/dist/components/language-switcher/index.js +3 -8
  197. package/dist/components/link/Link.css +131 -131
  198. package/dist/components/link/Link.js +22 -22
  199. package/dist/components/link/index.js +2 -5
  200. package/dist/components/list-box/ListBox.css +148 -148
  201. package/dist/components/list-box/ListBox.js +17 -17
  202. package/dist/components/list-box/ListBoxItem.js +32 -32
  203. package/dist/components/list-box/ListBoxSection.js +13 -13
  204. package/dist/components/list-box/context.js +2 -2
  205. package/dist/components/list-box/index.js +9 -15
  206. package/dist/components/live-chat/LiveChat.css +324 -324
  207. package/dist/components/live-chat/LiveChatBubble.js +27 -27
  208. package/dist/components/live-chat/LiveChatPanel.js +62 -62
  209. package/dist/components/live-chat/index.js +3 -5
  210. package/dist/components/menu/Menu.css +199 -199
  211. package/dist/components/menu/Menu.js +25 -30
  212. package/dist/components/menu/MenuItem.js +38 -38
  213. package/dist/components/menu/MenuSection.js +13 -13
  214. package/dist/components/menu/context.js +2 -2
  215. package/dist/components/menu/index.js +3 -12
  216. package/dist/components/meter/Meter.css +89 -89
  217. package/dist/components/meter/Meter.js +31 -31
  218. package/dist/components/meter/index.js +2 -8
  219. package/dist/components/modal/Modal.css +320 -320
  220. package/dist/components/modal/Modal.js +80 -80
  221. package/dist/components/modal/index.js +2 -13
  222. package/dist/components/navbar/Navbar.css +110 -110
  223. package/dist/components/navbar/Navbar.js +18 -18
  224. package/dist/components/navbar/NavbarRow.js +10 -10
  225. package/dist/components/navbar/NavbarSection.js +9 -9
  226. package/dist/components/navbar/NavbarStack.js +10 -10
  227. package/dist/components/navbar/index.js +2 -3
  228. package/dist/components/noise-background/NoiseBackground.css +66 -66
  229. package/dist/components/noise-background/NoiseBackground.js +35 -35
  230. package/dist/components/noise-background/index.js +2 -3
  231. package/dist/components/number-field/NumberField.css +198 -198
  232. package/dist/components/number-field/NumberField.js +42 -42
  233. package/dist/components/number-field/index.js +2 -9
  234. package/dist/components/pagination/Pagination.css +121 -121
  235. package/dist/components/pagination/Pagination.js +34 -34
  236. package/dist/components/pagination/index.js +2 -3
  237. package/dist/components/password-field/PasswordField.js +15 -15
  238. package/dist/components/password-field/index.js +2 -3
  239. package/dist/components/password-requirements/PasswordRequirements.js +24 -24
  240. package/dist/components/password-requirements/index.js +2 -3
  241. package/dist/components/password-rules/index.js +2 -4
  242. package/dist/components/popover/Popover.css +117 -117
  243. package/dist/components/popover/Popover.js +50 -50
  244. package/dist/components/popover/index.js +3 -9
  245. package/dist/components/progress-bar/ProgressBar.css +104 -104
  246. package/dist/components/progress-bar/ProgressBar.js +27 -27
  247. package/dist/components/progress-bar/index.js +2 -3
  248. package/dist/components/progress-circle/ProgressCircle.css +82 -82
  249. package/dist/components/progress-circle/ProgressCircle.js +32 -32
  250. package/dist/components/progress-circle/index.js +2 -3
  251. package/dist/components/radio/Radio.css +129 -129
  252. package/dist/components/radio/Radio.js +27 -27
  253. package/dist/components/radio/index.js +2 -3
  254. package/dist/components/radio-group/RadioGroup.css +58 -58
  255. package/dist/components/radio-group/RadioGroup.js +33 -33
  256. package/dist/components/radio-group/context.js +2 -2
  257. package/dist/components/radio-group/index.js +3 -4
  258. package/dist/components/range-calendar/RangeCalendar.css +51 -51
  259. package/dist/components/range-calendar/RangeCalendar.js +15 -15
  260. package/dist/components/range-calendar/index.js +2 -3
  261. package/dist/components/scroll-shadow/ScrollShadow.css +93 -93
  262. package/dist/components/scroll-shadow/ScrollShadow.js +19 -19
  263. package/dist/components/scroll-shadow/index.js +2 -3
  264. package/dist/components/scroll-shadow/useScrollShadow.js +3 -3
  265. package/dist/components/search-field/SearchField.css +183 -183
  266. package/dist/components/search-field/SearchField.js +38 -38
  267. package/dist/components/search-field/index.js +2 -9
  268. package/dist/components/select/Select.css +284 -284
  269. package/dist/components/select/Select.js +129 -129
  270. package/dist/components/select/index.js +2 -3
  271. package/dist/components/separator/Separator.css +35 -35
  272. package/dist/components/separator/Separator.js +11 -11
  273. package/dist/components/separator/index.js +2 -4
  274. package/dist/components/size-picker/SizePicker.js +17 -17
  275. package/dist/components/size-picker/index.js +3 -6
  276. package/dist/components/size-picker/sizeStore.js +3 -3
  277. package/dist/components/skeleton/Skeleton.css +95 -95
  278. package/dist/components/skeleton/Skeleton.js +8 -8
  279. package/dist/components/skeleton/index.js +2 -3
  280. package/dist/components/slider/Slider.css +122 -122
  281. package/dist/components/slider/Slider.js +26 -26
  282. package/dist/components/slider/index.js +2 -3
  283. package/dist/components/spinner/Spinner.css +131 -131
  284. package/dist/components/spinner/Spinner.js +19 -19
  285. package/dist/components/spinner/index.js +2 -5
  286. package/dist/components/surface/Surface.css +37 -37
  287. package/dist/components/surface/Surface.js +9 -9
  288. package/dist/components/surface/index.js +2 -4
  289. package/dist/components/table/ExpandToggle.js +14 -14
  290. package/dist/components/table/InlineConfirm.js +11 -11
  291. package/dist/components/table/MobileListView.js +24 -24
  292. package/dist/components/table/SortIcon.js +13 -13
  293. package/dist/components/table/Table.css +426 -426
  294. package/dist/components/table/Table.js +80 -80
  295. package/dist/components/table/VirtualSpacerRow.js +8 -8
  296. package/dist/components/table/index.js +8 -38
  297. package/dist/components/tabs/Tabs.css +203 -203
  298. package/dist/components/tabs/Tabs.js +59 -59
  299. package/dist/components/tabs/index.js +2 -4
  300. package/dist/components/tag/Tag.css +121 -121
  301. package/dist/components/tag/Tag.js +40 -40
  302. package/dist/components/tag/index.js +2 -6
  303. package/dist/components/tag-group/TagGroup.css +22 -22
  304. package/dist/components/tag-group/TagGroup.js +20 -20
  305. package/dist/components/tag-group/context.js +2 -2
  306. package/dist/components/tag-group/index.js +2 -6
  307. package/dist/components/text/Text.css +66 -66
  308. package/dist/components/text/Text.js +9 -9
  309. package/dist/components/text/index.js +2 -5
  310. package/dist/components/text-area/TextArea.css +95 -95
  311. package/dist/components/text-area/TextArea.js +10 -10
  312. package/dist/components/text-area/index.js +2 -5
  313. package/dist/components/text-field/TextField.css +33 -33
  314. package/dist/components/text-field/TextField.js +15 -15
  315. package/dist/components/text-field/index.js +2 -7
  316. package/dist/components/textarea/Textarea.js +11 -13
  317. package/dist/components/textarea/index.js +2 -6
  318. package/dist/components/theme-color-picker/ThemeColorPicker.js +49 -49
  319. package/dist/components/theme-color-picker/hueShift.js +3 -3
  320. package/dist/components/theme-color-picker/index.js +3 -7
  321. package/dist/components/time-field/TimeField.css +215 -215
  322. package/dist/components/time-field/TimeField.js +41 -41
  323. package/dist/components/time-field/index.js +2 -11
  324. package/dist/components/toast/Toast.css +344 -344
  325. package/dist/components/toast/Toast.js +98 -98
  326. package/dist/components/toast/index.js +2 -19
  327. package/dist/components/toggle/Toggle.css +237 -237
  328. package/dist/components/toggle/Toggle.js +31 -31
  329. package/dist/components/toggle/index.js +2 -3
  330. package/dist/components/toolbar/Toolbar.css +55 -55
  331. package/dist/components/toolbar/Toolbar.js +10 -10
  332. package/dist/components/toolbar/index.js +2 -5
  333. package/dist/components/tooltip/Tooltip.css +153 -153
  334. package/dist/components/tooltip/Tooltip.js +36 -36
  335. package/dist/components/tooltip/index.js +2 -7
  336. package/dist/components/utils.js +6 -7
  337. package/dist/components/video-preview/VideoPreview.js +15 -15
  338. package/dist/components/video-preview/index.js +2 -3
  339. package/dist/hooks/date/useCalendarNavigation.js +18 -18
  340. package/dist/hooks/date/useCalendarState.js +19 -19
  341. package/dist/hooks/date/useDateSelection.js +7 -7
  342. package/dist/hooks/date/usePickerOpenState.js +8 -8
  343. package/dist/hooks/date/useRangeSelection.js +16 -16
  344. package/dist/hooks/form/FormContext.js +3 -3
  345. package/dist/hooks/form/createForm.js +4 -4
  346. package/dist/hooks/form/index.js +5 -10
  347. package/dist/hooks/form/useFieldNew.js +10 -10
  348. package/dist/hooks/layout/index.js +2 -3
  349. package/dist/hooks/layout/useDesktop.js +4 -4
  350. package/dist/hooks/table/index.js +9 -18
  351. package/dist/hooks/table/useAnchoredOverlayPosition.js +4 -4
  352. package/dist/hooks/table/useTableExpansion.js +4 -4
  353. package/dist/hooks/table/useTableFiltering.js +8 -8
  354. package/dist/hooks/table/useTableModel.js +10 -10
  355. package/dist/hooks/table/useTablePagination.js +4 -4
  356. package/dist/hooks/table/useTableSelection.js +4 -4
  357. package/dist/hooks/table/useTableSorting.js +6 -6
  358. package/dist/index.css +74 -74
  359. package/dist/index.js +108 -398
  360. package/dist/lib/refs/index.js +2 -3
  361. package/dist/lib/refs/mergeRefs.js +2 -2
  362. package/dist/lib/style/index.js +2 -4
  363. package/dist/lib/tag/createIsButton.js +4 -4
  364. package/dist/lib/tag/createTagName.js +2 -2
  365. package/dist/lib/tag/index.js +3 -7
  366. package/dist/motion/engine.js +4 -4
  367. package/dist/motion/index.js +11 -39
  368. package/dist/motion/popmotion.js +2 -2
  369. package/dist/motion/presets.js +4 -4
  370. package/dist/motion/route.js +7 -7
  371. package/dist/motion/solid/AnimatedCollapse.js +27 -27
  372. package/dist/motion/solid/MotionDiv.js +13 -13
  373. package/dist/motion/solid/Presence.js +9 -9
  374. package/dist/motion/solid/index.js +4 -10
  375. package/dist/motion/system.js +9 -9
  376. package/dist/primitives/streaming/index.js +3 -5
  377. package/dist/primitives/streaming/useStreamingBuffer.js +2 -2
  378. package/dist/primitives/streaming/useStreamingSubscription.js +7 -7
  379. package/dist/primitives/virtualizer/index.js +2 -3
  380. package/dist/primitives/virtualizer/useVirtualRows.js +7 -7
  381. package/dist/purge-manifest.json +15599 -15825
  382. package/dist/styles/base/index.css +43 -43
  383. package/dist/styles/themes/dark.css +141 -141
  384. package/dist/styles/themes/light.css +143 -143
  385. package/package.json +41 -34
@@ -1,426 +1,426 @@
1
- /* ==========================================================================
2
- Table — HeroUI-style data display component for structured tabular data.
3
- ========================================================================== */
4
-
5
- @layer components {
6
- /* --------------------------------------------------------------------------
7
- Table Root — Outer container for table + optional footer.
8
- -------------------------------------------------------------------------- */
9
- .table-root {
10
- position: relative;
11
- display: grid;
12
- width: 100%;
13
- overflow: clip;
14
- grid-template-columns: minmax(0, 1fr);
15
- }
16
-
17
- .table-root--primary {
18
- background-color: var(--color-base-200);
19
- padding-inline: 0.25rem;
20
- padding-bottom: 0.25rem;
21
- border-radius: calc(var(--radius-box, 1rem) + 0.25rem);
22
- }
23
-
24
- /* --------------------------------------------------------------------------
25
- Scroll Container
26
- -------------------------------------------------------------------------- */
27
- .table__scroll-container {
28
- overflow-x: auto;
29
- scrollbar-width: thin;
30
- scrollbar-color: oklch(0% 0 0 / 0.15) transparent;
31
- }
32
-
33
- .table__scroll-container::-webkit-scrollbar {
34
- width: 6px;
35
- height: 6px;
36
- }
37
-
38
- .table__scroll-container::-webkit-scrollbar-track {
39
- background: transparent;
40
- }
41
-
42
- .table__scroll-container::-webkit-scrollbar-thumb {
43
- background: oklch(0% 0 0 / 0.15);
44
- border-radius: 3px;
45
- }
46
-
47
- .table__scroll-container::-webkit-scrollbar-thumb:hover {
48
- background: oklch(0% 0 0 / 0.25);
49
- }
50
-
51
- :is([data-theme="dark"], .dark) .table__scroll-container {
52
- scrollbar-color: oklch(100% 0 0 / 0.15) transparent;
53
- }
54
-
55
- :is([data-theme="dark"], .dark) .table__scroll-container::-webkit-scrollbar-thumb {
56
- background: oklch(100% 0 0 / 0.15);
57
- }
58
-
59
- :is([data-theme="dark"], .dark) .table__scroll-container::-webkit-scrollbar-thumb:hover {
60
- background: oklch(100% 0 0 / 0.25);
61
- }
62
-
63
- /* --------------------------------------------------------------------------
64
- Table Content (<table>)
65
- -------------------------------------------------------------------------- */
66
- .table__content {
67
- width: 100%;
68
- border-collapse: separate;
69
- border-spacing: 0;
70
- font-size: 0.875rem;
71
- text-align: left;
72
- }
73
-
74
- .table__content:where(:dir(rtl), [dir="rtl"], [dir="rtl"] *) {
75
- text-align: right;
76
- }
77
-
78
- .table-root--primary .table__content {
79
- overflow: clip;
80
- }
81
-
82
- /* --------------------------------------------------------------------------
83
- Table Header (<thead>)
84
- -------------------------------------------------------------------------- */
85
- .table__header {
86
- background-color: var(--color-base-200);
87
- }
88
-
89
- @supports (color: color-mix(in lab, red, red)) {
90
- .table__header {
91
- border-bottom: 1px solid color-mix(in oklch, var(--color-base-content) 8%, transparent);
92
- }
93
- }
94
-
95
- .table-root--secondary .table__header {
96
- border-bottom: 0;
97
- background: transparent;
98
- }
99
-
100
- .table-root--secondary .table__column {
101
- background-color: var(--color-base-200);
102
- }
103
-
104
- .table-root--secondary .table__column:first-child {
105
- border-top-left-radius: var(--radius-box, 1rem);
106
- border-bottom-left-radius: var(--radius-box, 1rem);
107
- }
108
-
109
- .table-root--secondary .table__column:last-child {
110
- border-top-right-radius: var(--radius-box, 1rem);
111
- border-bottom-right-radius: var(--radius-box, 1rem);
112
- }
113
-
114
- .table-root--secondary .table__body tr:first-child td:first-child,
115
- .table-root--secondary .table__body tr:first-child td:last-child,
116
- .table-root--secondary .table__body tr:last-child td:first-child,
117
- .table-root--secondary .table__body tr:last-child td:last-child {
118
- border-radius: 0;
119
- }
120
-
121
- .table-root--secondary .table__row .table__cell {
122
- background-color: transparent;
123
- }
124
-
125
- @supports (color: color-mix(in lab, red, red)) {
126
- .table-root--secondary .table__row .table__cell {
127
- border-bottom: 1px solid color-mix(in oklch, var(--color-base-content) 5%, transparent);
128
- }
129
- }
130
-
131
- @media (hover: hover) {
132
- .table-root--secondary .table__row:hover .table__cell {
133
- background-color: var(--color-base-200);
134
- }
135
-
136
- .table-root--secondary .table__row:hover .table__cell:first-child {
137
- border-top-left-radius: var(--radius-box, 1rem);
138
- border-bottom-left-radius: var(--radius-box, 1rem);
139
- }
140
-
141
- .table-root--secondary .table__row:hover .table__cell:last-child {
142
- border-top-right-radius: var(--radius-box, 1rem);
143
- border-bottom-right-radius: var(--radius-box, 1rem);
144
- }
145
- }
146
-
147
- /* --------------------------------------------------------------------------
148
- Table Column (<th>)
149
- -------------------------------------------------------------------------- */
150
- .table__column {
151
- position: relative;
152
- overflow: hidden;
153
- padding-inline: 1rem;
154
- padding-block: 0.625rem;
155
- text-align: left;
156
- font-size: 0.75rem;
157
- font-weight: 500;
158
- white-space: nowrap;
159
- vertical-align: middle;
160
- }
161
-
162
- .table__column > * {
163
- min-width: 0;
164
- max-width: 100%;
165
- }
166
-
167
- @supports (color: color-mix(in lab, red, red)) {
168
- .table__column {
169
- color: color-mix(in oklab, var(--color-base-content) 60%, transparent);
170
- }
171
- }
172
-
173
- .table__column::after {
174
- content: "";
175
- position: absolute;
176
- top: 50%;
177
- right: 0;
178
- height: 1rem;
179
- width: 1px;
180
- transform: translateY(-50%);
181
- border-radius: 1px;
182
- }
183
-
184
- @supports (color: color-mix(in lab, red, red)) {
185
- .table__column::after {
186
- background-color: color-mix(in oklch, var(--color-base-content) 10%, transparent);
187
- }
188
- }
189
-
190
- .table__column:last-child:not(:only-child)::after {
191
- content: none;
192
- }
193
-
194
- .table__column[data-allows-sorting="true"] {
195
- cursor: pointer;
196
- }
197
-
198
- @media (hover: hover) {
199
- .table__column[data-allows-sorting="true"]:hover {
200
- color: var(--color-base-content);
201
- }
202
- }
203
-
204
- .table__column[data-sort-direction="ascending"],
205
- .table__column[data-sort-direction="descending"] {
206
- color: var(--color-base-content);
207
- }
208
-
209
- .table__column:focus-visible {
210
- border-radius: 0.5rem;
211
- outline: none;
212
- box-shadow: inset 0 0 0 2px var(--color-accent);
213
- }
214
-
215
- /* --------------------------------------------------------------------------
216
- Table Body (<tbody>)
217
- -------------------------------------------------------------------------- */
218
- .table__body tr:first-child td:first-child {
219
- border-top-left-radius: var(--radius-box, 1rem);
220
- }
221
-
222
- .table__body tr:first-child td:last-child {
223
- border-top-right-radius: var(--radius-box, 1rem);
224
- }
225
-
226
- .table__body tr:last-child td:first-child {
227
- border-bottom-left-radius: var(--radius-box, 1rem);
228
- }
229
-
230
- .table__body tr:last-child td:last-child {
231
- border-bottom-right-radius: var(--radius-box, 1rem);
232
- }
233
-
234
- /* --------------------------------------------------------------------------
235
- Table Row (<tr>)
236
- -------------------------------------------------------------------------- */
237
- .table__row {
238
- position: relative;
239
- height: 100%;
240
- }
241
-
242
- @media (hover: hover) {
243
- .table__row:hover .table__cell {
244
- background-color: var(--color-base-200);
245
- }
246
- }
247
-
248
- .table__row[data-selected="true"] .table__cell {
249
- background-color: var(--color-base-200);
250
- }
251
-
252
- .table__row[aria-disabled="true"],
253
- .table__row[data-disabled="true"] {
254
- opacity: 0.5;
255
- cursor: not-allowed;
256
- }
257
-
258
- .table__row:focus-visible {
259
- outline: none;
260
- box-shadow: inset 0 0 0 2px var(--color-accent);
261
- }
262
-
263
- .table__row[data-hovered="true"] .table__cell {
264
- background-color: var(--color-base-200);
265
- }
266
-
267
- /* --------------------------------------------------------------------------
268
- Table Cell (<td>)
269
- -------------------------------------------------------------------------- */
270
- .table__cell {
271
- height: 100%;
272
- background-color: var(--color-base-100);
273
- padding-inline: 1rem;
274
- padding-block: 0.75rem;
275
- vertical-align: middle;
276
- font-size: 0.875rem;
277
- color: var(--color-base-content);
278
- }
279
-
280
- @supports (color: color-mix(in lab, red, red)) {
281
- .table__cell {
282
- border-bottom: 1px solid color-mix(in oklch, var(--color-base-content) 5%, transparent);
283
- }
284
- }
285
-
286
- .table__body tr:last-child .table__cell {
287
- border-bottom: none;
288
- }
289
-
290
- .table__cell:focus-visible {
291
- border-radius: 0.5rem;
292
- outline: none;
293
- box-shadow: inset 0 0 0 2px var(--color-accent);
294
- }
295
-
296
- .table__expanded-row .table__expanded-cell {
297
- background-color: color-mix(in oklch, var(--color-base-200) 75%, var(--color-base-100));
298
- }
299
-
300
- .table__expanded-cell {
301
- padding-block: 0.875rem;
302
- }
303
-
304
- /* --------------------------------------------------------------------------
305
- Table Footer (div outside <table>)
306
- -------------------------------------------------------------------------- */
307
- .table__footer {
308
- display: flex;
309
- align-items: center;
310
- padding-inline: 1rem;
311
- padding-block: 0.625rem;
312
- }
313
-
314
- .table__page-size {
315
- display: inline-flex;
316
- align-items: center;
317
- gap: 0.5rem;
318
- font-size: 0.75rem;
319
- font-weight: 600;
320
- letter-spacing: 0.16em;
321
- text-transform: uppercase;
322
- }
323
-
324
- .table__page-size-label {
325
- opacity: 0.7;
326
- }
327
-
328
- .table__page-size-select {
329
- min-width: 4.5rem;
330
- border-radius: 0.75rem;
331
- border: 1px solid color-mix(in oklch, var(--color-base-content) 10%, transparent);
332
- background-color: var(--color-base-100);
333
- padding-inline: 0.75rem;
334
- padding-block: 0.5rem;
335
- font-size: 0.875rem;
336
- font-weight: 500;
337
- letter-spacing: normal;
338
- text-transform: none;
339
- color: var(--color-base-content);
340
- }
341
-
342
- .table__page-size-select:focus-visible {
343
- outline: none;
344
- box-shadow: 0 0 0 2px var(--color-accent);
345
- }
346
-
347
- /* --------------------------------------------------------------------------
348
- Resizable Container
349
- -------------------------------------------------------------------------- */
350
- .table__resizable-container {
351
- position: relative;
352
- overflow: auto;
353
- }
354
-
355
- /* --------------------------------------------------------------------------
356
- Column Resizer
357
- -------------------------------------------------------------------------- */
358
- .table__column-resizer {
359
- position: absolute;
360
- top: 50%;
361
- right: 0;
362
- box-sizing: content-box;
363
- height: 1rem;
364
- width: 1px;
365
- padding-inline: 0.5rem;
366
- transform: translate(50%, -50%);
367
- border: 0;
368
- border-radius: 1px;
369
- background-color: transparent;
370
- background-clip: content-box;
371
- cursor: col-resize;
372
- touch-action: none;
373
- outline: none;
374
- }
375
-
376
- @supports (color: color-mix(in lab, red, red)) {
377
- .table__column-resizer {
378
- background-color: color-mix(in oklch, var(--color-base-content) 10%, transparent);
379
- }
380
- }
381
-
382
- .table__column-resizer[data-hovered="true"],
383
- .table__column-resizer:hover,
384
- .table__column-resizer[data-resizing="true"] {
385
- top: 0;
386
- height: 100%;
387
- width: 2px;
388
- transform: translateX(50%);
389
- background-color: var(--color-accent);
390
- }
391
-
392
- .table__column-resizer[data-focus-visible="true"],
393
- .table__column-resizer:focus-visible {
394
- top: 0;
395
- height: 100%;
396
- width: 2px;
397
- transform: translateX(50%);
398
- background-color: var(--color-focus, var(--color-accent));
399
- }
400
-
401
- .table__column:has(.table__column-resizer)::after {
402
- content: none;
403
- }
404
-
405
- /* --------------------------------------------------------------------------
406
- Load More
407
- -------------------------------------------------------------------------- */
408
- .table__load-more td,
409
- .table__load-more [role="rowheader"] {
410
- padding-block: 0.75rem;
411
- text-align: center;
412
- }
413
-
414
- .table__load-more td > *,
415
- .table__load-more [role="rowheader"] > * {
416
- margin-inline: auto;
417
- }
418
-
419
- .table__load-more-content {
420
- display: flex;
421
- align-items: center;
422
- justify-content: center;
423
- gap: 0.5rem;
424
- padding-block: 0.5rem;
425
- }
426
- }
1
+ /* ==========================================================================
2
+ Table — HeroUI-style data display component for structured tabular data.
3
+ ========================================================================== */
4
+
5
+ @layer components {
6
+ /* --------------------------------------------------------------------------
7
+ Table Root — Outer container for table + optional footer.
8
+ -------------------------------------------------------------------------- */
9
+ .table-root {
10
+ position: relative;
11
+ display: grid;
12
+ width: 100%;
13
+ overflow: clip;
14
+ grid-template-columns: minmax(0, 1fr);
15
+ }
16
+
17
+ .table-root--primary {
18
+ background-color: var(--color-base-200);
19
+ padding-inline: 0.25rem;
20
+ padding-bottom: 0.25rem;
21
+ border-radius: calc(var(--radius-box, 1rem) + 0.25rem);
22
+ }
23
+
24
+ /* --------------------------------------------------------------------------
25
+ Scroll Container
26
+ -------------------------------------------------------------------------- */
27
+ .table__scroll-container {
28
+ overflow-x: auto;
29
+ scrollbar-width: thin;
30
+ scrollbar-color: oklch(0% 0 0 / 0.15) transparent;
31
+ }
32
+
33
+ .table__scroll-container::-webkit-scrollbar {
34
+ width: 6px;
35
+ height: 6px;
36
+ }
37
+
38
+ .table__scroll-container::-webkit-scrollbar-track {
39
+ background: transparent;
40
+ }
41
+
42
+ .table__scroll-container::-webkit-scrollbar-thumb {
43
+ background: oklch(0% 0 0 / 0.15);
44
+ border-radius: 3px;
45
+ }
46
+
47
+ .table__scroll-container::-webkit-scrollbar-thumb:hover {
48
+ background: oklch(0% 0 0 / 0.25);
49
+ }
50
+
51
+ :is([data-theme="dark"], .dark) .table__scroll-container {
52
+ scrollbar-color: oklch(100% 0 0 / 0.15) transparent;
53
+ }
54
+
55
+ :is([data-theme="dark"], .dark) .table__scroll-container::-webkit-scrollbar-thumb {
56
+ background: oklch(100% 0 0 / 0.15);
57
+ }
58
+
59
+ :is([data-theme="dark"], .dark) .table__scroll-container::-webkit-scrollbar-thumb:hover {
60
+ background: oklch(100% 0 0 / 0.25);
61
+ }
62
+
63
+ /* --------------------------------------------------------------------------
64
+ Table Content (<table>)
65
+ -------------------------------------------------------------------------- */
66
+ .table__content {
67
+ width: 100%;
68
+ border-collapse: separate;
69
+ border-spacing: 0;
70
+ font-size: 0.875rem;
71
+ text-align: left;
72
+ }
73
+
74
+ .table__content:where(:dir(rtl), [dir="rtl"], [dir="rtl"] *) {
75
+ text-align: right;
76
+ }
77
+
78
+ .table-root--primary .table__content {
79
+ overflow: clip;
80
+ }
81
+
82
+ /* --------------------------------------------------------------------------
83
+ Table Header (<thead>)
84
+ -------------------------------------------------------------------------- */
85
+ .table__header {
86
+ background-color: var(--color-base-200);
87
+ }
88
+
89
+ @supports (color: color-mix(in lab, red, red)) {
90
+ .table__header {
91
+ border-bottom: 1px solid color-mix(in oklch, var(--color-base-content) 8%, transparent);
92
+ }
93
+ }
94
+
95
+ .table-root--secondary .table__header {
96
+ border-bottom: 0;
97
+ background: transparent;
98
+ }
99
+
100
+ .table-root--secondary .table__column {
101
+ background-color: var(--color-base-200);
102
+ }
103
+
104
+ .table-root--secondary .table__column:first-child {
105
+ border-top-left-radius: var(--radius-box, 1rem);
106
+ border-bottom-left-radius: var(--radius-box, 1rem);
107
+ }
108
+
109
+ .table-root--secondary .table__column:last-child {
110
+ border-top-right-radius: var(--radius-box, 1rem);
111
+ border-bottom-right-radius: var(--radius-box, 1rem);
112
+ }
113
+
114
+ .table-root--secondary .table__body tr:first-child td:first-child,
115
+ .table-root--secondary .table__body tr:first-child td:last-child,
116
+ .table-root--secondary .table__body tr:last-child td:first-child,
117
+ .table-root--secondary .table__body tr:last-child td:last-child {
118
+ border-radius: 0;
119
+ }
120
+
121
+ .table-root--secondary .table__row .table__cell {
122
+ background-color: transparent;
123
+ }
124
+
125
+ @supports (color: color-mix(in lab, red, red)) {
126
+ .table-root--secondary .table__row .table__cell {
127
+ border-bottom: 1px solid color-mix(in oklch, var(--color-base-content) 5%, transparent);
128
+ }
129
+ }
130
+
131
+ @media (hover: hover) {
132
+ .table-root--secondary .table__row:hover .table__cell {
133
+ background-color: var(--color-base-200);
134
+ }
135
+
136
+ .table-root--secondary .table__row:hover .table__cell:first-child {
137
+ border-top-left-radius: var(--radius-box, 1rem);
138
+ border-bottom-left-radius: var(--radius-box, 1rem);
139
+ }
140
+
141
+ .table-root--secondary .table__row:hover .table__cell:last-child {
142
+ border-top-right-radius: var(--radius-box, 1rem);
143
+ border-bottom-right-radius: var(--radius-box, 1rem);
144
+ }
145
+ }
146
+
147
+ /* --------------------------------------------------------------------------
148
+ Table Column (<th>)
149
+ -------------------------------------------------------------------------- */
150
+ .table__column {
151
+ position: relative;
152
+ overflow: hidden;
153
+ padding-inline: 1rem;
154
+ padding-block: 0.625rem;
155
+ text-align: left;
156
+ font-size: 0.75rem;
157
+ font-weight: 500;
158
+ white-space: nowrap;
159
+ vertical-align: middle;
160
+ }
161
+
162
+ .table__column > * {
163
+ min-width: 0;
164
+ max-width: 100%;
165
+ }
166
+
167
+ @supports (color: color-mix(in lab, red, red)) {
168
+ .table__column {
169
+ color: color-mix(in oklab, var(--color-base-content) 60%, transparent);
170
+ }
171
+ }
172
+
173
+ .table__column::after {
174
+ content: "";
175
+ position: absolute;
176
+ top: 50%;
177
+ right: 0;
178
+ height: 1rem;
179
+ width: 1px;
180
+ transform: translateY(-50%);
181
+ border-radius: 1px;
182
+ }
183
+
184
+ @supports (color: color-mix(in lab, red, red)) {
185
+ .table__column::after {
186
+ background-color: color-mix(in oklch, var(--color-base-content) 10%, transparent);
187
+ }
188
+ }
189
+
190
+ .table__column:last-child:not(:only-child)::after {
191
+ content: none;
192
+ }
193
+
194
+ .table__column[data-allows-sorting="true"] {
195
+ cursor: pointer;
196
+ }
197
+
198
+ @media (hover: hover) {
199
+ .table__column[data-allows-sorting="true"]:hover {
200
+ color: var(--color-base-content);
201
+ }
202
+ }
203
+
204
+ .table__column[data-sort-direction="ascending"],
205
+ .table__column[data-sort-direction="descending"] {
206
+ color: var(--color-base-content);
207
+ }
208
+
209
+ .table__column:focus-visible {
210
+ border-radius: 0.5rem;
211
+ outline: none;
212
+ box-shadow: inset 0 0 0 2px var(--color-accent);
213
+ }
214
+
215
+ /* --------------------------------------------------------------------------
216
+ Table Body (<tbody>)
217
+ -------------------------------------------------------------------------- */
218
+ .table__body tr:first-child td:first-child {
219
+ border-top-left-radius: var(--radius-box, 1rem);
220
+ }
221
+
222
+ .table__body tr:first-child td:last-child {
223
+ border-top-right-radius: var(--radius-box, 1rem);
224
+ }
225
+
226
+ .table__body tr:last-child td:first-child {
227
+ border-bottom-left-radius: var(--radius-box, 1rem);
228
+ }
229
+
230
+ .table__body tr:last-child td:last-child {
231
+ border-bottom-right-radius: var(--radius-box, 1rem);
232
+ }
233
+
234
+ /* --------------------------------------------------------------------------
235
+ Table Row (<tr>)
236
+ -------------------------------------------------------------------------- */
237
+ .table__row {
238
+ position: relative;
239
+ height: 100%;
240
+ }
241
+
242
+ @media (hover: hover) {
243
+ .table__row:hover .table__cell {
244
+ background-color: var(--color-base-200);
245
+ }
246
+ }
247
+
248
+ .table__row[data-selected="true"] .table__cell {
249
+ background-color: var(--color-base-200);
250
+ }
251
+
252
+ .table__row[aria-disabled="true"],
253
+ .table__row[data-disabled="true"] {
254
+ opacity: 0.5;
255
+ cursor: not-allowed;
256
+ }
257
+
258
+ .table__row:focus-visible {
259
+ outline: none;
260
+ box-shadow: inset 0 0 0 2px var(--color-accent);
261
+ }
262
+
263
+ .table__row[data-hovered="true"] .table__cell {
264
+ background-color: var(--color-base-200);
265
+ }
266
+
267
+ /* --------------------------------------------------------------------------
268
+ Table Cell (<td>)
269
+ -------------------------------------------------------------------------- */
270
+ .table__cell {
271
+ height: 100%;
272
+ background-color: var(--color-base-100);
273
+ padding-inline: 1rem;
274
+ padding-block: 0.75rem;
275
+ vertical-align: middle;
276
+ font-size: 0.875rem;
277
+ color: var(--color-base-content);
278
+ }
279
+
280
+ @supports (color: color-mix(in lab, red, red)) {
281
+ .table__cell {
282
+ border-bottom: 1px solid color-mix(in oklch, var(--color-base-content) 5%, transparent);
283
+ }
284
+ }
285
+
286
+ .table__body tr:last-child .table__cell {
287
+ border-bottom: none;
288
+ }
289
+
290
+ .table__cell:focus-visible {
291
+ border-radius: 0.5rem;
292
+ outline: none;
293
+ box-shadow: inset 0 0 0 2px var(--color-accent);
294
+ }
295
+
296
+ .table__expanded-row .table__expanded-cell {
297
+ background-color: color-mix(in oklch, var(--color-base-200) 75%, var(--color-base-100));
298
+ }
299
+
300
+ .table__expanded-cell {
301
+ padding-block: 0.875rem;
302
+ }
303
+
304
+ /* --------------------------------------------------------------------------
305
+ Table Footer (div outside <table>)
306
+ -------------------------------------------------------------------------- */
307
+ .table__footer {
308
+ display: flex;
309
+ align-items: center;
310
+ padding-inline: 1rem;
311
+ padding-block: 0.625rem;
312
+ }
313
+
314
+ .table__page-size {
315
+ display: inline-flex;
316
+ align-items: center;
317
+ gap: 0.5rem;
318
+ font-size: 0.75rem;
319
+ font-weight: 600;
320
+ letter-spacing: 0.16em;
321
+ text-transform: uppercase;
322
+ }
323
+
324
+ .table__page-size-label {
325
+ opacity: 0.7;
326
+ }
327
+
328
+ .table__page-size-select {
329
+ min-width: 4.5rem;
330
+ border-radius: 0.75rem;
331
+ border: 1px solid color-mix(in oklch, var(--color-base-content) 10%, transparent);
332
+ background-color: var(--color-base-100);
333
+ padding-inline: 0.75rem;
334
+ padding-block: 0.5rem;
335
+ font-size: 0.875rem;
336
+ font-weight: 500;
337
+ letter-spacing: normal;
338
+ text-transform: none;
339
+ color: var(--color-base-content);
340
+ }
341
+
342
+ .table__page-size-select:focus-visible {
343
+ outline: none;
344
+ box-shadow: 0 0 0 2px var(--color-accent);
345
+ }
346
+
347
+ /* --------------------------------------------------------------------------
348
+ Resizable Container
349
+ -------------------------------------------------------------------------- */
350
+ .table__resizable-container {
351
+ position: relative;
352
+ overflow: auto;
353
+ }
354
+
355
+ /* --------------------------------------------------------------------------
356
+ Column Resizer
357
+ -------------------------------------------------------------------------- */
358
+ .table__column-resizer {
359
+ position: absolute;
360
+ top: 50%;
361
+ right: 0;
362
+ box-sizing: content-box;
363
+ height: 1rem;
364
+ width: 1px;
365
+ padding-inline: 0.5rem;
366
+ transform: translate(50%, -50%);
367
+ border: 0;
368
+ border-radius: 1px;
369
+ background-color: transparent;
370
+ background-clip: content-box;
371
+ cursor: col-resize;
372
+ touch-action: none;
373
+ outline: none;
374
+ }
375
+
376
+ @supports (color: color-mix(in lab, red, red)) {
377
+ .table__column-resizer {
378
+ background-color: color-mix(in oklch, var(--color-base-content) 10%, transparent);
379
+ }
380
+ }
381
+
382
+ .table__column-resizer[data-hovered="true"],
383
+ .table__column-resizer:hover,
384
+ .table__column-resizer[data-resizing="true"] {
385
+ top: 0;
386
+ height: 100%;
387
+ width: 2px;
388
+ transform: translateX(50%);
389
+ background-color: var(--color-accent);
390
+ }
391
+
392
+ .table__column-resizer[data-focus-visible="true"],
393
+ .table__column-resizer:focus-visible {
394
+ top: 0;
395
+ height: 100%;
396
+ width: 2px;
397
+ transform: translateX(50%);
398
+ background-color: var(--color-focus, var(--color-accent));
399
+ }
400
+
401
+ .table__column:has(.table__column-resizer)::after {
402
+ content: none;
403
+ }
404
+
405
+ /* --------------------------------------------------------------------------
406
+ Load More
407
+ -------------------------------------------------------------------------- */
408
+ .table__load-more td,
409
+ .table__load-more [role="rowheader"] {
410
+ padding-block: 0.75rem;
411
+ text-align: center;
412
+ }
413
+
414
+ .table__load-more td > *,
415
+ .table__load-more [role="rowheader"] > * {
416
+ margin-inline: auto;
417
+ }
418
+
419
+ .table__load-more-content {
420
+ display: flex;
421
+ align-items: center;
422
+ justify-content: center;
423
+ gap: 0.5rem;
424
+ padding-block: 0.5rem;
425
+ }
426
+ }