@tulipfarm/sprout 0.3.1 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (355) hide show
  1. package/README.md +75 -68
  2. package/dist/components/accordion.d.ts +2 -2
  3. package/dist/components/accordion.js +9 -9
  4. package/dist/components/agent-avatar.d.ts +27 -0
  5. package/dist/components/agent-avatar.js +67 -0
  6. package/dist/components/agent-fanout.d.ts +2 -2
  7. package/dist/components/agent-fanout.js +65 -87
  8. package/dist/components/alert-dialog.d.ts +8 -8
  9. package/dist/components/alert-dialog.js +21 -21
  10. package/dist/components/alert.d.ts +6 -6
  11. package/dist/components/alert.js +13 -13
  12. package/dist/components/aspect-ratio.d.ts +2 -2
  13. package/dist/components/aspect-ratio.js +2 -2
  14. package/dist/components/attachment.d.ts +18 -18
  15. package/dist/components/attachment.js +82 -115
  16. package/dist/components/avatar.d.ts +9 -17
  17. package/dist/components/avatar.js +14 -51
  18. package/dist/components/badge.d.ts +4 -4
  19. package/dist/components/badge.js +18 -18
  20. package/dist/components/board.d.ts +107 -0
  21. package/dist/components/board.js +640 -0
  22. package/dist/components/brand-icon.d.ts +6 -6
  23. package/dist/components/brand-icon.js +55 -63
  24. package/dist/components/breadcrumb.d.ts +11 -11
  25. package/dist/components/breadcrumb.js +16 -18
  26. package/dist/components/button-group.d.ts +6 -6
  27. package/dist/components/button-group.js +14 -14
  28. package/dist/components/button.d.ts +13 -13
  29. package/dist/components/button.js +31 -57
  30. package/dist/components/calendar.d.ts +5 -5
  31. package/dist/components/calendar.js +44 -53
  32. package/dist/components/canvas.d.ts +4 -4
  33. package/dist/components/canvas.js +39 -46
  34. package/dist/components/card.d.ts +7 -7
  35. package/dist/components/card.js +17 -17
  36. package/dist/components/carousel.d.ts +7 -7
  37. package/dist/components/carousel.js +57 -75
  38. package/dist/components/chart.d.ts +5 -112
  39. package/dist/components/chart.js +5 -172
  40. package/dist/components/chat-confirmation.d.ts +10 -10
  41. package/dist/components/chat-confirmation.js +32 -38
  42. package/dist/components/chat-input.d.ts +4 -4
  43. package/dist/components/chat-input.js +74 -81
  44. package/dist/components/chat-plan.d.ts +2 -2
  45. package/dist/components/chat-plan.js +15 -20
  46. package/dist/components/chat-sources.d.ts +8 -8
  47. package/dist/components/chat-sources.js +18 -27
  48. package/dist/components/checkbox.d.ts +1 -1
  49. package/dist/components/checkbox.js +9 -9
  50. package/dist/components/choice-list.d.ts +2 -2
  51. package/dist/components/choice-list.js +16 -18
  52. package/dist/components/code-block.d.ts +5 -5
  53. package/dist/components/code-block.js +26 -26
  54. package/dist/components/collapsible.d.ts +1 -1
  55. package/dist/components/collapsible.js +7 -11
  56. package/dist/components/combobox.d.ts +12 -6
  57. package/dist/components/combobox.js +27 -26
  58. package/dist/components/command.d.ts +13 -13
  59. package/dist/components/command.js +61 -73
  60. package/dist/components/context-menu.d.ts +5 -5
  61. package/dist/components/context-menu.js +22 -22
  62. package/dist/components/dialog.d.ts +6 -6
  63. package/dist/components/dialog.js +23 -28
  64. package/dist/components/direction.d.ts +1 -1
  65. package/dist/components/direction.js +1 -1
  66. package/dist/components/dropdown-menu.d.ts +5 -5
  67. package/dist/components/dropdown-menu.js +20 -20
  68. package/dist/components/field.d.ts +11 -11
  69. package/dist/components/field.js +41 -61
  70. package/dist/components/file-explorer.d.ts +2 -2
  71. package/dist/components/file-explorer.js +89 -105
  72. package/dist/components/file-viewer.d.ts +10 -10
  73. package/dist/components/file-viewer.js +112 -140
  74. package/dist/components/form.d.ts +7 -7
  75. package/dist/components/form.js +24 -28
  76. package/dist/components/glass-banner.d.ts +3 -3
  77. package/dist/components/glass-banner.js +21 -24
  78. package/dist/components/gradient-banner.d.ts +7 -7
  79. package/dist/components/gradient-banner.js +13 -22
  80. package/dist/components/hover-card.d.ts +4 -4
  81. package/dist/components/hover-card.js +6 -6
  82. package/dist/components/input-group.d.ts +18 -18
  83. package/dist/components/input-group.js +25 -39
  84. package/dist/components/input-otp.d.ts +14 -10
  85. package/dist/components/input-otp.js +15 -15
  86. package/dist/components/input.d.ts +3 -3
  87. package/dist/components/input.js +7 -7
  88. package/dist/components/kbd.d.ts +3 -3
  89. package/dist/components/kbd.js +5 -5
  90. package/dist/components/label.d.ts +2 -2
  91. package/dist/components/label.js +2 -2
  92. package/dist/components/mention-list.d.ts +3 -3
  93. package/dist/components/mention-list.js +10 -10
  94. package/dist/components/menubar.d.ts +6 -6
  95. package/dist/components/menubar.js +22 -22
  96. package/dist/components/message-actions.d.ts +2 -2
  97. package/dist/components/message-actions.js +29 -31
  98. package/dist/components/message-response.d.ts +3 -3
  99. package/dist/components/message-response.js +18 -18
  100. package/dist/components/message-scroller.d.ts +12 -12
  101. package/dist/components/message-scroller.js +44 -56
  102. package/dist/components/message.d.ts +11 -11
  103. package/dist/components/message.js +25 -25
  104. package/dist/components/navigation-menu.d.ts +2 -2
  105. package/dist/components/navigation-menu.js +15 -15
  106. package/dist/components/notice-banner.d.ts +2 -2
  107. package/dist/components/notice-banner.js +2 -2
  108. package/dist/components/page-content.d.ts +2 -2
  109. package/dist/components/page-content.js +2 -2
  110. package/dist/components/page-header.d.ts +1 -1
  111. package/dist/components/page-header.js +17 -17
  112. package/dist/components/pagination.d.ts +9 -9
  113. package/dist/components/pagination.js +17 -17
  114. package/dist/components/plan-outline.d.ts +2 -2
  115. package/dist/components/plan-outline.js +43 -60
  116. package/dist/components/popover.d.ts +6 -6
  117. package/dist/components/popover.js +15 -15
  118. package/dist/components/presence-cursor.d.ts +2 -2
  119. package/dist/components/presence-cursor.js +3 -3
  120. package/dist/components/progress.d.ts +1 -1
  121. package/dist/components/progress.js +8 -8
  122. package/dist/components/prompt-list.d.ts +3 -3
  123. package/dist/components/prompt-list.js +6 -6
  124. package/dist/components/questionnaire.d.ts +19 -19
  125. package/dist/components/questionnaire.js +183 -242
  126. package/dist/components/radio-group.d.ts +2 -2
  127. package/dist/components/radio-group.js +6 -6
  128. package/dist/components/reasoning-effort.d.ts +3 -3
  129. package/dist/components/reasoning-effort.js +9 -12
  130. package/dist/components/record-list.d.ts +66 -0
  131. package/dist/components/record-list.js +151 -0
  132. package/dist/components/resizable.d.ts +5 -5
  133. package/dist/components/resizable.js +76 -102
  134. package/dist/components/result-card.d.ts +4 -4
  135. package/dist/components/result-card.js +42 -53
  136. package/dist/components/result-notice.d.ts +18 -0
  137. package/dist/components/result-notice.js +29 -0
  138. package/dist/components/review-card.d.ts +6 -6
  139. package/dist/components/review-card.js +18 -18
  140. package/dist/components/rich-text-editor.d.ts +5 -5
  141. package/dist/components/rich-text-editor.js +56 -72
  142. package/dist/components/schema-diagram.d.ts +3 -3
  143. package/dist/components/schema-diagram.js +39 -53
  144. package/dist/components/scroll-area.d.ts +3 -3
  145. package/dist/components/scroll-area.js +10 -14
  146. package/dist/components/search-dialog.d.ts +6 -6
  147. package/dist/components/search-dialog.js +16 -16
  148. package/dist/components/search-field.d.ts +1 -1
  149. package/dist/components/search-field.js +11 -11
  150. package/dist/components/select.d.ts +5 -9
  151. package/dist/components/select.js +20 -20
  152. package/dist/components/selection-slot.d.ts +2 -2
  153. package/dist/components/selection-slot.js +6 -9
  154. package/dist/components/separator.d.ts +15 -15
  155. package/dist/components/separator.js +22 -27
  156. package/dist/components/settings-list.d.ts +3 -3
  157. package/dist/components/settings-list.js +5 -5
  158. package/dist/components/sheet.d.ts +6 -6
  159. package/dist/components/sheet.js +27 -27
  160. package/dist/components/sidebar.d.ts +22 -22
  161. package/dist/components/sidebar.js +57 -58
  162. package/dist/components/skeleton.d.ts +5 -5
  163. package/dist/components/skeleton.js +14 -21
  164. package/dist/components/slider.d.ts +2 -2
  165. package/dist/components/slider.js +6 -6
  166. package/dist/components/spinner.d.ts +7 -7
  167. package/dist/components/spinner.js +22 -26
  168. package/dist/components/sql-viewer.d.ts +14 -14
  169. package/dist/components/sql-viewer.js +99 -128
  170. package/dist/components/state-panel-samples.d.ts +2 -2
  171. package/dist/components/state-panel-samples.js +209 -245
  172. package/dist/components/state-panel.d.ts +2 -35
  173. package/dist/components/state-panel.js +2 -29
  174. package/dist/components/state-sample.d.ts +8 -8
  175. package/dist/components/state-sample.js +18 -31
  176. package/dist/components/switch.d.ts +3 -3
  177. package/dist/components/switch.js +7 -7
  178. package/dist/components/table-nuqs.d.ts +2 -2
  179. package/dist/components/table-nuqs.js +11 -12
  180. package/dist/components/table.d.ts +4 -4
  181. package/dist/components/table.js +166 -235
  182. package/dist/components/tabs.d.ts +2 -2
  183. package/dist/components/tabs.js +12 -12
  184. package/dist/components/textarea.d.ts +2 -2
  185. package/dist/components/textarea.js +6 -8
  186. package/dist/components/timeline.d.ts +3 -0
  187. package/dist/components/timeline.js +3 -0
  188. package/dist/components/toast.d.ts +2 -2
  189. package/dist/components/toast.js +19 -25
  190. package/dist/components/toggle-group.d.ts +4 -4
  191. package/dist/components/toggle-group.js +18 -20
  192. package/dist/components/toggle.d.ts +4 -4
  193. package/dist/components/toggle.js +8 -8
  194. package/dist/components/tool-activity.d.ts +1 -1
  195. package/dist/components/tool-activity.js +83 -110
  196. package/dist/components/toolbar-status.d.ts +2 -2
  197. package/dist/components/toolbar-status.js +7 -7
  198. package/dist/components/tooltip.d.ts +5 -5
  199. package/dist/components/tooltip.js +12 -11
  200. package/dist/components/typed-text.d.ts +2 -2
  201. package/dist/components/typed-text.js +10 -12
  202. package/dist/components/view-switcher.d.ts +51 -0
  203. package/dist/components/view-switcher.js +114 -0
  204. package/dist/index.d.ts +99 -93
  205. package/dist/index.js +99 -93
  206. package/dist/internal/agent-avatar-artwork.d.ts +4 -0
  207. package/dist/internal/agent-avatar-artwork.js +219 -0
  208. package/dist/internal/chart-kit.d.ts +142 -0
  209. package/dist/internal/chart-kit.js +200 -0
  210. package/dist/internal/charts/bars.d.ts +61 -0
  211. package/dist/internal/charts/bars.js +86 -0
  212. package/dist/internal/charts/lines.d.ts +67 -0
  213. package/dist/internal/charts/lines.js +70 -0
  214. package/dist/internal/charts/more.d.ts +77 -0
  215. package/dist/internal/charts/more.js +68 -0
  216. package/dist/internal/charts/parts.d.ts +54 -0
  217. package/dist/internal/charts/parts.js +82 -0
  218. package/dist/internal/charts/timeline-dates.d.ts +38 -0
  219. package/dist/internal/charts/timeline-dates.js +113 -0
  220. package/dist/internal/charts/timeline-window.d.ts +31 -0
  221. package/dist/internal/charts/timeline-window.js +26 -0
  222. package/dist/internal/charts/timeline.d.ts +72 -0
  223. package/dist/internal/charts/timeline.js +287 -0
  224. package/dist/internal/classes.d.ts +1 -1
  225. package/dist/internal/classes.js +7 -9
  226. package/dist/internal/code-tokens.d.ts +2 -2
  227. package/dist/internal/code-tokens.js +12 -12
  228. package/dist/internal/fieldset.d.ts +1 -1
  229. package/dist/internal/fieldset.js +6 -6
  230. package/dist/internal/file-kind.d.ts +1 -1
  231. package/dist/internal/file-kind.js +43 -51
  232. package/dist/internal/flow.d.ts +4 -4
  233. package/dist/internal/flow.js +20 -23
  234. package/dist/internal/hash.d.ts +1 -0
  235. package/dist/internal/hash.js +9 -0
  236. package/dist/internal/languages.js +999 -999
  237. package/dist/internal/message-scroller.d.ts +3 -3
  238. package/dist/internal/message-scroller.js +64 -112
  239. package/dist/internal/pressable.d.ts +1 -1
  240. package/dist/internal/pressable.js +7 -7
  241. package/dist/internal/state-panel.d.ts +35 -0
  242. package/dist/internal/state-panel.js +22 -0
  243. package/dist/internal/syntax.d.ts +2 -2
  244. package/dist/internal/syntax.js +36 -47
  245. package/dist/styles/accordion.css +3 -5
  246. package/dist/styles/agent-fanout.css +64 -60
  247. package/dist/styles/alert-dialog.css +12 -26
  248. package/dist/styles/alert.css +10 -15
  249. package/dist/styles/attachment.css +56 -98
  250. package/dist/styles/avatar.css +14 -33
  251. package/dist/styles/badge.css +11 -36
  252. package/dist/styles/board.css +571 -0
  253. package/dist/styles/brand-icon.css +7 -8
  254. package/dist/styles/breadcrumb.css +4 -7
  255. package/dist/styles/button-group.css +9 -15
  256. package/dist/styles/button.css +45 -175
  257. package/dist/styles/calendar.css +24 -36
  258. package/dist/styles/canvas.css +2 -3
  259. package/dist/styles/card.css +7 -23
  260. package/dist/styles/carousel.css +11 -12
  261. package/dist/styles/chart.css +215 -31
  262. package/dist/styles/chat-input.css +15 -39
  263. package/dist/styles/chat-plan.css +3 -4
  264. package/dist/styles/chat-sources.css +4 -6
  265. package/dist/styles/checkbox.css +11 -25
  266. package/dist/styles/choice-list.css +17 -31
  267. package/dist/styles/code-block.css +11 -25
  268. package/dist/styles/collapsible.css +10 -15
  269. package/dist/styles/combobox.css +24 -17
  270. package/dist/styles/command.css +8 -9
  271. package/dist/styles/context-menu.css +4 -2
  272. package/dist/styles/dialog.css +5 -16
  273. package/dist/styles/dropdown-menu.css +4 -2
  274. package/dist/styles/field.css +15 -21
  275. package/dist/styles/file-explorer.css +19 -33
  276. package/dist/styles/file-viewer.css +13 -17
  277. package/dist/styles/form.css +3 -3
  278. package/dist/styles/glass-banner.css +12 -47
  279. package/dist/styles/gradient-banner.css +16 -39
  280. package/dist/styles/hover-card.css +9 -15
  281. package/dist/styles/index.css +121 -112
  282. package/dist/styles/input-group.css +61 -69
  283. package/dist/styles/input-otp.css +18 -9
  284. package/dist/styles/input.css +19 -11
  285. package/dist/styles/kbd.css +1 -1
  286. package/dist/styles/label.css +9 -30
  287. package/dist/styles/mention-list.css +6 -8
  288. package/dist/styles/menubar.css +9 -8
  289. package/dist/styles/message-actions.css +1 -1
  290. package/dist/styles/message-response.css +3 -5
  291. package/dist/styles/message-scroller.css +14 -21
  292. package/dist/styles/message.css +23 -60
  293. package/dist/styles/navigation-menu.css +15 -30
  294. package/dist/styles/notice-banner.css +1 -2
  295. package/dist/styles/page-header.css +11 -10
  296. package/dist/styles/pagination.css +12 -6
  297. package/dist/styles/plan-outline.css +20 -37
  298. package/dist/styles/popover.css +10 -19
  299. package/dist/styles/presence-cursor.css +1 -2
  300. package/dist/styles/progress.css +2 -4
  301. package/dist/styles/prompt-list.css +6 -17
  302. package/dist/styles/questionnaire.css +16 -40
  303. package/dist/styles/radio-group.css +12 -23
  304. package/dist/styles/reasoning-effort.css +8 -15
  305. package/dist/styles/record-list.css +243 -0
  306. package/dist/styles/resizable.css +10 -11
  307. package/dist/styles/result-card.css +4 -4
  308. package/dist/styles/result-notice.css +80 -0
  309. package/dist/styles/review-card.css +2 -3
  310. package/dist/styles/rich-text-editor.css +4 -5
  311. package/dist/styles/schema-diagram.css +12 -17
  312. package/dist/styles/scroll-area.css +8 -10
  313. package/dist/styles/search-dialog.css +1 -5
  314. package/dist/styles/search-field.css +1 -2
  315. package/dist/styles/select.css +15 -19
  316. package/dist/styles/selection-slot.css +1 -2
  317. package/dist/styles/separator.css +7 -8
  318. package/dist/styles/settings-list.css +1 -2
  319. package/dist/styles/sheet.css +40 -73
  320. package/dist/styles/sidebar.css +32 -34
  321. package/dist/styles/skeleton.css +9 -11
  322. package/dist/styles/slider.css +11 -21
  323. package/dist/styles/spinner.css +2 -2
  324. package/dist/styles/sql-viewer.css +29 -29
  325. package/dist/styles/state-panel.css +8 -9
  326. package/dist/styles/state-sample.css +20 -33
  327. package/dist/styles/switch.css +11 -18
  328. package/dist/styles/table.css +62 -81
  329. package/dist/styles/tabs.css +13 -19
  330. package/dist/styles/textarea.css +3 -3
  331. package/dist/styles/themes/chatgpt.css +11 -23
  332. package/dist/styles/themes/claude.css +12 -24
  333. package/dist/styles/themes/cloudflare.css +11 -23
  334. package/dist/styles/themes/discord.css +11 -23
  335. package/dist/styles/themes/github.css +11 -23
  336. package/dist/styles/themes/grok.css +11 -23
  337. package/dist/styles/themes/linear.css +12 -25
  338. package/dist/styles/themes/neutral.css +11 -23
  339. package/dist/styles/themes/notion.css +11 -23
  340. package/dist/styles/themes/perplexity.css +11 -23
  341. package/dist/styles/themes/raycast.css +11 -23
  342. package/dist/styles/themes/spotify.css +11 -23
  343. package/dist/styles/themes/stripe.css +11 -23
  344. package/dist/styles/themes/supabase.css +11 -23
  345. package/dist/styles/themes/tulipfarm.css +9 -10
  346. package/dist/styles/themes/vercel.css +12 -25
  347. package/dist/styles/timeline.css +276 -0
  348. package/dist/styles/toast.css +13 -20
  349. package/dist/styles/toggle-group.css +23 -29
  350. package/dist/styles/toggle.css +14 -14
  351. package/dist/styles/tool-activity.css +7 -13
  352. package/dist/styles/toolbar-status.css +2 -7
  353. package/dist/styles/tooltip.css +15 -21
  354. package/dist/styles/view-switcher.css +297 -0
  355. package/package.json +25 -1
@@ -54,8 +54,7 @@
54
54
 
55
55
  @media (prefers-reduced-motion: no-preference) {
56
56
  .sprout-notice-banner {
57
- animation: sprout-notice-banner-in var(--sprout-motion-normal)
58
- var(--sprout-motion-ease);
57
+ animation: sprout-notice-banner-in var(--sprout-motion-normal) var(--sprout-motion-ease);
59
58
  }
60
59
  }
61
60
 
@@ -29,12 +29,12 @@
29
29
  font-weight: 500;
30
30
  letter-spacing: normal;
31
31
  }
32
- .sprout-page-header-title[data-placement="page"] {
32
+ .sprout-page-header-title[data-placement='page'] {
33
33
  font-size: 1.5rem;
34
34
  line-height: 2rem;
35
35
  overflow-wrap: break-word;
36
36
  }
37
- .sprout-page-header-title[data-placement="chrome"] {
37
+ .sprout-page-header-title[data-placement='chrome'] {
38
38
  min-width: 0;
39
39
  overflow: hidden;
40
40
  font-size: var(--sprout-text-sm);
@@ -65,10 +65,10 @@
65
65
  align-items: center;
66
66
  gap: 0.5rem;
67
67
  }
68
- .sprout-page-header-actions[data-placement="page"] {
68
+ .sprout-page-header-actions[data-placement='page'] {
69
69
  flex-wrap: wrap;
70
70
  }
71
- .sprout-page-header-actions[data-placement="inline"] {
71
+ .sprout-page-header-actions[data-placement='inline'] {
72
72
  justify-content: flex-end;
73
73
  }
74
74
 
@@ -111,19 +111,16 @@
111
111
  outline: var(--sprout-focus-width) solid var(--sprout-focus-ring);
112
112
  outline-offset: 0;
113
113
  }
114
- .sprout-page-header-breadcrumb[data-placement="chrome"]
115
- .sprout-page-header-breadcrumb-item:first-child {
114
+ .sprout-page-header-breadcrumb[data-placement='chrome'] .sprout-page-header-breadcrumb-item:first-child {
116
115
  flex-shrink: 3;
117
116
  min-width: 2rem;
118
117
  }
119
- .sprout-page-header-breadcrumb[data-placement="chrome"]
120
- .sprout-page-header-breadcrumb-link {
118
+ .sprout-page-header-breadcrumb[data-placement='chrome'] .sprout-page-header-breadcrumb-link {
121
119
  min-width: 0;
122
120
  overflow: hidden;
123
121
  text-overflow: ellipsis;
124
122
  }
125
- .sprout-page-header-breadcrumb[data-placement="chrome"]
126
- .sprout-page-header-breadcrumb-current {
123
+ .sprout-page-header-breadcrumb[data-placement='chrome'] .sprout-page-header-breadcrumb-current {
127
124
  min-width: 2.5rem;
128
125
  }
129
126
  .sprout-page-header-breadcrumb-separator {
@@ -136,6 +133,10 @@
136
133
  }
137
134
 
138
135
  @media (max-width: 639px) {
136
+ .sprout-page-header-back {
137
+ width: calc(var(--sprout-control-height) - 4px);
138
+ padding-inline: 0;
139
+ }
139
140
  .sprout-page-header-back-label {
140
141
  position: absolute;
141
142
  width: 1px;
@@ -36,10 +36,19 @@
36
36
  display: flex;
37
37
  align-items: center;
38
38
  justify-content: center;
39
- width: 32px;
40
- height: 32px;
39
+ width: var(--sprout-control-height);
40
+ height: var(--sprout-control-height);
41
41
  color: var(--sprout-muted);
42
42
  }
43
+ /* The ellipsis has no size prop, so it matches the links around it. */
44
+ .sprout-pagination-content:has(.sprout-button-size-sm, .sprout-button-size-icon-sm) .sprout-pagination-ellipsis {
45
+ width: calc(var(--sprout-control-height) - 4px);
46
+ height: calc(var(--sprout-control-height) - 4px);
47
+ }
48
+ .sprout-pagination-content:has(.sprout-button-size-lg, .sprout-button-size-icon-lg) .sprout-pagination-ellipsis {
49
+ width: calc(var(--sprout-control-height) + 4px);
50
+ height: calc(var(--sprout-control-height) + 4px);
51
+ }
43
52
  .sprout-pagination-ellipsis > svg {
44
53
  width: 16px;
45
54
  height: 16px;
@@ -61,10 +70,7 @@
61
70
  .sprout-pagination-label {
62
71
  display: none;
63
72
  }
64
- .sprout-pagination-link:is(
65
- .sprout-pagination-previous,
66
- .sprout-pagination-next
67
- ) {
73
+ .sprout-pagination-link:is(.sprout-pagination-previous, .sprout-pagination-next) {
68
74
  aspect-ratio: 1;
69
75
  padding-inline: 0;
70
76
  }
@@ -66,19 +66,19 @@
66
66
  border-start-end-radius: 999px;
67
67
  border-end-end-radius: 999px;
68
68
  }
69
- .sprout-plan-outline-segment[data-mark="running"] {
69
+ .sprout-plan-outline-segment[data-mark='running'] {
70
70
  background: var(--sprout-info);
71
71
  }
72
- .sprout-plan-outline-segment[data-mark="attention"] {
72
+ .sprout-plan-outline-segment[data-mark='attention'] {
73
73
  background: var(--sprout-warning);
74
74
  }
75
- .sprout-plan-outline-segment[data-mark="blocked"] {
75
+ .sprout-plan-outline-segment[data-mark='blocked'] {
76
76
  background: color-mix(in oklab, var(--sprout-muted) 40%, transparent);
77
77
  }
78
- .sprout-plan-outline-segment[data-mark="done"] {
78
+ .sprout-plan-outline-segment[data-mark='done'] {
79
79
  background: var(--sprout-success);
80
80
  }
81
- .sprout-plan-outline-segment[data-mark="failed"] {
81
+ .sprout-plan-outline-segment[data-mark='failed'] {
82
82
  background: var(--sprout-danger);
83
83
  }
84
84
  .sprout-plan-outline-progress-text {
@@ -160,16 +160,16 @@
160
160
  width: 14px;
161
161
  height: 14px;
162
162
  }
163
- [data-mark="running"] > .sprout-plan-outline-row .sprout-plan-outline-mark {
163
+ [data-mark='running'] > .sprout-plan-outline-row .sprout-plan-outline-mark {
164
164
  color: var(--sprout-info);
165
165
  }
166
- [data-mark="attention"] > .sprout-plan-outline-row .sprout-plan-outline-mark {
166
+ [data-mark='attention'] > .sprout-plan-outline-row .sprout-plan-outline-mark {
167
167
  color: var(--sprout-warning);
168
168
  }
169
- [data-mark="done"] > .sprout-plan-outline-row .sprout-plan-outline-mark {
169
+ [data-mark='done'] > .sprout-plan-outline-row .sprout-plan-outline-mark {
170
170
  color: var(--sprout-success);
171
171
  }
172
- [data-mark="failed"] > .sprout-plan-outline-row .sprout-plan-outline-mark {
172
+ [data-mark='failed'] > .sprout-plan-outline-row .sprout-plan-outline-mark {
173
173
  color: var(--sprout-danger);
174
174
  }
175
175
  .sprout-plan-outline-text {
@@ -184,21 +184,13 @@
184
184
  line-height: 1.25rem;
185
185
  overflow-wrap: anywhere;
186
186
  }
187
- [data-kind="group"]
188
- > .sprout-plan-outline-row
189
- .sprout-plan-outline-task-title {
187
+ [data-kind='group'] > .sprout-plan-outline-row .sprout-plan-outline-task-title {
190
188
  font-weight: 500;
191
189
  }
192
- [data-mark="cancelled"]
193
- > .sprout-plan-outline-row
194
- .sprout-plan-outline-task-title {
190
+ [data-mark='cancelled'] > .sprout-plan-outline-row .sprout-plan-outline-task-title {
195
191
  color: var(--sprout-muted);
196
192
  text-decoration: line-through;
197
- text-decoration-color: color-mix(
198
- in oklab,
199
- var(--sprout-muted) 60%,
200
- transparent
201
- );
193
+ text-decoration-color: color-mix(in oklab, var(--sprout-muted) 60%, transparent);
202
194
  }
203
195
  .sprout-plan-outline-assignee {
204
196
  display: flex;
@@ -225,13 +217,11 @@
225
217
  line-height: 1rem;
226
218
  text-align: end;
227
219
  }
228
- [data-mark="attention"]
229
- > .sprout-plan-outline-row
230
- .sprout-plan-outline-label {
220
+ [data-mark='attention'] > .sprout-plan-outline-row .sprout-plan-outline-label {
231
221
  color: var(--sprout-warning);
232
222
  font-weight: 500;
233
223
  }
234
- [data-mark="failed"] > .sprout-plan-outline-row .sprout-plan-outline-label {
224
+ [data-mark='failed'] > .sprout-plan-outline-row .sprout-plan-outline-label {
235
225
  color: var(--sprout-danger);
236
226
  }
237
227
  .sprout-plan-outline-chevron {
@@ -287,10 +277,7 @@
287
277
  margin: 0;
288
278
  overflow-wrap: anywhere;
289
279
  }
290
- [data-mark="failed"]
291
- > .sprout-plan-outline-panel
292
- > .sprout-plan-outline-detail
293
- > .sprout-plan-outline-reason {
280
+ [data-mark='failed'] > .sprout-plan-outline-panel > .sprout-plan-outline-detail > .sprout-plan-outline-reason {
294
281
  color: var(--sprout-danger);
295
282
  }
296
283
  .sprout-plan-outline-task-brief {
@@ -364,21 +351,17 @@
364
351
 
365
352
  @media (prefers-reduced-motion: no-preference) {
366
353
  .sprout-plan-outline-segment {
367
- transition: background-color var(--sprout-motion-normal, 180ms)
368
- var(--sprout-motion-ease, ease-out);
354
+ transition: background-color var(--sprout-motion-normal, 180ms) var(--sprout-motion-ease, ease-out);
369
355
  }
370
356
  .sprout-plan-outline-trigger {
371
- transition: background-color var(--sprout-motion-fast, 120ms)
372
- var(--sprout-motion-ease, ease-out);
357
+ transition: background-color var(--sprout-motion-fast, 120ms) var(--sprout-motion-ease, ease-out);
373
358
  }
374
359
  .sprout-plan-outline-chevron {
375
- transition: transform var(--sprout-motion-fast, 120ms)
376
- var(--sprout-motion-ease, ease-out);
360
+ transition: transform var(--sprout-motion-fast, 120ms) var(--sprout-motion-ease, ease-out);
377
361
  }
378
362
  .sprout-plan-outline-panel {
379
363
  transition:
380
- height var(--sprout-motion-normal, 180ms)
381
- var(--sprout-motion-ease, ease-out),
364
+ height var(--sprout-motion-normal, 180ms) var(--sprout-motion-ease, ease-out),
382
365
  opacity var(--sprout-motion-fast, 120ms) ease-out;
383
366
  }
384
367
  }
@@ -386,7 +369,7 @@
386
369
  .sprout-plan-outline-segment {
387
370
  background: GrayText;
388
371
  }
389
- .sprout-plan-outline-segment[data-mark="done"] {
372
+ .sprout-plan-outline-segment[data-mark='done'] {
390
373
  background: CanvasText;
391
374
  }
392
375
  }
@@ -106,34 +106,25 @@
106
106
  opacity: 0;
107
107
  scale: 0.96;
108
108
  }
109
- .sprout-popover-content[data-side="bottom"]:is(
110
- [data-starting-style],
111
- [data-ending-style]
112
- ) {
109
+ .sprout-popover-content[data-side='bottom']:is([data-starting-style], [data-ending-style]) {
113
110
  translate: 0 calc(var(--sprout-popover-shift) * -1);
114
111
  }
115
- .sprout-popover-content[data-side="top"]:is(
112
+ .sprout-popover-content[data-side='top']:is([data-starting-style], [data-ending-style]) {
113
+ translate: 0 var(--sprout-popover-shift);
114
+ }
115
+ .sprout-popover-content:is([data-side='right'], [data-side='inline-end']):is(
116
116
  [data-starting-style],
117
117
  [data-ending-style]
118
118
  ) {
119
- translate: 0 var(--sprout-popover-shift);
120
- }
121
- .sprout-popover-content:is(
122
- [data-side="right"],
123
- [data-side="inline-end"]
124
- ):is([data-starting-style], [data-ending-style]) {
125
119
  translate: calc(var(--sprout-popover-shift) * -1) 0;
126
120
  }
127
- .sprout-popover-content:is(
128
- [data-side="left"],
129
- [data-side="inline-start"]
130
- ):is([data-starting-style], [data-ending-style]) {
121
+ .sprout-popover-content:is([data-side='left'], [data-side='inline-start']):is(
122
+ [data-starting-style],
123
+ [data-ending-style]
124
+ ) {
131
125
  translate: var(--sprout-popover-shift) 0;
132
126
  }
133
- .sprout-popover-content:is(
134
- .sprout-popover-app-actions,
135
- .sprout-popover-bud
136
- ) {
127
+ .sprout-popover-content:is(.sprout-popover-app-actions, .sprout-popover-bud) {
137
128
  transition-duration: var(--sprout-motion-normal);
138
129
  }
139
130
  }
@@ -51,8 +51,7 @@
51
51
 
52
52
  @media (prefers-reduced-motion: no-preference) {
53
53
  .sprout-presence-cursor {
54
- transition: transform var(--sprout-motion-normal)
55
- var(--sprout-motion-ease);
54
+ transition: transform var(--sprout-motion-normal) var(--sprout-motion-ease);
56
55
  }
57
56
  }
58
57
 
@@ -52,8 +52,7 @@
52
52
  inset-block: 0;
53
53
  inset-inline-start: 0;
54
54
  width: 40%;
55
- animation: sprout-progress-slide 1.4s var(--sprout-motion-ease, ease-in-out)
56
- infinite;
55
+ animation: sprout-progress-slide 1.4s var(--sprout-motion-ease, ease-in-out) infinite;
57
56
  }
58
57
 
59
58
  @keyframes sprout-progress-slide {
@@ -67,8 +66,7 @@
67
66
 
68
67
  @media (prefers-reduced-motion: no-preference) {
69
68
  .sprout-progress-indicator {
70
- transition: width var(--sprout-motion-normal, 180ms)
71
- var(--sprout-motion-ease, ease-out);
69
+ transition: width var(--sprout-motion-normal, 180ms) var(--sprout-motion-ease, ease-out);
72
70
  }
73
71
  }
74
72
 
@@ -87,7 +87,7 @@
87
87
  -webkit-tap-highlight-color: transparent;
88
88
  }
89
89
  .sprout-prompt-list-button::after {
90
- content: "";
90
+ content: '';
91
91
  position: absolute;
92
92
  inset: 0;
93
93
  border-radius: inherit;
@@ -113,21 +113,16 @@
113
113
  transform: scaleX(-1);
114
114
  }
115
115
 
116
- .sprout-prompt-list-item:has(.sprout-prompt-list-button:enabled):is(
117
- :hover,
118
- :focus-within
119
- )
116
+ .sprout-prompt-list-item:has(.sprout-prompt-list-button:enabled):is(:hover, :focus-within)
120
117
  :is(.sprout-prompt-list-icon, .sprout-prompt-list-arrow) {
121
118
  color: var(--sprout-text);
122
119
  }
123
120
 
124
121
  @media (prefers-reduced-motion: no-preference) {
125
122
  .sprout-prompt-list-item {
126
- animation: sprout-prompt-rise var(--sprout-motion-normal)
127
- var(--sprout-motion-ease) both;
123
+ animation: sprout-prompt-rise var(--sprout-motion-normal) var(--sprout-motion-ease) both;
128
124
  animation-delay: calc(var(--sprout-prompt-index, 0) * 40ms);
129
- transition: background-color var(--sprout-motion-fast)
130
- var(--sprout-motion-ease);
125
+ transition: background-color var(--sprout-motion-fast) var(--sprout-motion-ease);
131
126
  }
132
127
  .sprout-prompt-list-icon,
133
128
  .sprout-prompt-list-arrow {
@@ -135,17 +130,11 @@
135
130
  transform var(--sprout-motion-fast) var(--sprout-motion-ease),
136
131
  color var(--sprout-motion-fast) var(--sprout-motion-ease);
137
132
  }
138
- .sprout-prompt-list-item:has(.sprout-prompt-list-button:enabled):is(
139
- :hover,
140
- :focus-within
141
- )
133
+ .sprout-prompt-list-item:has(.sprout-prompt-list-button:enabled):is(:hover, :focus-within)
142
134
  .sprout-prompt-list-icon {
143
135
  transform: scale(1.08);
144
136
  }
145
- .sprout-prompt-list-item:has(.sprout-prompt-list-button:enabled):is(
146
- :hover,
147
- :focus-within
148
- )
137
+ .sprout-prompt-list-item:has(.sprout-prompt-list-button:enabled):is(:hover, :focus-within)
149
138
  .sprout-prompt-list-arrow:not(:dir(rtl)) {
150
139
  transform: translateX(2px);
151
140
  }
@@ -90,9 +90,7 @@
90
90
  background: color-mix(in oklab, var(--sprout-hover) 60%, transparent);
91
91
  }
92
92
  }
93
- .sprout-questionnaire-choice:has(
94
- > .sprout-questionnaire-choice-input:focus-visible
95
- ) {
93
+ .sprout-questionnaire-choice:has(> .sprout-questionnaire-choice-input:focus-visible) {
96
94
  outline: var(--sprout-focus-width) solid var(--sprout-focus-ring);
97
95
  }
98
96
  .sprout-questionnaire-choice[data-checked] {
@@ -102,9 +100,7 @@
102
100
  .sprout-questionnaire-choice[data-invalid] {
103
101
  border-color: var(--sprout-danger);
104
102
  }
105
- .sprout-questionnaire-choice[data-invalid]:has(
106
- > .sprout-questionnaire-choice-input:focus-visible
107
- ) {
103
+ .sprout-questionnaire-choice[data-invalid]:has(> .sprout-questionnaire-choice-input:focus-visible) {
108
104
  outline-color: var(--sprout-danger);
109
105
  }
110
106
  .sprout-questionnaire-choice[data-disabled] {
@@ -140,12 +136,10 @@
140
136
  color: var(--sprout-on-primary);
141
137
  pointer-events: none;
142
138
  }
143
- .sprout-questionnaire-choice[data-type="radio"]
144
- .sprout-questionnaire-choice-indicator {
139
+ .sprout-questionnaire-choice[data-type='radio'] .sprout-questionnaire-choice-indicator {
145
140
  border-radius: 999px;
146
141
  }
147
- .sprout-questionnaire-choice[data-checked]
148
- .sprout-questionnaire-choice-indicator {
142
+ .sprout-questionnaire-choice[data-checked] .sprout-questionnaire-choice-indicator {
149
143
  border-color: var(--sprout-primary);
150
144
  background: var(--sprout-primary);
151
145
  }
@@ -163,10 +157,8 @@
163
157
  width: 12px;
164
158
  height: 12px;
165
159
  }
166
- .sprout-questionnaire-choice[data-type="radio"][data-checked]
167
- .sprout-questionnaire-choice-dot,
168
- .sprout-questionnaire-choice[data-type="checkbox"][data-checked]
169
- .sprout-questionnaire-choice-check {
160
+ .sprout-questionnaire-choice[data-type='radio'][data-checked] .sprout-questionnaire-choice-dot,
161
+ .sprout-questionnaire-choice[data-type='checkbox'][data-checked] .sprout-questionnaire-choice-check {
170
162
  display: block;
171
163
  }
172
164
 
@@ -187,13 +179,8 @@
187
179
  font-variant-numeric: tabular-nums;
188
180
  pointer-events: none;
189
181
  }
190
- .sprout-questionnaire-choice[data-checked]
191
- .sprout-questionnaire-choice-shortcut {
192
- border-color: color-mix(
193
- in oklab,
194
- var(--sprout-focus) 40%,
195
- var(--sprout-line)
196
- );
182
+ .sprout-questionnaire-choice[data-checked] .sprout-questionnaire-choice-shortcut {
183
+ border-color: color-mix(in oklab, var(--sprout-focus) 40%, var(--sprout-line));
197
184
  color: var(--sprout-text);
198
185
  }
199
186
 
@@ -260,24 +247,16 @@
260
247
  .sprout-questionnaire-choice-indicator,
261
248
  .sprout-questionnaire-choice-shortcut {
262
249
  transition:
263
- background-color var(--sprout-motion-fast, 120ms)
264
- var(--sprout-motion-ease, ease-out),
265
- border-color var(--sprout-motion-fast, 120ms)
266
- var(--sprout-motion-ease, ease-out),
267
- color var(--sprout-motion-fast, 120ms)
268
- var(--sprout-motion-ease, ease-out);
250
+ background-color var(--sprout-motion-fast, 120ms) var(--sprout-motion-ease, ease-out),
251
+ border-color var(--sprout-motion-fast, 120ms) var(--sprout-motion-ease, ease-out),
252
+ color var(--sprout-motion-fast, 120ms) var(--sprout-motion-ease, ease-out);
269
253
  }
270
254
  .sprout-questionnaire-item[data-active] {
271
- animation: sprout-questionnaire-enter var(--sprout-motion-normal, 160ms)
272
- var(--sprout-motion-ease, ease-out);
255
+ animation: sprout-questionnaire-enter var(--sprout-motion-normal, 160ms) var(--sprout-motion-ease, ease-out);
273
256
  }
274
257
  .sprout-questionnaire-choice[data-checked]
275
- :is(
276
- .sprout-questionnaire-choice-dot,
277
- .sprout-questionnaire-choice-check
278
- ) {
279
- animation: sprout-questionnaire-pop var(--sprout-motion-fast, 140ms)
280
- ease-out both;
258
+ :is(.sprout-questionnaire-choice-dot, .sprout-questionnaire-choice-check) {
259
+ animation: sprout-questionnaire-pop var(--sprout-motion-fast, 140ms) ease-out both;
281
260
  }
282
261
  }
283
262
  @keyframes sprout-questionnaire-enter {
@@ -295,13 +274,10 @@
295
274
 
296
275
  @media (forced-colors: active) {
297
276
  .sprout-questionnaire-choice[data-checked],
298
- .sprout-questionnaire-choice[data-checked]
299
- .sprout-questionnaire-choice-indicator {
277
+ .sprout-questionnaire-choice[data-checked] .sprout-questionnaire-choice-indicator {
300
278
  border-color: Highlight;
301
279
  }
302
- .sprout-questionnaire-choice:has(
303
- > .sprout-questionnaire-choice-input:focus-visible
304
- ) {
280
+ .sprout-questionnaire-choice:has(> .sprout-questionnaire-choice-input:focus-visible) {
305
281
  outline-color: Highlight;
306
282
  }
307
283
  }
@@ -28,16 +28,12 @@
28
28
  }
29
29
  /* A 40 x 32px hit area around the 16px dot. */
30
30
  .sprout-radio-group-item::after {
31
- content: "";
31
+ content: '';
32
32
  position: absolute;
33
33
  inset: -8px -12px;
34
34
  }
35
35
  @media (hover: hover) {
36
- .sprout-radio-group-item:not(
37
- [data-disabled],
38
- [data-readonly],
39
- [data-checked]
40
- ):hover {
36
+ .sprout-radio-group-item:not([data-disabled], [data-readonly], [data-checked]):hover {
41
37
  border-color: var(--sprout-border-strong);
42
38
  }
43
39
  }
@@ -48,14 +44,13 @@
48
44
  border-color: var(--sprout-primary);
49
45
  background-color: var(--sprout-primary);
50
46
  }
51
- .sprout-radio-group-item[aria-invalid="true"] {
52
- box-shadow: 0 0 0 3px
53
- color-mix(in oklab, var(--sprout-danger) 20%, transparent);
47
+ .sprout-radio-group-item[aria-invalid='true'] {
48
+ box-shadow: 0 0 0 3px color-mix(in oklab, var(--sprout-danger) 20%, transparent);
54
49
  }
55
- .sprout-radio-group-item[aria-invalid="true"]:not([data-checked]) {
50
+ .sprout-radio-group-item[aria-invalid='true']:not([data-checked]) {
56
51
  border-color: var(--sprout-danger);
57
52
  }
58
- .sprout-radio-group-item[aria-invalid="true"]:focus-visible {
53
+ .sprout-radio-group-item[aria-invalid='true']:focus-visible {
59
54
  outline-color: var(--sprout-danger);
60
55
  }
61
56
  .sprout-radio-group-item[data-readonly] {
@@ -77,21 +72,15 @@
77
72
  @media (prefers-reduced-motion: no-preference) {
78
73
  .sprout-radio-group-item {
79
74
  transition:
80
- background-color var(--sprout-motion-fast, 120ms)
81
- var(--sprout-motion-ease, ease-out),
82
- border-color var(--sprout-motion-fast, 120ms)
83
- var(--sprout-motion-ease, ease-out),
84
- box-shadow var(--sprout-motion-fast, 120ms)
85
- var(--sprout-motion-ease, ease-out),
86
- opacity var(--sprout-motion-fast, 120ms)
87
- var(--sprout-motion-ease, ease-out);
75
+ background-color var(--sprout-motion-fast, 120ms) var(--sprout-motion-ease, ease-out),
76
+ border-color var(--sprout-motion-fast, 120ms) var(--sprout-motion-ease, ease-out),
77
+ box-shadow var(--sprout-motion-fast, 120ms) var(--sprout-motion-ease, ease-out),
78
+ opacity var(--sprout-motion-fast, 120ms) var(--sprout-motion-ease, ease-out);
88
79
  }
89
80
  .sprout-radio-group-indicator {
90
81
  transition:
91
- opacity var(--sprout-motion-normal, 180ms)
92
- var(--sprout-motion-ease, ease-out),
93
- transform var(--sprout-motion-normal, 180ms)
94
- var(--sprout-motion-ease, ease-out);
82
+ opacity var(--sprout-motion-normal, 180ms) var(--sprout-motion-ease, ease-out),
83
+ transform var(--sprout-motion-normal, 180ms) var(--sprout-motion-ease, ease-out);
95
84
  }
96
85
  .sprout-radio-group-indicator[data-starting-style],
97
86
  .sprout-radio-group-indicator[data-ending-style] {
@@ -62,8 +62,7 @@
62
62
  outline: var(--sprout-focus-width) solid var(--sprout-focus-ring);
63
63
  outline-offset: 0;
64
64
  }
65
- .sprout-reasoning-effort[data-dragging="true"]
66
- .sprout-reasoning-effort-track {
65
+ .sprout-reasoning-effort[data-dragging='true'] .sprout-reasoning-effort-track {
67
66
  cursor: grabbing;
68
67
  }
69
68
 
@@ -101,25 +100,19 @@
101
100
  transform: translateY(-50%);
102
101
  pointer-events: none;
103
102
  }
104
- .sprout-reasoning-effort-tick[data-active="true"] {
105
- background-color: color-mix(
106
- in oklab,
107
- var(--sprout-on-primary) 60%,
108
- transparent
109
- );
103
+ .sprout-reasoning-effort-tick[data-active='true'] {
104
+ background-color: color-mix(in oklab, var(--sprout-on-primary) 60%, transparent);
110
105
  }
111
- .sprout-reasoning-effort-tick[data-on-thumb="true"] {
106
+ .sprout-reasoning-effort-tick[data-on-thumb='true'] {
112
107
  background-color: rgb(0 0 0 / 0.45);
113
108
  }
114
109
 
115
110
  @media (prefers-reduced-motion: no-preference) {
116
111
  .sprout-reasoning-effort-bubble-text {
117
- animation: sprout-reasoning-effort-level-in
118
- var(--sprout-motion-normal, 180ms) var(--sprout-motion-ease, ease-out);
112
+ animation: sprout-reasoning-effort-level-in var(--sprout-motion-normal, 180ms) var(--sprout-motion-ease, ease-out);
119
113
  }
120
114
  .sprout-reasoning-effort-track {
121
- transition: outline-color var(--sprout-motion-fast, 120ms)
122
- var(--sprout-motion-ease, ease-out);
115
+ transition: outline-color var(--sprout-motion-fast, 120ms) var(--sprout-motion-ease, ease-out);
123
116
  }
124
117
  }
125
118
 
@@ -146,8 +139,8 @@
146
139
  background-color: Canvas;
147
140
  }
148
141
  .sprout-reasoning-effort-tick,
149
- .sprout-reasoning-effort-tick[data-active="true"],
150
- .sprout-reasoning-effort-tick[data-on-thumb="true"] {
142
+ .sprout-reasoning-effort-tick[data-active='true'],
143
+ .sprout-reasoning-effort-tick[data-on-thumb='true'] {
151
144
  background-color: CanvasText;
152
145
  }
153
146
  .sprout-reasoning-effort-track:focus-visible {