@esportsplus/ui 0.57.0 → 0.58.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 (490) hide show
  1. package/README.md +123 -39
  2. package/build/components/accordion/group.d.ts +14 -0
  3. package/build/components/accordion/group.js +21 -0
  4. package/build/components/accordion/index.d.ts +9 -0
  5. package/build/components/accordion/index.js +20 -3
  6. package/build/components/accordion/scss/index.scss +1 -1
  7. package/build/components/announcement/scss/index.scss +1 -1
  8. package/build/components/breadcrumb/scss/index.scss +1 -1
  9. package/build/components/button/scss/index.scss +1 -1
  10. package/build/components/button/sidebar.d.ts +3 -0
  11. package/build/components/button/sidebar.js +40 -10
  12. package/build/components/capslock/index.js +1 -1
  13. package/build/components/capslock/scss/index.scss +1 -1
  14. package/build/components/card/scss/index.scss +1 -1
  15. package/build/components/cc/scss/index.scss +1 -1
  16. package/build/components/chat-minimap/scss/index.scss +1 -1
  17. package/build/components/checkbox/scss/index.scss +1 -1
  18. package/build/components/color-picker/index.d.ts +1 -0
  19. package/build/components/color-picker/index.js +166 -136
  20. package/build/components/color-picker/scss/index.scss +1 -1
  21. package/build/components/command/index.d.ts +0 -1
  22. package/build/components/command/index.js +3 -2
  23. package/build/components/command/scss/index.scss +1 -1
  24. package/build/components/copy/scss/index.scss +1 -1
  25. package/build/components/counter/scss/index.scss +1 -1
  26. package/build/components/datalist/index.js +3 -3
  27. package/build/components/datalist/scss/index.scss +1 -1
  28. package/build/components/dock/scss/index.scss +1 -1
  29. package/build/components/editor/code/index.d.ts +0 -1
  30. package/build/components/editor/code/index.js +0 -1
  31. package/build/components/editor/code/minimap.d.ts +2 -1
  32. package/build/components/editor/code/minimap.js +5 -2
  33. package/build/components/editor/code/view.d.ts +3 -1
  34. package/build/components/editor/code/view.js +37 -26
  35. package/build/components/editor/diffs/index.d.ts +0 -1
  36. package/build/components/editor/diffs/index.js +0 -1
  37. package/build/components/editor/diffs/merge.js +7 -3
  38. package/build/components/editor/diffs/view.js +3 -1
  39. package/build/components/editor/index.d.ts +4 -1
  40. package/build/components/editor/index.js +2 -1
  41. package/build/components/editor/markdown/editing.js +22 -3
  42. package/build/components/editor/markdown/erase.d.ts +9 -0
  43. package/build/components/editor/markdown/erase.js +78 -0
  44. package/build/components/editor/markdown/index.d.ts +0 -1
  45. package/build/components/editor/markdown/index.js +0 -1
  46. package/build/components/editor/markdown/layout.d.ts +2 -9
  47. package/build/components/editor/markdown/layout.js +2 -7
  48. package/build/components/editor/markdown/render.d.ts +0 -1
  49. package/build/components/editor/markdown/render.js +287 -235
  50. package/build/components/editor/markdown/view.js +566 -667
  51. package/build/components/editor/viewer/index.d.ts +27 -0
  52. package/build/components/editor/viewer/index.js +250 -0
  53. package/build/components/editor/viewer/model.d.ts +15 -0
  54. package/build/components/editor/viewer/model.js +73 -0
  55. package/build/components/editor/workspace/index.d.ts +6 -2
  56. package/build/components/editor/workspace/index.js +243 -137
  57. package/build/components/editor/workspace/keybindings.d.ts +37 -0
  58. package/build/components/editor/workspace/keybindings.js +288 -0
  59. package/build/components/editor/workspace/model.d.ts +55 -2
  60. package/build/components/editor/workspace/model.js +141 -3
  61. package/build/components/editor/workspace/navigate.d.ts +19 -0
  62. package/build/components/editor/workspace/navigate.js +118 -0
  63. package/build/components/editor/workspace/session.d.ts +29 -0
  64. package/build/components/editor/workspace/session.js +373 -0
  65. package/build/components/editor/workspace/shortcuts.d.ts +19 -0
  66. package/build/components/editor/workspace/shortcuts.js +185 -0
  67. package/build/components/editor/workspace/status.d.ts +34 -0
  68. package/build/components/editor/workspace/status.js +193 -0
  69. package/build/components/editor/workspace/statusbar.d.ts +15 -0
  70. package/build/components/editor/workspace/statusbar.js +190 -0
  71. package/build/components/editor/workspace/strip.d.ts +27 -0
  72. package/build/components/editor/workspace/strip.js +239 -0
  73. package/build/components/editor/workspace/tabs.d.ts +15 -0
  74. package/build/components/editor/workspace/tabs.js +63 -0
  75. package/build/components/error/index.js +1 -1
  76. package/build/components/error/scss/index.scss +1 -1
  77. package/build/components/filter/index.js +5 -3
  78. package/build/components/filter/scss/index.scss +1 -1
  79. package/build/components/frame/scss/index.scss +1 -1
  80. package/build/components/heatmap/index.js +3 -3
  81. package/build/components/heatmap/scss/index.scss +1 -1
  82. package/build/components/highlight/scss/index.scss +1 -1
  83. package/build/components/icon/scss/index.scss +1 -1
  84. package/build/components/image/scss/index.scss +1 -1
  85. package/build/components/index.d.ts +2 -0
  86. package/build/components/index.js +2 -0
  87. package/build/components/inline-edit/scss/index.scss +1 -1
  88. package/build/components/input/scss/index.scss +1 -1
  89. package/build/components/link/scss/index.scss +1 -1
  90. package/build/components/loading/scss/index.scss +1 -1
  91. package/build/components/marquee/scss/index.scss +1 -1
  92. package/build/components/metric/scss/index.scss +1 -1
  93. package/build/components/nav/index.d.ts +1 -1
  94. package/build/components/nav/scss/index.scss +1 -1
  95. package/build/components/nav/tree.d.ts +3 -1
  96. package/build/components/nav/tree.js +30 -60
  97. package/build/components/notification/scss/index.scss +1 -1
  98. package/build/components/overlay/scss/index.scss +1 -1
  99. package/build/components/page/scss/index.scss +1 -1
  100. package/build/components/pagination/arrows.d.ts +15 -0
  101. package/build/components/pagination/arrows.js +65 -0
  102. package/build/components/pagination/cards.d.ts +23 -0
  103. package/build/components/pagination/cards.js +66 -0
  104. package/build/components/pagination/index.d.ts +5 -0
  105. package/build/components/pagination/index.js +3 -1
  106. package/build/components/pagination/scss/index.scss +1 -1
  107. package/build/components/progress/scss/index.scss +1 -1
  108. package/build/components/pull-to-refresh/scss/index.scss +1 -1
  109. package/build/components/range/index.js +1 -1
  110. package/build/components/range/scss/index.scss +1 -1
  111. package/build/components/relative-time/scss/index.scss +1 -1
  112. package/build/components/root/scss/index.scss +1 -1
  113. package/build/components/section/scss/index.scss +2 -0
  114. package/build/components/select/index.d.ts +1 -0
  115. package/build/components/select/index.js +16 -11
  116. package/build/components/select/scss/index.scss +1 -1
  117. package/build/components/shortcut-recorder/scss/index.scss +1 -1
  118. package/build/components/sortable/scss/index.scss +1 -1
  119. package/build/components/sticky-header/index.js +3 -3
  120. package/build/components/sticky-header/scss/index.scss +1 -1
  121. package/build/components/story/scss/index.scss +1 -1
  122. package/build/components/surface-field/scss/index.scss +1 -1
  123. package/build/components/tasklist/scss/index.scss +1 -1
  124. package/build/components/text/scss/index.scss +1 -1
  125. package/build/components/textarea/scss/index.scss +1 -1
  126. package/build/{css-utilities → components}/theme/index.d.ts +1 -1
  127. package/build/{css-utilities → components}/theme/index.js +15 -5
  128. package/build/components/theme/scss/index.scss +2 -0
  129. package/build/components/theme-picker/index.d.ts +52 -0
  130. package/build/components/theme-picker/index.js +167 -0
  131. package/build/components/theme-picker/scss/index.scss +2 -0
  132. package/build/components/toast/index.js +3 -5
  133. package/build/components/toast/scss/index.scss +1 -1
  134. package/build/components/tooltip/menu.js +3 -1
  135. package/build/components/tooltip/scss/index.scss +1 -1
  136. package/build/components/typewriter/scss/index.scss +1 -1
  137. package/build/components/uptime/scss/index.scss +1 -1
  138. package/build/components/usage-meter/scss/index.scss +1 -1
  139. package/build/{css-utilities → modifiers}/glass/index.d.ts +2 -2
  140. package/build/modifiers/glass/index.js +28 -0
  141. package/build/modifiers/glass/scss/index.scss +2 -0
  142. package/build/{css-utilities → modifiers}/index.d.ts +0 -1
  143. package/build/{css-utilities → modifiers}/index.js +0 -1
  144. package/build/modifiers/scrollbar/index.d.ts +72 -0
  145. package/build/{css-utilities → modifiers}/scrollbar/index.js +52 -19
  146. package/build/modifiers/scrollbar/scss/index.scss +2 -0
  147. package/build/normalize/scss/index.scss +1 -2
  148. package/layer.scss +1 -1
  149. package/package.json +11 -18
  150. package/scripts/code-editor-markdown.test.mjs +45 -14
  151. package/scripts/code-viewer.test.mjs +69 -0
  152. package/scripts/workspace-keybindings.test.mjs +273 -0
  153. package/scripts/workspace-session.test.mjs +349 -0
  154. package/scripts/workspace-status.test.mjs +229 -0
  155. package/scripts/workspace-tabs.test.mjs +142 -0
  156. package/src/components/accordion/group.ts +39 -0
  157. package/src/components/accordion/index.ts +32 -6
  158. package/src/components/accordion/scss/index.scss +12 -21
  159. package/src/components/accordion/scss/variables.scss +18 -3
  160. package/src/components/announcement/scss/index.scss +4 -4
  161. package/src/components/announcement/scss/variables.scss +6 -6
  162. package/src/components/banner/scss/index.scss +1 -1
  163. package/src/components/breadcrumb/scss/index.scss +35 -50
  164. package/src/components/breadcrumb/scss/variables.scss +23 -31
  165. package/src/components/button/scss/_fan.scss +39 -43
  166. package/src/components/button/scss/_morph.scss +66 -78
  167. package/src/components/button/scss/_sidebar.scss +41 -30
  168. package/src/components/button/scss/_split.scss +9 -9
  169. package/src/components/button/scss/index.scss +23 -19
  170. package/src/components/button/scss/variables.scss +94 -90
  171. package/src/components/button/sidebar.ts +36 -24
  172. package/src/components/capslock/index.ts +2 -2
  173. package/src/components/capslock/scss/index.scss +11 -6
  174. package/src/components/capslock/scss/variables.scss +3 -5
  175. package/src/components/card/scss/_expand.scss +58 -64
  176. package/src/components/card/scss/index.scss +40 -21
  177. package/src/components/card/scss/variables.scss +40 -31
  178. package/src/components/cc/scss/index.scss +68 -68
  179. package/src/components/cc/scss/variables.scss +13 -14
  180. package/src/components/chat-minimap/scss/index.scss +24 -16
  181. package/src/components/chat-minimap/scss/variables.scss +37 -37
  182. package/src/components/checkbox/scss/index.scss +54 -52
  183. package/src/components/checkbox/scss/variables.scss +37 -39
  184. package/src/components/color-picker/index.ts +157 -120
  185. package/src/components/color-picker/scss/index.scss +159 -96
  186. package/src/components/color-picker/scss/variables.scss +33 -15
  187. package/src/components/command/index.ts +3 -2
  188. package/src/components/command/scss/index.scss +10 -14
  189. package/src/components/command/scss/variables.scss +12 -35
  190. package/src/components/copy/scss/index.scss +6 -6
  191. package/src/components/copy/scss/variables.scss +12 -15
  192. package/src/components/counter/scss/index.scss +14 -14
  193. package/src/components/counter/scss/variables.scss +1 -1
  194. package/src/components/datalist/index.ts +3 -3
  195. package/src/components/datalist/scss/index.scss +7 -6
  196. package/src/components/datalist/scss/variables.scss +7 -3
  197. package/src/components/dock/scss/index.scss +10 -15
  198. package/src/components/dock/scss/variables.scss +29 -25
  199. package/src/components/editor/code/index.ts +0 -1
  200. package/src/components/editor/code/minimap.ts +13 -5
  201. package/src/components/editor/code/scss/_editor.scss +83 -81
  202. package/src/components/editor/code/scss/_features.scss +106 -97
  203. package/src/components/editor/code/scss/_services.scss +27 -25
  204. package/src/components/editor/code/scss/index.scss +0 -1
  205. package/src/components/editor/code/scss/variables.scss +30 -26
  206. package/src/components/editor/code/view.ts +14 -5
  207. package/src/components/editor/diffs/index.ts +0 -1
  208. package/src/components/editor/diffs/merge.ts +2 -1
  209. package/src/components/editor/diffs/scss/_diffs.scss +67 -57
  210. package/src/components/editor/diffs/scss/_merge.scss +17 -14
  211. package/src/components/editor/diffs/scss/index.scss +0 -1
  212. package/src/components/editor/diffs/scss/variables.scss +25 -18
  213. package/src/components/editor/diffs/view.ts +2 -1
  214. package/src/components/editor/index.ts +7 -1
  215. package/src/components/editor/markdown/editing.ts +38 -3
  216. package/src/components/editor/markdown/erase.ts +124 -0
  217. package/src/components/editor/markdown/index.ts +0 -1
  218. package/src/components/editor/markdown/layout.ts +3 -12
  219. package/src/components/editor/markdown/render.ts +65 -37
  220. package/src/components/editor/markdown/scss/index.scss +92 -124
  221. package/src/components/editor/markdown/scss/variables.scss +39 -19
  222. package/src/components/editor/markdown/view.ts +737 -786
  223. package/src/components/editor/tree/scss/index.scss +121 -110
  224. package/src/components/editor/tree/scss/variables.scss +48 -54
  225. package/src/components/editor/viewer/index.ts +321 -0
  226. package/src/components/editor/viewer/model.ts +130 -0
  227. package/src/components/editor/viewer/scss/_viewer.scss +302 -0
  228. package/src/components/editor/viewer/scss/index.scss +2 -0
  229. package/src/components/editor/viewer/scss/variables.scss +69 -0
  230. package/src/components/editor/workspace/index.ts +159 -31
  231. package/src/components/editor/workspace/keybindings.ts +447 -0
  232. package/src/components/editor/workspace/model.ts +233 -3
  233. package/src/components/editor/workspace/navigate.ts +194 -0
  234. package/src/components/editor/workspace/scss/index.scss +72 -59
  235. package/src/components/editor/workspace/scss/keybindings.scss +190 -0
  236. package/src/components/editor/workspace/scss/status.scss +122 -0
  237. package/src/components/editor/workspace/scss/tabs.scss +56 -0
  238. package/src/components/editor/workspace/session.ts +551 -0
  239. package/src/components/editor/workspace/shortcuts.ts +255 -0
  240. package/src/components/editor/workspace/status.ts +259 -0
  241. package/src/components/editor/workspace/statusbar.ts +255 -0
  242. package/src/components/editor/workspace/strip.ts +273 -0
  243. package/src/components/editor/workspace/tabs.ts +106 -0
  244. package/src/components/error/index.ts +1 -1
  245. package/src/components/error/scss/index.scss +19 -19
  246. package/src/components/error/scss/variables.scss +2 -2
  247. package/src/components/filter/index.ts +7 -2
  248. package/src/components/filter/scss/index.scss +1 -1
  249. package/src/components/filter/scss/variables.scss +11 -10
  250. package/src/components/frame/scss/index.scss +12 -12
  251. package/src/components/frame/scss/variables.scss +8 -8
  252. package/src/components/heatmap/index.ts +3 -3
  253. package/src/components/heatmap/scss/index.scss +28 -26
  254. package/src/components/heatmap/scss/variables.scss +18 -17
  255. package/src/components/highlight/scss/index.scss +17 -13
  256. package/src/components/highlight/scss/variables.scss +8 -10
  257. package/src/components/icon/scss/index.scss +10 -0
  258. package/src/components/icon/scss/variables.scss +5 -0
  259. package/src/components/image/scss/index.scss +9 -9
  260. package/src/components/image/scss/variables.scss +7 -2
  261. package/src/components/index.ts +2 -0
  262. package/src/components/inline-edit/scss/index.scss +99 -104
  263. package/src/components/inline-edit/scss/variables.scss +40 -39
  264. package/src/components/input/scss/_field.scss +6 -20
  265. package/src/components/input/scss/_scrub.scss +10 -8
  266. package/src/components/input/scss/_tag.scss +35 -37
  267. package/src/components/input/scss/variables.scss +100 -99
  268. package/src/components/link/scss/index.scss +4 -1
  269. package/src/components/loading/scss/index.scss +1 -1
  270. package/src/components/loading/scss/variables.scss +1 -1
  271. package/src/components/marquee/scss/index.scss +9 -5
  272. package/src/components/marquee/scss/variables.scss +3 -1
  273. package/src/components/metric/scss/_flash.scss +3 -1
  274. package/src/components/metric/scss/index.scss +8 -6
  275. package/src/components/metric/scss/variables.scss +26 -20
  276. package/src/components/nav/index.ts +1 -1
  277. package/src/components/nav/scss/index.scss +12 -40
  278. package/src/components/nav/scss/variables.scss +30 -11
  279. package/src/components/nav/tree.ts +19 -62
  280. package/src/components/notification/scss/index.scss +7 -7
  281. package/src/components/notification/scss/variables.scss +7 -9
  282. package/src/components/overlay/scss/index.scss +181 -170
  283. package/src/components/overlay/scss/variables.scss +26 -57
  284. package/src/components/page/scss/index.scss +12 -11
  285. package/src/components/page/scss/variables.scss +5 -0
  286. package/src/components/pagination/arrows.ts +58 -0
  287. package/src/components/pagination/cards.ts +57 -0
  288. package/src/components/pagination/index.ts +4 -1
  289. package/src/components/pagination/scss/_arrows.scss +69 -0
  290. package/src/components/pagination/scss/_cards.scss +121 -0
  291. package/src/components/pagination/scss/_dots.scss +2 -5
  292. package/src/components/pagination/scss/index.scss +8 -6
  293. package/src/components/pagination/scss/variables.scss +87 -37
  294. package/src/components/progress/scss/_text.scss +21 -18
  295. package/src/components/progress/scss/index.scss +1 -1
  296. package/src/components/progress/scss/variables.scss +12 -12
  297. package/src/components/pull-to-refresh/scss/index.scss +2 -1
  298. package/src/components/pull-to-refresh/scss/variables.scss +11 -6
  299. package/src/components/range/index.ts +1 -1
  300. package/src/components/range/scss/_filter.scss +62 -51
  301. package/src/components/range/scss/_slider.scss +78 -75
  302. package/src/components/range/scss/_vertical.scss +6 -6
  303. package/src/components/range/scss/index.scss +3 -2
  304. package/src/components/range/scss/variables.scss +26 -23
  305. package/src/components/relative-time/scss/index.scss +27 -27
  306. package/src/components/relative-time/scss/variables.scss +10 -12
  307. package/src/components/root/scss/index.scss +71 -43
  308. package/src/components/root/scss/variables.scss +35 -31
  309. package/src/components/section/scss/index.scss +31 -0
  310. package/src/components/section/scss/variables.scss +21 -0
  311. package/src/components/select/index.ts +11 -6
  312. package/src/components/select/scss/index.scss +21 -32
  313. package/src/components/select/scss/variables.scss +25 -18
  314. package/src/components/shortcut-recorder/scss/index.scss +13 -12
  315. package/src/components/shortcut-recorder/scss/variables.scss +12 -13
  316. package/src/components/sortable/scss/index.scss +47 -44
  317. package/src/components/sortable/scss/variables.scss +4 -5
  318. package/src/components/sticky-header/index.ts +4 -4
  319. package/src/components/sticky-header/scss/index.scss +14 -13
  320. package/src/components/sticky-header/scss/variables.scss +9 -9
  321. package/src/components/story/scss/index.scss +26 -30
  322. package/src/components/story/scss/variables.scss +16 -9
  323. package/src/components/surface-field/scss/index.scss +45 -40
  324. package/src/components/surface-field/scss/variables.scss +5 -6
  325. package/src/components/tasklist/scss/index.scss +19 -19
  326. package/src/components/tasklist/scss/variables.scss +26 -29
  327. package/src/components/text/scss/index.scss +2 -1
  328. package/src/components/textarea/scss/variables.scss +1 -1
  329. package/src/{css-utilities → components}/theme/index.ts +17 -3
  330. package/src/components/theme/scss/index.scss +1 -0
  331. package/src/components/theme/scss/variables.scss +78 -0
  332. package/src/components/theme-picker/index.ts +231 -0
  333. package/src/components/theme-picker/scss/index.scss +264 -0
  334. package/src/components/toast/index.ts +28 -30
  335. package/src/components/toast/scss/index.scss +87 -87
  336. package/src/components/toast/scss/variables.scss +39 -39
  337. package/src/components/tooltip/menu.ts +4 -1
  338. package/src/components/tooltip/scss/_east.scss +10 -10
  339. package/src/components/tooltip/scss/_menu.scss +284 -269
  340. package/src/components/tooltip/scss/_north.scss +10 -10
  341. package/src/components/tooltip/scss/_shared.scss +7 -7
  342. package/src/components/tooltip/scss/_south.scss +10 -10
  343. package/src/components/tooltip/scss/_west.scss +10 -10
  344. package/src/components/tooltip/scss/index.scss +21 -20
  345. package/src/components/tooltip/scss/variables.scss +104 -96
  346. package/src/components/typewriter/scss/_retype.scss +12 -11
  347. package/src/components/typewriter/scss/_rotate.scss +2 -1
  348. package/src/components/typewriter/scss/variables.scss +41 -39
  349. package/src/components/uptime/scss/index.scss +15 -15
  350. package/src/components/uptime/scss/variables.scss +8 -8
  351. package/src/components/usage-meter/scss/index.scss +3 -1
  352. package/src/components/usage-meter/scss/variables.scss +5 -5
  353. package/src/css-utilities/absolute.scss +64 -0
  354. package/src/css-utilities/background.scss +43 -0
  355. package/src/css-utilities/border.scss +45 -0
  356. package/src/css-utilities/box-shadow.scss +29 -0
  357. package/src/css-utilities/color.scss +41 -0
  358. package/src/css-utilities/flex.scss +64 -0
  359. package/src/css-utilities/font/geist/{scss/index.scss → index.scss} +12 -4
  360. package/src/css-utilities/font/montserrat/Montserrat-Italic-Variable.woff2 +0 -0
  361. package/src/css-utilities/font/montserrat/Montserrat-Variable.woff2 +0 -0
  362. package/src/css-utilities/font/montserrat/OFL.txt +93 -0
  363. package/src/css-utilities/font/montserrat/index.scss +38 -0
  364. package/src/{shared/scss → css-utilities}/icon.scss +1 -1
  365. package/src/css-utilities/{inline/scss/index.scss → inline.scss} +1 -1
  366. package/src/css-utilities/{skeleton/scss/index.scss → skeleton.scss} +11 -11
  367. package/src/css-utilities/surface.scss +266 -0
  368. package/src/css-utilities/text.scss +191 -0
  369. package/src/modifiers/glass/index.ts +44 -0
  370. package/src/{css-utilities → modifiers}/glass/scss/index.scss +6 -6
  371. package/src/{css-utilities → modifiers}/glass/scss/variables.scss +1 -1
  372. package/src/{css-utilities → modifiers}/index.ts +0 -1
  373. package/src/{css-utilities → modifiers}/scrollbar/index.ts +92 -17
  374. package/src/{css-utilities → modifiers}/scrollbar/scss/index.scss +178 -177
  375. package/src/{css-utilities → modifiers}/scrollbar/scss/variables.scss +28 -21
  376. package/src/normalize/scss/index.scss +4 -2
  377. package/src/shared/scss/color-weights.scss +19 -0
  378. package/src/shared/scss/index.scss +1 -12
  379. package/src/tokens/scss/blur.scss +5 -0
  380. package/src/tokens/scss/color.scss +74 -50
  381. package/src/tokens/scss/index.scss +1 -2
  382. package/src/tokens/scss/size.scss +0 -2
  383. package/src/tokens/scss/state.scss +3 -2
  384. package/src/tokens/scss/transition.scss +19 -2
  385. package/storage/svg/monitor.svg +1 -0
  386. package/storage/svg/moon.svg +1 -0
  387. package/storage/svg/pin.svg +1 -0
  388. package/storage/svg/sun.svg +1 -0
  389. package/vite.config.ts +33 -8
  390. package/build/css-utilities/background/scss/index.scss +0 -2
  391. package/build/css-utilities/border/scss/index.scss +0 -2
  392. package/build/css-utilities/color/scss/index.scss +0 -2
  393. package/build/css-utilities/flex/scss/index.scss +0 -2
  394. package/build/css-utilities/font/geist/index.d.ts +0 -1
  395. package/build/css-utilities/font/geist/index.js +0 -1
  396. package/build/css-utilities/font/geist/scss/index.scss +0 -2
  397. package/build/css-utilities/font/montserrat/index.d.ts +0 -1
  398. package/build/css-utilities/font/montserrat/index.js +0 -1
  399. package/build/css-utilities/font/montserrat/scss/Montserrat-Bold.woff +0 -0
  400. package/build/css-utilities/font/montserrat/scss/Montserrat-Bold.woff2 +0 -0
  401. package/build/css-utilities/font/montserrat/scss/Montserrat-BoldItalic.woff +0 -0
  402. package/build/css-utilities/font/montserrat/scss/Montserrat-BoldItalic.woff2 +0 -0
  403. package/build/css-utilities/font/montserrat/scss/Montserrat-Italic.woff +0 -0
  404. package/build/css-utilities/font/montserrat/scss/Montserrat-Italic.woff2 +0 -0
  405. package/build/css-utilities/font/montserrat/scss/Montserrat-Medium.woff +0 -0
  406. package/build/css-utilities/font/montserrat/scss/Montserrat-Medium.woff2 +0 -0
  407. package/build/css-utilities/font/montserrat/scss/Montserrat-MediumItalic.woff +0 -0
  408. package/build/css-utilities/font/montserrat/scss/Montserrat-MediumItalic.woff2 +0 -0
  409. package/build/css-utilities/font/montserrat/scss/Montserrat-Regular.woff +0 -0
  410. package/build/css-utilities/font/montserrat/scss/Montserrat-Regular.woff2 +0 -0
  411. package/build/css-utilities/font/montserrat/scss/Montserrat-SemiBold.woff +0 -0
  412. package/build/css-utilities/font/montserrat/scss/Montserrat-SemiBold.woff2 +0 -0
  413. package/build/css-utilities/font/montserrat/scss/Montserrat-SemiBoldItalic.woff +0 -0
  414. package/build/css-utilities/font/montserrat/scss/Montserrat-SemiBoldItalic.woff2 +0 -0
  415. package/build/css-utilities/font/montserrat/scss/index.scss +0 -2
  416. package/build/css-utilities/glass/index.js +0 -26
  417. package/build/css-utilities/glass/scss/index.scss +0 -2
  418. package/build/css-utilities/index.scss +0 -2
  419. package/build/css-utilities/inline/scss/index.scss +0 -2
  420. package/build/css-utilities/scrollbar/index.d.ts +0 -42
  421. package/build/css-utilities/scrollbar/scss/index.scss +0 -2
  422. package/build/css-utilities/skeleton/scss/index.scss +0 -2
  423. package/build/css-utilities/text/scss/index.scss +0 -2
  424. package/build/themes/dark/index.d.ts +0 -3
  425. package/build/themes/dark/index.js +0 -3
  426. package/build/themes/dark/input.d.ts +0 -3
  427. package/build/themes/dark/input.js +0 -12
  428. package/build/themes/dark/select.d.ts +0 -3
  429. package/build/themes/dark/select.js +0 -23
  430. package/build/themes/dark/textarea.d.ts +0 -2186
  431. package/build/themes/dark/textarea.js +0 -11
  432. package/src/css-utilities/background/scss/index.scss +0 -1
  433. package/src/css-utilities/background/scss/variables.scss +0 -18
  434. package/src/css-utilities/border/scss/index.scss +0 -1
  435. package/src/css-utilities/border/scss/variables.scss +0 -23
  436. package/src/css-utilities/color/scss/index.scss +0 -1
  437. package/src/css-utilities/color/scss/variables.scss +0 -17
  438. package/src/css-utilities/flex/scss/index.scss +0 -57
  439. package/src/css-utilities/flex/scss/variables.scss +0 -16
  440. package/src/css-utilities/font/geist/index.ts +0 -1
  441. package/src/css-utilities/font/montserrat/index.ts +0 -1
  442. package/src/css-utilities/font/montserrat/scss/Montserrat-Bold.woff +0 -0
  443. package/src/css-utilities/font/montserrat/scss/Montserrat-Bold.woff2 +0 -0
  444. package/src/css-utilities/font/montserrat/scss/Montserrat-BoldItalic.woff +0 -0
  445. package/src/css-utilities/font/montserrat/scss/Montserrat-BoldItalic.woff2 +0 -0
  446. package/src/css-utilities/font/montserrat/scss/Montserrat-Italic.woff +0 -0
  447. package/src/css-utilities/font/montserrat/scss/Montserrat-Italic.woff2 +0 -0
  448. package/src/css-utilities/font/montserrat/scss/Montserrat-Medium.woff +0 -0
  449. package/src/css-utilities/font/montserrat/scss/Montserrat-Medium.woff2 +0 -0
  450. package/src/css-utilities/font/montserrat/scss/Montserrat-MediumItalic.woff +0 -0
  451. package/src/css-utilities/font/montserrat/scss/Montserrat-MediumItalic.woff2 +0 -0
  452. package/src/css-utilities/font/montserrat/scss/Montserrat-Regular.woff +0 -0
  453. package/src/css-utilities/font/montserrat/scss/Montserrat-Regular.woff2 +0 -0
  454. package/src/css-utilities/font/montserrat/scss/Montserrat-SemiBold.woff +0 -0
  455. package/src/css-utilities/font/montserrat/scss/Montserrat-SemiBold.woff2 +0 -0
  456. package/src/css-utilities/font/montserrat/scss/Montserrat-SemiBoldItalic.woff +0 -0
  457. package/src/css-utilities/font/montserrat/scss/Montserrat-SemiBoldItalic.woff2 +0 -0
  458. package/src/css-utilities/font/montserrat/scss/index.scss +0 -94
  459. package/src/css-utilities/glass/index.ts +0 -42
  460. package/src/css-utilities/index.scss +0 -13
  461. package/src/css-utilities/skeleton/scss/variables.scss +0 -3
  462. package/src/css-utilities/text/scss/index.scss +0 -152
  463. package/src/css-utilities/text/scss/variables.scss +0 -22
  464. package/src/shared/scss/absolute.scss +0 -28
  465. package/src/shared/scss/background.scss +0 -21
  466. package/src/shared/scss/border.scss +0 -21
  467. package/src/shared/scss/color.scss +0 -21
  468. package/src/shared/scss/position.scss +0 -55
  469. package/src/shared/scss/text.scss +0 -31
  470. package/src/themes/dark/index.ts +0 -3
  471. package/src/themes/dark/input.ts +0 -16
  472. package/src/themes/dark/select.ts +0 -28
  473. package/src/themes/dark/textarea.ts +0 -13
  474. package/src/tokens/scss/box-shadow.scss +0 -23
  475. package/src/tokens/scss/font-family.scss +0 -5
  476. package/storage/code.md +0 -180
  477. package/storage/editor-features.md +0 -227
  478. package/build/css-utilities/font/geist/{scss/Geist-Italic-Variable.woff2 → Geist-Italic-Variable.woff2} +0 -0
  479. package/build/css-utilities/font/geist/{scss/Geist-Variable.woff2 → Geist-Variable.woff2} +0 -0
  480. package/build/css-utilities/font/geist/{scss/GeistMono-Italic-Variable.woff2 → GeistMono-Italic-Variable.woff2} +0 -0
  481. package/build/css-utilities/font/geist/{scss/GeistMono-Variable.woff2 → GeistMono-Variable.woff2} +0 -0
  482. package/src/{shared/scss → css-utilities}/anchor.scss +6 -6
  483. package/src/{shared/scss → css-utilities}/drag.scss +0 -0
  484. package/src/css-utilities/font/geist/{scss/Geist-Italic-Variable.woff2 → Geist-Italic-Variable.woff2} +0 -0
  485. package/src/css-utilities/font/geist/{scss/Geist-Variable.woff2 → Geist-Variable.woff2} +0 -0
  486. package/src/css-utilities/font/geist/{scss/GeistMono-Italic-Variable.woff2 → GeistMono-Italic-Variable.woff2} +0 -0
  487. package/src/css-utilities/font/geist/{scss/GeistMono-Variable.woff2 → GeistMono-Variable.woff2} +0 -0
  488. package/src/{shared/scss → css-utilities}/hidden.scss +11 -11
  489. /package/src/{shared/scss → css-utilities}/layer.scss +0 -0
  490. /package/src/{shared/scss → css-utilities}/reset.scss +0 -0
@@ -1,5 +1,8 @@
1
- @use '/shared';
2
1
  @use '/tokens';
2
+ @use 'css-utilities/font/geist';
3
+ @use 'css-utilities/hidden';
4
+ @use 'css-utilities/icon';
5
+ @use 'css-utilities/surface';
3
6
  @use 'variables';
4
7
 
5
8
  // Pulled out by its own padding, so the text lines up with the surrounding content while the tint still has room.
@@ -26,7 +29,7 @@
26
29
 
27
30
  // Stays in the cell while editing (hidden), so the field inherits its exact width and starting height.
28
31
  &-display {
29
- background: transparent;
32
+ background: var(--background);
30
33
  border: 0;
31
34
  color: inherit;
32
35
  cursor: text;
@@ -37,10 +40,6 @@
37
40
  outline: none;
38
41
  transition: background-color var(--transition-duration) var(--transition-timing-function);
39
42
 
40
- &:hover {
41
- background: var(--background-hover);
42
- }
43
-
44
43
  &:focus-visible {
45
44
  outline: var(--border-width-500) solid var(--outline-color);
46
45
  }
@@ -65,18 +64,17 @@
65
64
 
66
65
  // Always editable, so a click drops the caret where it lands; the field look only shows while editing.
67
66
  &-editor {
67
+ background: var(--background);
68
68
  caret-color: currentColor;
69
69
  cursor: text;
70
70
  outline: none;
71
71
  position: relative;
72
72
  transition: background-color var(--transition-duration) var(--transition-timing-function);
73
73
 
74
- &:hover {
75
- background: var(--background-hover);
76
- }
77
-
78
74
  #{tokens.state(active, '.inline-edit')} > & {
79
- background: var(--field-background);
75
+ @extend %surface-raised-level;
76
+ --background-default: var(--field-background, var(--surface-background-default));
77
+ --background-hover: var(--background-default);
80
78
  box-shadow: var(--field-ring);
81
79
  text-overflow: clip;
82
80
  }
@@ -88,11 +86,15 @@
88
86
  position: absolute;
89
87
  }
90
88
 
89
+ > * + * {
90
+ margin-top: var(--paragraph-gap);
91
+ }
92
+
91
93
  a {
92
94
  color: inherit;
93
95
  text-decoration: underline;
94
96
  text-decoration-color: var(--link-underline-color);
95
- text-underline-offset: 4px;
97
+ text-underline-offset: calc(var(--size-100) / 2);
96
98
  }
97
99
 
98
100
  blockquote {
@@ -112,16 +114,21 @@
112
114
  margin: 0;
113
115
  }
114
116
 
117
+ code {
118
+ border-radius: var(--border-radius-100);
119
+ padding: 0.125em 0.3em;
120
+ }
121
+
115
122
  code,
116
123
  pre {
117
- background: var(--code-background);
118
- font-family: var(--font-family-mono);
124
+ @extend %font-geist-mono, %surface-sunken-level;
125
+ background: var(--surface-background-default);
126
+ font-family: var(--font-family);
119
127
  font-size: 0.875em;
120
128
  }
121
129
 
122
- code {
123
- border-radius: var(--border-radius-100);
124
- padding: 0.125em 0.3em;
130
+ h1 {
131
+ font-size: var(--heading-1-size);
125
132
  }
126
133
 
127
134
  h1,
@@ -131,10 +138,6 @@
131
138
  line-height: 1.3;
132
139
  }
133
140
 
134
- h1 {
135
- font-size: var(--heading-1-size);
136
- }
137
-
138
141
  h2 {
139
142
  font-size: var(--heading-2-size);
140
143
  }
@@ -161,7 +164,7 @@
161
164
 
162
165
  pre {
163
166
  border-radius: var(--border-radius-400);
164
- padding: 8px 12px;
167
+ padding: var(--size-100) 12px;
165
168
  white-space: pre-wrap;
166
169
  }
167
170
 
@@ -173,10 +176,6 @@
173
176
  list-style: none;
174
177
  padding-inline-start: 0;
175
178
  }
176
-
177
- > * + * {
178
- margin-top: var(--paragraph-gap);
179
- }
180
179
  }
181
180
 
182
181
  // One set of three dots throughout: a single dot means there are changes, it splits into three that pulse while
@@ -194,6 +193,29 @@
194
193
  white-space: nowrap;
195
194
  width: var(--width);
196
195
 
196
+ &--saved &-check {
197
+ opacity: 1;
198
+ stroke-dashoffset: 0;
199
+ transition:
200
+ opacity var(--check-duration) var(--timing-function) var(--check-delay),
201
+ stroke-dashoffset var(--check-duration) var(--timing-function) var(--check-delay);
202
+ }
203
+
204
+ &--saving &-dot {
205
+ opacity: 1;
206
+ scale: 1;
207
+ translate: calc((var(--i) - 1) * var(--dot-gap));
208
+
209
+ &::before {
210
+ animation: inline-edit-status-pulse var(--pulse-duration) var(--easing-in-out) calc(var(--i) * var(--pulse-stagger)) infinite;
211
+ }
212
+ }
213
+
214
+ &--unsaved &-dot:nth-child(2) {
215
+ opacity: 1;
216
+ scale: 1.5;
217
+ }
218
+
197
219
  &-announcement {
198
220
  @extend %hidden-visually;
199
221
  }
@@ -264,29 +286,6 @@
264
286
  }
265
287
  }
266
288
  }
267
-
268
- &--saved &-check {
269
- opacity: 1;
270
- stroke-dashoffset: 0;
271
- transition:
272
- opacity var(--check-duration) var(--timing-function) var(--check-delay),
273
- stroke-dashoffset var(--check-duration) var(--timing-function) var(--check-delay);
274
- }
275
-
276
- &--saving &-dot {
277
- opacity: 1;
278
- scale: 1;
279
- translate: calc((var(--i) - 1) * var(--dot-gap));
280
-
281
- &::before {
282
- animation: inline-edit-status-pulse var(--pulse-duration) ease-in-out calc(var(--i) * var(--pulse-stagger)) infinite;
283
- }
284
- }
285
-
286
- &--unsaved &-dot:nth-child(2) {
287
- opacity: 1;
288
- scale: 1.5;
289
- }
290
289
  }
291
290
 
292
291
  // The checklist box: an atomic inline, so the done item's strike-through doesn't run across it.
@@ -321,13 +320,17 @@
321
320
  color: var(--icon-color);
322
321
  display: grid;
323
322
  height: 24px;
324
- inset-block-start: 4px;
325
- inset-inline-end: 6px;
323
+ inset-block-start: calc(var(--size-100) / 2);
324
+ inset-inline-end: calc(var(--size-300) / 2);
326
325
  place-items: center;
327
326
  pointer-events: none;
328
327
  position: absolute;
329
328
  width: 24px;
330
329
 
330
+ &-check {
331
+ color: var(--icon-color-saved);
332
+ }
333
+
331
334
  // Only the shared check takes these; it carries no stroke of its own and is drawn on a 24 unit grid.
332
335
  &-check,
333
336
  &-pencil {
@@ -338,21 +341,12 @@
338
341
  width: var(--icon-size);
339
342
  }
340
343
 
341
- &-check {
342
- color: var(--icon-color-saved);
343
- }
344
-
345
344
  // The pencil rests in place but faded, showing only on hover or keyboard focus.
346
345
  &-pencil {
347
346
  @extend %icon-swap-active;
348
347
  opacity: 0;
349
348
  }
350
349
 
351
- // Not while saved: the saved pencil is hidden by the shared swap rules, which come first, so they'd lose a tie.
352
- .inline-edit:not(.inline-edit--saved):is(:hover, :has(:focus-visible)) &-pencil {
353
- opacity: 1;
354
- }
355
-
356
350
  .inline-edit.inline-edit--saved &-check {
357
351
  @extend %icon-swap-active;
358
352
  }
@@ -361,6 +355,11 @@
361
355
  @extend %icon-swap;
362
356
  }
363
357
 
358
+ // Not while saved: the saved pencil is hidden by the shared swap rules, which come first, so they'd lose a tie.
359
+ .inline-edit:not(.inline-edit--saved):is(:hover, :has(:focus-visible)) &-pencil {
360
+ opacity: 1;
361
+ }
362
+
364
363
  #{tokens.state(active, '.inline-edit')} > & {
365
364
  visibility: hidden;
366
365
  }
@@ -370,27 +369,22 @@
370
369
  @extend %hidden-visually;
371
370
  }
372
371
 
373
- // Placed over the selection through '--toolbar-x'/'--toolbar-y', scaling out of it from '--toolbar-origin'.
374
- // Visible overflow lets the block select's list hang outside the bar.
375
- // Qualified so it wins over the reused tooltip styles regardless of stylesheet order.
376
- &-toolbar.tooltip-content {
377
- left: 0;
378
- overflow: visible;
379
- padding: 4px;
380
- top: 0;
381
- transform-origin: var(--toolbar-origin);
382
- translate: var(--toolbar-x) var(--toolbar-y);
383
- }
384
-
385
372
  // Shown afresh, it jumps to the selection rather than gliding from where it last was.
386
373
  &-toolbar--instant.tooltip-content {
387
374
  transition: none;
388
375
  }
389
376
 
390
- // The block select is a bare trigger here; its own list still opens as a panel.
377
+ // The block select is a bare trigger here, stepping like the toolbar's buttons; its own list still opens as a
378
+ // panel.
391
379
  &-toolbar-block.select {
392
- --background: transparent;
393
- --box-shadow: none;
380
+ --background-active: var(--background-hover);
381
+ --background-default: transparent;
382
+ --background-hover: color-mix(in oklab, var(--toolbar-color) 6%, transparent);
383
+ --background-pressed: var(--background-hover);
384
+ --box-shadow-active: none;
385
+ --box-shadow-default: none;
386
+ --box-shadow-hover: none;
387
+ --box-shadow-pressed: none;
394
388
  --height: var(--toolbar-button-size);
395
389
  --width: var(--toolbar-select-width);
396
390
  color: var(--toolbar-color);
@@ -410,15 +404,10 @@
410
404
  height: var(--toolbar-button-size);
411
405
  outline: none;
412
406
  transition:
413
- background-color var(--toolbar-button-duration) ease-out,
414
- color var(--toolbar-button-duration) ease-out,
415
- scale var(--toolbar-button-duration) ease-out;
407
+ background-color var(--duration-fast) var(--easing-spring),
408
+ color var(--duration-fast) var(--easing-spring);
416
409
  width: var(--toolbar-button-size);
417
410
 
418
- &:active {
419
- scale: 0.96;
420
- }
421
-
422
411
  &:focus-visible {
423
412
  outline: 2px solid var(--toolbar-focus-color);
424
413
  }
@@ -437,24 +426,20 @@
437
426
  &-toolbar-divider {
438
427
  background: var(--toolbar-divider-color);
439
428
  flex: none;
440
- height: 20px;
441
- margin-inline: 4px;
429
+ height: var(--size-500);
430
+ margin-inline: calc(var(--size-100) / 2);
442
431
  width: 1px;
443
432
  }
444
433
 
445
- // One pane shows at a time: the buttons, or the link field while a link is being set.
446
- &-toolbar-format,
447
- &-toolbar-link {
448
- align-items: center;
449
- gap: 2px;
450
- }
451
-
452
434
  &-toolbar-format {
453
435
  display: var(--toolbar-format-display);
454
436
  }
455
437
 
438
+ // One pane shows at a time: the buttons, or the link field while a link is being set.
439
+ &-toolbar-format,
456
440
  &-toolbar-link {
457
- display: var(--toolbar-link-display);
441
+ align-items: center;
442
+ gap: calc(var(--size-100) / 4);
458
443
  }
459
444
 
460
445
  // Only the shared check takes the stroke; it carries none of its own and is drawn on a 24 unit grid.
@@ -468,10 +453,14 @@
468
453
  width: var(--toolbar-icon-size);
469
454
  }
470
455
 
456
+ &-toolbar-link {
457
+ display: var(--toolbar-link-display);
458
+ }
459
+
471
460
  &-toolbar-url.input {
472
461
  --background-default: transparent;
473
462
  --color-default: var(--toolbar-color);
474
- --padding-horizontal: 8px;
463
+ --padding-horizontal: var(--size-100);
475
464
  --padding-vertical: 0px;
476
465
  font-size: var(--toolbar-font-size);
477
466
  height: var(--toolbar-button-size);
@@ -483,6 +472,18 @@
483
472
  --color-default: var(--color-red-400);
484
473
  }
485
474
  }
475
+
476
+ // Placed over the selection through '--toolbar-x'/'--toolbar-y', scaling out of it from '--toolbar-origin'.
477
+ // Visible overflow lets the block select's list hang outside the bar.
478
+ // Qualified so it wins over the reused tooltip styles regardless of stylesheet order.
479
+ &-toolbar.tooltip-content {
480
+ left: 0;
481
+ overflow: visible;
482
+ padding: calc(var(--size-100) / 2);
483
+ top: 0;
484
+ transform-origin: var(--toolbar-origin);
485
+ translate: var(--toolbar-x) var(--toolbar-y);
486
+ }
486
487
  }
487
488
 
488
489
  @keyframes inline-edit-status-enter {
@@ -515,28 +516,22 @@
515
516
  }
516
517
  }
517
518
 
518
- // Every motion but the icon swap (stilled by '%icon-swap' itself) runs on these durations, so zeroing them stills the
519
- // component.
519
+ // Only the fades remain; the icon swap is stilled by '%icon-swap' itself.
520
520
  @media (prefers-reduced-motion: reduce) {
521
521
  .inline-edit {
522
- --toolbar-button-duration: 0s;
523
-
524
522
  &-status {
523
+ --blur: 0px;
525
524
  --check-delay: 0s;
526
525
  --check-duration: 0s;
527
- --enter-duration: 0s;
528
- --exit-duration: 0s;
529
526
  --move-duration: 0s;
530
527
  --pulse-duration: 0s;
531
528
  --pulse-stagger: 0s;
529
+ --shift: 0px;
532
530
  }
533
531
 
534
532
  &-toolbar.tooltip-content {
535
- --transition-duration: 0s;
533
+ --scale: 1;
534
+ transition-property: opacity;
536
535
  }
537
536
  }
538
-
539
- .inline-edit-toolbar-button.button:active {
540
- scale: 1;
541
- }
542
537
  }
@@ -1,74 +1,76 @@
1
+ @use 'css-utilities/background';
2
+
3
+
1
4
  .inline-edit {
2
- --background-hover: oklch(from var(--color-text-500) l c h / 0.04);
3
5
  --box-border-radius: var(--border-radius-400);
4
6
  --box-overflow-wrap: normal;
5
- --box-padding-block: 4px;
7
+ --box-padding-block: calc(var(--size-100) / 2);
6
8
  --box-padding-end: 36px;
7
- --box-padding-start: 8px;
9
+ --box-padding-start: var(--size-100);
8
10
  --box-text-overflow: ellipsis;
9
11
  --box-white-space: pre;
10
- --code-background: oklch(from var(--color-text-500) l c h / 0.06);
11
12
  --color: var(--color-text-500);
12
- --field-background: var(--color-white-300);
13
- --field-ring: 0 0 0 1.5px oklch(from var(--color-text-500) l c h / 0.25);
13
+ --field-ring: 0 0 0 1.5px var(--surface-border-pressed);
14
14
  --heading-1-size: 1.5em;
15
15
  --heading-2-size: 1.25em;
16
16
  --heading-3-size: 1.125em;
17
- --icon-color: var(--color-text-300);
18
- --icon-color-saved: var(--color-text-500);
19
- --icon-size: 16px;
20
- --icon-swap-duration: 300ms;
17
+ --icon-color: var(--color-primary-300);
18
+ --icon-color-saved: var(--color-primary-500);
19
+ --icon-size: var(--size-400);
20
+ --icon-swap-duration: var(--duration-moderate);
21
21
  --icon-swap-timing-function: linear(0, 0.035, 0.118, 0.216, 0.319, 0.424, 0.515, 0.6, 0.669, 0.728, 0.781, 0.822, 0.856, 0.885, 0.908, 0.927, 0.942, 0.954, 0.964, 0.971, 0.977, 0.982, 0.986, 0.989, 0.991, 0.993, 0.995, 0.996, 0.997, 0.997, 1);
22
- --link-underline-color: oklch(from var(--color-text-500) l c h / 0.4);
23
- --mark-background: oklch(from var(--color-text-500) l c h / 0.15);
24
- --outline-color: var(--color-text-500);
22
+ --link-underline-color: oklch(from var(--color-primary-500) l c h / 0.4);
23
+ --mark-background: oklch(from var(--color-primary-500) l c h / 0.15);
24
+ --outline-color: var(--color-primary-500);
25
25
  --paragraph-gap: 12px;
26
26
  --placeholder-color: var(--color-text-300);
27
- --quote-border-color: var(--color-border-300);
27
+ --quote-border-color: var(--surface-border-default);
28
28
  --quote-color: var(--color-text-400);
29
- --status-margin-top: 4px;
30
- --task-border-color: var(--color-text-300);
31
- --task-check-color: var(--color-white-300);
32
- --task-checked-color: var(--color-text-500);
29
+ --status-margin-top: calc(var(--size-100) / 2);
30
+ --task-border-color: var(--color-primary-300);
31
+ --task-check-color: var(--color-surface);
32
+ --task-checked-color: var(--color-primary-500);
33
33
  --task-done-color: var(--color-text-300);
34
- --toolbar-background: var(--color-grey-400);
35
- --toolbar-box-shadow:
36
- 0 0 0 1px color-mix(in oklab, var(--color-black-300) 6%, transparent),
37
- 0 1px 2px color-mix(in oklab, var(--color-black-300) 6%, transparent),
38
- 0 6px 16px -6px color-mix(in oklab, var(--color-black-300) 12%, transparent);
39
- --toolbar-button-duration: 150ms;
40
34
  --toolbar-button-size: 36px;
41
35
  --toolbar-color: var(--color-text-500);
42
36
  --toolbar-color-muted: var(--color-text-300);
43
- --toolbar-divider-color: var(--color-border-300);
44
- --toolbar-focus-color: color-mix(in oklab, var(--color-text-500) 38%, transparent);
37
+ --toolbar-divider-color: var(--surface-border-default);
38
+ --toolbar-focus-color: var(--surface-border-pressed);
45
39
  --toolbar-font-size: var(--font-size-300);
46
40
  --toolbar-format-display: flex;
47
- --toolbar-icon-size: 16px;
41
+ --toolbar-icon-size: var(--size-400);
48
42
  --toolbar-link-display: none;
49
43
  --toolbar-select-width: 132px;
50
44
  --toolbar-url-width: 220px;
51
45
 
46
+ // Tinted on hover, until editing turns the editor into a field.
47
+ &-display,
48
+ &-editor {
49
+ @extend %background-state;
50
+ --background-hover: var(--surface-background-hover);
51
+ --background-pressed: var(--background-hover);
52
+ }
53
+
52
54
  // The save status, as wide as its longest label so the icon never shifts and old and new words cross in one spot.
53
55
  &-status {
54
- --blur: 3px;
55
- --check-color: var(--color-text-500);
56
+ --blur: var(--blur-400);
57
+ --check-color: var(--color-primary-500);
56
58
  --check-delay: 0.12s;
57
- --check-duration: 0.35s;
59
+ --check-duration: var(--duration-slow);
58
60
  --check-stroke-width: 2.4;
59
61
  --color: var(--color-text-300);
60
62
  --dot-gap: calc(var(--icon-size) * 0.3125);
61
63
  --dot-size: calc(var(--icon-size) / 4);
62
- --enter-duration: 0.22s;
63
- --exit-duration: 0.12s;
64
+ --enter-duration: var(--duration-moderate);
65
+ --exit-duration: var(--duration-moderate-exit);
64
66
  --font-size: var(--font-size-300);
65
67
  --gap: 0.5rem;
66
68
  --icon-size: 1.25em;
67
- --move-duration: 0.4s;
69
+ --move-duration: var(--duration-slow);
68
70
  --pulse-duration: 1s;
69
71
  --pulse-stagger: 0.16s;
70
72
  --shift: 3px;
71
- --timing-function: cubic-bezier(0.23, 1, 0.32, 1);
73
+ --timing-function: var(--easing-spring);
72
74
  --width: 11em;
73
75
  }
74
76
 
@@ -79,20 +81,19 @@
79
81
  }
80
82
 
81
83
  // Feeds the reused tooltip content; qualified so it wins over the tooltip defaults regardless of stylesheet order.
84
+ // A surface through the tooltip content it reuses, so its colors are read at its own level.
82
85
  &-toolbar.tooltip-content {
83
- --background: var(--toolbar-background);
86
+ --background-default: var(--surface-background-default);
84
87
  --border-radius: var(--border-radius-600);
85
- --box-shadow: var(--toolbar-box-shadow);
88
+ --box-shadow-default: var(--surface-shadow-default);
86
89
  --scale: 0.96;
87
- --transition-duration: 180ms;
88
- --transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
89
90
  --width: max-content;
90
91
  }
91
92
 
92
93
 
93
94
  // Qualified by the root so it wins over the reused input/textarea styles regardless of stylesheet order.
94
95
  & > #{&}-field {
95
- --background-default: var(--field-background);
96
+ --background-default: var(--field-background, var(--surface-background-default));
96
97
  --color-default: currentColor;
97
98
  }
98
99
 
@@ -1,10 +1,13 @@
1
- @use '/shared';
2
- @use '/tokens';
1
+ @use 'css-utilities/background';
2
+ @use 'css-utilities/border';
3
+ @use 'css-utilities/box-shadow';
4
+ @use 'css-utilities/color';
5
+
3
6
 
4
7
  // The text field '.input' and '.textarea' both are: one box with its states, padded so its border sits inside it.
5
8
  // It ends in nested rules, so it is included after the field's own declarations.
6
9
  @mixin base {
7
- @extend %background-state, %border-state, %color-state;
10
+ @extend %background-state, %border-state, %box-shadow-state, %color-state;
8
11
  background: var(--background);
9
12
  border: var(--border-width) var(--border-style) var(--border-color);
10
13
  border-radius: var(--border-radius);
@@ -24,30 +27,13 @@
24
27
  }
25
28
  }
26
29
 
27
- // Included after the field's own variables, for the same reason.
28
30
  @mixin variables {
29
31
  --border-color-default: var(--background);
30
32
  --border-radius: var(--border-radius-400);
31
33
  --border-style: solid;
32
34
  --border-width: 0px;
33
- --box-shadow: var(--box-shadow-default);
34
- --box-shadow-default: none;
35
35
  --font-size: var(--font-size-400);
36
36
  --padding-horizontal: var(--size-400);
37
37
  --padding-vertical: var(--size-400);
38
38
  --size: var(--size-400);
39
-
40
- #{tokens.state(inactive)} {
41
- @include tokens.state(hover) {
42
- --box-shadow: var(--box-shadow-hover);
43
- }
44
-
45
- @include tokens.state(pressed) {
46
- --box-shadow: var(--box-shadow-pressed);
47
- }
48
- }
49
-
50
- #{tokens.state(active)} {
51
- --box-shadow: var(--box-shadow-active);
52
- }
53
39
  }
@@ -1,4 +1,6 @@
1
- @use '/shared';
1
+ @use 'css-utilities/absolute';
2
+ @use 'css-utilities/color';
3
+
2
4
 
3
5
  .input-scrub {
4
6
  align-items: center;
@@ -25,8 +27,12 @@
25
27
  }
26
28
 
27
29
  &-label {
30
+ @extend %color-state;
31
+ --color-default: var(--label-color);
32
+ --color-hover: var(--label-color-active);
33
+ --color-pressed: var(--color-hover);
28
34
  align-items: center;
29
- color: var(--label-color);
35
+ color: var(--color);
30
36
  cursor: ew-resize;
31
37
  display: flex;
32
38
  flex-shrink: 0;
@@ -38,13 +44,9 @@
38
44
  user-select: none;
39
45
  width: var(--label-width);
40
46
 
41
- &:hover {
42
- color: var(--label-color-active);
43
- }
44
-
45
47
  svg {
46
- height: 16px;
47
- width: 16px;
48
+ height: var(--size-400);
49
+ width: var(--size-400);
48
50
  }
49
51
  }
50
52