@opencode-ai/ui 0.0.0-dev-202609070401 → 0.0.0-dev-19227

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 (299) hide show
  1. package/dist/actions/button/button.d.ts +10 -0
  2. package/dist/actions/icon-button/icon-button.d.ts +11 -0
  3. package/dist/actions/split-button/split-button.d.ts +5 -0
  4. package/dist/components/card.d.ts +1 -1
  5. package/dist/components/list.d.ts +1 -1
  6. package/dist/components/scroll-view.d.ts +14 -4
  7. package/dist/context/i18n.d.ts +10 -7
  8. package/dist/context/marked-base.d.ts +3 -0
  9. package/dist/context/marked-parser.d.ts +1 -2
  10. package/dist/{components → data-display/accordion}/accordion.d.ts +6 -6
  11. package/dist/{v2/components/avatar-v2.d.ts → data-display/avatar/avatar.d.ts} +1 -1
  12. package/dist/data-display/badge/badge.d.ts +7 -0
  13. package/dist/{components → data-display/diff-changes}/diff-changes.d.ts +2 -1
  14. package/dist/data-display/keybind/keybind.d.ts +7 -0
  15. package/dist/{v2/components/line-comment-v2.d.ts → data-display/line-comment/line-comment.d.ts} +9 -9
  16. package/dist/{v2/components/project-avatar-v2.d.ts → data-display/project-avatar/project-avatar.d.ts} +1 -1
  17. package/dist/feedback/loader/loader.d.ts +3 -0
  18. package/dist/{components → feedback/progress-circle}/progress-circle.d.ts +2 -0
  19. package/dist/feedback/toast/toast.d.ts +57 -0
  20. package/dist/{components → forms/checkbox}/checkbox.d.ts +2 -2
  21. package/dist/{v2/components/field-v2.d.ts → forms/field/field.d.ts} +4 -10
  22. package/dist/forms/radio/radio.d.ts +16 -0
  23. package/dist/{v2/components/select-v2.d.ts → forms/select/select.d.ts} +5 -6
  24. package/dist/{components → forms/switch}/switch.d.ts +4 -2
  25. package/dist/{v2/components/text-input-v2.d.ts → forms/text-input/text-input.d.ts} +3 -3
  26. package/dist/forms/textarea/textarea.d.ts +7 -0
  27. package/dist/hooks/use-filtered-list.d.ts +9 -0
  28. package/dist/i18n/ar.d.ts +0 -2
  29. package/dist/i18n/bg.d.ts +0 -2
  30. package/dist/i18n/br.d.ts +0 -2
  31. package/dist/i18n/bs.d.ts +0 -2
  32. package/dist/i18n/da.d.ts +0 -2
  33. package/dist/i18n/de.d.ts +0 -2
  34. package/dist/i18n/en.d.ts +242 -1
  35. package/dist/i18n/es.d.ts +0 -2
  36. package/dist/i18n/fr.d.ts +0 -2
  37. package/dist/i18n/he.d.ts +197 -0
  38. package/dist/i18n/ja.d.ts +0 -2
  39. package/dist/i18n/km.d.ts +0 -2
  40. package/dist/i18n/ko.d.ts +0 -2
  41. package/dist/i18n/lo.d.ts +0 -2
  42. package/dist/i18n/mk.d.ts +0 -2
  43. package/dist/i18n/mn.d.ts +0 -2
  44. package/dist/i18n/my.d.ts +0 -2
  45. package/dist/i18n/pl.d.ts +0 -2
  46. package/dist/i18n/ru.d.ts +0 -2
  47. package/dist/i18n/sr.d.ts +0 -2
  48. package/dist/i18n/tg.d.ts +0 -2
  49. package/dist/i18n/th.d.ts +0 -2
  50. package/dist/i18n/tr.d.ts +0 -2
  51. package/dist/i18n/zh.d.ts +0 -2
  52. package/dist/i18n/zht.d.ts +0 -2
  53. package/dist/{components/icon.d.ts → icons/icon/additional-icons.d.ts} +8 -8
  54. package/dist/{v2/components → icons/icon}/icon.d.ts +52 -1
  55. package/dist/layout/divider/divider.d.ts +5 -0
  56. package/dist/navigation/menu/menu.d.ts +59 -0
  57. package/dist/{v2/components/segmented-control-v2.d.ts → navigation/segmented-control/segmented-control.d.ts} +5 -5
  58. package/dist/{components → navigation/tabs}/tabs.d.ts +15 -8
  59. package/dist/{v2/components/dialog-v2.d.ts → overlays/dialog/dialog.d.ts} +1 -2
  60. package/dist/overlays/tooltip/tooltip.d.ts +15 -0
  61. package/dist/{components → typography/text-shimmer}/text-shimmer.d.ts +1 -0
  62. package/dist/typography/wordmark/wordmark.d.ts +5 -0
  63. package/package.json +141 -35
  64. package/src/{v2/components/button-v2.css → actions/button/button.css} +30 -0
  65. package/src/{components → actions/button}/button.tsx +19 -11
  66. package/src/{v2/components/icon-button-v2.css → actions/icon-button/icon-button.css} +27 -9
  67. package/src/actions/icon-button/icon-button.tsx +32 -0
  68. package/src/{v2/components/split-button-v2.css → actions/split-button/split-button.css} +2 -6
  69. package/src/{v2/components/split-button-v2.tsx → actions/split-button/split-button.tsx} +4 -4
  70. package/src/components/animated-number.css +29 -11
  71. package/src/components/animated-number.tsx +2 -2
  72. package/src/components/card.css +2 -23
  73. package/src/components/card.tsx +4 -4
  74. package/src/components/collapsible.tsx +2 -2
  75. package/src/components/dock-surface.css +2 -9
  76. package/src/components/image-preview.tsx +3 -2
  77. package/src/components/list.css +5 -5
  78. package/src/components/list.tsx +7 -5
  79. package/src/components/popover.tsx +3 -2
  80. package/src/components/scroll-view.css +36 -4
  81. package/src/components/scroll-view.tsx +153 -88
  82. package/src/components/sticky-accordion-header.tsx +1 -1
  83. package/src/components/text-field.tsx +12 -4
  84. package/src/context/dialog.tsx +1 -0
  85. package/src/context/i18n.tsx +17 -14
  86. package/src/context/marked-base.tsx +27 -0
  87. package/src/context/marked-parser.tsx +3 -13
  88. package/src/{components → data-display/accordion}/accordion.css +7 -33
  89. package/src/{components → data-display/accordion}/accordion.tsx +14 -14
  90. package/src/{v2/components/avatar-v2.tsx → data-display/avatar/avatar.tsx} +1 -1
  91. package/src/{v2/components/badge-v2.css → data-display/badge/badge.css} +19 -0
  92. package/src/{v2/components/badge-v2.tsx → data-display/badge/badge.tsx} +6 -4
  93. package/src/{components → data-display/diff-changes}/diff-changes.css +22 -19
  94. package/src/{v2/components/diff-changes-v2.tsx → data-display/diff-changes/diff-changes.tsx} +7 -2
  95. package/src/{v2/components/keybind-v2.css → data-display/keybind/keybind.css} +1 -1
  96. package/src/{v2/components/keybind-v2.tsx → data-display/keybind/keybind.tsx} +3 -3
  97. package/src/{v2/components/line-comment-v2.css → data-display/line-comment/line-comment.css} +4 -4
  98. package/src/{v2/components/line-comment-v2.tsx → data-display/line-comment/line-comment.tsx} +17 -15
  99. package/src/{v2/components/project-avatar-v2.css → data-display/project-avatar/project-avatar.css} +4 -4
  100. package/src/{v2/components/project-avatar-v2.tsx → data-display/project-avatar/project-avatar.tsx} +1 -1
  101. package/src/{v2/components/loader-v2.tsx → feedback/loader/loader.tsx} +2 -2
  102. package/src/feedback/progress-circle/progress-circle.css +28 -0
  103. package/src/feedback/progress-circle/progress-circle.tsx +64 -0
  104. package/src/{v2/components/toast-v2.tsx → feedback/toast/toast.tsx} +60 -58
  105. package/src/{components → forms/checkbox}/checkbox.css +1 -7
  106. package/src/{components → forms/checkbox}/checkbox.tsx +13 -13
  107. package/src/{v2/components/field-v2.css → forms/field/field.css} +1 -1
  108. package/src/{v2/components/field-v2.tsx → forms/field/field.tsx} +9 -11
  109. package/src/{v2/components/radio-v2.tsx → forms/radio/radio.tsx} +30 -20
  110. package/src/{v2/components/select-v2.css → forms/select/select.css} +2 -8
  111. package/src/{v2/components/select-v2.tsx → forms/select/select.tsx} +42 -32
  112. package/src/{v2/components/switch-v2.css → forms/switch/switch.css} +110 -0
  113. package/src/forms/switch/switch.tsx +34 -0
  114. package/src/{v2/components/text-input-v2.css → forms/text-input/text-input.css} +3 -3
  115. package/src/{v2/components/text-input-v2.tsx → forms/text-input/text-input.tsx} +4 -4
  116. package/src/{v2/components/textarea-v2.tsx → forms/textarea/textarea.tsx} +3 -3
  117. package/src/hooks/create-auto-scroll.tsx +20 -0
  118. package/src/i18n/am.ts +7 -9
  119. package/src/i18n/ar.ts +7 -9
  120. package/src/i18n/az.ts +7 -9
  121. package/src/i18n/bg.ts +7 -9
  122. package/src/i18n/bn.ts +7 -9
  123. package/src/i18n/br.ts +7 -9
  124. package/src/i18n/bs.ts +7 -9
  125. package/src/i18n/ca.ts +7 -9
  126. package/src/i18n/cs.ts +7 -9
  127. package/src/i18n/da.ts +7 -9
  128. package/src/i18n/de.ts +1 -3
  129. package/src/i18n/dv.ts +7 -9
  130. package/src/i18n/dz.ts +5 -7
  131. package/src/i18n/el.ts +7 -9
  132. package/src/i18n/en.ts +59 -12
  133. package/src/i18n/es.ts +6 -8
  134. package/src/i18n/et.ts +7 -9
  135. package/src/i18n/fa.ts +7 -9
  136. package/src/i18n/fi.ts +7 -9
  137. package/src/i18n/fo.ts +7 -9
  138. package/src/i18n/fr.ts +6 -8
  139. package/src/i18n/he.ts +199 -0
  140. package/src/i18n/hi.ts +7 -9
  141. package/src/i18n/hr.ts +7 -9
  142. package/src/i18n/hu.ts +7 -9
  143. package/src/i18n/hy.ts +7 -9
  144. package/src/i18n/id.ts +7 -9
  145. package/src/i18n/is.ts +7 -9
  146. package/src/i18n/it.ts +7 -9
  147. package/src/i18n/ja.ts +7 -9
  148. package/src/i18n/ka.ts +7 -9
  149. package/src/i18n/km.ts +7 -9
  150. package/src/i18n/ko.ts +7 -9
  151. package/src/i18n/lo.ts +7 -9
  152. package/src/i18n/lt.ts +7 -9
  153. package/src/i18n/lv.ts +7 -9
  154. package/src/i18n/mk.ts +7 -9
  155. package/src/i18n/mn.ts +7 -9
  156. package/src/i18n/ms.ts +7 -9
  157. package/src/i18n/my.ts +7 -9
  158. package/src/i18n/ne.ts +7 -9
  159. package/src/i18n/nl.ts +7 -9
  160. package/src/i18n/no.ts +7 -9
  161. package/src/i18n/pa.ts +7 -9
  162. package/src/i18n/pl.ts +7 -9
  163. package/src/i18n/ro.ts +7 -9
  164. package/src/i18n/ru.ts +7 -9
  165. package/src/i18n/si.ts +7 -9
  166. package/src/i18n/sk.ts +7 -9
  167. package/src/i18n/sl.ts +7 -9
  168. package/src/i18n/sq.ts +7 -9
  169. package/src/i18n/sr.ts +7 -9
  170. package/src/i18n/sv.ts +7 -9
  171. package/src/i18n/tg.ts +7 -9
  172. package/src/i18n/th.ts +7 -9
  173. package/src/i18n/tk.ts +7 -9
  174. package/src/i18n/tr.ts +7 -9
  175. package/src/i18n/uk.ts +7 -9
  176. package/src/i18n/ur.ts +7 -9
  177. package/src/i18n/uz.ts +7 -9
  178. package/src/i18n/vi.ts +7 -9
  179. package/src/i18n/zh.ts +7 -9
  180. package/src/i18n/zht.ts +7 -9
  181. package/src/{components/icon.tsx → icons/icon/additional-icons.ts} +8 -74
  182. package/src/icons/icon/icon.css +3 -0
  183. package/src/{v2/components → icons/icon}/icon.tsx +88 -12
  184. package/src/{v2/components/divider-v2.tsx → layout/divider/divider.tsx} +3 -3
  185. package/src/{v2/components/menu-v2.css → navigation/menu/menu.css} +124 -2
  186. package/src/{v2/components/menu-v2.tsx → navigation/menu/menu.tsx} +96 -32
  187. package/src/{v2/components/segmented-control-v2.css → navigation/segmented-control/segmented-control.css} +1 -1
  188. package/src/{v2/components/segmented-control-v2.tsx → navigation/segmented-control/segmented-control.tsx} +9 -8
  189. package/src/{v2/components/tabs-v2.css → navigation/tabs/tabs-current.css} +25 -10
  190. package/src/{components → navigation/tabs}/tabs.css +53 -232
  191. package/src/navigation/tabs/tabs.tsx +194 -0
  192. package/src/{v2/components/dialog-v2.css → overlays/dialog/dialog.css} +3 -0
  193. package/src/{v2/components/dialog-v2.tsx → overlays/dialog/dialog.tsx} +11 -13
  194. package/src/{v2/components/tooltip-v2.css → overlays/tooltip/tooltip.css} +33 -0
  195. package/src/{v2/components/tooltip-v2.tsx → overlays/tooltip/tooltip.tsx} +24 -17
  196. package/src/styles/base.css +5 -0
  197. package/src/{v2/components/file-tree-v2.css → styles/file-tree.css} +64 -3
  198. package/src/styles/index.css +4 -20
  199. package/src/styles/tailwind/colors.css +2 -0
  200. package/src/styles/tailwind/index.css +18 -1
  201. package/src/styles/theme.css +2 -2
  202. package/src/{v2/styles → styles/tokens}/colors.css +8 -8
  203. package/src/{v2/styles → styles/tokens}/theme.css +23 -16
  204. package/src/theme/context.tsx +19 -11
  205. package/src/theme/themes/oc-2.json +50 -19
  206. package/src/theme/v2/default-primitives.ts +8 -8
  207. package/src/theme/v2/foreground.ts +1 -0
  208. package/src/theme/v2/mapping.ts +7 -1
  209. package/src/{components → typography/text-shimmer}/text-shimmer.css +2 -1
  210. package/src/{components → typography/text-shimmer}/text-shimmer.tsx +1 -0
  211. package/src/typography/wordmark/wordmark.tsx +39 -0
  212. package/dist/components/avatar.d.ts +0 -9
  213. package/dist/components/button.d.ts +0 -9
  214. package/dist/components/dialog.d.ts +0 -12
  215. package/dist/components/dropdown-menu.d.ts +0 -80
  216. package/dist/components/icon-button.d.ts +0 -10
  217. package/dist/components/keybind.d.ts +0 -6
  218. package/dist/components/radio-group.d.ts +0 -16
  219. package/dist/components/select.d.ts +0 -21
  220. package/dist/components/tag.d.ts +0 -5
  221. package/dist/components/toast.d.ts +0 -56
  222. package/dist/components/tooltip.d.ts +0 -17
  223. package/dist/v2/components/accordion-v2.d.ts +0 -26
  224. package/dist/v2/components/badge-v2.d.ts +0 -6
  225. package/dist/v2/components/button-v2.d.ts +0 -10
  226. package/dist/v2/components/checkbox-v2.d.ts +0 -10
  227. package/dist/v2/components/diff-changes-v2.d.ts +0 -11
  228. package/dist/v2/components/divider-v2.d.ts +0 -5
  229. package/dist/v2/components/icon-button-v2.d.ts +0 -11
  230. package/dist/v2/components/inline-input-v2.d.ts +0 -21
  231. package/dist/v2/components/keybind-v2.d.ts +0 -7
  232. package/dist/v2/components/loader-v2.d.ts +0 -3
  233. package/dist/v2/components/menu-v2.d.ts +0 -52
  234. package/dist/v2/components/progress-circle-v2.d.ts +0 -8
  235. package/dist/v2/components/radio-v2.d.ts +0 -16
  236. package/dist/v2/components/split-button-v2.d.ts +0 -5
  237. package/dist/v2/components/switch-v2.d.ts +0 -7
  238. package/dist/v2/components/tabs-v2.d.ts +0 -34
  239. package/dist/v2/components/text-shimmer-v2.d.ts +0 -9
  240. package/dist/v2/components/textarea-v2.d.ts +0 -7
  241. package/dist/v2/components/toast-v2.d.ts +0 -57
  242. package/dist/v2/components/tooltip-v2.d.ts +0 -13
  243. package/dist/v2/components/wordmark-v2.d.ts +0 -2
  244. package/src/components/avatar.css +0 -49
  245. package/src/components/avatar.tsx +0 -55
  246. package/src/components/button.css +0 -194
  247. package/src/components/dialog.css +0 -181
  248. package/src/components/dialog.tsx +0 -72
  249. package/src/components/diff-changes.tsx +0 -115
  250. package/src/components/dropdown-menu.css +0 -135
  251. package/src/components/dropdown-menu.tsx +0 -308
  252. package/src/components/icon-button.css +0 -181
  253. package/src/components/icon-button.tsx +0 -29
  254. package/src/components/icon.css +0 -39
  255. package/src/components/keybind.css +0 -18
  256. package/src/components/keybind.tsx +0 -20
  257. package/src/components/progress-circle.css +0 -16
  258. package/src/components/progress-circle.tsx +0 -64
  259. package/src/components/radio-group.css +0 -187
  260. package/src/components/radio-group.tsx +0 -83
  261. package/src/components/select.css +0 -201
  262. package/src/components/select.tsx +0 -174
  263. package/src/components/switch.css +0 -136
  264. package/src/components/switch.tsx +0 -29
  265. package/src/components/tabs.tsx +0 -126
  266. package/src/components/tag.css +0 -37
  267. package/src/components/tag.tsx +0 -22
  268. package/src/components/toast.css +0 -236
  269. package/src/components/toast.tsx +0 -185
  270. package/src/components/tooltip.css +0 -74
  271. package/src/components/tooltip.tsx +0 -163
  272. package/src/v2/components/accordion-v2.css +0 -139
  273. package/src/v2/components/accordion-v2.tsx +0 -86
  274. package/src/v2/components/button-v2.tsx +0 -35
  275. package/src/v2/components/checkbox-v2.css +0 -184
  276. package/src/v2/components/checkbox-v2.tsx +0 -65
  277. package/src/v2/components/diff-changes-v2.css +0 -26
  278. package/src/v2/components/icon-button-v2.tsx +0 -37
  279. package/src/v2/components/inline-input-v2.css +0 -225
  280. package/src/v2/components/inline-input-v2.tsx +0 -107
  281. package/src/v2/components/progress-circle-v2.css +0 -13
  282. package/src/v2/components/progress-circle-v2.tsx +0 -52
  283. package/src/v2/components/switch-v2.tsx +0 -28
  284. package/src/v2/components/tabs-v2.tsx +0 -149
  285. package/src/v2/components/text-shimmer-v2.css +0 -125
  286. package/src/v2/components/text-shimmer-v2.tsx +0 -63
  287. package/src/v2/components/wordmark-v2.tsx +0 -71
  288. /package/dist/{components → forms/inline-input}/inline-input.d.ts +0 -0
  289. /package/dist/{v2/components → navigation}/tab-state-indicator.d.ts +0 -0
  290. /package/src/{v2/components/avatar-v2.css → data-display/avatar/avatar.css} +0 -0
  291. /package/src/{v2/components/loader-v2.css → feedback/loader/loader.css} +0 -0
  292. /package/src/{v2/components/toast-v2.css → feedback/toast/toast.css} +0 -0
  293. /package/src/{components → forms/inline-input}/inline-input.css +0 -0
  294. /package/src/{components → forms/inline-input}/inline-input.tsx +0 -0
  295. /package/src/{v2/components/radio-v2.css → forms/radio/radio.css} +0 -0
  296. /package/src/{v2/components/textarea-v2.css → forms/textarea/textarea.css} +0 -0
  297. /package/src/{v2/components/divider-v2.css → layout/divider/divider.css} +0 -0
  298. /package/src/{v2/components → navigation}/tab-state-indicator.tsx +0 -0
  299. /package/src/{v2/styles/tailwind.css → styles/tokens/index.css} +0 -0
@@ -0,0 +1,194 @@
1
+ import { Content, List, Root, Trigger } from "@kobalte/core/tabs"
2
+ import { createContext, Show, splitProps, useContext, type JSX } from "solid-js"
3
+ import type { Component, ComponentProps, ParentProps } from "solid-js"
4
+ import { useI18n } from "../../context/i18n"
5
+ import "./tabs-current.css"
6
+
7
+ export type TabsVariant = "panel" | "underline" | "surface" | "line" | "pill" | "settings"
8
+
9
+ export interface TabsProps extends ComponentProps<typeof Root> {
10
+ variant?: TabsVariant
11
+ orientation?: "horizontal" | "vertical"
12
+ }
13
+ export interface TabsListProps extends ComponentProps<typeof List> {}
14
+ export interface TabsTriggerProps extends ComponentProps<typeof Trigger> {
15
+ classes?: { button?: string }
16
+ closeButton?: JSX.Element
17
+ hideCloseButton?: boolean
18
+ onMiddleClick?: () => void
19
+ subtext?: JSX.Element | string
20
+ }
21
+ export interface TabsCloseButtonProps extends ComponentProps<"button"> {}
22
+ export interface TabsContentProps extends ComponentProps<typeof Content> {}
23
+
24
+ const TabsContext = createContext<{ current: () => boolean }>({ current: () => false })
25
+
26
+ function TabsRoot(props: TabsProps) {
27
+ const [local, rest] = splitProps(props, ["class", "classList", "variant", "orientation", "children"])
28
+ const variant = () => local.variant ?? "panel"
29
+ const current = () => variant() === "line" || variant() === "pill" || variant() === "settings"
30
+ const dataVariant = () => {
31
+ if (variant() === "panel" || variant() === "line") return "normal"
32
+ if (variant() === "underline") return "alt"
33
+ if (variant() === "surface") return "pill"
34
+ return variant()
35
+ }
36
+ return (
37
+ <TabsContext.Provider value={{ current }}>
38
+ <Root
39
+ {...rest}
40
+ orientation={local.orientation}
41
+ data-component={current() ? "tabs-v2" : "tabs"}
42
+ data-variant={dataVariant()}
43
+ data-orientation={local.orientation || "horizontal"}
44
+ classList={{
45
+ ...local.classList,
46
+ [local.class ?? ""]: !!local.class,
47
+ }}
48
+ >
49
+ {local.children}
50
+ </Root>
51
+ </TabsContext.Provider>
52
+ )
53
+ }
54
+
55
+ function TabsList(props: TabsListProps) {
56
+ const ctx = useContext(TabsContext)
57
+ const [local, rest] = splitProps(props, ["class", "classList"])
58
+ return (
59
+ <List
60
+ {...rest}
61
+ data-slot={ctx.current() ? "tabs-v2-list" : "tabs-list"}
62
+ classList={{
63
+ ...local.classList,
64
+ [local.class ?? ""]: !!local.class,
65
+ }}
66
+ />
67
+ )
68
+ }
69
+
70
+ function TabsTrigger(props: ParentProps<TabsTriggerProps>) {
71
+ const ctx = useContext(TabsContext)
72
+ const [local, rest] = splitProps(props, [
73
+ "class",
74
+ "classList",
75
+ "classes",
76
+ "children",
77
+ "closeButton",
78
+ "hideCloseButton",
79
+ "onMiddleClick",
80
+ "subtext",
81
+ "dir",
82
+ ])
83
+ const wrapperSlot = () => (ctx.current() ? "tabs-v2-trigger-wrapper" : "tabs-trigger-wrapper")
84
+ const triggerSlot = () => (ctx.current() ? "tabs-v2-trigger" : "tabs-trigger")
85
+ const closeSlot = () => (ctx.current() ? "tabs-v2-trigger-close-button" : "tabs-trigger-close-button")
86
+ return (
87
+ <div
88
+ data-slot={wrapperSlot()}
89
+ data-value={props.value}
90
+ classList={{
91
+ ...local.classList,
92
+ [local.class ?? ""]: !!local.class,
93
+ }}
94
+ onMouseDown={(event) => {
95
+ if (event.button !== 1 || !local.onMiddleClick) return
96
+ event.preventDefault()
97
+ }}
98
+ onAuxClick={(event) => {
99
+ if (event.button !== 1 || !local.onMiddleClick) return
100
+ event.preventDefault()
101
+ local.onMiddleClick()
102
+ }}
103
+ >
104
+ <Trigger
105
+ {...rest}
106
+ dir={local.dir ?? "auto"}
107
+ data-slot={triggerSlot()}
108
+ data-value={props.value}
109
+ classList={{ [local.classes?.button ?? ""]: !!local.classes?.button }}
110
+ >
111
+ <Show when={ctx.current()} fallback={local.children}>
112
+ <span class="inline-flex items-center gap-2" data-slot="tabs-v2-trigger-content">
113
+ {local.children}
114
+ <Show when={local.subtext}>
115
+ {(subtext) => (
116
+ <span data-slot="tabs-v2-subtext" class="ms-2 text-xs text-text-weak">
117
+ {subtext()}
118
+ </span>
119
+ )}
120
+ </Show>
121
+ </span>
122
+ </Show>
123
+ </Trigger>
124
+ <Show when={local.closeButton}>
125
+ {(closeButton) => (
126
+ <div data-slot={closeSlot()} data-hidden={local.hideCloseButton ? "" : undefined}>
127
+ {closeButton()}
128
+ </div>
129
+ )}
130
+ </Show>
131
+ </div>
132
+ )
133
+ }
134
+
135
+ function TabsCloseButton(props: TabsCloseButtonProps) {
136
+ const i18n = useI18n()
137
+ const [local, rest] = splitProps(props, ["class", "classList", "onClick", "onPointerDown", "aria-label"])
138
+ return (
139
+ <button
140
+ type="button"
141
+ {...rest}
142
+ aria-label={local["aria-label"] ?? i18n.t("ui.tabs.close")}
143
+ data-slot="tabs-close-button"
144
+ classList={{
145
+ [local.class ?? ""]: !!local.class,
146
+ ...local.classList,
147
+ }}
148
+ onPointerDown={(event) => {
149
+ event.stopPropagation()
150
+ if (typeof local.onPointerDown === "function") local.onPointerDown(event)
151
+ }}
152
+ onClick={(event) => {
153
+ event.preventDefault()
154
+ event.stopPropagation()
155
+ if (typeof local.onClick === "function") local.onClick(event)
156
+ }}
157
+ >
158
+ <svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg" aria-hidden="true">
159
+ <path d="M10.8889 3.11108L3.11108 10.8889" stroke="currentColor" stroke-linejoin="round" />
160
+ <path d="M3.11108 3.11108L10.8889 10.8889" stroke="currentColor" stroke-linejoin="round" />
161
+ </svg>
162
+ </button>
163
+ )
164
+ }
165
+
166
+ function TabsContent(props: ParentProps<TabsContentProps>) {
167
+ const ctx = useContext(TabsContext)
168
+ const [local, rest] = splitProps(props, ["class", "classList", "children"])
169
+ return (
170
+ <Content
171
+ {...rest}
172
+ data-slot={ctx.current() ? "tabs-v2-content" : "tabs-content"}
173
+ classList={{
174
+ ...local.classList,
175
+ [local.class ?? ""]: !!local.class,
176
+ }}
177
+ >
178
+ {local.children}
179
+ </Content>
180
+ )
181
+ }
182
+
183
+ const TabsSectionTitle: Component<ParentProps> = (props) => {
184
+ const ctx = useContext(TabsContext)
185
+ return <div data-slot={ctx.current() ? "tabs-v2-section-title" : "tabs-section-title"}>{props.children}</div>
186
+ }
187
+
188
+ export const Tabs = Object.assign(TabsRoot, {
189
+ List: TabsList,
190
+ Trigger: TabsTrigger,
191
+ CloseButton: TabsCloseButton,
192
+ Content: TabsContent,
193
+ SectionTitle: TabsSectionTitle,
194
+ })
@@ -93,6 +93,9 @@
93
93
  [data-slot="dialog-description"] {
94
94
  flex: none;
95
95
  flex-grow: 0;
96
+ min-width: 0;
97
+ max-width: 100%;
98
+ overflow-wrap: anywhere;
96
99
  user-select: none;
97
100
  font-weight: 440;
98
101
  font-size: 13px;
@@ -1,7 +1,7 @@
1
- import { Dialog as Kobalte } from "@kobalte/core/dialog"
1
+ import { CloseButton, Content, Description, Title } from "@kobalte/core/dialog"
2
2
  import { type ComponentProps, type JSXElement, type ParentProps, Show, children, splitProps } from "solid-js"
3
3
  import { useI18n } from "../../context/i18n"
4
- import "./dialog-v2.css"
4
+ import "./dialog.css"
5
5
 
6
6
  export interface DialogProps extends ParentProps {
7
7
  size?: "normal" | "large" | "x-large"
@@ -36,7 +36,7 @@ export function DialogBody(props: ParentProps & { class?: ComponentProps<"div">[
36
36
  }
37
37
 
38
38
  export function DialogTitle(props: ParentProps) {
39
- return <Kobalte.Title data-slot="dialog-header-title">{props.children}</Kobalte.Title>
39
+ return <Title data-slot="dialog-header-title">{props.children}</Title>
40
40
  }
41
41
 
42
42
  export function DialogTitleGroup(props: DialogTitleGroupProps) {
@@ -45,8 +45,8 @@ export function DialogTitleGroup(props: DialogTitleGroupProps) {
45
45
 
46
46
  return (
47
47
  <div data-slot="dialog-title-group">
48
- <Show when={title()}>{(t) => <Kobalte.Title data-slot="dialog-title">{t()}</Kobalte.Title>}</Show>
49
- <Kobalte.Description data-slot="dialog-description">{description()}</Kobalte.Description>
48
+ <Show when={title()}>{(t) => <Title data-slot="dialog-title">{t()}</Title>}</Show>
49
+ <Description data-slot="dialog-description">{description()}</Description>
50
50
  </div>
51
51
  )
52
52
  }
@@ -59,8 +59,8 @@ export function DialogHeader(props: DialogHeaderProps) {
59
59
  return (
60
60
  <div data-slot="dialog-header" data-hide-close={hideClose() ? "" : undefined}>
61
61
  {local.children}
62
- {!hideClose() && (
63
- <Kobalte.CloseButton data-slot="dialog-close-button" aria-label={local.closeLabel ?? i18n.t("ui.common.close")}>
62
+ <Show when={!hideClose()}>
63
+ <CloseButton data-slot="dialog-close-button" aria-label={local.closeLabel ?? i18n.t("ui.common.close")}>
64
64
  <svg
65
65
  width="16"
66
66
  height="16"
@@ -75,8 +75,8 @@ export function DialogHeader(props: DialogHeaderProps) {
75
75
  stroke-linejoin="round"
76
76
  />
77
77
  </svg>
78
- </Kobalte.CloseButton>
79
- )}
78
+ </CloseButton>
79
+ </Show>
80
80
  </div>
81
81
  )
82
82
  }
@@ -92,7 +92,7 @@ export function Dialog(props: DialogProps) {
92
92
  data-size={local.size || "normal"}
93
93
  >
94
94
  <div data-slot="dialog-container" class={local.containerClass}>
95
- <Kobalte.Content
95
+ <Content
96
96
  data-slot="dialog-content"
97
97
  classList={{
98
98
  ...local.classList,
@@ -108,10 +108,8 @@ export function Dialog(props: DialogProps) {
108
108
  }}
109
109
  >
110
110
  {local.children}
111
- </Kobalte.Content>
111
+ </Content>
112
112
  </div>
113
113
  </div>
114
114
  )
115
115
  }
116
-
117
- export const DialogV2 = Dialog
@@ -39,6 +39,39 @@
39
39
  }
40
40
  }
41
41
 
42
+ [data-component="tooltip-v2"][data-appearance="standard"] {
43
+ display: block;
44
+ max-width: 320px;
45
+ padding: 2px 8px;
46
+ border: 1px solid var(--border-weak-base, rgba(0, 0, 0, 0.07));
47
+ border-radius: var(--radius-sm);
48
+ background: var(--surface-float-base);
49
+ color: var(--text-invert-strong);
50
+ box-shadow: var(--shadow-md);
51
+ font-family: var(--font-family-sans);
52
+ font-size: var(--font-size-small);
53
+ font-style: normal;
54
+ font-weight: var(--font-weight-medium);
55
+ line-height: var(--line-height-large);
56
+ letter-spacing: var(--letter-spacing-normal);
57
+ font-variant-numeric: normal;
58
+ font-variation-settings: normal;
59
+ user-select: text;
60
+ animation: none;
61
+
62
+ &[data-closed]:not([data-force-open="true"]) {
63
+ opacity: 0;
64
+ animation: none;
65
+ }
66
+ }
67
+
68
+ [data-component="tooltip-v2"][data-appearance="large"] {
69
+ padding: 12px;
70
+ font-size: 13px;
71
+ line-height: var(--line-height-compact);
72
+ letter-spacing: -0.04px;
73
+ }
74
+
42
75
  @keyframes tooltipV2In {
43
76
  from {
44
77
  opacity: 0;
@@ -1,19 +1,21 @@
1
- import { Tooltip as KobalteTooltip } from "@kobalte/core/tooltip"
2
- import { createEffect, Match, onCleanup, splitProps, Switch, type JSX } from "solid-js"
1
+ import { Content, Portal, Root, Trigger } from "@kobalte/core/tooltip"
2
+ import { createEffect, Match, onCleanup, splitProps, Switch, untrack, type JSX } from "solid-js"
3
3
  import type { ComponentProps } from "solid-js"
4
4
  import { createStore } from "solid-js/store"
5
- import "./tooltip-v2.css"
5
+ import "./tooltip.css"
6
6
 
7
- export interface TooltipV2Props extends ComponentProps<typeof KobalteTooltip> {
7
+ export interface TooltipProps extends ComponentProps<typeof Root> {
8
8
  value: JSX.Element
9
+ appearance?: "standard" | "compact" | "large"
9
10
  class?: string
10
11
  contentClass?: string
11
12
  contentStyle?: JSX.CSSProperties
12
13
  inactive?: boolean
13
14
  forceOpen?: boolean
15
+ triggerTabIndex?: number
14
16
  }
15
17
 
16
- export function TooltipV2(props: TooltipV2Props) {
18
+ export function Tooltip(props: TooltipProps) {
17
19
  let ref: HTMLDivElement | undefined
18
20
  const [state, setState] = createStore({
19
21
  open: false,
@@ -22,16 +24,19 @@ export function TooltipV2(props: TooltipV2Props) {
22
24
  })
23
25
  const [local, others] = splitProps(props, [
24
26
  "children",
27
+ "appearance",
25
28
  "class",
26
29
  "contentClass",
27
30
  "contentStyle",
28
31
  "inactive",
29
32
  "forceOpen",
33
+ "triggerTabIndex",
30
34
  "ignoreSafeArea",
31
35
  "value",
32
36
  ])
33
37
 
34
38
  const close = () => setState("open", false)
39
+ const controlled = () => local.forceOpen !== undefined
35
40
 
36
41
  const inside = () => {
37
42
  const active = document.activeElement
@@ -40,7 +45,7 @@ export function TooltipV2(props: TooltipV2Props) {
40
45
  }
41
46
 
42
47
  const drop = (expand = state.expand) => {
43
- if (expand) return
48
+ if (expand || !state.block) return
44
49
  if (ref?.matches(":hover")) return
45
50
  if (inside()) return
46
51
  setState("block", false)
@@ -69,7 +74,7 @@ export function TooltipV2(props: TooltipV2Props) {
69
74
 
70
75
  createEffect(() => {
71
76
  if (!ref) return
72
- sync()
77
+ untrack(sync)
73
78
  const obs = new MutationObserver(sync)
74
79
  obs.observe(ref, {
75
80
  subtree: true,
@@ -86,16 +91,16 @@ export function TooltipV2(props: TooltipV2Props) {
86
91
  <Switch>
87
92
  <Match when={local.inactive}>{local.children}</Match>
88
93
  <Match when={true}>
89
- <KobalteTooltip
94
+ <Root
90
95
  gutter={4}
91
96
  openDelay={400}
92
97
  skipDelayDuration={300}
93
98
  {...others}
94
99
  closeDelay={0}
95
100
  ignoreSafeArea={local.ignoreSafeArea ?? true}
96
- open={local.forceOpen || state.open}
101
+ open={controlled() ? local.forceOpen : state.open}
97
102
  onOpenChange={(open) => {
98
- if (local.forceOpen) return
103
+ if (controlled()) return
99
104
  if (state.block && open) return
100
105
  if (justClickedTrigger) {
101
106
  justClickedTrigger = false
@@ -104,9 +109,10 @@ export function TooltipV2(props: TooltipV2Props) {
104
109
  setState("open", open)
105
110
  }}
106
111
  >
107
- <KobalteTooltip.Trigger
112
+ <Trigger
108
113
  ref={ref}
109
114
  as="div"
115
+ tabIndex={local.triggerTabIndex}
110
116
  data-component="tooltip-v2-trigger"
111
117
  class={local.class}
112
118
  onPointerDownCapture={arm}
@@ -118,14 +124,15 @@ export function TooltipV2(props: TooltipV2Props) {
118
124
  onFocusOut={() => requestAnimationFrame(() => drop())}
119
125
  >
120
126
  {local.children}
121
- </KobalteTooltip.Trigger>
122
- <KobalteTooltip.Portal>
123
- <KobalteTooltip.Content
127
+ </Trigger>
128
+ <Portal>
129
+ <Content
124
130
  ref={(el) => {
125
131
  const theme = ref?.closest("[data-theme]")?.getAttribute("data-theme")
126
132
  if (theme) el.setAttribute("data-theme", theme)
127
133
  }}
128
134
  data-component="tooltip-v2"
135
+ data-appearance={local.appearance ?? "compact"}
129
136
  data-placement={props.placement}
130
137
  data-force-open={local.forceOpen}
131
138
  class={local.contentClass}
@@ -138,9 +145,9 @@ export function TooltipV2(props: TooltipV2Props) {
138
145
  }}
139
146
  >
140
147
  {local.value}
141
- </KobalteTooltip.Content>
142
- </KobalteTooltip.Portal>
143
- </KobalteTooltip>
148
+ </Content>
149
+ </Portal>
150
+ </Root>
144
151
  </Match>
145
152
  </Switch>
146
153
  )
@@ -401,4 +401,9 @@ input:where([type="button"], [type="reset"], [type="submit"]),
401
401
  [contenteditable="true"] {
402
402
  font-size: 16px !important;
403
403
  }
404
+
405
+ input::placeholder,
406
+ textarea::placeholder {
407
+ font-size: 13px;
408
+ }
404
409
  }
@@ -1,20 +1,30 @@
1
+ @property --file-tree-v2-row-overlay {
2
+ syntax: "<color>";
3
+ inherits: true;
4
+ initial-value: transparent;
5
+ }
6
+
1
7
  [data-component="file-tree-v2"] {
2
8
  display: flex;
3
9
  flex-direction: column;
4
10
  gap: 2px;
11
+ width: max-content;
12
+ min-width: 100%;
5
13
  }
6
14
 
7
15
  [data-component="file-tree-v2"] [data-slot="file-tree-v2-row"] {
16
+ --file-tree-v2-row-overlay: transparent;
17
+
8
18
  box-sizing: border-box;
9
19
  width: 100%;
10
- min-width: 0;
20
+ min-width: max-content;
11
21
  height: 28px;
12
22
  display: flex;
13
23
  align-items: center;
14
24
  justify-content: flex-start;
15
25
  gap: 6px;
16
26
  padding-inline-end: 8px;
17
- overflow: visible;
27
+ overflow: clip;
18
28
  border: none;
19
29
  border-radius: 6px;
20
30
  background-color: transparent;
@@ -24,7 +34,12 @@
24
34
  scroll-margin-block: 8px;
25
35
  transition:
26
36
  background-color 120ms ease,
27
- color 120ms ease;
37
+ color 120ms ease,
38
+ --file-tree-v2-row-overlay 120ms ease;
39
+ }
40
+
41
+ [data-component="file-tree-v2"] [data-slot="file-tree-v2-label"] {
42
+ margin-inline-end: 12px;
28
43
  }
29
44
 
30
45
  [data-component="file-tree-v2"] [data-slot="file-tree-v2-row"][data-ignored] {
@@ -32,10 +47,14 @@
32
47
  }
33
48
 
34
49
  [data-component="file-tree-v2"] [data-slot="file-tree-v2-row"]:hover {
50
+ --file-tree-v2-row-overlay: var(--v2-overlay-simple-overlay-hover);
51
+
35
52
  background-color: var(--v2-overlay-simple-overlay-hover);
36
53
  }
37
54
 
38
55
  [data-component="file-tree-v2"] [data-slot="file-tree-v2-row"][data-selected] {
56
+ --file-tree-v2-row-overlay: var(--v2-overlay-simple-overlay-pressed);
57
+
39
58
  color: var(--v2-text-text-base);
40
59
  background-color: var(--v2-overlay-simple-overlay-pressed);
41
60
  }
@@ -44,6 +63,14 @@
44
63
  background-color: var(--v2-overlay-simple-overlay-pressed);
45
64
  }
46
65
 
66
+ [data-component="file-tree-v2"]
67
+ [data-slot="file-tree-v2-context-trigger"][data-context-menu-open]
68
+ [data-slot="file-tree-v2-row"]:not([data-selected]) {
69
+ --file-tree-v2-row-overlay: var(--v2-overlay-simple-overlay-hover);
70
+
71
+ background-color: var(--v2-overlay-simple-overlay-hover);
72
+ }
73
+
47
74
  [data-component="file-tree-v2"] [data-slot="file-tree-v2-guide"] {
48
75
  position: absolute;
49
76
  top: 0;
@@ -110,6 +137,9 @@
110
137
  [data-component="file-tree-v2"] [data-slot="file-tree-v2-change"] {
111
138
  box-sizing: border-box;
112
139
  flex: none;
140
+ position: sticky;
141
+ inset-inline-end: 8px;
142
+ z-index: 1;
113
143
  display: flex;
114
144
  flex-direction: row;
115
145
  align-items: center;
@@ -126,6 +156,37 @@
126
156
  font-feature-settings:
127
157
  "tnum" on,
128
158
  "lnum" on;
159
+ background:
160
+ linear-gradient(var(--file-tree-v2-row-overlay), var(--file-tree-v2-row-overlay)), var(--v2-background-bg-base);
161
+ }
162
+
163
+ [data-component="file-tree-v2"] [data-slot="file-tree-v2-change"]::before {
164
+ content: "";
165
+ position: absolute;
166
+ inset-block: 0;
167
+ inset-inline-end: 100%;
168
+ width: 16px;
169
+ pointer-events: none;
170
+ background:
171
+ linear-gradient(to right, transparent, var(--file-tree-v2-row-overlay)),
172
+ linear-gradient(to right, transparent, var(--v2-background-bg-base));
173
+ }
174
+
175
+ [data-component="file-tree-v2"]:dir(rtl) [data-slot="file-tree-v2-change"]::before {
176
+ background:
177
+ linear-gradient(to left, transparent, var(--file-tree-v2-row-overlay)),
178
+ linear-gradient(to left, transparent, var(--v2-background-bg-base));
179
+ }
180
+
181
+ [data-component="file-tree-v2"] [data-slot="file-tree-v2-change"]::after {
182
+ content: "";
183
+ position: absolute;
184
+ inset-block: 0;
185
+ inset-inline-start: 100%;
186
+ width: 16px;
187
+ pointer-events: none;
188
+ background:
189
+ linear-gradient(var(--file-tree-v2-row-overlay), var(--file-tree-v2-row-overlay)), var(--v2-background-bg-base);
129
190
  }
130
191
 
131
192
  [data-component="file-tree-v2"] [data-slot="file-tree-v2-change"][data-change="modified"] {
@@ -6,47 +6,31 @@
6
6
  @import "./base.css" layer(base);
7
7
  @import "katex/dist/katex.min.css" layer(base);
8
8
 
9
- @import "../components/accordion.css" layer(components);
9
+ @import "../data-display/accordion/accordion.css" layer(components);
10
10
  @import "../components/animated-number.css" layer(components);
11
11
  @import "../components/app-icon.css" layer(components);
12
- @import "../components/avatar.css" layer(components);
13
- @import "../components/button.css" layer(components);
14
12
  @import "../components/card.css" layer(components);
15
- @import "../components/checkbox.css" layer(components);
13
+ @import "../forms/checkbox/checkbox.css" layer(components);
16
14
  @import "../components/collapsible.css" layer(components);
17
- @import "../components/diff-changes.css" layer(components);
18
15
  @import "../components/context-menu.css" layer(components);
19
- @import "../components/dropdown-menu.css" layer(components);
20
- @import "../components/dialog.css" layer(components);
21
16
  @import "../components/file-icon.css" layer(components);
22
17
  @import "../components/hover-card.css" layer(components);
23
18
  @import "../components/provider-icon.css" layer(components);
24
19
  @import "../components/dock-surface.css" layer(components);
25
- @import "../components/icon.css" layer(components);
26
- @import "../components/icon-button.css" layer(components);
27
20
  @import "../components/image-preview.css" layer(components);
28
- @import "../components/keybind.css" layer(components);
21
+ @import "../forms/inline-input/inline-input.css" layer(components);
29
22
  @import "../components/text-field.css" layer(components);
30
- @import "../components/inline-input.css" layer(components);
31
23
  @import "../components/list.css" layer(components);
32
24
  @import "../components/logo.css" layer(components);
33
25
  @import "../components/popover.css" layer(components);
34
26
  @import "../components/progress.css" layer(components);
35
- @import "../components/progress-circle.css" layer(components);
36
- @import "../components/radio-group.css" layer(components);
37
27
  @import "../components/resize-handle.css" layer(components);
38
- @import "../components/select.css" layer(components);
39
28
  @import "../components/spinner.css" layer(components);
40
- @import "../components/switch.css" layer(components);
41
29
  @import "../components/scroll-view.css" layer(components);
42
30
  @import "../components/sticky-accordion-header.css" layer(components);
43
- @import "../components/tabs.css" layer(components);
44
- @import "../components/tag.css" layer(components);
31
+ @import "../navigation/tabs/tabs.css" layer(components);
45
32
  @import "../components/text-reveal.css" layer(components);
46
33
  @import "../components/text-strikethrough.css" layer(components);
47
- @import "../components/text-shimmer.css" layer(components);
48
- @import "../components/toast.css" layer(components);
49
- @import "../components/tooltip.css" layer(components);
50
34
  @import "../components/typewriter.css" layer(components);
51
35
 
52
36
  @import "./utilities.css" layer(utilities);
@@ -240,6 +240,7 @@
240
240
  --color-v2-background-bg-layer-04: var(--v2-background-bg-layer-04);
241
241
  --color-v2-background-bg-inverse: var(--v2-background-bg-inverse);
242
242
  --color-v2-background-bg-contrast: var(--v2-background-bg-contrast);
243
+ --color-v2-background-bg-icon-button-contrast: var(--v2-background-bg-icon-button-contrast);
243
244
  --color-v2-background-bg-button-neutral: var(--v2-background-bg-button-neutral);
244
245
  --color-v2-background-bg-accent: var(--v2-background-bg-accent);
245
246
  --color-v2-text-text-base: var(--v2-text-text-base);
@@ -252,6 +253,7 @@
252
253
  --color-v2-text-text-code-accent: var(--v2-text-text-code-accent);
253
254
  --color-v2-icon-icon-base: var(--v2-icon-icon-base);
254
255
  --color-v2-icon-icon-muted: var(--v2-icon-icon-muted);
256
+ --color-v2-icon-icon-faint: var(--v2-icon-icon-faint);
255
257
  --color-v2-icon-icon-inverse: var(--v2-icon-icon-inverse);
256
258
  --color-v2-icon-icon-contrast: var(--v2-icon-icon-contrast);
257
259
  --color-v2-icon-icon-accent: var(--v2-icon-icon-accent);
@@ -1,7 +1,21 @@
1
1
  @layer theme, base, components, utilities;
2
2
 
3
3
  @import "tailwindcss/theme.css" layer(theme);
4
- @import "tailwindcss/utilities.css" layer(utilities) source("../../../../");
4
+ @import "tailwindcss/utilities.css" layer(utilities) source(none);
5
+ @source "../../../../app/src";
6
+ @source "../../../../app/index.html";
7
+ @source not "../../../../app/src/i18n";
8
+ @source not "../../../../app/src/**/*.test.{ts,tsx}";
9
+ @source "../../../../desktop/src/renderer";
10
+ @source not "../../../../desktop/src/renderer/**/*.test.{ts,tsx}";
11
+ @source "../../../../enterprise/src";
12
+ @source "../../../../session-ui/src";
13
+ @source not "../../../../session-ui/src/**/*.test.{ts,tsx}";
14
+ @source "../../../../storybook";
15
+ @source "../../../src";
16
+ @source not "../../../src/assets";
17
+ @source not "../../../src/i18n";
18
+ @source not "../../../src/**/*.test.{ts,tsx}";
5
19
  @import "./utilities.css";
6
20
 
7
21
  @import "../index.css";
@@ -51,6 +65,9 @@
51
65
  --leading-lg: var(--line-height-large);
52
66
  --leading-xl: var(--line-height-x-large);
53
67
  --leading-2xl: var(--line-height-2x-large);
68
+ --leading-text-tight: var(--line-height-tight);
69
+ --leading-text-compact: var(--line-height-compact);
70
+ --leading-text-base: var(--line-height-base);
54
71
 
55
72
  --tracking-normal: var(--letter-spacing-normal);
56
73
  --tracking-tight: var(--letter-spacing-tight);