@fibery/ui-kit 2.0.1 → 2.1.1

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 (1094) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/{eslint.config.mjs → esfint.config.mjs} +1 -1
  3. package/package.json +15 -9
  4. package/scripts/generate-icons.mjs +42 -34
  5. package/src/@types/react-color.d.ts +36 -0
  6. package/src/a11y-color.test.ts +62 -55
  7. package/src/a11y-color.ts +40 -37
  8. package/src/actions-menu/actions-menu-item.tsx +1 -1
  9. package/src/actions-menu/actions-menu.tsx +3 -3
  10. package/src/ai/model.tsx +1 -1
  11. package/src/ai/temperature.tsx +1 -1
  12. package/src/animated-height-container.tsx +2 -2
  13. package/src/antd/{AutoComplete.js → AutoComplete.ts} +1 -1
  14. package/src/antd/{Tabs.js → Tabs.tsx} +7 -4
  15. package/src/antd/ant-upload.tsx +4 -4
  16. package/src/antd/input-number.tsx +2 -2
  17. package/src/antd/input.tsx +2 -2
  18. package/src/antd/styles.ts +8 -8
  19. package/src/antd/utils.tsx +12 -23
  20. package/src/app-icon-with-fallback.tsx +31 -8
  21. package/src/app-icon.tsx +21 -8
  22. package/src/avatar.tsx +8 -5
  23. package/src/axis-header.tsx +2 -2
  24. package/src/banner/banner-action.tsx +23 -0
  25. package/src/banner/banner-context.tsx +4 -0
  26. package/src/banner/banner-variant.ts +1 -0
  27. package/src/banner/banner.tsx +101 -0
  28. package/src/box.tsx +3 -1
  29. package/src/breadcrumb.tsx +14 -11
  30. package/src/button/base-button.tsx +2 -2
  31. package/src/button/make-button-colors.ts +2 -2
  32. package/src/canvas-colors.ts +133 -0
  33. package/src/card-container.tsx +1 -1
  34. package/src/checkbox-multi-select.tsx +4 -4
  35. package/src/checkbox.tsx +21 -9
  36. package/src/color-filter.test.ts +114 -0
  37. package/src/color-filter.ts +125 -0
  38. package/src/color-picker/{ColorPickerOrLoader.js → ColorPickerOrLoader.tsx} +2 -2
  39. package/src/color-picker/{SliderPointer.js → SliderPointer.tsx} +3 -2
  40. package/src/color-picker/{index.js → index.tsx} +37 -8
  41. package/src/color-picker/swatch.tsx +5 -4
  42. package/src/color-utils.test.ts +246 -116
  43. package/src/color-utils.ts +150 -144
  44. package/src/command-menu/index.tsx +1 -1
  45. package/src/date-picker/autocomplete.tsx +1 -0
  46. package/src/date-picker/date-range-picker-popup-content.tsx +1 -1
  47. package/src/date-picker/date-range-picker.tsx +1 -1
  48. package/src/date-picker/fake-date-input.tsx +10 -4
  49. package/src/date-picker/relative-date-picker.tsx +32 -3
  50. package/src/date-picker/single-date-picker.tsx +13 -3
  51. package/src/date-picker/styles.ts +12 -12
  52. package/src/date-picker/types.ts +2 -0
  53. package/src/design-system/alpha.ts +0 -15
  54. package/src/design-system/animation.ts +24 -5
  55. package/src/design-system/colors-css.ts +20 -4
  56. package/src/design-system/colors-js.test.ts +167 -153
  57. package/src/design-system/colors-js.ts +30 -85
  58. package/src/design-system/colors.test.ts +5 -5
  59. package/src/design-system/colors.ts +700 -404
  60. package/src/design-system/def.ts +17 -0
  61. package/src/design-system/layout.ts +1 -0
  62. package/src/design-system/theme.test.ts +13 -68
  63. package/src/design-system/theme.ts +28 -76
  64. package/src/design-system/types.ts +102 -0
  65. package/src/design-system/vars.test.ts +71 -1681
  66. package/src/design-system/vars.ts +45 -29
  67. package/src/design-system.ts +13 -5
  68. package/src/dnd.tsx +1 -1
  69. package/src/{utils-dom.ts → dom-utils.ts} +19 -0
  70. package/src/dot.tsx +2 -2
  71. package/src/emoji-picker/app-icon-picker.tsx +2 -1
  72. package/src/emoji-picker/emoji-picker-content-with-color.tsx +7 -4
  73. package/src/emoji-picker/emoji-picker.tsx +3 -0
  74. package/src/emoji-picker/icon-emoji-picker.tsx +1 -1
  75. package/src/emoji-picker/primitives/emoji.tsx +3 -2
  76. package/src/favorites-icon.tsx +1 -1
  77. package/src/fibermoji-placeholder.tsx +6 -1
  78. package/src/file-item/add-query-param.ts +13 -0
  79. package/src/file-item/file-menu-items.tsx +2 -1
  80. package/src/file-item/file-preview-actions.tsx +14 -2
  81. package/src/file-item.tsx +5 -5
  82. package/src/flags.ts +3 -0
  83. package/src/header-layout.tsx +9 -2
  84. package/src/heat.ts +8 -0
  85. package/src/highlight-colors.test.ts +68 -0
  86. package/src/highlight-colors.ts +91 -0
  87. package/src/html-styles.ts +3 -3
  88. package/src/hue-shift.test.ts +17 -4
  89. package/src/icons/Icon.tsx +5 -2
  90. package/src/icons/ast/Abort.ts +8 -4
  91. package/src/icons/ast/AccessTemplate.ts +8 -4
  92. package/src/icons/ast/Activity.ts +8 -4
  93. package/src/icons/ast/ActivityFilled.ts +8 -4
  94. package/src/icons/ast/ActivityLog.ts +8 -4
  95. package/src/icons/ast/Add.ts +8 -4
  96. package/src/icons/ast/AddAfter.ts +8 -4
  97. package/src/icons/ast/AddBefore.ts +8 -4
  98. package/src/icons/ast/AddCompact.ts +8 -4
  99. package/src/icons/ast/AddDatabase.ts +8 -4
  100. package/src/icons/ast/AddGroup.ts +8 -4
  101. package/src/icons/ast/AddIntegration.ts +8 -4
  102. package/src/icons/ast/AddReactions.ts +8 -4
  103. package/src/icons/ast/AiAssistant.ts +8 -4
  104. package/src/icons/ast/AiAssistantFilled.ts +8 -4
  105. package/src/icons/ast/AiAvatar.ts +8 -4
  106. package/src/icons/ast/AiFiberyBuild.ts +8 -4
  107. package/src/icons/ast/AiSearch.ts +8 -4
  108. package/src/icons/ast/AlertTriangle.ts +8 -4
  109. package/src/icons/ast/Anthropic.ts +8 -4
  110. package/src/icons/ast/App.ts +8 -4
  111. package/src/icons/ast/AppDetails.ts +8 -4
  112. package/src/icons/ast/AppStore.ts +8 -4
  113. package/src/icons/ast/AppStoreOneColor.ts +8 -4
  114. package/src/icons/ast/AppTemplates.ts +8 -4
  115. package/src/icons/ast/AppWebhooks.ts +8 -4
  116. package/src/icons/ast/AppWiki.ts +8 -4
  117. package/src/icons/ast/AppearanceAuto.ts +8 -4
  118. package/src/icons/ast/AppearanceDark.ts +8 -4
  119. package/src/icons/ast/AppearanceLight.ts +8 -4
  120. package/src/icons/ast/Apple.ts +8 -4
  121. package/src/icons/ast/ArrowBarDown.ts +12 -0
  122. package/src/icons/ast/ArrowBarLeft.ts +8 -4
  123. package/src/icons/ast/ArrowBarRight.ts +8 -4
  124. package/src/icons/ast/ArrowBarUp.ts +12 -0
  125. package/src/icons/ast/ArrowBottom.ts +8 -4
  126. package/src/icons/ast/ArrowCollapse.ts +8 -4
  127. package/src/icons/ast/ArrowCollapseVertical.ts +8 -4
  128. package/src/icons/ast/ArrowForward.ts +8 -4
  129. package/src/icons/ast/ArrowLeft.ts +8 -4
  130. package/src/icons/ast/ArrowRight.ts +8 -4
  131. package/src/icons/ast/ArrowTop.ts +8 -4
  132. package/src/icons/ast/ArrowUpCircle.ts +8 -4
  133. package/src/icons/ast/ArrowsRightLeft.ts +8 -4
  134. package/src/icons/ast/AskForInput.ts +8 -4
  135. package/src/icons/ast/Asterisk.ts +8 -4
  136. package/src/icons/ast/Atom.ts +8 -4
  137. package/src/icons/ast/AutomationsCancelled.ts +8 -4
  138. package/src/icons/ast/AutomationsDisabled.ts +8 -4
  139. package/src/icons/ast/AutomationsError.ts +8 -4
  140. package/src/icons/ast/AutomationsInProgress.ts +8 -4
  141. package/src/icons/ast/AutomationsNotStarted.ts +8 -4
  142. package/src/icons/ast/AutomationsSuccess.ts +8 -4
  143. package/src/icons/ast/Back.ts +8 -4
  144. package/src/icons/ast/BacklogIcon.ts +8 -4
  145. package/src/icons/ast/BatchActionsIcon.ts +8 -4
  146. package/src/icons/ast/BellCircle.ts +8 -4
  147. package/src/icons/ast/BellFilled.ts +8 -4
  148. package/src/icons/ast/BellOff.ts +8 -4
  149. package/src/icons/ast/BellRinging.ts +8 -4
  150. package/src/icons/ast/BellX.ts +8 -4
  151. package/src/icons/ast/Bolt.ts +8 -4
  152. package/src/icons/ast/BringForward.ts +8 -4
  153. package/src/icons/ast/BringToFront.ts +8 -4
  154. package/src/icons/ast/Cards.ts +8 -4
  155. package/src/icons/ast/Chat.ts +8 -4
  156. package/src/icons/ast/ChatAi.ts +8 -4
  157. package/src/icons/ast/ChatBubble.ts +8 -4
  158. package/src/icons/ast/ChatFloat.ts +8 -4
  159. package/src/icons/ast/ChatSidebar.ts +8 -4
  160. package/src/icons/ast/CheckCircle.ts +8 -4
  161. package/src/icons/ast/CheckCircleFilled.ts +8 -4
  162. package/src/icons/ast/Checked.ts +8 -4
  163. package/src/icons/ast/Clean.ts +8 -4
  164. package/src/icons/ast/Clear.ts +8 -4
  165. package/src/icons/ast/ClearInputFilled.ts +8 -4
  166. package/src/icons/ast/ClearValue.ts +8 -4
  167. package/src/icons/ast/Clock.ts +8 -4
  168. package/src/icons/ast/ClockAlarm.ts +8 -4
  169. package/src/icons/ast/ClockForward.ts +8 -4
  170. package/src/icons/ast/Close.ts +8 -4
  171. package/src/icons/ast/CollapseAll.ts +8 -4
  172. package/src/icons/ast/CollapseAllHorizontal.ts +8 -4
  173. package/src/icons/ast/ColorCoding.ts +8 -4
  174. package/src/icons/ast/ColorCodingFilled.ts +8 -4
  175. package/src/icons/ast/Columns.ts +8 -4
  176. package/src/icons/ast/Columns2.ts +8 -4
  177. package/src/icons/ast/Columns4.ts +8 -4
  178. package/src/icons/ast/CommentBubble.ts +8 -4
  179. package/src/icons/ast/Copy.ts +8 -4
  180. package/src/icons/ast/Create.ts +8 -4
  181. package/src/icons/ast/CreditsFilled.ts +8 -4
  182. package/src/icons/ast/CrossCircle.ts +8 -4
  183. package/src/icons/ast/Crosshair.ts +8 -4
  184. package/src/icons/ast/Csv.ts +8 -4
  185. package/src/icons/ast/Database.ts +8 -4
  186. package/src/icons/ast/DatabaseOff.ts +8 -4
  187. package/src/icons/ast/DatabaseStroke.ts +8 -4
  188. package/src/icons/ast/DateRange.ts +8 -4
  189. package/src/icons/ast/Delete.ts +8 -4
  190. package/src/icons/ast/Demo.ts +8 -4
  191. package/src/icons/ast/Dependency.ts +8 -4
  192. package/src/icons/ast/Dividers.ts +8 -4
  193. package/src/icons/ast/Document.ts +8 -4
  194. package/src/icons/ast/DoubleArrowLeft.ts +8 -4
  195. package/src/icons/ast/DoubleArrowRight.ts +8 -4
  196. package/src/icons/ast/DoubleLine.ts +8 -4
  197. package/src/icons/ast/DragBlockHandle.ts +8 -4
  198. package/src/icons/ast/DragBlockHandleSingle.ts +8 -4
  199. package/src/icons/ast/DragHandle.ts +8 -4
  200. package/src/icons/ast/Duplicate.ts +8 -4
  201. package/src/icons/ast/DynamicFilterValue.ts +8 -4
  202. package/src/icons/ast/EditValue.ts +8 -4
  203. package/src/icons/ast/Email.ts +8 -4
  204. package/src/icons/ast/EmojiDelete.ts +8 -4
  205. package/src/icons/ast/EntityCreate.ts +8 -4
  206. package/src/icons/ast/EntityCreateFilled.ts +8 -4
  207. package/src/icons/ast/EntityMerge.ts +8 -4
  208. package/src/icons/ast/Equation.ts +8 -4
  209. package/src/icons/ast/ExpandAll.ts +8 -4
  210. package/src/icons/ast/ExpandAllHorizontal.ts +8 -4
  211. package/src/icons/ast/Export.ts +8 -4
  212. package/src/icons/ast/ExtensionAssignments.ts +8 -4
  213. package/src/icons/ast/ExtensionAvatar.ts +8 -4
  214. package/src/icons/ast/ExtensionComments.ts +8 -4
  215. package/src/icons/ast/ExtensionFiles.ts +8 -4
  216. package/src/icons/ast/ExtensionReferences.ts +8 -4
  217. package/src/icons/ast/ExtensionWorkflow.ts +8 -4
  218. package/src/icons/ast/Eye.ts +8 -4
  219. package/src/icons/ast/Favorites.ts +8 -4
  220. package/src/icons/ast/FavoritesChecked.ts +8 -4
  221. package/src/icons/ast/FavoritesOff.ts +8 -4
  222. package/src/icons/ast/FiberyDesktopApp.ts +8 -4
  223. package/src/icons/ast/FiberyMono.ts +8 -4
  224. package/src/icons/ast/FieldUnit.ts +8 -4
  225. package/src/icons/ast/Fields.ts +8 -4
  226. package/src/icons/ast/Figma.ts +8 -4
  227. package/src/icons/ast/FileArchive.ts +8 -4
  228. package/src/icons/ast/FileBroken.ts +8 -4
  229. package/src/icons/ast/FileCounter.ts +8 -4
  230. package/src/icons/ast/FileDocument.ts +8 -4
  231. package/src/icons/ast/FileDownload.ts +8 -4
  232. package/src/icons/ast/FileImage.ts +8 -4
  233. package/src/icons/ast/FileMultiple.ts +8 -4
  234. package/src/icons/ast/FileOther.ts +8 -4
  235. package/src/icons/ast/FilePresentation.ts +8 -4
  236. package/src/icons/ast/FileTable.ts +8 -4
  237. package/src/icons/ast/FileUpload.ts +8 -4
  238. package/src/icons/ast/FileVideo.ts +8 -4
  239. package/src/icons/ast/Filter.ts +8 -4
  240. package/src/icons/ast/FitToScreen.ts +8 -4
  241. package/src/icons/ast/FocusMode.ts +8 -4
  242. package/src/icons/ast/FocusModeOff.ts +8 -4
  243. package/src/icons/ast/Folder.ts +8 -4
  244. package/src/icons/ast/FolderFavorite.ts +12 -0
  245. package/src/icons/ast/FormWithCover.ts +8 -4
  246. package/src/icons/ast/FormWithoutCover.ts +8 -4
  247. package/src/icons/ast/FullscreenModeOffIcon.ts +8 -4
  248. package/src/icons/ast/FullscreenModeOn.ts +8 -4
  249. package/src/icons/ast/FullscreenModeOnIcon.ts +8 -4
  250. package/src/icons/ast/Gift.ts +8 -4
  251. package/src/icons/ast/Github.ts +8 -4
  252. package/src/icons/ast/Gitlab.ts +8 -4
  253. package/src/icons/ast/Globe.ts +8 -4
  254. package/src/icons/ast/GlobeSimple.ts +8 -4
  255. package/src/icons/ast/GlobeUnpublish.ts +8 -4
  256. package/src/icons/ast/GoTo.ts +8 -4
  257. package/src/icons/ast/GoogleDrive.ts +8 -4
  258. package/src/icons/ast/GoogleMap.ts +8 -4
  259. package/src/icons/ast/GraduationCapFilled.ts +8 -4
  260. package/src/icons/ast/Headphones.ts +8 -4
  261. package/src/icons/ast/HeadphonesAi.ts +8 -4
  262. package/src/icons/ast/Hide.ts +8 -4
  263. package/src/icons/ast/Highlights.ts +8 -4
  264. package/src/icons/ast/Hint.ts +8 -4
  265. package/src/icons/ast/Home.ts +8 -4
  266. package/src/icons/ast/HomeFilled.ts +8 -4
  267. package/src/icons/ast/ImageXmark.ts +8 -4
  268. package/src/icons/ast/Import.ts +8 -4
  269. package/src/icons/ast/ImportFilled.ts +8 -4
  270. package/src/icons/ast/InfoCircle.ts +8 -4
  271. package/src/icons/ast/InfoCircleFilled.ts +8 -4
  272. package/src/icons/ast/Integration.ts +8 -4
  273. package/src/icons/ast/IntegrationsFilled.ts +8 -4
  274. package/src/icons/ast/IntegrationsIntegrationDiscourseColor.ts +8 -4
  275. package/src/icons/ast/IntegrationsIntegrationIntercomColor.ts +8 -4
  276. package/src/icons/ast/IntegrationsIntegrationSlackColor.ts +8 -4
  277. package/src/icons/ast/IntegrationsIntegrationZendeskColor.ts +8 -4
  278. package/src/icons/ast/Intercom.ts +12 -0
  279. package/src/icons/ast/InvitePeople.ts +8 -4
  280. package/src/icons/ast/Items.ts +8 -4
  281. package/src/icons/ast/ItemsTimeline.ts +8 -4
  282. package/src/icons/ast/Jira.ts +8 -4
  283. package/src/icons/ast/Key.ts +8 -4
  284. package/src/icons/ast/KeyboardHideDown.ts +8 -4
  285. package/src/icons/ast/Lab.ts +8 -4
  286. package/src/icons/ast/LayoutDouble.ts +8 -4
  287. package/src/icons/ast/LayoutMultiple.ts +8 -4
  288. package/src/icons/ast/LayoutSingle.ts +8 -4
  289. package/src/icons/ast/LeftPanel.ts +8 -4
  290. package/src/icons/ast/LevelPlus.ts +8 -4
  291. package/src/icons/ast/Levels.ts +8 -4
  292. package/src/icons/ast/LineDivider.ts +8 -4
  293. package/src/icons/ast/LineJump.ts +8 -4
  294. package/src/icons/ast/Link.ts +8 -4
  295. package/src/icons/ast/LocationEdit.ts +8 -4
  296. package/src/icons/ast/Lock.ts +8 -4
  297. package/src/icons/ast/LockOutline.ts +8 -4
  298. package/src/icons/ast/Logout.ts +8 -4
  299. package/src/icons/ast/Loom.ts +8 -4
  300. package/src/icons/ast/LoupeZoom.ts +8 -4
  301. package/src/icons/ast/LoupeZoomIn.ts +8 -4
  302. package/src/icons/ast/LoupeZoomOut.ts +8 -4
  303. package/src/icons/ast/ManyPeople.ts +8 -4
  304. package/src/icons/ast/MapMode.ts +8 -4
  305. package/src/icons/ast/Markdown.ts +8 -4
  306. package/src/icons/ast/MenuCollapser.ts +8 -4
  307. package/src/icons/ast/Mermaid.ts +8 -4
  308. package/src/icons/ast/MessagePlus.ts +8 -4
  309. package/src/icons/ast/MessagePlusSquare.ts +8 -4
  310. package/src/icons/ast/Milestones.ts +8 -4
  311. package/src/icons/ast/Minus.ts +8 -4
  312. package/src/icons/ast/Miro.ts +8 -4
  313. package/src/icons/ast/MirrorOff.ts +8 -4
  314. package/src/icons/ast/MirrorOn.ts +8 -4
  315. package/src/icons/ast/Mixpanel.ts +8 -4
  316. package/src/icons/ast/Monitor.ts +8 -4
  317. package/src/icons/ast/More.ts +8 -4
  318. package/src/icons/ast/MoreCompact.ts +8 -4
  319. package/src/icons/ast/MoveBottom.ts +8 -4
  320. package/src/icons/ast/MoveLeft.ts +8 -4
  321. package/src/icons/ast/MoveRight.ts +8 -4
  322. package/src/icons/ast/MoveSpace.ts +8 -4
  323. package/src/icons/ast/MoveTop.ts +8 -4
  324. package/src/icons/ast/Network.ts +8 -4
  325. package/src/icons/ast/NetworkAdd.ts +8 -4
  326. package/src/icons/ast/NoBorder.ts +8 -4
  327. package/src/icons/ast/NoFill.ts +8 -4
  328. package/src/icons/ast/Notifications.ts +8 -4
  329. package/src/icons/ast/ObjChild.ts +8 -4
  330. package/src/icons/ast/ObjM2M.ts +8 -4
  331. package/src/icons/ast/ObjO2O.ts +8 -4
  332. package/src/icons/ast/ObjParent.ts +8 -4
  333. package/src/icons/ast/ObjSelf.ts +8 -4
  334. package/src/icons/ast/OnSchedule.ts +8 -4
  335. package/src/icons/ast/OpenAi.ts +8 -4
  336. package/src/icons/ast/OpenAsPage.ts +8 -4
  337. package/src/icons/ast/PageRegularMode.ts +8 -4
  338. package/src/icons/ast/PageWideMode.ts +8 -4
  339. package/src/icons/ast/PanelAdd.ts +8 -4
  340. package/src/icons/ast/Pencil.ts +8 -4
  341. package/src/icons/ast/People.ts +8 -4
  342. package/src/icons/ast/PeopleCheck.ts +8 -4
  343. package/src/icons/ast/Photo.ts +8 -4
  344. package/src/icons/ast/Pin.ts +8 -4
  345. package/src/icons/ast/PinFilled.ts +8 -4
  346. package/src/icons/ast/Popup.ts +8 -4
  347. package/src/icons/ast/Posts.ts +8 -4
  348. package/src/icons/ast/PresentPlay.ts +8 -4
  349. package/src/icons/ast/PresentStop.ts +8 -4
  350. package/src/icons/ast/Print.ts +8 -4
  351. package/src/icons/ast/PrivateItems.ts +8 -4
  352. package/src/icons/ast/Question.ts +8 -4
  353. package/src/icons/ast/QuickFilter.ts +8 -4
  354. package/src/icons/ast/QuickFilterPersonal.ts +8 -4
  355. package/src/icons/ast/ReadOnly.ts +8 -4
  356. package/src/icons/ast/Refresh.ts +8 -4
  357. package/src/icons/ast/Remove.ts +8 -4
  358. package/src/icons/ast/RemovePeople.ts +8 -4
  359. package/src/icons/ast/Reply.ts +8 -4
  360. package/src/icons/ast/ResetPassword.ts +8 -4
  361. package/src/icons/ast/Restore.ts +8 -4
  362. package/src/icons/ast/RicheditorActionsMore.ts +8 -4
  363. package/src/icons/ast/RicheditorBlockCallout.ts +8 -4
  364. package/src/icons/ast/RicheditorBlockCode.ts +8 -4
  365. package/src/icons/ast/RicheditorBlockEmbed.ts +8 -4
  366. package/src/icons/ast/RicheditorBlockEntity.ts +8 -4
  367. package/src/icons/ast/RicheditorBlockFile.ts +8 -4
  368. package/src/icons/ast/RicheditorBlockH1.ts +8 -4
  369. package/src/icons/ast/RicheditorBlockH2.ts +8 -4
  370. package/src/icons/ast/RicheditorBlockH3.ts +8 -4
  371. package/src/icons/ast/RicheditorBlockH4.ts +8 -4
  372. package/src/icons/ast/RicheditorBlockMention.ts +8 -4
  373. package/src/icons/ast/RicheditorBlockParagraph.ts +8 -4
  374. package/src/icons/ast/RicheditorBlockQuote.ts +8 -4
  375. package/src/icons/ast/RicheditorChecklistCreate.ts +8 -4
  376. package/src/icons/ast/RicheditorCommentCreate.ts +8 -4
  377. package/src/icons/ast/RicheditorEntityLinkCreate.ts +8 -4
  378. package/src/icons/ast/RicheditorHistoryRedo.ts +8 -4
  379. package/src/icons/ast/RicheditorHistoryUndo.ts +8 -4
  380. package/src/icons/ast/RicheditorImageAlignCenter.ts +8 -4
  381. package/src/icons/ast/RicheditorImageAlignLeft.ts +8 -4
  382. package/src/icons/ast/RicheditorImageAlignRight.ts +8 -4
  383. package/src/icons/ast/RicheditorImageUpload.ts +8 -4
  384. package/src/icons/ast/RicheditorImageWrapCenter.ts +8 -4
  385. package/src/icons/ast/RicheditorImageWrapLeft.ts +8 -4
  386. package/src/icons/ast/RicheditorImageWrapRight.ts +8 -4
  387. package/src/icons/ast/RicheditorImageZoom.ts +8 -4
  388. package/src/icons/ast/RicheditorLinkCreate.ts +8 -4
  389. package/src/icons/ast/RicheditorLinkedhighlightCreate.ts +8 -4
  390. package/src/icons/ast/RicheditorListBullet.ts +8 -4
  391. package/src/icons/ast/RicheditorListIndent.ts +8 -4
  392. package/src/icons/ast/RicheditorListOrdered.ts +8 -4
  393. package/src/icons/ast/RicheditorListUnindent.ts +8 -4
  394. package/src/icons/ast/RicheditorMarkCode.ts +8 -4
  395. package/src/icons/ast/RicheditorMarkEm.ts +8 -4
  396. package/src/icons/ast/RicheditorMarkHighlight.ts +8 -4
  397. package/src/icons/ast/RicheditorMarkStrike.ts +8 -4
  398. package/src/icons/ast/RicheditorMarkStrong.ts +8 -4
  399. package/src/icons/ast/RicheditorMarkTextBackgroundColor.ts +8 -4
  400. package/src/icons/ast/RicheditorMarkUnderline.ts +8 -4
  401. package/src/icons/ast/RicheditorOpenLink.ts +8 -4
  402. package/src/icons/ast/RicheditorTableCreate.ts +8 -4
  403. package/src/icons/ast/RicheditorUnlink.ts +8 -4
  404. package/src/icons/ast/RicheditorVideoUpload.ts +8 -4
  405. package/src/icons/ast/RightPanel.ts +8 -4
  406. package/src/icons/ast/Rows.ts +8 -4
  407. package/src/icons/ast/RuleScheduled.ts +8 -4
  408. package/src/icons/ast/Search.ts +8 -4
  409. package/src/icons/ast/SearchAdd.ts +8 -4
  410. package/src/icons/ast/SearchFilled.ts +8 -4
  411. package/src/icons/ast/SearchRemove.ts +8 -4
  412. package/src/icons/ast/SelfReferenceOff.ts +8 -4
  413. package/src/icons/ast/SelfReferenceOn.ts +8 -4
  414. package/src/icons/ast/SendArrow.ts +8 -4
  415. package/src/icons/ast/SendBackward.ts +8 -4
  416. package/src/icons/ast/SendToBack.ts +8 -4
  417. package/src/icons/ast/Settings.ts +8 -4
  418. package/src/icons/ast/SettingsFilled.ts +8 -4
  419. package/src/icons/ast/SettingsOff.ts +8 -4
  420. package/src/icons/ast/Share.ts +8 -4
  421. package/src/icons/ast/Shared.ts +8 -4
  422. package/src/icons/ast/ShieldKeyhole.ts +8 -4
  423. package/src/icons/ast/ShowAuthor.ts +8 -4
  424. package/src/icons/ast/Sidebar.ts +8 -4
  425. package/src/icons/ast/SidebarFields.ts +8 -4
  426. package/src/icons/ast/SidebarFieldsOpened.ts +8 -4
  427. package/src/icons/ast/SimpleCompass.ts +8 -4
  428. package/src/icons/ast/Slack.ts +8 -4
  429. package/src/icons/ast/SlackIcon.ts +8 -4
  430. package/src/icons/ast/SlideMenu.ts +8 -4
  431. package/src/icons/ast/SlideMenuClose.ts +8 -4
  432. package/src/icons/ast/SlideMenuFilled.ts +8 -4
  433. package/src/icons/ast/SlideMenuOpen.ts +8 -4
  434. package/src/icons/ast/SmartFolder.ts +8 -4
  435. package/src/icons/ast/Sort.ts +8 -4
  436. package/src/icons/ast/SortOnBottom.ts +8 -4
  437. package/src/icons/ast/SortOnTop.ts +8 -4
  438. package/src/icons/ast/SpaceApp.ts +8 -4
  439. package/src/icons/ast/SpaceGenerate.ts +8 -4
  440. package/src/icons/ast/SpaceList.ts +8 -4
  441. package/src/icons/ast/SpaceScratch.ts +8 -4
  442. package/src/icons/ast/SpaceTemplate.ts +8 -4
  443. package/src/icons/ast/Spinner.ts +8 -4
  444. package/src/icons/ast/Success.ts +8 -4
  445. package/src/icons/ast/SuggestIntegration.ts +8 -4
  446. package/src/icons/ast/SwitchToMention.ts +8 -4
  447. package/src/icons/ast/SwitchToText.ts +8 -4
  448. package/src/icons/ast/SwitchToWidget.ts +8 -4
  449. package/src/icons/ast/TableLayout.ts +8 -4
  450. package/src/icons/ast/Template.ts +8 -4
  451. package/src/icons/ast/Templates.ts +8 -4
  452. package/src/icons/ast/TemplatesFilled.ts +8 -4
  453. package/src/icons/ast/Terminal.ts +8 -4
  454. package/src/icons/ast/TextNoWrap.ts +8 -4
  455. package/src/icons/ast/TextToolAlignBottom.ts +8 -4
  456. package/src/icons/ast/TextToolAlignMiddle.ts +8 -4
  457. package/src/icons/ast/TextToolAlignTop.ts +8 -4
  458. package/src/icons/ast/TextWrap.ts +8 -4
  459. package/src/icons/ast/ThumbsDown.ts +8 -4
  460. package/src/icons/ast/ThumbsUp.ts +8 -4
  461. package/src/icons/ast/Toc.ts +12 -0
  462. package/src/icons/ast/Twitter.ts +8 -4
  463. package/src/icons/ast/TypeBoolean.ts +8 -4
  464. package/src/icons/ast/TypeButton.ts +8 -4
  465. package/src/icons/ast/TypeCheckbox.ts +8 -4
  466. package/src/icons/ast/TypeDate.ts +8 -4
  467. package/src/icons/ast/TypeEmail.ts +8 -4
  468. package/src/icons/ast/TypeEmoji.ts +8 -4
  469. package/src/icons/ast/TypeFormula.ts +8 -4
  470. package/src/icons/ast/TypeFunction.ts +8 -4
  471. package/src/icons/ast/TypeId.ts +8 -4
  472. package/src/icons/ast/TypeLocation.ts +8 -4
  473. package/src/icons/ast/TypeLookup.ts +8 -4
  474. package/src/icons/ast/TypeMoney.ts +8 -4
  475. package/src/icons/ast/TypeMultiSelect.ts +8 -4
  476. package/src/icons/ast/TypeNumber.ts +8 -4
  477. package/src/icons/ast/TypePercent.ts +8 -4
  478. package/src/icons/ast/TypePhone.ts +8 -4
  479. package/src/icons/ast/TypeRelation.ts +8 -4
  480. package/src/icons/ast/TypeRichText.ts +8 -4
  481. package/src/icons/ast/TypeRule.ts +8 -4
  482. package/src/icons/ast/TypeSingleSelect.ts +8 -4
  483. package/src/icons/ast/TypeText.ts +8 -4
  484. package/src/icons/ast/TypeUrl.ts +8 -4
  485. package/src/icons/ast/UnitsAvatar.ts +8 -4
  486. package/src/icons/ast/UnitsCollection.ts +8 -4
  487. package/src/icons/ast/UnitsCounter.ts +8 -4
  488. package/src/icons/ast/UnitsDate.ts +8 -4
  489. package/src/icons/ast/UnitsDbBadgeAbbr.ts +8 -4
  490. package/src/icons/ast/UnitsDbBadgeFull.ts +8 -4
  491. package/src/icons/ast/UnitsDbIcon.ts +8 -4
  492. package/src/icons/ast/UnitsField.ts +8 -4
  493. package/src/icons/ast/UnitsFieldIconButton.ts +8 -4
  494. package/src/icons/ast/UnitsInput.ts +8 -4
  495. package/src/icons/ast/UnitsProgressBar.ts +8 -4
  496. package/src/icons/ast/UnitsRichText.ts +8 -4
  497. package/src/icons/ast/UnitsSnippet.ts +8 -4
  498. package/src/icons/ast/Unlink.ts +8 -4
  499. package/src/icons/ast/UnlockFilled.ts +8 -4
  500. package/src/icons/ast/UnlockOutline.ts +8 -4
  501. package/src/icons/ast/Upgrade.ts +8 -4
  502. package/src/icons/ast/UsbFlashDrive.ts +8 -4
  503. package/src/icons/ast/UserCheck.ts +8 -4
  504. package/src/icons/ast/UserGroup.ts +8 -4
  505. package/src/icons/ast/UserGroupRemove.ts +8 -4
  506. package/src/icons/ast/UserRole.ts +8 -4
  507. package/src/icons/ast/UserX.ts +8 -4
  508. package/src/icons/ast/ValueEdit.ts +8 -4
  509. package/src/icons/ast/ViewAi.ts +8 -4
  510. package/src/icons/ast/ViewBoard.ts +8 -4
  511. package/src/icons/ast/ViewCalendar.ts +8 -4
  512. package/src/icons/ast/ViewCanvas.ts +8 -4
  513. package/src/icons/ast/ViewChart.ts +8 -4
  514. package/src/icons/ast/ViewDashboard.ts +8 -4
  515. package/src/icons/ast/ViewDetails.ts +8 -4
  516. package/src/icons/ast/ViewDocument.ts +8 -4
  517. package/src/icons/ast/ViewEmbed.ts +12 -0
  518. package/src/icons/ast/ViewFeed.ts +8 -4
  519. package/src/icons/ast/ViewForm.ts +8 -4
  520. package/src/icons/ast/ViewGallery.ts +8 -4
  521. package/src/icons/ast/ViewGantt.ts +8 -4
  522. package/src/icons/ast/ViewList.ts +8 -4
  523. package/src/icons/ast/ViewMap.ts +8 -4
  524. package/src/icons/ast/ViewPage.ts +8 -4
  525. package/src/icons/ast/ViewTable.ts +8 -4
  526. package/src/icons/ast/ViewTimeline.ts +8 -4
  527. package/src/icons/ast/Views.ts +8 -4
  528. package/src/icons/ast/Warning.ts +8 -4
  529. package/src/icons/ast/WarningTriangle.ts +8 -4
  530. package/src/icons/ast/WarningTriangleFilled.ts +8 -4
  531. package/src/icons/ast/Webhooks.ts +12 -0
  532. package/src/icons/ast/Windows.ts +8 -4
  533. package/src/icons/ast/WorkspaceMap.ts +8 -4
  534. package/src/icons/ast/Youtube.ts +8 -4
  535. package/src/icons/ast/ZoomIn.ts +8 -4
  536. package/src/icons/ast/ZoomOut.ts +8 -4
  537. package/src/icons/ast/index.tsx +453 -441
  538. package/src/icons/react/Abort.tsx +10 -5
  539. package/src/icons/react/AccessTemplate.tsx +10 -5
  540. package/src/icons/react/Activity.tsx +10 -5
  541. package/src/icons/react/ActivityFilled.tsx +10 -5
  542. package/src/icons/react/ActivityLog.tsx +10 -5
  543. package/src/icons/react/Add.tsx +10 -5
  544. package/src/icons/react/AddAfter.tsx +10 -5
  545. package/src/icons/react/AddBefore.tsx +10 -5
  546. package/src/icons/react/AddCompact.tsx +10 -5
  547. package/src/icons/react/AddDatabase.tsx +10 -5
  548. package/src/icons/react/AddGroup.tsx +10 -5
  549. package/src/icons/react/AddIntegration.tsx +10 -5
  550. package/src/icons/react/AddReactions.tsx +10 -5
  551. package/src/icons/react/AiAssistant.tsx +10 -5
  552. package/src/icons/react/AiAssistantFilled.tsx +10 -5
  553. package/src/icons/react/AiAvatar.tsx +10 -5
  554. package/src/icons/react/AiFiberyBuild.tsx +10 -5
  555. package/src/icons/react/AiSearch.tsx +10 -5
  556. package/src/icons/react/AlertTriangle.tsx +10 -5
  557. package/src/icons/react/Anthropic.tsx +10 -5
  558. package/src/icons/react/App.tsx +10 -5
  559. package/src/icons/react/AppDetails.tsx +10 -5
  560. package/src/icons/react/AppStore.tsx +10 -5
  561. package/src/icons/react/AppStoreOneColor.tsx +10 -5
  562. package/src/icons/react/AppTemplates.tsx +10 -5
  563. package/src/icons/react/AppWebhooks.tsx +10 -5
  564. package/src/icons/react/AppWiki.tsx +10 -5
  565. package/src/icons/react/AppearanceAuto.tsx +10 -5
  566. package/src/icons/react/AppearanceDark.tsx +10 -5
  567. package/src/icons/react/AppearanceLight.tsx +10 -5
  568. package/src/icons/react/Apple.tsx +10 -5
  569. package/src/icons/react/ArrowBarDown.tsx +18 -0
  570. package/src/icons/react/ArrowBarLeft.tsx +10 -5
  571. package/src/icons/react/ArrowBarRight.tsx +10 -5
  572. package/src/icons/react/ArrowBarUp.tsx +18 -0
  573. package/src/icons/react/ArrowBottom.tsx +10 -5
  574. package/src/icons/react/ArrowCollapse.tsx +10 -5
  575. package/src/icons/react/ArrowCollapseVertical.tsx +10 -5
  576. package/src/icons/react/ArrowForward.tsx +10 -5
  577. package/src/icons/react/ArrowLeft.tsx +10 -5
  578. package/src/icons/react/ArrowRight.tsx +10 -5
  579. package/src/icons/react/ArrowTop.tsx +10 -5
  580. package/src/icons/react/ArrowUpCircle.tsx +10 -5
  581. package/src/icons/react/ArrowsRightLeft.tsx +10 -5
  582. package/src/icons/react/AskForInput.tsx +10 -5
  583. package/src/icons/react/Asterisk.tsx +10 -5
  584. package/src/icons/react/Atom.tsx +10 -5
  585. package/src/icons/react/AutomationsCancelled.tsx +10 -5
  586. package/src/icons/react/AutomationsDisabled.tsx +10 -5
  587. package/src/icons/react/AutomationsError.tsx +10 -5
  588. package/src/icons/react/AutomationsInProgress.tsx +10 -5
  589. package/src/icons/react/AutomationsNotStarted.tsx +10 -5
  590. package/src/icons/react/AutomationsSuccess.tsx +10 -5
  591. package/src/icons/react/Back.tsx +10 -5
  592. package/src/icons/react/BacklogIcon.tsx +10 -5
  593. package/src/icons/react/BatchActionsIcon.tsx +10 -5
  594. package/src/icons/react/BellCircle.tsx +10 -5
  595. package/src/icons/react/BellFilled.tsx +10 -5
  596. package/src/icons/react/BellOff.tsx +10 -5
  597. package/src/icons/react/BellRinging.tsx +10 -5
  598. package/src/icons/react/BellX.tsx +10 -5
  599. package/src/icons/react/Bolt.tsx +10 -5
  600. package/src/icons/react/BringForward.tsx +10 -5
  601. package/src/icons/react/BringToFront.tsx +10 -5
  602. package/src/icons/react/Cards.tsx +10 -5
  603. package/src/icons/react/Chat.tsx +10 -5
  604. package/src/icons/react/ChatAi.tsx +10 -5
  605. package/src/icons/react/ChatBubble.tsx +10 -5
  606. package/src/icons/react/ChatFloat.tsx +10 -5
  607. package/src/icons/react/ChatSidebar.tsx +10 -5
  608. package/src/icons/react/CheckCircle.tsx +10 -5
  609. package/src/icons/react/CheckCircleFilled.tsx +10 -5
  610. package/src/icons/react/Checked.tsx +10 -5
  611. package/src/icons/react/Clean.tsx +10 -5
  612. package/src/icons/react/Clear.tsx +10 -5
  613. package/src/icons/react/ClearInputFilled.tsx +10 -5
  614. package/src/icons/react/ClearValue.tsx +10 -5
  615. package/src/icons/react/Clock.tsx +10 -5
  616. package/src/icons/react/ClockAlarm.tsx +10 -5
  617. package/src/icons/react/ClockForward.tsx +10 -5
  618. package/src/icons/react/Close.tsx +10 -5
  619. package/src/icons/react/CollapseAll.tsx +10 -5
  620. package/src/icons/react/CollapseAllHorizontal.tsx +10 -5
  621. package/src/icons/react/ColorCoding.tsx +10 -5
  622. package/src/icons/react/ColorCodingFilled.tsx +10 -5
  623. package/src/icons/react/Columns.tsx +10 -5
  624. package/src/icons/react/Columns2.tsx +10 -5
  625. package/src/icons/react/Columns4.tsx +10 -5
  626. package/src/icons/react/CommentBubble.tsx +10 -5
  627. package/src/icons/react/Copy.tsx +10 -5
  628. package/src/icons/react/Create.tsx +10 -5
  629. package/src/icons/react/CreditsFilled.tsx +10 -5
  630. package/src/icons/react/CrossCircle.tsx +10 -5
  631. package/src/icons/react/Crosshair.tsx +10 -5
  632. package/src/icons/react/Csv.tsx +10 -5
  633. package/src/icons/react/Database.tsx +10 -5
  634. package/src/icons/react/DatabaseOff.tsx +10 -5
  635. package/src/icons/react/DatabaseStroke.tsx +10 -5
  636. package/src/icons/react/DateRange.tsx +10 -5
  637. package/src/icons/react/Delete.tsx +10 -5
  638. package/src/icons/react/Demo.tsx +10 -5
  639. package/src/icons/react/Dependency.tsx +10 -5
  640. package/src/icons/react/Dividers.tsx +10 -5
  641. package/src/icons/react/Document.tsx +10 -5
  642. package/src/icons/react/DoubleArrowLeft.tsx +10 -5
  643. package/src/icons/react/DoubleArrowRight.tsx +10 -5
  644. package/src/icons/react/DoubleLine.tsx +10 -5
  645. package/src/icons/react/DragBlockHandle.tsx +10 -5
  646. package/src/icons/react/DragBlockHandleSingle.tsx +10 -5
  647. package/src/icons/react/DragHandle.tsx +10 -5
  648. package/src/icons/react/Duplicate.tsx +10 -5
  649. package/src/icons/react/DynamicFilterValue.tsx +10 -5
  650. package/src/icons/react/EditValue.tsx +10 -5
  651. package/src/icons/react/Email.tsx +10 -5
  652. package/src/icons/react/EmojiDelete.tsx +10 -5
  653. package/src/icons/react/EntityCreate.tsx +10 -5
  654. package/src/icons/react/EntityCreateFilled.tsx +10 -5
  655. package/src/icons/react/EntityMerge.tsx +10 -5
  656. package/src/icons/react/Equation.tsx +10 -5
  657. package/src/icons/react/ExpandAll.tsx +10 -5
  658. package/src/icons/react/ExpandAllHorizontal.tsx +10 -5
  659. package/src/icons/react/Export.tsx +10 -5
  660. package/src/icons/react/ExtensionAssignments.tsx +10 -5
  661. package/src/icons/react/ExtensionAvatar.tsx +10 -5
  662. package/src/icons/react/ExtensionComments.tsx +10 -5
  663. package/src/icons/react/ExtensionFiles.tsx +10 -5
  664. package/src/icons/react/ExtensionReferences.tsx +10 -5
  665. package/src/icons/react/ExtensionWorkflow.tsx +10 -5
  666. package/src/icons/react/Eye.tsx +10 -5
  667. package/src/icons/react/Favorites.tsx +10 -5
  668. package/src/icons/react/FavoritesChecked.tsx +10 -5
  669. package/src/icons/react/FavoritesOff.tsx +10 -5
  670. package/src/icons/react/FiberyDesktopApp.tsx +10 -5
  671. package/src/icons/react/FiberyMono.tsx +10 -5
  672. package/src/icons/react/FieldUnit.tsx +10 -5
  673. package/src/icons/react/Fields.tsx +10 -5
  674. package/src/icons/react/Figma.tsx +10 -5
  675. package/src/icons/react/FileArchive.tsx +10 -5
  676. package/src/icons/react/FileBroken.tsx +10 -5
  677. package/src/icons/react/FileCounter.tsx +10 -5
  678. package/src/icons/react/FileDocument.tsx +10 -5
  679. package/src/icons/react/FileDownload.tsx +10 -5
  680. package/src/icons/react/FileImage.tsx +10 -5
  681. package/src/icons/react/FileMultiple.tsx +10 -5
  682. package/src/icons/react/FileOther.tsx +10 -5
  683. package/src/icons/react/FilePresentation.tsx +10 -5
  684. package/src/icons/react/FileTable.tsx +10 -5
  685. package/src/icons/react/FileUpload.tsx +10 -5
  686. package/src/icons/react/FileVideo.tsx +10 -5
  687. package/src/icons/react/Filter.tsx +10 -5
  688. package/src/icons/react/FitToScreen.tsx +10 -5
  689. package/src/icons/react/FocusMode.tsx +10 -5
  690. package/src/icons/react/FocusModeOff.tsx +10 -5
  691. package/src/icons/react/Folder.tsx +10 -5
  692. package/src/icons/react/FolderFavorite.tsx +18 -0
  693. package/src/icons/react/FormWithCover.tsx +10 -5
  694. package/src/icons/react/FormWithoutCover.tsx +10 -5
  695. package/src/icons/react/FullscreenModeOffIcon.tsx +10 -5
  696. package/src/icons/react/FullscreenModeOn.tsx +10 -5
  697. package/src/icons/react/FullscreenModeOnIcon.tsx +10 -5
  698. package/src/icons/react/Gift.tsx +10 -5
  699. package/src/icons/react/Github.tsx +10 -5
  700. package/src/icons/react/Gitlab.tsx +10 -5
  701. package/src/icons/react/Globe.tsx +10 -5
  702. package/src/icons/react/GlobeSimple.tsx +10 -5
  703. package/src/icons/react/GlobeUnpublish.tsx +10 -5
  704. package/src/icons/react/GoTo.tsx +10 -5
  705. package/src/icons/react/GoogleDrive.tsx +10 -5
  706. package/src/icons/react/GoogleMap.tsx +10 -5
  707. package/src/icons/react/GraduationCapFilled.tsx +10 -5
  708. package/src/icons/react/Headphones.tsx +10 -5
  709. package/src/icons/react/HeadphonesAi.tsx +10 -5
  710. package/src/icons/react/Hide.tsx +10 -5
  711. package/src/icons/react/Highlights.tsx +10 -5
  712. package/src/icons/react/Hint.tsx +10 -5
  713. package/src/icons/react/Home.tsx +10 -5
  714. package/src/icons/react/HomeFilled.tsx +10 -5
  715. package/src/icons/react/ImageXmark.tsx +10 -5
  716. package/src/icons/react/Import.tsx +10 -5
  717. package/src/icons/react/ImportFilled.tsx +10 -5
  718. package/src/icons/react/InfoCircle.tsx +10 -5
  719. package/src/icons/react/InfoCircleFilled.tsx +10 -5
  720. package/src/icons/react/Integration.tsx +10 -5
  721. package/src/icons/react/IntegrationsFilled.tsx +10 -5
  722. package/src/icons/react/IntegrationsIntegrationDiscourseColor.tsx +10 -5
  723. package/src/icons/react/IntegrationsIntegrationIntercomColor.tsx +10 -5
  724. package/src/icons/react/IntegrationsIntegrationSlackColor.tsx +10 -5
  725. package/src/icons/react/IntegrationsIntegrationZendeskColor.tsx +10 -5
  726. package/src/icons/react/Intercom.tsx +18 -0
  727. package/src/icons/react/InvitePeople.tsx +10 -5
  728. package/src/icons/react/Items.tsx +10 -5
  729. package/src/icons/react/ItemsTimeline.tsx +10 -5
  730. package/src/icons/react/Jira.tsx +10 -5
  731. package/src/icons/react/Key.tsx +10 -5
  732. package/src/icons/react/KeyboardHideDown.tsx +10 -5
  733. package/src/icons/react/Lab.tsx +10 -5
  734. package/src/icons/react/LayoutDouble.tsx +10 -5
  735. package/src/icons/react/LayoutMultiple.tsx +10 -5
  736. package/src/icons/react/LayoutSingle.tsx +10 -5
  737. package/src/icons/react/LeftPanel.tsx +10 -5
  738. package/src/icons/react/LevelPlus.tsx +10 -5
  739. package/src/icons/react/Levels.tsx +10 -5
  740. package/src/icons/react/LineDivider.tsx +10 -5
  741. package/src/icons/react/LineJump.tsx +10 -5
  742. package/src/icons/react/Link.tsx +10 -5
  743. package/src/icons/react/LocationEdit.tsx +10 -5
  744. package/src/icons/react/Lock.tsx +10 -5
  745. package/src/icons/react/LockOutline.tsx +10 -5
  746. package/src/icons/react/Logout.tsx +10 -5
  747. package/src/icons/react/Loom.tsx +10 -5
  748. package/src/icons/react/LoupeZoom.tsx +10 -5
  749. package/src/icons/react/LoupeZoomIn.tsx +10 -5
  750. package/src/icons/react/LoupeZoomOut.tsx +10 -5
  751. package/src/icons/react/ManyPeople.tsx +10 -5
  752. package/src/icons/react/MapMode.tsx +10 -5
  753. package/src/icons/react/Markdown.tsx +10 -5
  754. package/src/icons/react/MenuCollapser.tsx +10 -5
  755. package/src/icons/react/Mermaid.tsx +10 -5
  756. package/src/icons/react/MessagePlus.tsx +10 -5
  757. package/src/icons/react/MessagePlusSquare.tsx +10 -5
  758. package/src/icons/react/Milestones.tsx +10 -5
  759. package/src/icons/react/Minus.tsx +10 -5
  760. package/src/icons/react/Miro.tsx +10 -5
  761. package/src/icons/react/MirrorOff.tsx +10 -5
  762. package/src/icons/react/MirrorOn.tsx +10 -5
  763. package/src/icons/react/Mixpanel.tsx +10 -5
  764. package/src/icons/react/Monitor.tsx +10 -5
  765. package/src/icons/react/More.tsx +10 -5
  766. package/src/icons/react/MoreCompact.tsx +10 -5
  767. package/src/icons/react/MoveBottom.tsx +10 -5
  768. package/src/icons/react/MoveLeft.tsx +10 -5
  769. package/src/icons/react/MoveRight.tsx +10 -5
  770. package/src/icons/react/MoveSpace.tsx +10 -5
  771. package/src/icons/react/MoveTop.tsx +10 -5
  772. package/src/icons/react/Network.tsx +10 -5
  773. package/src/icons/react/NetworkAdd.tsx +10 -5
  774. package/src/icons/react/NoBorder.tsx +10 -5
  775. package/src/icons/react/NoFill.tsx +10 -5
  776. package/src/icons/react/Notifications.tsx +10 -5
  777. package/src/icons/react/ObjChild.tsx +10 -5
  778. package/src/icons/react/ObjM2M.tsx +10 -5
  779. package/src/icons/react/ObjO2O.tsx +10 -5
  780. package/src/icons/react/ObjParent.tsx +10 -5
  781. package/src/icons/react/ObjSelf.tsx +10 -5
  782. package/src/icons/react/OnSchedule.tsx +10 -5
  783. package/src/icons/react/OpenAi.tsx +10 -5
  784. package/src/icons/react/OpenAsPage.tsx +10 -5
  785. package/src/icons/react/PageRegularMode.tsx +10 -5
  786. package/src/icons/react/PageWideMode.tsx +10 -5
  787. package/src/icons/react/PanelAdd.tsx +10 -5
  788. package/src/icons/react/Pencil.tsx +10 -5
  789. package/src/icons/react/People.tsx +10 -5
  790. package/src/icons/react/PeopleCheck.tsx +10 -5
  791. package/src/icons/react/Photo.tsx +10 -5
  792. package/src/icons/react/Pin.tsx +10 -5
  793. package/src/icons/react/PinFilled.tsx +10 -5
  794. package/src/icons/react/Popup.tsx +10 -5
  795. package/src/icons/react/Posts.tsx +10 -5
  796. package/src/icons/react/PresentPlay.tsx +10 -5
  797. package/src/icons/react/PresentStop.tsx +10 -5
  798. package/src/icons/react/Print.tsx +10 -5
  799. package/src/icons/react/PrivateItems.tsx +10 -5
  800. package/src/icons/react/Question.tsx +10 -5
  801. package/src/icons/react/QuickFilter.tsx +10 -5
  802. package/src/icons/react/QuickFilterPersonal.tsx +10 -5
  803. package/src/icons/react/ReadOnly.tsx +10 -5
  804. package/src/icons/react/Refresh.tsx +10 -5
  805. package/src/icons/react/Remove.tsx +10 -5
  806. package/src/icons/react/RemovePeople.tsx +10 -5
  807. package/src/icons/react/Reply.tsx +10 -5
  808. package/src/icons/react/ResetPassword.tsx +10 -5
  809. package/src/icons/react/Restore.tsx +10 -5
  810. package/src/icons/react/RicheditorActionsMore.tsx +10 -5
  811. package/src/icons/react/RicheditorBlockCallout.tsx +10 -5
  812. package/src/icons/react/RicheditorBlockCode.tsx +10 -5
  813. package/src/icons/react/RicheditorBlockEmbed.tsx +10 -5
  814. package/src/icons/react/RicheditorBlockEntity.tsx +10 -5
  815. package/src/icons/react/RicheditorBlockFile.tsx +10 -5
  816. package/src/icons/react/RicheditorBlockH1.tsx +10 -5
  817. package/src/icons/react/RicheditorBlockH2.tsx +10 -5
  818. package/src/icons/react/RicheditorBlockH3.tsx +10 -5
  819. package/src/icons/react/RicheditorBlockH4.tsx +10 -5
  820. package/src/icons/react/RicheditorBlockMention.tsx +10 -5
  821. package/src/icons/react/RicheditorBlockParagraph.tsx +10 -5
  822. package/src/icons/react/RicheditorBlockQuote.tsx +10 -5
  823. package/src/icons/react/RicheditorChecklistCreate.tsx +10 -5
  824. package/src/icons/react/RicheditorCommentCreate.tsx +10 -5
  825. package/src/icons/react/RicheditorEntityLinkCreate.tsx +10 -5
  826. package/src/icons/react/RicheditorHistoryRedo.tsx +10 -5
  827. package/src/icons/react/RicheditorHistoryUndo.tsx +10 -5
  828. package/src/icons/react/RicheditorImageAlignCenter.tsx +10 -5
  829. package/src/icons/react/RicheditorImageAlignLeft.tsx +10 -5
  830. package/src/icons/react/RicheditorImageAlignRight.tsx +10 -5
  831. package/src/icons/react/RicheditorImageUpload.tsx +10 -5
  832. package/src/icons/react/RicheditorImageWrapCenter.tsx +10 -5
  833. package/src/icons/react/RicheditorImageWrapLeft.tsx +10 -5
  834. package/src/icons/react/RicheditorImageWrapRight.tsx +10 -5
  835. package/src/icons/react/RicheditorImageZoom.tsx +10 -5
  836. package/src/icons/react/RicheditorLinkCreate.tsx +10 -5
  837. package/src/icons/react/RicheditorLinkedhighlightCreate.tsx +10 -5
  838. package/src/icons/react/RicheditorListBullet.tsx +10 -5
  839. package/src/icons/react/RicheditorListIndent.tsx +10 -5
  840. package/src/icons/react/RicheditorListOrdered.tsx +10 -5
  841. package/src/icons/react/RicheditorListUnindent.tsx +10 -5
  842. package/src/icons/react/RicheditorMarkCode.tsx +10 -5
  843. package/src/icons/react/RicheditorMarkEm.tsx +10 -5
  844. package/src/icons/react/RicheditorMarkHighlight.tsx +10 -5
  845. package/src/icons/react/RicheditorMarkStrike.tsx +10 -5
  846. package/src/icons/react/RicheditorMarkStrong.tsx +10 -5
  847. package/src/icons/react/RicheditorMarkTextBackgroundColor.tsx +10 -5
  848. package/src/icons/react/RicheditorMarkUnderline.tsx +10 -5
  849. package/src/icons/react/RicheditorOpenLink.tsx +10 -5
  850. package/src/icons/react/RicheditorTableCreate.tsx +10 -5
  851. package/src/icons/react/RicheditorUnlink.tsx +10 -5
  852. package/src/icons/react/RicheditorVideoUpload.tsx +10 -5
  853. package/src/icons/react/RightPanel.tsx +10 -5
  854. package/src/icons/react/Rows.tsx +10 -5
  855. package/src/icons/react/RuleScheduled.tsx +10 -5
  856. package/src/icons/react/Search.tsx +10 -5
  857. package/src/icons/react/SearchAdd.tsx +10 -5
  858. package/src/icons/react/SearchFilled.tsx +10 -5
  859. package/src/icons/react/SearchRemove.tsx +10 -5
  860. package/src/icons/react/SelfReferenceOff.tsx +10 -5
  861. package/src/icons/react/SelfReferenceOn.tsx +10 -5
  862. package/src/icons/react/SendArrow.tsx +10 -5
  863. package/src/icons/react/SendBackward.tsx +10 -5
  864. package/src/icons/react/SendToBack.tsx +10 -5
  865. package/src/icons/react/Settings.tsx +10 -5
  866. package/src/icons/react/SettingsFilled.tsx +10 -5
  867. package/src/icons/react/SettingsOff.tsx +10 -5
  868. package/src/icons/react/Share.tsx +10 -5
  869. package/src/icons/react/Shared.tsx +10 -5
  870. package/src/icons/react/ShieldKeyhole.tsx +10 -5
  871. package/src/icons/react/ShowAuthor.tsx +10 -5
  872. package/src/icons/react/Sidebar.tsx +10 -5
  873. package/src/icons/react/SidebarFields.tsx +10 -5
  874. package/src/icons/react/SidebarFieldsOpened.tsx +10 -5
  875. package/src/icons/react/SimpleCompass.tsx +10 -5
  876. package/src/icons/react/Slack.tsx +10 -5
  877. package/src/icons/react/SlackIcon.tsx +10 -5
  878. package/src/icons/react/SlideMenu.tsx +10 -5
  879. package/src/icons/react/SlideMenuClose.tsx +10 -5
  880. package/src/icons/react/SlideMenuFilled.tsx +10 -5
  881. package/src/icons/react/SlideMenuOpen.tsx +10 -5
  882. package/src/icons/react/SmartFolder.tsx +10 -5
  883. package/src/icons/react/Sort.tsx +10 -5
  884. package/src/icons/react/SortOnBottom.tsx +10 -5
  885. package/src/icons/react/SortOnTop.tsx +10 -5
  886. package/src/icons/react/SpaceApp.tsx +10 -5
  887. package/src/icons/react/SpaceGenerate.tsx +10 -5
  888. package/src/icons/react/SpaceList.tsx +10 -5
  889. package/src/icons/react/SpaceScratch.tsx +10 -5
  890. package/src/icons/react/SpaceTemplate.tsx +10 -5
  891. package/src/icons/react/Spinner.tsx +10 -5
  892. package/src/icons/react/Success.tsx +10 -5
  893. package/src/icons/react/SuggestIntegration.tsx +10 -5
  894. package/src/icons/react/SwitchToMention.tsx +10 -5
  895. package/src/icons/react/SwitchToText.tsx +10 -5
  896. package/src/icons/react/SwitchToWidget.tsx +10 -5
  897. package/src/icons/react/TableLayout.tsx +10 -5
  898. package/src/icons/react/Template.tsx +10 -5
  899. package/src/icons/react/Templates.tsx +10 -5
  900. package/src/icons/react/TemplatesFilled.tsx +10 -5
  901. package/src/icons/react/Terminal.tsx +10 -5
  902. package/src/icons/react/TextNoWrap.tsx +10 -5
  903. package/src/icons/react/TextToolAlignBottom.tsx +10 -5
  904. package/src/icons/react/TextToolAlignMiddle.tsx +10 -5
  905. package/src/icons/react/TextToolAlignTop.tsx +10 -5
  906. package/src/icons/react/TextWrap.tsx +10 -5
  907. package/src/icons/react/ThumbsDown.tsx +10 -5
  908. package/src/icons/react/ThumbsUp.tsx +10 -5
  909. package/src/icons/react/Toc.tsx +18 -0
  910. package/src/icons/react/Twitter.tsx +10 -5
  911. package/src/icons/react/TypeBoolean.tsx +10 -5
  912. package/src/icons/react/TypeButton.tsx +10 -5
  913. package/src/icons/react/TypeCheckbox.tsx +10 -5
  914. package/src/icons/react/TypeDate.tsx +10 -5
  915. package/src/icons/react/TypeEmail.tsx +10 -5
  916. package/src/icons/react/TypeEmoji.tsx +10 -5
  917. package/src/icons/react/TypeFormula.tsx +10 -5
  918. package/src/icons/react/TypeFunction.tsx +10 -5
  919. package/src/icons/react/TypeId.tsx +10 -5
  920. package/src/icons/react/TypeLocation.tsx +10 -5
  921. package/src/icons/react/TypeLookup.tsx +10 -5
  922. package/src/icons/react/TypeMoney.tsx +10 -5
  923. package/src/icons/react/TypeMultiSelect.tsx +10 -5
  924. package/src/icons/react/TypeNumber.tsx +10 -5
  925. package/src/icons/react/TypePercent.tsx +10 -5
  926. package/src/icons/react/TypePhone.tsx +10 -5
  927. package/src/icons/react/TypeRelation.tsx +10 -5
  928. package/src/icons/react/TypeRichText.tsx +10 -5
  929. package/src/icons/react/TypeRule.tsx +10 -5
  930. package/src/icons/react/TypeSingleSelect.tsx +10 -5
  931. package/src/icons/react/TypeText.tsx +10 -5
  932. package/src/icons/react/TypeUrl.tsx +10 -5
  933. package/src/icons/react/UnitsAvatar.tsx +10 -5
  934. package/src/icons/react/UnitsCollection.tsx +10 -5
  935. package/src/icons/react/UnitsCounter.tsx +10 -5
  936. package/src/icons/react/UnitsDate.tsx +10 -5
  937. package/src/icons/react/UnitsDbBadgeAbbr.tsx +10 -5
  938. package/src/icons/react/UnitsDbBadgeFull.tsx +10 -5
  939. package/src/icons/react/UnitsDbIcon.tsx +10 -5
  940. package/src/icons/react/UnitsField.tsx +10 -5
  941. package/src/icons/react/UnitsFieldIconButton.tsx +10 -5
  942. package/src/icons/react/UnitsInput.tsx +10 -5
  943. package/src/icons/react/UnitsProgressBar.tsx +10 -5
  944. package/src/icons/react/UnitsRichText.tsx +10 -5
  945. package/src/icons/react/UnitsSnippet.tsx +10 -5
  946. package/src/icons/react/Unlink.tsx +10 -5
  947. package/src/icons/react/UnlockFilled.tsx +10 -5
  948. package/src/icons/react/UnlockOutline.tsx +10 -5
  949. package/src/icons/react/Upgrade.tsx +10 -5
  950. package/src/icons/react/UsbFlashDrive.tsx +10 -5
  951. package/src/icons/react/UserCheck.tsx +10 -5
  952. package/src/icons/react/UserGroup.tsx +10 -5
  953. package/src/icons/react/UserGroupRemove.tsx +10 -5
  954. package/src/icons/react/UserRole.tsx +10 -5
  955. package/src/icons/react/UserX.tsx +10 -5
  956. package/src/icons/react/ValueEdit.tsx +10 -5
  957. package/src/icons/react/ViewAi.tsx +10 -5
  958. package/src/icons/react/ViewBoard.tsx +10 -5
  959. package/src/icons/react/ViewCalendar.tsx +10 -5
  960. package/src/icons/react/ViewCanvas.tsx +10 -5
  961. package/src/icons/react/ViewChart.tsx +10 -5
  962. package/src/icons/react/ViewDashboard.tsx +10 -5
  963. package/src/icons/react/ViewDetails.tsx +10 -5
  964. package/src/icons/react/ViewDocument.tsx +10 -5
  965. package/src/icons/react/ViewEmbed.tsx +18 -0
  966. package/src/icons/react/ViewFeed.tsx +10 -5
  967. package/src/icons/react/ViewForm.tsx +10 -5
  968. package/src/icons/react/ViewGallery.tsx +10 -5
  969. package/src/icons/react/ViewGantt.tsx +10 -5
  970. package/src/icons/react/ViewList.tsx +10 -5
  971. package/src/icons/react/ViewMap.tsx +10 -5
  972. package/src/icons/react/ViewPage.tsx +10 -5
  973. package/src/icons/react/ViewTable.tsx +10 -5
  974. package/src/icons/react/ViewTimeline.tsx +10 -5
  975. package/src/icons/react/Views.tsx +10 -5
  976. package/src/icons/react/Warning.tsx +10 -5
  977. package/src/icons/react/WarningTriangle.tsx +10 -5
  978. package/src/icons/react/WarningTriangleFilled.tsx +10 -5
  979. package/src/icons/react/Webhooks.tsx +18 -0
  980. package/src/icons/react/Windows.tsx +10 -5
  981. package/src/icons/react/WorkspaceMap.tsx +10 -5
  982. package/src/icons/react/Youtube.tsx +10 -5
  983. package/src/icons/react/ZoomIn.tsx +10 -5
  984. package/src/icons/react/ZoomOut.tsx +10 -5
  985. package/src/icons/react/index.tsx +453 -441
  986. package/src/icons/svg/arrow-bar-down.svg +4 -0
  987. package/src/icons/svg/arrow-bar-up.svg +4 -0
  988. package/src/icons/svg/folder-favorite.svg +3 -0
  989. package/src/icons/svg/intercom.svg +3 -0
  990. package/src/icons/svg/richeditor/list/indent.svg +7 -2
  991. package/src/icons/svg/richeditor/list/unindent.svg +7 -2
  992. package/src/icons/svg/richeditor/mark/underline.svg +2 -2
  993. package/src/icons/svg/toc.svg +5 -0
  994. package/src/icons/svg/view-embed.svg +3 -0
  995. package/src/icons/svg/webhooks.svg +5 -0
  996. package/src/icons/types.ts +2 -0
  997. package/src/images-gallery/images-gallery.tsx +67 -16
  998. package/src/images-gallery/slide-buttons.tsx +5 -9
  999. package/src/integration-compact-info-button.tsx +10 -6
  1000. package/src/link-input/components/{AntTextAreaWithCustomReadState.js → AntTextAreaWithCustomReadState.tsx} +19 -8
  1001. package/src/link-input/index.tsx +94 -0
  1002. package/src/link-input/{utils.js → utils.ts} +1 -6
  1003. package/src/loaders.tsx +2 -2
  1004. package/src/loading-sausage.tsx +4 -4
  1005. package/src/mobile-keyboard-aware-popup.tsx +1 -1
  1006. package/src/modal-menu/modal-menu-content.tsx +1 -1
  1007. package/src/modal-menu/modal-menu-separator.tsx +1 -1
  1008. package/src/modal-menu/modal-submenu-content.tsx +3 -1
  1009. package/src/new-badge.tsx +2 -2
  1010. package/src/number-input/decimal.ts +50 -0
  1011. package/src/number-input/edit-unit-styles.ts +3 -3
  1012. package/src/number-input/utils.ts +2 -2
  1013. package/src/online-users.tsx +8 -8
  1014. package/src/open-popover-tracker.tsx +73 -0
  1015. package/src/palette-generator.test.ts +146 -147
  1016. package/src/palette-generator.ts +29 -57
  1017. package/src/palettes/_.test.ts +226 -0
  1018. package/src/palettes/_.ts +67 -24
  1019. package/src/palettes/common.ts +31 -0
  1020. package/src/palettes/diff-colors.ts +270 -0
  1021. package/src/palettes/inspect.canvas-colors.test.ts +257 -0
  1022. package/src/palettes/inspect.defs.colors.neutral-arch.test.ts +2327 -0
  1023. package/src/palettes/inspect.defs.colors.neutral-user.test.ts +2327 -0
  1024. package/src/palettes/inspect.defs.colors.warm-arch.test.ts +2327 -0
  1025. package/src/palettes/inspect.defs.colors.warm-user.test.ts +2327 -0
  1026. package/src/palettes/inspect.neutral-arch.test.ts +191 -0
  1027. package/src/palettes/inspect.neutral-user.test.ts +191 -0
  1028. package/src/palettes/inspect.warm-arch.test.ts +191 -0
  1029. package/src/palettes/inspect.warm-user.test.ts +191 -0
  1030. package/src/palettes/neutral-arch.ts +37 -0
  1031. package/src/palettes/neutral-user.ts +37 -0
  1032. package/src/palettes/{slate-arch.ts → neutral.ts} +22 -34
  1033. package/src/palettes/warm-arch.ts +3 -188
  1034. package/src/palettes/warm-user.ts +3 -188
  1035. package/src/palettes/warm.ts +158 -0
  1036. package/src/popover/index.tsx +34 -10
  1037. package/src/popover/mobile-popover.tsx +4 -2
  1038. package/src/popover/popup-modifiers-context.ts +4 -4
  1039. package/src/preference-setting.test.ts +223 -0
  1040. package/src/preference-setting.ts +71 -0
  1041. package/src/pretty-size.test.ts +18 -0
  1042. package/src/pretty-size.ts +26 -0
  1043. package/src/reactions/reaction-button.tsx +4 -4
  1044. package/src/reactions/reaction-picker.tsx +2 -2
  1045. package/src/rich-text-embed-error.tsx +3 -1
  1046. package/src/root-theme-provider.test.tsx +25 -20
  1047. package/src/scale-generator.ts +1 -32
  1048. package/src/select/components/group-heading.tsx +1 -1
  1049. package/src/select/components/menu-list-virtua.tsx +127 -0
  1050. package/src/select/index.tsx +10 -6
  1051. package/src/select/reflection.ts +22 -0
  1052. package/src/select/select.tsx +2 -0
  1053. package/src/select/styles.ts +1 -1
  1054. package/src/static-palettes.ts +4 -5
  1055. package/src/tab-nav/tab-nav.tsx +61 -17
  1056. package/src/thematic-color-picker.tsx +164 -233
  1057. package/src/thematic-constants.tsx +2 -1
  1058. package/src/thematic-controls.tsx +126 -9
  1059. package/src/thematic-cvd.tsx +73 -0
  1060. package/src/thematic-highlights.tsx +49 -0
  1061. package/src/thematic-scales.tsx +70 -88
  1062. package/src/thematic-state.ts +92 -54
  1063. package/src/thematic.tsx +406 -278
  1064. package/src/theme-provider.test.tsx +70 -67
  1065. package/src/theme-provider.tsx +52 -41
  1066. package/src/theme-settings.ts +12 -44
  1067. package/src/theme-styles.ts +34 -27
  1068. package/src/themed-ink.tsx +26 -0
  1069. package/src/toast/toast-action.tsx +2 -2
  1070. package/src/toggle-button/round-toggle-button.tsx +2 -1
  1071. package/src/toggle-button/toggle-button.tsx +3 -3
  1072. package/src/toggle-on-off.tsx +7 -7
  1073. package/src/tooltip-if-overflown.tsx +3 -3
  1074. package/src/tree-utils.ts +1 -1
  1075. package/src/type-badge-box.tsx +2 -2
  1076. package/src/type-badge.tsx +9 -10
  1077. package/src/unit/maybe-unit-value.tsx +1 -1
  1078. package/src/unit/types.ts +1 -1
  1079. package/src/workflow-progress-icon.tsx +1 -1
  1080. package/.oxlintrc.json +0 -24
  1081. package/src/actions-menu/actions-menu-open-state-tracker.tsx +0 -66
  1082. package/src/design-system/alpha.test.ts +0 -59
  1083. package/src/design-system.test.ts +0 -48
  1084. package/src/error-alert/error-alert-action.tsx +0 -12
  1085. package/src/error-alert/error-alert.tsx +0 -71
  1086. package/src/link-input/index.js +0 -89
  1087. package/src/number-input/decimal.js +0 -61
  1088. package/src/palettes/slate-arch.colors-snapshot.test.ts +0 -1689
  1089. package/src/palettes/slate-user.colors-snapshot.test.ts +0 -1689
  1090. package/src/palettes/slate-user.ts +0 -187
  1091. package/src/palettes/warm-arch.colors-snapshot.test.ts +0 -1689
  1092. package/src/palettes/warm-user.colors-snapshot.test.ts +0 -1689
  1093. package/src/popover/popover-old.tsx +0 -113
  1094. /package/src/number-input/{decimal.test.js → decimal.test.ts} +0 -0
@@ -1,10 +1,13 @@
1
1
  /* eslint-disable max-lines */
2
- import {ThemePalette} from "../palette-generator";
3
- import mapValues from "lodash/mapValues";
4
- import {a11yColor} from "../a11y-color";
5
- import {darkenChroma, produceColor, set, setAlpha, setLuminanceChroma} from "../color-utils";
2
+ import {darkenChroma, hslFrom, produceColor, setAlpha, setLuminanceChroma} from "../color-utils";
6
3
  import {ThemeMode} from "../theme-settings";
7
- import {alpha, getOpacities, opacity, transparent} from "./alpha";
4
+ import {alpha, opacity, transparent} from "./alpha";
5
+ import {getDarkenColor, makeAdaptiveBgFg} from "./colors-js";
6
+ import {cssFromFilter, makeColorFilter} from "../color-filter";
7
+ import {highlightColors} from "../highlight-colors";
8
+ import type {Def, Defs, ThemePalette} from "./types";
9
+ import {mapDef} from "./def";
10
+ import mapValues from "lodash/mapValues";
8
11
 
9
12
  export const cardTypeColors = [
10
13
  "#4A4A4A",
@@ -26,12 +29,6 @@ export const cardTypeColors = [
26
29
  "#B04E31",
27
30
  ] as const;
28
31
 
29
- const swatches = {
30
- "gray-light": cardTypeColors[1],
31
- yellow: cardTypeColors[14],
32
- green: "#69AC5E",
33
- };
34
-
35
32
  type ThemeColorsDef = Record<
36
33
  string,
37
34
  | readonly [lightColor: string, darkColor: string]
@@ -51,8 +48,20 @@ type ThemeFnsDef = Record<
51
48
  >;
52
49
 
53
50
  const separator = (color: string) => `0.5px solid ${color}`;
51
+ const border1 = (color: string) => `1px solid ${color}`;
52
+ const border3 = (color: string) => `3px solid ${color}`;
53
+
54
+ const steps = (steps: string[]) => steps.join(", ");
54
55
 
55
- export function makeThemeDefs({
56
+ /** @deprecated analyze usages — most likely you should use light/dark (different) variants like [base, baseDark] */
57
+ const same = <T>(v: T): [light: T, dark: T] => [v, v];
58
+
59
+ const both =
60
+ (map: (_: string) => string) =>
61
+ ([light, dark]: Def): Def => [map(light), map(dark)];
62
+
63
+ export function defsFromPalette({
64
+ key,
56
65
  white,
57
66
  black,
58
67
  whiteA,
@@ -67,22 +76,48 @@ export function makeThemeDefs({
67
76
  tealDark,
68
77
  yellow,
69
78
  yellowDark,
79
+ deneutralize: deneutralizeFilter,
80
+ highlight,
70
81
  }: ThemePalette) {
71
- const blackish = produceColor(black, (x) => set(x, "hsl.l", (x) => x + 5));
72
- const purple9 = "rgb(157, 99, 212)";
73
- const purpleDark9 = "rgb(131, 73, 182)";
74
- const blue9 = "rgba(56, 105, 204, 1)";
75
- const blueDark9 = "rgba(151, 177, 237, 1)";
76
-
77
- const shades = getOpacities(black);
78
- const separators = {
79
- ...mapValues(shades, separator),
80
- } as const;
82
+ const [deneutralizeL, deneutralizeD] = mapDef(deneutralizeFilter, makeColorFilter);
83
+ const deneutralize = (def: Def) => mapDef(def, deneutralizeL, deneutralizeD);
81
84
 
82
- const lights = getOpacities(white);
83
- const inversedSeparators = {
84
- ...mapValues(lights, separator),
85
- } as const;
85
+ // beg(TODO pull into ThemePalette)
86
+ const blackish = produceColor(black, (x) => {
87
+ const hsl = hslFrom(x);
88
+ return {...hsl, l: (hsl.l ?? 0) + 0.05};
89
+ });
90
+
91
+ const [purple9, purpleDark9] = deneutralize(["rgb(157, 99, 212)", "rgb(131, 73, 182)"]);
92
+ const [blue9, blueDark9] = deneutralize(["rgba(56, 105, 204, 1)", "rgba(151, 177, 237, 1)"]);
93
+ // end(TODO pull into ThemePalette)
94
+
95
+ // whiteA = surface direction (white on light / black on dark) — blends INTO bg
96
+ const whiteA5: Def = [alpha(white, 0.05), alpha(black, 0.05)];
97
+ const whiteA10: Def = [alpha(white, 0.1), alpha(black, 0.1)];
98
+ const whiteA25: Def = [alpha(white, 0.25), alpha(black, 0.25)];
99
+ const whiteA40: Def = [alpha(white, 0.4), alpha(black, 0.4)];
100
+ const whiteA100: Def = [white, black];
101
+
102
+ // blackA = contrast direction (black on light / white on dark) — readable on bg
103
+ const blackA5: Def = [alpha(black, 0.05), alpha(white, 0.05)];
104
+ const blackA10: Def = [alpha(black, 0.1), alpha(white, 0.1)];
105
+ const blackA15: Def = [alpha(black, 0.15), alpha(white, 0.15)];
106
+ const blackA25: Def = [alpha(black, 0.25), alpha(white, 0.25)];
107
+ const blackA50: Def = [alpha(black, 0.5), alpha(white, 0.5)];
108
+ const blackA90: Def = [alpha(black, 0.9), alpha(white, 0.9)];
109
+
110
+ const opacities = {
111
+ subtle: same(opacity.opacity15.toString()),
112
+ faint: same(opacity.opacity20.toString()),
113
+ weak: same(opacity.opacity30.toString()),
114
+ drag: same(opacity.opacity40.toString()),
115
+ muted: same(opacity.opacity50.toString()),
116
+ done: same(opacity.opacity60.toString()),
117
+ disabled: same(opacity.opacity65.toString()),
118
+ visible: same(opacity.opacity70.toString()),
119
+ disabledHoverOrFocus: same(opacity.opacity75.toString()),
120
+ };
86
121
 
87
122
  // FIXME WIP to find commons/dedupe/adjust
88
123
  const surface = {
@@ -107,6 +142,7 @@ export function makeThemeDefs({
107
142
 
108
143
  // muted bg (code, form fields)
109
144
  level3exotic: [base[3], blackish], // FIXME try blackA[3] | baseDark[3] to make it less exotic
145
+ level3_1: [base[3], baseDark[1]],
110
146
  level3_4: [base[3], baseDark[4]],
111
147
  level3_6: [base[3], baseDark[6]],
112
148
  level3_7: [base[3], baseDark[7]],
@@ -118,9 +154,9 @@ export function makeThemeDefs({
118
154
  level4_5: [base[4], baseDark[5]],
119
155
  level4_6: [base[4], baseDark[6]],
120
156
 
121
- level3_1: [base[3], baseDark[1]],
122
157
  level5_4: [base[5], baseDark[4]],
123
- } as const;
158
+ level6_7: [base[6], baseDark[7]],
159
+ } satisfies Defs;
124
160
 
125
161
  const raised = {
126
162
  // menus, modals, entity boxes
@@ -134,55 +170,118 @@ export function makeThemeDefs({
134
170
 
135
171
  // card bg, comment bubbles, float editors
136
172
  level4: [white, baseDark[6]],
137
- } as const;
173
+ } satisfies Defs;
138
174
 
139
- const shadows = {
140
- // Elevations
141
- surfaceElevationS: [`0 2px 4px 0 ${blackA[3]}`, `0 2px 4px 0 ${whiteA[3]}`],
142
- surfaceElevationM: [`0 4px 8px 0 ${blackA[5]}`, `0 4px 8px 0 ${whiteA[5]}`],
143
- surfaceElevationL: [`0 8px 12px 0 ${blackA[5]}`, `0 8px 12px 0 ${whiteA[5]}`],
175
+ // Strokes (spread-only, no blur/offset)
176
+ const stroke05 = (color: string) => `0 0 0 0.5px ${color}`;
177
+ const stroke1 = (color: string) => `0 0 0 1px ${color}`;
178
+ const stroke2 = (color: string) => `0 0 0 2px ${color}`;
179
+ const stroke3 = (color: string) => `0 0 0 3px ${color}`;
144
180
 
145
- // Shadows and effects / Elevation
146
- shadow50: [`0px 0px 0px 1px ${alpha(base[12], 0.05)}`, `0px 0px 0px 1px ${alpha(baseDark[12], 0.1)}`],
147
- shadow100: [`0px 1px 4px 0px ${alpha(base[12], 0.05)}`, `0px 1px 4px 0px ${alpha(base[12], 0.1)}`],
148
- shadow200: [`0px 2px 6px 0px ${alpha(base[12], 0.05)}`, `0px 2px 6px 0px ${alpha(base[12], 0.1)}`],
149
- shadow300: [
150
- `0px 3px 6px -3px ${alpha(base[12], 0.1)}, 0px 8px 20px -4px ${alpha(base[12], 0.15)}`,
151
- `0px 3px 6px -3px ${alpha(base[12], 0.1)}, 0px 8px 20px -4px ${alpha(base[12], 0.15)}`,
152
- ],
153
- shadow400: [
154
- `0px 0px 1px 0px ${alpha(base[12], 0.2)}, 0px 16px 40px 0px ${alpha(base[12], 0.15)}`,
155
- `0px 0px 1px 0px ${alpha(base[12], 0.2)}, 0px 16px 40px 0px ${alpha(base[12], 0.15)}`,
156
- ],
157
- shadow500: [
158
- `0px 0px 1px 0px ${alpha(base[12], 0.2)}, 0px 20px 50px 0px ${alpha(base[12], 0.15)}`,
159
- `0px 0px 1px 0px ${alpha(base[12], 0.2)}, 0px 20px 50px 0px ${alpha(base[12], 0.15)}`,
160
- ],
161
- shadow600: [
162
- `0px 0px 1px 0px ${alpha(base[12], 0.2)}, 0px 26px 80px 0px ${alpha(base[12], 0.2)}`,
163
- `0px 0px 1px 0px ${alpha(base[12], 0.2)}, 0px 26px 80px 0px ${alpha(base[12], 0.2)}`,
181
+ // Glows (blur-only, no offset/spread)
182
+ const glow1 = (color: string) => `0 0 1px 0 ${color}`;
183
+ const glow2 = (color: string) => `0 0 2px 0 ${color}`;
184
+ const glow6 = (color: string) => `0 0 6px 0 ${color}`;
185
+
186
+ // Elevations (y-offset + blur)
187
+ const elevationS = (color: string) => `0 2px 4px 0 ${color}`;
188
+ const elevationS_shrinked = (color: string) => `0 2px 4px -4px ${color}`;
189
+ const elevationSM = (color: string) => `0 4px 6px 0 ${color}`;
190
+ const elevationSL = (color: string) => `0 3px 12px 0 ${color}`; // soft-large: small offset, large blur
191
+ const elevationM = (color: string) => `0 4px 8px 0 ${color}`;
192
+ const elevationL = (color: string) => `0 8px 12px 0 ${color}`;
193
+ const elevationXL = (color: string) => `0 10px 26px 0 ${color}`; // extra-large
194
+ const elevation100 = (color: string) => `0 1px 4px 0 ${color}`;
195
+ const elevation200 = (color: string) => `0 2px 6px 0 ${color}`;
196
+ const elevation250 = (color: string) => `0 3px 6px -3px ${color}`;
197
+ const elevation300 = (color: string) => `0 8px 20px -4px ${color}`;
198
+ const elevation400 = (color: string) => `0 16px 40px 0 ${color}`;
199
+ const elevation500 = (color: string) => `0 20px 50px 0 ${color}`;
200
+ const elevation600 = (color: string) => `0 26px 80px 0 ${color}`;
201
+
202
+ // --- Input borders (stroke shadows) ---
203
+ const inputStrokes = {
204
+ disabled: [stroke1(alpha(base[6], 0.2)), stroke1(alpha(baseDark[8], 0.2))],
205
+ default: [stroke1(alpha(base[6], 0.7)), stroke1(alpha(baseDark[8], 0.7))],
206
+ hover: [stroke1(base[7]), stroke1(baseDark[8])],
207
+ focus: [stroke1(base[8]), stroke1(baseDark[9])],
208
+ error: [stroke1(red[11]), stroke1(red[7])],
209
+ errorHover: [stroke1(alpha(red[11], 0.4)), stroke1(alpha(red[7], 0.4))],
210
+ errorFocus: [stroke1(alpha(red[11], 0.25)), stroke1(alpha(red[7], 0.25))],
211
+ errorFocusRing: [stroke3(alpha(red[11], 0.25)), stroke3(alpha(red[7], 0.25))],
212
+ warning: [stroke1(yellow[9]), stroke1(yellowDark[8])],
213
+ } satisfies Defs;
214
+
215
+ // --- Floating surface shadows ---
216
+ const floatingShadows = {
217
+ popup: [
218
+ steps([glow2(alpha(base[11], 0.3)), elevationSM(alpha(base[11], 0.05)), elevationXL(alpha(base[11], 0.15))]),
219
+ steps([stroke1(baseDark[6]), elevationSM(alpha(baseDark[1], 0.05)), elevationXL(alpha(baseDark[1], 0.15))]),
164
220
  ],
165
- actionMenuShadow: [
166
- `0px 0px 2px 0px ${alpha(base[11], 0.3)}, 0px 4px 6px 0px ${alpha(base[11], 0.05)}, 0px 10px 26px 0px ${alpha(
167
- base[11],
168
- 0.15
169
- )}`,
170
- `0px 0px 0px 1px ${baseDark[6]}, 0px 4px 6px 0px ${alpha(baseDark[1], 0.05)}, 0px 10px 26px 0px ${alpha(
171
- baseDark[1],
172
- 0.15
173
- )}`,
221
+ instrumentsMenu: [
222
+ steps([glow1(alpha(base[11], 0.2)), elevationSM(alpha(base[11], 0.05)), elevationSL(alpha(base[11], 0.1))]),
223
+ steps([glow1(baseDark[6]), elevationSM(alpha(baseDark[1], 0.05)), elevationSL(alpha(baseDark[1], 0.15))]),
174
224
  ],
175
- shadowPopup: [
176
- `0px 0px 2px 0px ${alpha(base[11], 0.3)}, 0px 4px 6px 0px ${alpha(base[11], 0.05)}, 0px 10px 26px 0px ${alpha(
177
- base[11],
178
- 0.15
179
- )}`,
180
- `0px 0px 0px 1px ${baseDark[6]}, 0px 4px 6px 0px ${alpha(baseDark[1], 0.05)}, 0px 10px 26px 0px ${alpha(
181
- baseDark[1],
182
- 0.15
183
- )}`,
225
+ } satisfies Defs;
226
+
227
+ // --- Card/container shadows ---
228
+ const cardShadows = {
229
+ subtle: [
230
+ steps([stroke1(alpha(base[10], 0.1)), elevationS_shrinked(alpha(base[10], 0.2))]),
231
+ steps([stroke1(alpha(baseDark[2], 0.1)), elevationS_shrinked(alpha(baseDark[2], 0.2))]),
184
232
  ],
185
- shadowSidebar: [`-3px 0px 10px 0px ${alpha(base[10], 0.1)}`, `-3px 0px 10px 0px ${alpha(baseDark[1], 0.8)}`],
233
+ } satisfies Defs;
234
+
235
+ const entityBoxShadows = {
236
+ stroke: {
237
+ default: [stroke1(base[5]), stroke1(baseDark[5])],
238
+ focus: [stroke2(alpha(accent[9], 0.4)), stroke2(alpha(accentDark[9], 0.4))],
239
+ focusHover: [stroke2(alpha(accent[9], 0.6)), stroke2(alpha(accentDark[9], 0.6))],
240
+ selected: [
241
+ steps([stroke1(alpha(accent[9], 0.4)), stroke3(alpha(accent[9], 0.4))]),
242
+ steps([stroke1(accentDark[9]), stroke3(alpha(accentDark[9], 0.4))]),
243
+ ],
244
+ selectedHover: [
245
+ steps([stroke1(alpha(accent[9], 0.6)), stroke3(alpha(accent[9], 0.4))]),
246
+ steps([stroke1(accentDark[9]), stroke3(alpha(accentDark[9], 0.4))]),
247
+ ],
248
+ } satisfies Defs,
249
+ elevation: {
250
+ // Progression: S → M → L (default → hover → drag)
251
+ default: [elevationS(alpha(base[12], 0.05)), elevationS(alpha(baseDark[1], 0.05))],
252
+ hover: [elevationM(alpha(base[12], 0.1)), elevationM(alpha(baseDark[1], 0.1))],
253
+ drag: [elevationL(alpha(base[12], 0.1)), elevationL(alpha(baseDark[1], 0.1))],
254
+ } satisfies Defs,
255
+ };
256
+
257
+ // FIXME assymetric: light is composite (elevation100 + stroke05), dark is simple (stroke1 only)
258
+ const shadowMenuHeaderAvatar = [
259
+ steps([elevation100(alpha(base[11], 0.1)), stroke05(alpha(base[5], 0.5))]),
260
+ stroke1(alpha(baseDark[9], 0.2)),
261
+ ] as const;
262
+
263
+ const edgeLeft = (color: string) => `-3px 0 10px 0 ${color}`;
264
+
265
+ const formHeaderShadow = [glow6(alpha(base[10], 0.1)), glow6(alpha(baseDark[1], 0.4))] as const;
266
+
267
+ const shadows = {
268
+ // Elevations
269
+ surfaceElevationS: [elevationS(blackA[3]), elevationS(whiteA[3])],
270
+ surfaceElevationM: [elevationM(blackA[5]), elevationM(whiteA[5])],
271
+ surfaceElevationL: [elevationL(blackA[5]), elevationL(whiteA[5])],
272
+
273
+ // Shadows and effects / Elevation
274
+ shadow50: [stroke1(alpha(base[12], 0.05)), stroke1(alpha(baseDark[12], 0.1))],
275
+ shadow100: [elevation100(alpha(base[12], 0.05)), elevation100(alpha(base[12], 0.1))],
276
+ shadow200: [elevation200(alpha(base[12], 0.05)), elevation200(alpha(base[12], 0.1))],
277
+ shadow300: same(steps([elevation250(alpha(base[12], 0.1)), elevation300(alpha(base[12], 0.15))])),
278
+ shadow400: same(steps([glow1(alpha(base[12], 0.2)), elevation400(alpha(base[12], 0.15))])),
279
+ shadow500: same(steps([glow1(alpha(base[12], 0.2)), elevation500(alpha(base[12], 0.15))])),
280
+ shadow600: same(steps([glow1(alpha(base[12], 0.2)), elevation600(alpha(base[12], 0.2))])),
281
+
282
+ actionMenuShadow: floatingShadows.popup,
283
+ shadowPopup: floatingShadows.popup,
284
+ shadowSidebar: [edgeLeft(alpha(base[10], 0.1)), edgeLeft(alpha(baseDark[1], 0.8))],
186
285
  } as const;
187
286
 
188
287
  // names proposal: forbid color in keys (they all are colors) — restructure it better (separate shadows, borders etc)
@@ -193,63 +292,219 @@ export function makeThemeDefs({
193
292
  // shadow-* Sets the color of box shadows
194
293
  // fill-* Sets the fill color of SVG elements
195
294
  // stroke-* Sets the stroke color of SVG elements
196
- // e.g.
197
- // bgMain
198
- // bgPanel
199
- // bgForm
200
- // bgTooltip
201
- // textDefault
202
- // textAccent
203
- // textDisabled
204
- // textInversed
205
- // borderInputDisabled
206
- // borderInputError
207
- // borderInputErrorHover
208
- // borderInputErrorFocus
295
+ // TODO elevation = raised * shadow
296
+
297
+ const transparentAlways = same(transparent);
298
+ const whiteColor = same(white);
299
+ const blackColor = same(black);
300
+
301
+ const fg = {
302
+ accent: [accent[11], accentDark[11]],
303
+ accentActive: [alpha(accent[11], 0.8), alpha(accentDark[11], 0.8)],
304
+
305
+ neutral: [base[11], baseDark[11]],
306
+ neutralActive: [alpha(base[11], 0.8), alpha(baseDark[11], 0.8)],
307
+ // FIXME uses base[12] while soft/ghost use base[11] — inconsistent?
308
+ neutralActive__TODO: [alpha(base[12], 0.8), alpha(baseDark[12], 0.8)],
309
+ muted: [base[9], baseDark[9]],
310
+
311
+ destructive: [red[11], redDark[11]],
312
+ destructiveActive: [alpha(red[11], 0.8), alpha(redDark[11], 0.8)],
313
+
314
+ addition: [teal[9], tealDark[11]],
315
+
316
+ success: [teal[11], tealDark[11]],
317
+ warning: [yellow[11], yellowDark[11]],
318
+
319
+ icon: [alpha(base[12], 0.7), alpha(baseDark[12], 0.7)],
320
+ // TODO The 0.65 vs 0.7 dark alpha might be intentional (text slightly more muted than icons?) or drift.
321
+ secondary: [alpha(base[12], 0.7), alpha(baseDark[12], 0.65)],
322
+ } satisfies Defs;
323
+
324
+ const bg = {
325
+ neutral3: [base[3], baseDark[3]],
326
+ accent3: [accent[3], accentDark[3]],
327
+ success: [teal[3], tealDark[3]],
328
+ warning: [yellow[3], yellowDark[3]],
329
+ error: [red[3], redDark[3]],
330
+ } satisfies Defs;
331
+
332
+ const icon = {
333
+ primary: [base[12], baseDark[12]],
334
+ neutral: [base[11], baseDark[11]],
335
+ accent: [accent[11], accentDark[11]],
336
+ success: [teal[11], tealDark[11]],
337
+ warning: [yellow[11], yellowDark[11]],
338
+ error: [red[11], redDark[11]],
339
+ link: [blue9, blueDark9],
340
+ ai: [purple9, purpleDark9],
341
+ } satisfies Defs;
342
+
343
+ const text = {
344
+ primary: [base[12], baseDark[12]],
345
+ accent: [accent[11], accentDark[11]],
346
+ success: [teal[11], tealDark[11]],
347
+ warning: [yellow[11], yellowDark[11]],
348
+ error: [red[11], redDark[11]],
349
+ } satisfies Defs;
350
+
351
+ const primary = {
352
+ accent: [accent[9], accentDark[9]],
353
+ destructive_TODO: [red[9], redDark[9]],
354
+ destructive: [red[9], redDark[10]], // TODO 9_9?
355
+ success: [teal[9], tealDark[9]],
356
+ warning: [yellow[9], yellowDark[8]], // TODO 9_9 after correct adjusting palette?
357
+ } satisfies Defs;
358
+
359
+ const bgStatus = {
360
+ accent: [alpha(accent[5], 0.7), alpha(accentDark[4], 0.8)],
361
+ neutral: [alpha(base[5], 0.7), alpha(baseDark[4], 0.8)],
362
+ success: [teal[5], tealDark[5]],
363
+ warning: [yellow[5], yellowDark[5]],
364
+ error: [red[5], redDark[5]],
365
+ } satisfies Defs;
366
+
367
+ const borderAccentOrMedium = [accent[7], accentDark[7]] as const;
368
+ const borderAccentOrMediumAccent = [accent[8], accentDark[8]] as const;
369
+ const borderDanger = [red[7], redDark[7]] as const;
370
+ const borderNeutral = [base[8], baseDark[7]] as const;
371
+
372
+ // beg(TODO shake it)
373
+ const bgEntityCardOverlay = [alpha(base[2], 0.8), alpha(baseDark[6], 0.5)] as const;
374
+ const bgEntityCardDone = [alpha(base[4], 0.3), alpha(baseDark[5], 0.3)] as const;
375
+ const base5_6 = [base[5], baseDark[6]] as const;
376
+ const base6_6_opacity30 = [alpha(base[6], 0.3), alpha(baseDark[6], 0.3)] as const;
377
+ const base8 = [base[8], baseDark[8]] as const;
378
+ const fgAccentText = [base[10], baseDark[10]] as const;
379
+ const fgMenuEtc = [base[12], baseDark[12]] as const;
380
+
381
+ const bgTabFocus = [base[6], baseDark[6]] as const;
382
+ const bgTabHover = [alpha(base[11], 0.1), alpha(baseDark[11], 0.1)] as const;
383
+
384
+ const viewHighlightBg = [accent[3], accentDark[3]] as const;
385
+ const notificationSelected = [accent[3], accentDark[4]] as const;
386
+ const bgCellGridDisabledOrHighlighted = [accent[4], accentDark[5]] as const;
387
+ const notificationSelectedHover = [accent[4], accentDark[6]] as const;
388
+
389
+ const fgSelection = [alpha(accent[9], 0.2), alpha(accentDark[9], 0.4)] as const;
390
+
391
+ const warningColor = [alpha(yellow[6], 0.6), alpha(yellowDark[9], 0.4)] as const;
392
+ const bgBtnGhostAccentHover = [alpha(accent[4], 0.8), alpha(accentDark[4], 0.8)] as const;
393
+ const bgBtnGhostNeutralHover = [alpha(base[7], 0.5), alpha(baseDark[6], 0.8)] as const;
394
+ const bgBtnGhostDestructiveHover = [red[4], redDark[4]] as const;
395
+ const bgBtnSoftAccentHover = [accent[5], accentDark[6]] as const;
396
+ const bgBtnSoftNeutralDefault = [base[3], baseDark[3]] as const;
397
+ const bgBtnSoftNeutralHover = [base[7], baseDark[7]] as const;
398
+ const bgBtnSoftDestructiveHover = [red[6], redDark[6]] as const;
399
+ const borderFocusRingAccent = same(alpha(accent[9], 0.3));
400
+ const borderFocusRingNeutral = same(alpha(base[9], 0.3));
401
+ const borderFocusRingDestructive = same(alpha(red[9], 0.3));
402
+ const textWhiteboardSelectionLockedOrDisabled = [alpha(base[9], 0.5), alpha(baseDark[9], 0.5)] as const;
403
+
404
+ const fgSelectedText = same(base[2]);
405
+ const fgSolidActiveText = same(alpha(white, 0.8));
406
+ const linkBlue = [blue9, blueDark9] as const;
407
+
408
+ const codeOrErrorMessage = [red[9], red[8]] as const; // TODO check: lack of redDark scale usage
409
+ const errorIndicatorColor = same(red[8]);
410
+ const neutralStrong = same(base[11]);
411
+ // end(TODO shake it)
412
+
413
+ const bgActionsMenu = raised.level1;
414
+ const bgActionsMenuItemHover = surface.level4_5;
415
+
416
+ const iconFromFg = (fg: string): {fg: Def; bg: Def} => ({
417
+ fg: deneutralize(same(fg)),
418
+ bg: deneutralize(same(alpha(fg, 0.2))),
419
+ });
420
+
421
+ const swatches = {
422
+ green: "#69AC5E",
423
+ grayLight: cardTypeColors[1],
424
+ indigo: cardTypeColors[8],
425
+ teal: cardTypeColors[10],
426
+ yellow: cardTypeColors[14],
427
+ };
428
+
429
+ const iconMySpace = iconFromFg(swatches.grayLight);
430
+ const iconPrivate = iconFromFg(swatches.green);
431
+ const iconFavorites = iconFromFg(swatches.yellow);
432
+ const defaultCardTypeColorUppercaseHex = same(
433
+ (key.includes("arch") ? swatches.yellow : key.includes("neutral") ? swatches.indigo : swatches.teal).toUpperCase()
434
+ );
435
+
436
+ const iconBadge = iconFromFg(base[10]);
437
+
209
438
  const colors = {
210
- mode: ["light", "dark"],
211
439
  ...shadows,
440
+ ...mapValues(highlightColors(highlight, surface.level0), deneutralize),
441
+ colorPickerCssFilter: mapDef(deneutralizeFilter, cssFromFilter),
442
+
443
+ mode: ["light", "dark"],
444
+
445
+ // Accent background tints (light → strong)
446
+ colorAccentBgSubtle: same(alpha(accent[9], 0.1)),
447
+ colorAccentBgMild: same(alpha(accent[9], 0.15)),
448
+ colorAccentBgMedium: same(alpha(accent[9], 0.2)),
449
+ colorAccentBgStrong: same(alpha(accent[9], 0.3)),
450
+ colorAccentBgBold: same(alpha(accent[9], 0.35)),
451
+ colorAccentBgVivid: same(alpha(accent[9], 0.6)),
452
+
453
+ // Accent strokes
454
+ colorAccentStroke: same(alpha(accent[9], 0.25)),
455
+ colorAccentStrokeHover: same(alpha(accent[9], 0.4)),
456
+ colorAccentStrokeFocus: same(alpha(accent[9], 0.5)),
457
+
458
+ // Accent solid
459
+ colorAccentSolid: same(alpha(accent[9], 0.8)),
460
+
461
+ // Accent base
462
+ colorAccent: primary.accent,
212
463
 
213
464
  // Rubbish dump
214
- primaryBlue: [accent[9], accentDark[9]],
215
- whiteColor: [white, white],
216
- blackColor: [black, black],
465
+ /** @deprecated */
466
+ darkenPrimary: same(getDarkenColor(accent[9])),
467
+ whiteColor,
468
+ blackColor,
217
469
  mainBg: surface.level3exotic,
218
470
  panelBg: surface.level0,
219
471
  panelContentBg: surface.level2_1,
220
472
  colorBgRelationContainer: surface.level2_1,
473
+
221
474
  // AI colors
222
475
  colorAI: [purple9, purpleDark9],
223
476
  colorBgAI: [alpha(purple9, 0.1), alpha(purpleDark9, 0.1)],
224
- colorSubtleBgAI: [alpha(purple9, 0.05), alpha(purpleDark9, 0.1)], // FIXME why 0.1 for dark vs 0.05 for light?
477
+ // FIXME why 0.1 for dark vs 0.05 for light?
478
+ colorSubtleBgAI: [alpha(purple9, 0.05), alpha(purpleDark9, 0.1)],
225
479
  colorBgAIFloatingLauncher: surface.level1_4,
226
480
  colorBgAIFloatingPanelContent: surface.level1_3,
227
481
  colorBgAISidebarContent: surface.level1,
482
+
228
483
  // Other colors
229
484
  pageContentBg: surface.level0elevated,
230
485
  colorBgPopup: raised.level2,
231
486
  menuBg: surface.level3exotic,
232
- menuTextColor: [base[12], baseDark[12]],
233
- menuItemHoverColor: [base[5], baseDark[6]],
234
- menuSelectedTextColor: [base[2], base[2]], // FIXME baseDark
235
- menuIconColor: [alpha(base[12], 0.7), alpha(baseDark[12], 0.7)],
487
+ menuTextColor: fgMenuEtc,
488
+ menuItemHoverColor: base5_6,
489
+ menuSelectedTextColor: fgSelectedText,
490
+ menuIconColor: fg.icon,
236
491
 
237
492
  // Text, links colors
238
- textColor: [base[12], baseDark[12]],
239
- textSelectionColor: [alpha(accent[9], 0.2), alpha(accentDark[9], 0.4)],
240
- accentTextColor: [base[10], baseDark[10]],
241
- disabledTextColor: [base[9], baseDark[9]],
493
+ textColor: fgMenuEtc,
494
+ textSelectionColor: fgSelection,
495
+ accentTextColor: fgAccentText,
496
+ disabledTextColor: fg.muted,
242
497
  inversedTextColor: surface.level3_6,
243
- colorTextSecondary: [alpha(base[12], 0.7), alpha(baseDark[12], 0.65)],
244
- linkColor: [blue9, blueDark9],
498
+ colorTextSecondary: fg.secondary,
499
+ linkColor: linkBlue,
245
500
  linkBorder: [separator(alpha(blue9, 0.4)), separator(alpha(blueDark9, 0.4))],
246
- linkHoverColor: [blue9, blueDark9],
501
+ linkHoverColor: linkBlue,
247
502
  linkBorderHover: [separator(alpha(blue9, 0.8)), separator(alpha(blueDark9, 0.7))], // FIXME why different alpha?
248
- codeColor: [red[9], red[8]],
503
+ codeColor: codeOrErrorMessage,
249
504
  codeBgColor: surface.level3_4,
250
505
  codeBlockBgColor: surface.level3_4,
251
- addedDiffTextColor: [teal[9], tealDark[11]],
252
- removedDiffTextColor: [red[11], redDark[11]],
506
+ addedDiffTextColor: fg.addition,
507
+ removedDiffTextColor: fg.destructive,
253
508
 
254
509
  // Entity
255
510
  entityNodeColor: [baseDark[3], base[8]],
@@ -258,161 +513,156 @@ export function makeThemeDefs({
258
513
  entityNodeBorderHover: [separator(alpha(base[11], 0.8)), separator(alpha(base[7], 0.8))],
259
514
  entityNodeBgColor: surface.level2_3,
260
515
  shortcutTextColor: [base[9], baseDark[11]],
261
- shortcutBorder: [`1px solid ${alpha(base[8], 0.5)}`, `1px solid ${alpha(baseDark[10], 0.2)}`],
516
+ shortcutBorder: [border1(alpha(base[8], 0.5)), border1(alpha(baseDark[10], 0.2))],
262
517
  shortcutBorderColor: [alpha(base[8], 0.5), alpha(baseDark[10], 0.2)],
263
518
 
264
519
  // Input
265
520
  inputBgColor: surface.level0elevated,
266
- inputDisabledBgColor: [alpha(base[6], 0.3), alpha(baseDark[6], 0.3)],
267
- inputDisabledBorderColor: [`0 0 0 1px ${alpha(base[6], 0.2)}`, `0 0 0 1px ${alpha(baseDark[8], 0.2)}`],
521
+ inputDisabledBgColor: base6_6_opacity30,
522
+ inputDisabledBorderColor: inputStrokes.disabled,
268
523
  inputCopyBgColor: surface.level3_4,
269
- inputBorderColor: [`0 0 0 1px ${alpha(base[6], 0.7)}`, `0 0 0 1px ${alpha(baseDark[8], 0.7)}`],
270
- inputBorderHoverColor: [`0 0 0 1px ${base[7]}`, `0 0 0 1px ${baseDark[8]}`],
271
- inputBorderFocusColor: [`0 0 0 1px ${base[8]}`, `0 0 0 1px ${baseDark[9]}`],
524
+ inputBorderColor: inputStrokes.default,
525
+ inputBorderHoverColor: inputStrokes.hover,
526
+ inputBorderFocusColor: inputStrokes.focus,
272
527
  inputBorderBlendMode: ["multiply", "lighten"],
273
- inputPlaceholderTextColor: [base[9], baseDark[9]],
274
- inputErrorBorderColor: [`0 0 0 1px ${red[11]}`, `0 0 0 1px ${red[7]}`],
275
- inputErrorBorderHoverColor: [`0 0 0 1px ${alpha(red[11], 0.4)}`, `0 0 0 1px ${alpha(red[7], 0.4)}`],
276
- inputErrorBorderFocusColor: [`0 0 0 1px ${alpha(red[11], 0.25)}`, `0 0 0 1px ${alpha(red[7], 0.25)}`],
277
- inputErrorBorderFocusShadow: [`0 0 0 3px ${alpha(red[11], 0.25)}`, `0 0 0 3px ${alpha(red[7], 0.25)}`],
278
- buttonPrimaryColor: [accent[9], accentDark[9]],
279
- buttonColor: [base[10], baseDark[10]],
528
+ inputPlaceholderTextColor: fg.muted,
529
+ inputErrorBorderColor: inputStrokes.error,
530
+ inputErrorBorderHoverColor: inputStrokes.errorHover,
531
+ inputErrorBorderFocusColor: inputStrokes.errorFocus,
532
+ inputErrorBorderFocusShadow: inputStrokes.errorFocusRing,
533
+ inputBorderWarningColor: inputStrokes.warning,
534
+ buttonPrimaryColor: primary.accent,
535
+ buttonColor: fgAccentText,
280
536
  buttonPrimaryTextColor: [base[2], base[6]],
281
- checkboxColor: [alpha(base[12], 0.7), alpha(baseDark[12], 0.7)],
282
- colorBorderBlockQuote: [base[11], baseDark[11]],
537
+ checkboxColor: fg.icon,
538
+ colorBorderBlockQuote: fg.neutral,
283
539
 
284
540
  // Actions menu
285
- colorBgActionsMenu: raised.level1,
286
- colorBgActionsMenuItemHover: surface.level4_5,
287
- colorBgActionsMenuItemSelected: [alpha(accent[4], 0.8), alpha(accentDark[4], 0.8)],
541
+ colorBgActionsMenu: bgActionsMenu,
542
+ colorBgActionsMenuItemHover: bgActionsMenuItemHover,
543
+ colorBgActionsMenuItemSelected: bgBtnGhostAccentHover,
288
544
  colorBgActionsMenuItemSelectedHover: [alpha(accent[5], 0.8), alpha(accentDark[6], 0.8)],
289
545
  colorBgActionsMenuItemDangerHover: [alpha(red[9], 0.1), alpha(redDark[10], 0.1)],
290
546
  colorBgActionsMenuItemDangerActive: [alpha(red[9], 0.8), alpha(redDark[10], 0.8)],
291
- actionMenuBg: raised.level1,
547
+ actionMenuBg: bgActionsMenu,
292
548
  actionMenuInnerBg: raised.level2,
293
- actionMenuHover: surface.level4_5,
549
+ actionMenuHover: bgActionsMenuItemHover,
294
550
  actionMenuInnerHover: [base[4], alpha(baseDark[6], 0.5)],
295
551
  actionMenuButtonColor: surface.level0elevated,
296
552
  actionMenuButtonHoverColor: surface.level1_3,
297
- actionMenuButtonShadow: [
298
- `0 0 0 1px ${alpha(base[10], 0.1)}, 0 2px 4px -4px ${alpha(base[10], 0.2)}`,
299
- `0 0 0 1px ${alpha(baseDark[2], 0.1)}, 0 2px 4px -4px ${alpha(baseDark[2], 0.2)}`,
300
- ],
553
+ actionMenuButtonShadow: cardShadows.subtle,
301
554
  actionMenuSeparatorColor: [alpha(black, 0.1), alpha(white, 0.15)],
302
- separatorColor: [alpha(black, 0.1), alpha(white, 0.1)],
303
- separatorColorDimmed: [alpha(black, 0.05), alpha(white, 0.05)],
304
- separatorBreadcrumbsColor: [base[8], baseDark[8]],
305
- iconColor: [alpha(base[12], 0.7), alpha(baseDark[12], 0.7)],
555
+ separatorColor: blackA10,
556
+ separatorColorDimmed: blackA5,
557
+ separatorBreadcrumbsColor: base8,
558
+
559
+ // Border shorthands — 0.5px (thin separator)
560
+ borderSeparatorDimmed: both(separator)(blackA5),
561
+ borderSeparator: both(separator)(blackA10),
562
+ borderSeparatorMedium: both(separator)(blackA15),
563
+ borderSeparatorStrong: both(separator)(blackA25),
564
+ borderMedia: same(separator(blackA[7])),
565
+
566
+ // Border shorthands — 1px (solid)
567
+ borderSolidSeparator: both(border1)(blackA10),
568
+ borderSolidSeparatorDimmed: both(border1)(blackA5),
569
+ borderSolidFilterGroup: [border1(blackA[3]), border1(whiteA[3])],
570
+ borderSolidGrid: [border1(base5_6[0]), border1(base5_6[1])],
571
+ borderSolidOutlineNeutral: [border1(borderNeutral[0]), border1(borderNeutral[1])],
572
+ borderSolidMedia: same(border1(blackA[7])),
573
+ borderSolidCommentBubble: [border1(raised.level4[0]), border1(raised.level4[1])],
574
+
575
+ // Border shorthands — 3px
576
+ borderBlockQuote: [border3(fg.neutral[0]), border3(fg.neutral[1])],
577
+
578
+ // Composite shadows (stroke + elevation)
579
+ shadowCardDefault: [
580
+ steps([inputStrokes.default[0], shadows.shadow100[0]]),
581
+ steps([inputStrokes.default[1], shadows.shadow100[1]]),
582
+ ],
583
+ shadowCardHover: [
584
+ steps([inputStrokes.default[0], shadows.shadow200[0]]),
585
+ steps([inputStrokes.default[1], shadows.shadow200[1]]),
586
+ ],
587
+ shadowCardInset: [`inset ${inputStrokes.default[0]}`, `inset ${inputStrokes.default[1]}`],
588
+
589
+ iconColor: fg.icon,
306
590
  appIconColor: [alpha(base[2], 0.9), alpha(base[2], 0.7)],
307
591
  appIconBgColor: [alpha(base[1], 0.9), alpha(base[2], 0.5)],
308
592
  mentionBgColor: [alpha(base[7], 0.3), alpha(baseDark[7], 0.4)],
309
593
  colorBgSelectMenu: surface.level1_3,
310
- shadowSelectMenu: [
311
- `0px 0px 2px 0px ${alpha(base[11], 0.3)}, 0px 4px 6px 0px ${alpha(base[11], 0.05)}, 0px 10px 26px 0px ${alpha(
312
- base[11],
313
- 0.15
314
- )}`,
315
- `0px 0px 0px 1px ${baseDark[6]}, 0px 4px 6px 0px ${alpha(baseDark[1], 0.05)}, 0px 10px 26px 0px ${alpha(
316
- baseDark[1],
317
- 0.15
318
- )}`,
319
- ],
320
- colorBgListItemGeneral: [transparent, transparent],
594
+ shadowSelectMenu: floatingShadows.popup,
595
+ colorBgListItemGeneral: transparentAlways,
321
596
  colorBgListItemGeneralHover: surface.level3_4,
322
597
  colorBgListItemGeneralFocus: surface.level4_6,
323
- colorBgListItemGeneralSelected: [accent[3], accentDark[4]],
324
- colorBgListItemGeneralSelectedHover: [accent[4], accentDark[6]],
325
- colorBgListItemGeneralSelectedFocus: [accent[4], accentDark[6]],
326
- colorBgListItemGeneralDisabled: [transparent, transparent],
327
- colorTextListItemGeneralDisabled: [base[9], baseDark[9]],
598
+ colorBgListItemGeneralSelected: notificationSelected,
599
+ colorBgListItemGeneralSelectedHover: notificationSelectedHover,
600
+ colorBgListItemGeneralSelectedFocus: notificationSelectedHover,
601
+ colorBgListItemGeneralDisabled: transparentAlways,
602
+ colorTextListItemGeneralDisabled: fg.muted,
328
603
  colorBgListItemGeneralSelectedDisabled: [accent[5], accentDark[5]],
329
- opacityListItemGeneralDisabled: [opacity.opacity40.toString(), opacity.opacity40.toString()],
604
+ opacityListItemGeneralDisabled: opacities.drag,
330
605
 
331
606
  // Search Items
332
- colorBgSearchRowHover: surface.level4_5,
607
+ colorBgSearchRowHover: bgActionsMenuItemHover,
333
608
  colorBgSearchRowCreateHover: [accent[4], accentDark[4]],
334
- opacitySearchItemDone: [opacity.opacity40.toString(), opacity.opacity40.toString()],
609
+ opacitySearchItemDone: opacities.drag,
610
+
335
611
  // Entity Box Style And States
336
612
  // Basic Entity Box State
337
- colorBgEntityBoxDefault: raised.level1,
338
- shadowStrokeEntityBoxDefault: [`0 0 0 1px ${base[5]}`, `0 0 0 1px ${baseDark[5]}`],
339
- shadowEntityBoxDefault: [`0px 2px 4px 0px ${alpha(base[12], 0.05)}`, `0px 2px 4px 0px ${alpha(baseDark[1], 0.05)}`],
613
+ colorBgEntityBoxDefault: bgActionsMenu,
614
+ shadowStrokeEntityBoxDefault: entityBoxShadows.stroke.default,
615
+ shadowEntityBoxDefault: entityBoxShadows.elevation.default,
340
616
  // :hover
341
617
  colorBgEntityBoxDefaultHover: raised.level2,
342
- shadowEntityBoxDefaultHover: [
343
- `0px 4px 8px 0px ${alpha(base[12], 0.1)}`,
344
- `0px 4px 8px 0px ${alpha(baseDark[1], 0.1)}`,
345
- ],
618
+ shadowEntityBoxDefaultHover: entityBoxShadows.elevation.hover,
346
619
  // :focus
347
- colorBgEntityBoxDefaultFocus: raised.level1,
348
- colorOverlayEntityBoxDefaultFocus: [accent[9], accentDark[9]],
349
- shadowStrokeEntityBoxDefaultFocus: [`0 0 0 2px ${alpha(accent[9], 0.4)}`, `0 0 0 2px ${alpha(accentDark[9], 0.4)}`],
620
+ colorBgEntityBoxDefaultFocus: bgActionsMenu,
621
+ colorOverlayEntityBoxDefaultFocus: primary.accent,
622
+ shadowStrokeEntityBoxDefaultFocus: entityBoxShadows.stroke.focus,
350
623
  // :focus:hover
351
624
  colorBgEntityBoxDefaultFocusHover: raised.level2,
352
- colorOverlayEntityBoxDefaultFocusHover: [accent[9], accentDark[9]],
353
- shadowStrokeEntityBoxDefaultFocusHover: [
354
- `0 0 0 2px ${alpha(accent[9], 0.6)}`,
355
- `0 0 0 2px ${alpha(accentDark[9], 0.6)}`,
356
- ],
625
+ colorOverlayEntityBoxDefaultFocusHover: primary.accent,
626
+ shadowStrokeEntityBoxDefaultFocusHover: entityBoxShadows.stroke.focusHover,
357
627
  //::drag
358
- opacityEntityBoxDefaultDrag: [opacity.opacity40.toString(), opacity.opacity40.toString()],
359
- shadowEntityBoxDefaultDrag: [
360
- `0px 8px 12px 0px ${alpha(base[12], 0.1)}`,
361
- `0px 8px 12px 0px ${alpha(baseDark[1], 0.1)}`,
362
- ],
628
+ opacityEntityBoxDefaultDrag: opacities.drag,
629
+ shadowEntityBoxDefaultDrag: entityBoxShadows.elevation.drag,
363
630
  // Selected Entity Box State
364
631
  colorBgEntityBoxSelected: [accent[2], accentDark[3]],
365
- shadowStrokeEntityBoxSelected: [
366
- `0 0 0 1px ${alpha(accent[9], 0.4)}, 0 0 0 3px ${alpha(accent[9], 0.4)}`,
367
- `0 0 0 1px ${accentDark[9]}, 0 0 0 3px ${alpha(accentDark[9], 0.4)}`,
368
- ],
632
+ shadowStrokeEntityBoxSelected: entityBoxShadows.stroke.selected,
369
633
  // :hover
370
- colorBgEntityBoxSelectedHover: [accent[3], accentDark[3]],
371
- shadowStrokeEntityBoxSelectedHover: [
372
- `0 0 0 1px ${alpha(accent[9], 0.6)}, 0 0 0 3px ${alpha(accent[9], 0.4)}`,
373
- `0 0 0 1px ${accentDark[9]}, 0 0 0 3px ${alpha(accentDark[9], 0.4)}`,
374
- ],
634
+ colorBgEntityBoxSelectedHover: viewHighlightBg,
635
+ shadowStrokeEntityBoxSelectedHover: entityBoxShadows.stroke.selectedHover,
375
636
  //::drag
376
- colorBgEntityBoxSelectedDrag: [accent[3], accentDark[3]],
377
- shadowStrokeEntityBoxSelectedDrag: [
378
- `0 0 0 1px ${alpha(accent[9], 0.4)}, 0 0 0 3px ${alpha(accent[9], 0.4)}`,
379
- `0 0 0 1px ${accentDark[9]}, 0 0 0 3px ${alpha(accentDark[9], 0.4)}`,
380
- ],
637
+ colorBgEntityBoxSelectedDrag: viewHighlightBg,
638
+ shadowStrokeEntityBoxSelectedDrag: entityBoxShadows.stroke.selected,
381
639
  // Disabled Entity Box State (done)
382
- opacityEntityBoxDisabled: [opacity.opacity65.toString(), opacity.opacity65.toString()],
640
+ opacityEntityBoxDisabled: opacities.disabled,
383
641
  // :hover
384
- opacityEntityBoxDisabledHover: [opacity.opacity75.toString(), opacity.opacity75.toString()],
642
+ opacityEntityBoxDisabledHover: opacities.disabledHoverOrFocus,
385
643
  // :focus
386
- opacityEntityBoxDisabledFocus: [opacity.opacity75.toString(), opacity.opacity75.toString()],
644
+ opacityEntityBoxDisabledFocus: opacities.disabledHoverOrFocus,
387
645
  // :drag
388
- opacityEntityBoxDisabledDrag: [opacity.opacity40.toString(), opacity.opacity40.toString()],
646
+ opacityEntityBoxDisabledDrag: opacities.drag,
647
+
389
648
  // Entity Old
390
649
  entityCardBgColor: raised.level3,
391
- entityCardSelectedColor: [alpha(base[2], 0.8), alpha(baseDark[6], 0.5)],
392
- entityCardHoverColor: [alpha(base[2], 0.8), alpha(baseDark[6], 0.5)],
393
- entityCardDoneColor: [alpha(base[4], 0.3), alpha(baseDark[5], 0.3)],
394
- entityCardShadow: [
395
- `0 0 0 1px ${alpha(base[10], 0.1)}, 0 2px 4px -4px ${alpha(base[10], 0.2)}`,
396
- `0 0 0 1px ${alpha(baseDark[2], 0.1)}, 0 2px 4px -4px ${alpha(baseDark[2], 0.2)}`,
397
- ],
398
- entityCardShadowHover: [
399
- `0 0 0 1px ${alpha(base[10], 0.1)}, 0 2px 4px -4px ${alpha(base[10], 0.2)}`,
400
- `0 0 0 1px ${alpha(baseDark[2], 0.1)}, 0 2px 4px -4px ${alpha(baseDark[2], 0.2)}`,
401
- ],
650
+ entityCardSelectedColor: bgEntityCardOverlay,
651
+ entityCardHoverColor: bgEntityCardOverlay,
652
+ entityCardDoneColor: bgEntityCardDone,
653
+ entityCardShadow: cardShadows.subtle,
654
+ entityCardShadowHover: cardShadows.subtle,
402
655
  colorBgSegmentedControl: [alpha(base[5], 0.8), alpha(baseDark[3], 0.8)],
403
656
  colorBgMenuHeaderAvatar: surface.level0elevated,
404
- shadowMenuHeaderAvatar: [
405
- `0px 1px 4px ${alpha(base[11], 0.1)}, 0 0 0 0.5px ${alpha(base[5], 0.5)}`,
406
- `0 0 0 1px ${alpha(baseDark[9], 0.2)}`,
407
- ],
657
+ shadowMenuHeaderAvatar: shadowMenuHeaderAvatar,
658
+
408
659
  // Main Menu Items Styles and States
409
660
  // Dragged
410
- opacityMenuItemDragged: [opacity.opacity40.toString(), opacity.opacity40.toString()],
661
+ opacityMenuItemDragged: opacities.drag,
411
662
  colorBgMenuItemSelectedDragged: [accent[6], accentDark[6]],
412
663
  // Default
413
664
  colorTextMenuItem: [alpha(base[12], 0.9), alpha(baseDark[12], 0.9)],
414
-
415
- colorBgMenuItem: [transparent, transparent],
665
+ colorBgMenuItem: transparentAlways,
416
666
  // :hover
417
667
  colorBgMenuItemHover: [base[5], baseDark[2]],
418
668
  // :focus
@@ -422,98 +672,97 @@ export function makeThemeDefs({
422
672
  // :hover
423
673
  colorBgMenuItemSelectedHover: [alpha(accent[6], 0.7), accentDark[5]],
424
674
  // :focus, :focus:hover
425
- colorBgPinnedFieldsLabel: [base[11], baseDark[11]],
426
- colorBgObjectEditorSeparator: [base[12], baseDark[12]],
675
+ colorBgPinnedFieldsLabel: fg.neutral,
676
+ colorBgObjectEditorSeparator: fgMenuEtc,
427
677
  colorBgMenuItemSelectedFocused: [accent[6], accentDark[5]],
428
678
  colorBgFieldEditorContainer: surface.level2_3,
429
679
  colorBgFieldEditorLinkEqualSign: [base[6], baseDark[2]],
430
680
  allowedDropColor: surface.level4,
431
681
  relationViewBgColor: surface.level2_3,
432
682
 
433
- mySpaceIconColor: [swatches["gray-light"], swatches["gray-light"]],
434
- mySpaceIconBg: [alpha(swatches["gray-light"], 0.2), alpha(swatches["gray-light"], 0.2)],
435
- privateIconColor: [swatches.green, swatches.green],
436
- privateIconBg: [alpha(swatches.green, 0.2), alpha(swatches.green, 0.2)],
437
- favoritesIconColor: [swatches.yellow, swatches.yellow],
438
- favoritesIconBg: [alpha(swatches.yellow, 0.2), alpha(swatches.yellow, 0.2)],
683
+ mySpaceIconColor: iconMySpace.fg,
684
+ mySpaceIconBg: iconMySpace.bg,
685
+ privateIconColor: iconPrivate.fg,
686
+ privateIconBg: iconPrivate.bg,
687
+ favoritesIconColor: iconFavorites.fg,
688
+ favoritesIconBg: iconFavorites.bg,
689
+ defaultCardTypeColorUppercaseHex,
439
690
 
440
691
  // Unit
441
692
  unitBg: surface.level3_6,
442
693
  unitBgHover: [base[4], baseDark[7]],
443
694
 
444
695
  // Badges
445
- colorBgBadgeNeutral: [alpha(accent[5], 0.7), alpha(accentDark[4], 0.8)],
446
- colorBgBadgeSuccess: [teal[5], tealDark[5]],
447
- colorBgBadgeWarning: [yellow[5], yellowDark[5]],
448
- colorBgBadgeError: [red[5], redDark[5]],
449
- colorTextBadgeNeutral: [accent[11], accentDark[11]],
450
- colorTextBadgeSuccess: [teal[11], tealDark[11]],
451
- colorTextBadgeWarning: [yellow[11], yellowDark[11]],
452
- colorTextBadgeError: [red[11], redDark[11]],
453
- // FIXME: lack of baseDark usage; same values!
454
- badgeBgColor: [alpha(base[10], 0.2), alpha(base[10], 0.2)],
696
+ colorBgBadgeNeutral: bgStatus.neutral,
697
+ colorBgBadgeAccent: bgStatus.accent,
698
+ colorBgBadgeSuccess: bgStatus.success,
699
+ colorBgBadgeWarning: bgStatus.warning,
700
+ colorBgBadgeError: bgStatus.error,
701
+ colorTextBadgeNeutral: fg.neutral,
702
+ colorTextBadgeAccent: fg.accent,
703
+ colorTextBadgeSuccess: fg.success,
704
+ colorTextBadgeWarning: fg.warning,
705
+ colorTextBadgeError: fg.destructive,
706
+ badgeBgColor: iconBadge.bg,
707
+
455
708
  tooltipBgColor: [baseDark[5], baseDark[6]],
456
709
  todayMarkerColor: [red[8], redDark[6]],
457
710
  viewBgOverlayColor: [alpha(base[8], 0.2), alpha(baseDark[1], 0.6)],
458
711
  floatEditorMenuBg: surface.level1_6,
459
- floatEditorActiveColor: [accent[11], accentDark[11]],
460
- commentColor: [alpha(yellow[6], 0.6), alpha(yellowDark[9], 0.4)],
712
+ floatEditorActiveColor: fg.accent,
713
+ commentColor: warningColor,
461
714
  cellBackgroundColor: surface.level2,
462
- cellBackgroundHoverColor: [alpha(base[6], 0.3), alpha(baseDark[6], 0.3)],
715
+ cellBackgroundHoverColor: base6_6_opacity30,
463
716
  cellBorderColor: [alpha(base[8], 0.5), alpha(baseDark[9], 0.5)],
464
717
  cellPinnedBorderColor: [alpha(base[8], 0.7), alpha(baseDark[9], 0.7)],
465
- tableRowWarningColor: [alpha(yellow[6], 0.6), alpha(yellowDark[9], 0.4)],
718
+ tableRowWarningColor: warningColor,
466
719
  errorBgColor: [alpha(red[9], 0.2), alpha(redDark[9], 0.6)],
467
720
  errorTextColor: [red[11], red[7]],
468
- errorButtonColor: [red[9], redDark[10]],
721
+ errorButtonColor: primary.destructive,
469
722
  warningBgColor: [alpha(yellow[6], 0.6), alpha(yellowDark[8], 0.6)],
470
- warningButtonColor: [yellow[11], yellowDark[11]],
723
+ warningButtonColor: fg.warning,
471
724
  infoBox: [alpha(yellow[4], 0.5), alpha(yellowDark[9], 0.2)],
472
725
  appCardBgColor: surface.level0elevated,
473
726
  appCardHoverColor: [alpha(base[1], 0.95), baseDark[2]],
474
727
  modalBg: [alpha(base[11], 0.2), alpha(baseDark[2], 0.5)],
475
- modalContentBg: raised.level1,
728
+ modalContentBg: bgActionsMenu,
476
729
  progressIconBg: [blackA[7], whiteA[7]],
477
730
  progressIconFill: [blackA[11], whiteA[11]],
478
731
  formBg: surface.level2,
479
- formHeaderShadow: [`${alpha(base[10], 0.1)} 0px 0px 6px`, `${alpha(baseDark[1], 0.4)} 0px 0px 6px`],
732
+ formHeaderShadow: formHeaderShadow,
480
733
  formEditorFieldBg: surface.level3_4,
481
734
  filterGroup1Bg: surface.level2_6,
482
735
  filterGroup2Bg: surface.level3_7,
483
736
  filterGroupBorder: [blackA[3], whiteA[3]],
484
737
  colorBgNotificationHover: surface.level3_4,
485
- colorBgNotificationSelected: [accent[3], accentDark[4]],
486
- colorBgNotificationSelectedHover: [accent[4], accentDark[6]],
487
- disabledInversedTextColor: [shades.opacity25, lights.opacity25],
488
- success: [teal[9], tealDark[9]],
489
- danger: [red[9], redDark[10]],
490
- active: [red[9], redDark[10]],
491
- warning: [yellow[9], yellowDark[8]],
738
+ colorBgNotificationSelected: notificationSelected,
739
+ colorBgNotificationSelectedHover: notificationSelectedHover,
740
+ disabledInversedTextColor: blackA25,
741
+ success: primary.success,
742
+ danger: primary.destructive,
743
+ active: primary.destructive,
744
+ warning: primary.warning,
492
745
  cardBg: raised.level4,
493
746
  selectedImageBorder: [blackA[8], whiteA[11]],
494
- transparent: [transparent, transparent],
495
- shades: [lights, shades],
496
- lights: [shades, lights],
497
- separators: [separators, inversedSeparators],
498
- progressBg: [base[4], base[4]], // FIXME surface.level4?
499
- progressText: [base[11], base[11]],
500
- progressFillBg: [base[11], base[11]],
501
- progressFillText: [white, white],
747
+ transparent: transparentAlways,
748
+ progressBg: same(base[4]), // TODO check if that could be surface.level4?
749
+ progressText: neutralStrong,
750
+ progressFillBg: neutralStrong,
751
+ progressFillText: whiteColor,
502
752
  progressBarFillNeutral: [alpha(base[9], 0.2), alpha(baseDark[9], 0.2)],
503
753
  progressBarFill: [accent[9], accentDark[10]],
504
754
  progressBarBg: [alpha(accent[9], 0.25), alpha(accentDark[10], 0.25)],
505
- // FIXME: lack of inverse scale usage, same values!
506
- colorPickerSwatchBorder: [blackA[7], blackA[7]],
507
- colorBorderRichTextMedia: [blackA[7], blackA[7]],
755
+ colorPickerSwatchBorder: same(blackA[7]),
756
+ colorBorderRichTextMedia: same(blackA[7]),
508
757
  richTextTableBorder: [blackA[5], whiteA[7]],
509
758
 
510
759
  // Drag and drop
511
- colorBgDropLine: [accent[8], accentDark[8]],
760
+ colorBgDropLine: borderAccentOrMediumAccent,
512
761
 
513
762
  // Views
514
763
  viewBg: surface.level1,
515
764
  viewSecondaryBg: surface.level2,
516
- viewHighlightBg: [accent[3], accentDark[3]],
765
+ viewHighlightBg: viewHighlightBg,
517
766
 
518
767
  // Board
519
768
  boardBg: surface.level1,
@@ -525,20 +774,20 @@ export function makeThemeDefs({
525
774
  gridHeaderHoverBgColor: surface.level3_4,
526
775
  gridHeaderTextColor: [base[10], baseDark[11]],
527
776
  gridCellBgColor: surface.level0elevated,
528
- gridCellBorderColor: [base[5], baseDark[6]],
777
+ gridCellBorderColor: base5_6,
529
778
  gridDisabledCellBgColor: surface.level2_3,
530
- gridSelectedCellBgColor: [accent[3], accentDark[3]],
531
- gridHighlightedCellBgColor: [accent[4], accentDark[5]],
779
+ gridSelectedCellBgColor: viewHighlightBg,
780
+ gridHighlightedCellBgColor: bgCellGridDisabledOrHighlighted,
532
781
  gridSelectedCellBorderColor: [accent[6], accentDark[7]],
533
- gridSelectedPinnedCellBorderColor: [accent[7], accentDark[7]],
534
- gridDisabledSelectedCellBgColor: [accent[4], accentDark[5]],
782
+ gridSelectedPinnedCellBorderColor: borderAccentOrMedium,
783
+ gridDisabledSelectedCellBgColor: bgCellGridDisabledOrHighlighted,
535
784
  gridActiveCellBorderColor: [accent[8], accentDark[9]],
536
785
 
537
786
  //timeline
538
- timelineEntityHandleColor: [accent[7], accentDark[7]],
539
- timelineDependencyHoverBgColor: [accent[8], accentDark[8]],
540
- timelineDependencyOverlapBgColor: [red[9], redDark[9]],
541
- timelineDependencyOverlapHoverBgColor: [red[11], redDark[11]],
787
+ timelineEntityHandleColor: borderAccentOrMedium,
788
+ timelineDependencyHoverBgColor: borderAccentOrMediumAccent,
789
+ timelineDependencyOverlapBgColor: primary.destructive_TODO,
790
+ timelineDependencyOverlapHoverBgColor: fg.destructive,
542
791
  timelineCellBgColor: surface.level1,
543
792
  timelineCellWeekendBgColor: surface.level2,
544
793
  timelineCellTodayBgColor: [accent[4], accentDark[2]],
@@ -546,115 +795,116 @@ export function makeThemeDefs({
546
795
 
547
796
  // #region buttons
548
797
  // solid
549
- colorBgButtonSolidAccentDefault: [accent[9], accentDark[9]],
798
+ colorBgButtonSolidAccentDefault: primary.accent,
550
799
  colorBgButtonSolidAccentHover: [accent[11], accentDark[10]],
551
- colorBgButtonSolidNeutralDefault: [base[12], baseDark[12]],
800
+ colorBgButtonSolidNeutralDefault: fgMenuEtc,
552
801
  colorBgButtonSolidNeutralHover: [alpha(base[12], 0.85), white],
553
- colorBgButtonSolidDestructiveDefault: [red[9], redDark[9]],
802
+ colorBgButtonSolidDestructiveDefault: primary.destructive_TODO,
554
803
  colorBgButtonSolidDestructiveHover: [red[11], redDark[10]],
555
- colorTextButtonSolidAccent: [white, white],
556
- colorTextButtonSolidAccentActive: [alpha(white, 0.8), alpha(white, 0.8)],
804
+ colorTextButtonSolidAccent: whiteColor,
805
+ colorTextButtonSolidAccentActive: fgSolidActiveText,
557
806
  colorTextButtonSolidNeutral: [white, baseDark[2]],
558
807
  colorTextButtonSolidNeutralActive: [white, alpha(baseDark[2], 0.8)],
559
- colorTextButtonSolidDestructive: [white, white],
560
- colorTextButtonSolidDestructiveActive: [alpha(white, 0.8), alpha(white, 0.8)],
561
- colorIconButtonSolidAccent: [white, white],
808
+ colorTextButtonSolidDestructive: whiteColor,
809
+ colorTextButtonSolidDestructiveActive: fgSolidActiveText,
810
+ colorIconButtonSolidAccent: whiteColor,
562
811
  colorIconButtonSolidNeutral: [white, baseDark[8]],
563
- colorIconButtonSolidDestructive: [white, white],
812
+ colorIconButtonSolidDestructive: whiteColor,
564
813
  // outline
565
- colorBorderButtonOutlineAccentDefault: [accent[8], accentDark[8]],
566
- colorBorderButtonOutlineNeutralDefault: [base[8], baseDark[7]],
567
- colorBorderButtonOutlineDestructiveDefault: [red[7], redDark[7]],
814
+ colorBorderButtonOutlineAccentDefault: borderAccentOrMediumAccent,
815
+ colorBorderButtonOutlineNeutralDefault: borderNeutral,
816
+ colorBorderButtonOutlineDestructiveDefault: borderDanger,
568
817
  colorBgButtonOutlineAccentDefault: surface.level0,
569
- colorBgButtonOutlineAccentHover: [accent[3], accentDark[3]],
818
+ colorBgButtonOutlineAccentHover: viewHighlightBg,
570
819
  colorBgButtonOutlineNeutralDefault: surface.level0,
571
820
  colorBgButtonOutlineNeutralHover: surface.level4,
572
821
  colorBgButtonOutlineDestructiveDefault: surface.level0,
573
- colorBgButtonOutlineDestructiveHover: [red[4], redDark[4]],
574
- colorTextButtonOutlineAccent: [accent[11], accentDark[11]],
575
- colorTextButtonOutlineAccentActive: [alpha(accent[11], 0.8), alpha(accentDark[11], 0.8)],
576
- colorTextButtonOutlineNeutral: [base[11], baseDark[11]],
577
- colorTextButtonOutlineNeutralActive: [alpha(base[12], 0.8), alpha(baseDark[12], 0.8)],
578
- colorTextButtonOutlineDestructive: [red[11], redDark[11]],
579
- colorTextButtonOutlineDestructiveActive: [alpha(red[11], 0.8), alpha(redDark[11], 0.8)],
580
- colorIconButtonOutlineAccent: [accent[11], accentDark[11]],
581
- colorIconButtonOutlineNeutral: [base[11], baseDark[11]],
582
- colorIconButtonOutlineDestructive: [red[11], redDark[11]],
822
+ colorBgButtonOutlineDestructiveHover: bgBtnGhostDestructiveHover,
823
+ colorTextButtonOutlineAccent: fg.accent,
824
+ colorTextButtonOutlineAccentActive: fg.accentActive,
825
+ colorTextButtonOutlineNeutral: fg.neutral,
826
+ colorTextButtonOutlineNeutralActive: fg.neutralActive__TODO,
827
+ colorTextButtonOutlineDestructive: fg.destructive,
828
+ colorTextButtonOutlineDestructiveActive: fg.destructiveActive,
829
+ colorIconButtonOutlineAccent: fg.accent,
830
+ colorIconButtonOutlineNeutral: fg.neutral,
831
+ colorIconButtonOutlineDestructive: fg.destructive,
583
832
  // soft
584
- colorBgButtonSoftAccentDefault: [accent[3], accentDark[4]],
585
- colorBgButtonSoftAccentHover: [accent[5], accentDark[6]],
586
- colorBgButtonSoftNeutralDefault: [base[3], baseDark[3]],
587
- colorBgButtonSoftNeutralHover: [base[7], baseDark[7]],
588
- colorBgButtonSoftDestructiveDefault: [red[4], redDark[4]],
589
- colorBgButtonSoftDestructiveHover: [red[6], redDark[6]],
590
- colorTextButtonSoftAccent: [accent[11], accentDark[11]],
591
- colorTextButtonSoftAccentActive: [alpha(accent[11], 0.8), alpha(accentDark[11], 0.8)],
592
- colorTextButtonSoftNeutral: [base[11], baseDark[11]],
593
- colorTextButtonSoftNeutralActive: [alpha(base[11], 0.8), alpha(baseDark[11], 0.8)],
594
- colorTextButtonSoftDestructive: [red[11], redDark[11]],
595
- colorTextButtonSoftDestructiveActive: [alpha(red[11], 0.8), alpha(redDark[11], 0.8)],
596
- colorIconButtonSoftAccent: [accent[11], accentDark[11]],
597
- colorIconButtonSoftNeutral: [base[11], baseDark[11]],
598
- colorIconButtonSoftDestructive: [red[11], redDark[11]],
833
+ colorBgButtonSoftAccentDefault: notificationSelected,
834
+ colorBgButtonSoftAccentHover: bgBtnSoftAccentHover,
835
+ colorBgButtonSoftNeutralDefault: bgBtnSoftNeutralDefault,
836
+ colorBgButtonSoftNeutralHover: bgBtnSoftNeutralHover,
837
+ colorBgButtonSoftDestructiveDefault: bgBtnGhostDestructiveHover,
838
+ colorBgButtonSoftDestructiveHover: bgBtnSoftDestructiveHover,
839
+ colorTextButtonSoftAccent: fg.accent,
840
+ colorTextButtonSoftAccentActive: fg.accentActive,
841
+ colorTextButtonSoftNeutral: fg.neutral,
842
+ colorTextButtonSoftNeutralActive: fg.neutralActive,
843
+ colorTextButtonSoftDestructive: fg.destructive,
844
+ colorTextButtonSoftDestructiveActive: fg.destructiveActive,
845
+ colorIconButtonSoftAccent: fg.accent,
846
+ colorIconButtonSoftNeutral: fg.neutral,
847
+ colorIconButtonSoftDestructive: fg.destructive,
599
848
  // ghost
600
- colorBgButtonGhostAccentDefault: [transparent, transparent],
601
- colorBgButtonGhostAccentHover: [alpha(accent[4], 0.8), alpha(accentDark[4], 0.8)],
602
- colorBgButtonGhostNeutralDefault: [transparent, transparent],
603
- colorBgButtonGhostNeutralHover: [alpha(base[7], 0.5), alpha(baseDark[6], 0.8)],
604
- colorBgButtonGhostDestructiveDefault: [transparent, transparent],
605
- colorBgButtonGhostDestructiveHover: [red[4], redDark[4]],
606
- colorTextButtonGhostAccent: [accent[11], accentDark[11]],
607
- colorTextButtonGhostAccentActive: [alpha(accent[11], 0.8), alpha(accentDark[11], 0.8)],
608
- colorTextButtonGhostNeutral: [base[11], baseDark[11]],
609
- colorTextButtonGhostNeutralActive: [alpha(base[11], 0.8), alpha(baseDark[11], 0.8)],
610
- colorTextButtonGhostDestructive: [red[11], redDark[11]],
611
- colorTextButtonGhostDestructiveActive: [alpha(red[11], 0.8), alpha(redDark[11], 0.8)],
612
- colorIconButtonGhostAccent: [accent[11], accentDark[11]],
613
- colorIconButtonGhostNeutral: [base[11], baseDark[11]],
614
- colorIconButtonGhostDestructive: [red[11], redDark[11]],
849
+ colorBgButtonGhostAccentDefault: transparentAlways,
850
+ colorBgButtonGhostAccentHover: bgBtnGhostAccentHover,
851
+ colorBgButtonGhostNeutralDefault: transparentAlways,
852
+ colorBgButtonGhostNeutralHover: bgBtnGhostNeutralHover,
853
+ colorBgButtonGhostDestructiveDefault: transparentAlways,
854
+ colorBgButtonGhostDestructiveHover: bgBtnGhostDestructiveHover,
855
+ colorTextButtonGhostAccent: fg.accent,
856
+ colorTextButtonGhostAccentActive: fg.accentActive,
857
+ colorTextButtonGhostNeutral: fg.neutral,
858
+ colorTextButtonGhostNeutralActive: fg.neutralActive,
859
+ colorTextButtonGhostDestructive: fg.destructive,
860
+ colorTextButtonGhostDestructiveActive: fg.destructiveActive,
861
+ colorIconButtonGhostAccent: fg.accent,
862
+ colorIconButtonGhostNeutral: fg.neutral,
863
+ colorIconButtonGhostDestructive: fg.destructive,
615
864
  // #endregion
616
865
 
617
- colorBorderAccentFocusRing: [alpha(accent[9], 0.3), alpha(accent[9], 0.3)],
618
- colorBorderNeutralFocusRing: [alpha(base[9], 0.3), alpha(base[9], 0.3)],
619
- colorBorderDestructiveFocusRing: [alpha(red[9], 0.3), alpha(red[9], 0.3)],
866
+ colorBorderAccentFocusRing: borderFocusRingAccent,
867
+ colorBorderNeutralFocusRing: borderFocusRingNeutral,
868
+ colorBorderDestructiveFocusRing: borderFocusRingDestructive,
620
869
 
621
870
  colorBgReactionsDefault: surface.level0elevated,
622
871
  colorBgReactionsHover: surface.level3_6,
623
872
  colorBorderReactionsHover: [base[8], baseDark[9]],
624
873
  colorBgReactionsSelectedDefault: [accent[3], accentDark[8]],
625
- colorBorderReactionsSelectedDefault: [accent[8], accentDark[8]],
874
+ colorBorderReactionsSelectedDefault: borderAccentOrMediumAccent,
626
875
  // FIXME: lack of accentDark scale usage
627
876
  colorBgReactionsSelectedHover: [accent[2], accent[10]],
628
877
  colorBorderReactionsSelectedHover: [accent[9], accent[10]],
629
878
  colorTextReactionsSelected: [accent[10], baseDark[12]],
630
879
  colorBgToastDefault: surface.level1,
631
880
  colorBgDbTabHover: surface.level3_4,
632
- colorBgDbTabFocus: [base[6], baseDark[6]],
633
- colorBgTabHover: [alpha(base[11], 0.1), alpha(baseDark[11], 0.1)],
881
+ colorBgDbTabFocus: bgTabFocus,
882
+ colorBgTabHover: bgTabHover,
634
883
 
635
884
  // Chat
636
- colorBgMessageContainer: [blackA[3], baseDark[6]],
637
- colorBgMessageContainerHover: surface.level2_3,
885
+ colorBgMessageContainer: [base[3], baseDark[3]],
886
+ colorBgMessageContainerHover: [base[4], baseDark[4]],
638
887
  colorBgEntityAvatarDefault: [accent[1], accentDark[1]],
639
- colorBgEntityAvatarHover: [accent[3], accentDark[3]],
640
- colorTextEntityAvatarDefault: [accent[8], accentDark[8]],
641
- colorTextEntityAvatarHover: [accent[9], accentDark[9]],
888
+ colorBgEntityAvatarHover: viewHighlightBg,
889
+ colorTextEntityAvatarDefault: borderAccentOrMediumAccent,
890
+ colorTextEntityAvatarHover: primary.accent,
891
+ colorBgMessageHighlighted: surface.level0elevated,
642
892
 
643
893
  // Text editor
644
894
  colorBgEditorImageZoomed: surface.level3_6,
645
895
  colorMermaidPrimaryColor: [base[2], baseDark[8]],
646
- colorMermaidPrimaryBorderColor: [base[9], baseDark[9]],
896
+ colorMermaidPrimaryBorderColor: fg.muted,
647
897
  colorMermaidLineColor: [base[10], baseDark[9]],
648
898
 
649
899
  //Whiteboard
650
900
  colorBgWhiteboard: surface.level0,
651
- colorGridDotWhiteboard: [base[6], baseDark[6]],
652
- colorSelectionWhiteboardBorderEnabled: [accent[8], accentDark[8]],
653
- colorHighlightWhiteboardSelection: [accent[8], accentDark[8]],
654
- colorHighlightWhiteboardSelectionLocked: [alpha(base[9], 0.5), alpha(baseDark[9], 0.5)],
655
- colorSelectionWhiteboardBorderDisabled: [alpha(base[9], 0.5), alpha(baseDark[9], 0.5)],
901
+ colorGridDotWhiteboard: bgTabFocus,
902
+ colorSelectionWhiteboardBorderEnabled: borderAccentOrMediumAccent,
903
+ colorHighlightWhiteboardSelection: borderAccentOrMediumAccent,
904
+ colorHighlightWhiteboardSelectionLocked: textWhiteboardSelectionLockedOrDisabled,
905
+ colorSelectionWhiteboardBorderDisabled: textWhiteboardSelectionLockedOrDisabled,
656
906
  colorPlaceholderWhiteboardDefault: [alpha(accent[8], 0.2), alpha(accentDark[8], 0.2)],
657
- colorLinkPointWhiteboardDefault: [accent[8], accentDark[8]],
907
+ colorLinkPointWhiteboardDefault: borderAccentOrMediumAccent,
658
908
  colorLinkPointWhiteboardFillDefault: [white, blackish],
659
909
  colorMapWhiteboardPreviewDefault: [alpha(accent[8], 0.4), alpha(accentDark[8], 0.4)],
660
910
  colorCardWhiteboardShadowDefault: [alpha(base[11], 0.05), alpha(baseDark[11], 0.05)],
@@ -664,44 +914,55 @@ export function makeThemeDefs({
664
914
  colorUnitWhiteboardBgDefault: surface.level3_6,
665
915
  colorUnitWhiteboardBorderDefault: [alpha(base[12], 0.2), alpha(baseDark[12], 0.25)],
666
916
  colorSectionWhiteboardBgInactive: surface.level2,
667
- colorSectionWhiteboardBorderInactive: [base[6], baseDark[6]],
917
+ colorSectionWhiteboardBorderInactive: bgTabFocus,
668
918
  colorEmbedWhiteboardEditBorder: [alpha(teal[8], 0.9), alpha(tealDark[8], 0.9)],
669
- colorTextWhiteboardDefault: [base[12], baseDark[12]],
670
- colorTextWhiteboardDisabled: [base[9], baseDark[9]],
919
+ colorTextWhiteboardDefault: fgMenuEtc,
920
+ colorTextWhiteboardDisabled: fg.muted,
921
+ // FIXME bug?
922
+ // Dark uses baseDark[1] (near-black at 60% opacity) as "accent text" on a dark background.
923
+ // This reads as near-invisible dark text on dark bg.
924
+ // Compare with colorUnitHeaderWhiteboardDefault (L772) which correctly uses baseDark[12] for dark.
925
+ // Likely should be baseDark[12] too.
671
926
  colorTextWhiteboardAccent: [alpha(base[12], 0.6), alpha(baseDark[1], 0.6)],
672
- colorTextWhiteboardInversedDefault: [white, white],
927
+ colorTextWhiteboardInversedDefault: whiteColor,
673
928
  instrumentsMenuBg: raised.level2,
674
- instrumentsMenuShadow: [
675
- `0px 0px 1px 0px ${alpha(base[11], 0.2)}, 0px 4px 6px 0px ${alpha(base[11], 0.05)}, 0px 3px 12px 0px ${alpha(
676
- base[11],
677
- 0.1
678
- )}`,
679
- `0px 0px 1px 0px ${baseDark[6]}, 0px 4px 6px 0px ${alpha(baseDark[1], 0.05)}, 0px 3px 12px 0px ${alpha(
680
- baseDark[1],
681
- 0.15
682
- )}`,
683
- ],
929
+ instrumentsMenuShadow: floatingShadows.instrumentsMenu,
684
930
  commentBubbleBg: raised.level4,
685
- commentsPanelShadow: [
686
- `0 0 0 1px ${alpha(base[10], 0.1)}, 0 2px 4px -4px ${alpha(base[10], 0.2)}`,
687
- `0 0 0 1px ${alpha(baseDark[2], 0.1)}, 0 2px 4px -4px ${alpha(baseDark[2], 0.2)}`,
688
- ],
931
+ commentsPanelShadow: floatingShadows.instrumentsMenu,
689
932
  searchFiltersBg: surface.level1_1,
690
- selectedColorBorder: [alpha(base[6], 0.25), alpha(base[6], 0.25)],
933
+ selectedColorBorder: same(alpha(base[6], 0.25)),
691
934
 
692
935
  // SegmentedControl
693
936
  colorBgSegmentedControlDefault: surface.level3_1,
694
937
  colorBgSegmentedControlActive: surface.level1_6,
695
938
  colorBgSegmentedControlHover: surface.level5_4,
696
- colorBorderSegmentedControlDefault: [base[6], baseDark[7]],
939
+ colorBorderSegmentedControlDefault: surface.level6_7,
940
+
941
+ // Banner
942
+ colorBgBannerNeutral: bg.neutral3,
943
+ colorBgBannerPrimary: bg.accent3,
944
+ colorBgBannerWarning: bg.warning,
945
+ colorBgBannerError: bg.error,
946
+ colorBgBannerSuccess: bg.success,
947
+
948
+ colorIconBannerNeutral: icon.primary,
949
+ colorIconBannerAccent: icon.accent,
950
+ colorIconBannerWarning: icon.warning,
951
+ colorIconBannerError: icon.error,
952
+ colorIconBannerSuccess: icon.success,
953
+
954
+ colorTextBannerNeutral: text.primary,
955
+ colorTextBannerAccent: text.accent,
956
+ colorTextBannerWarning: text.warning,
957
+ colorTextBannerError: text.error,
958
+ colorTextBannerSuccess: text.success,
697
959
 
698
960
  // Chargebee info
699
961
  colorBgChargebeeInfoBox: surface.level3_1,
700
962
 
701
963
  // Various found direct palette references
702
- // FIXME: lack of redDark scale usage, same values!
703
- newCommentHorizontalRulerColor: [red[8], red[8]],
704
- colorBgErrorMessage: [red[8], red[8]],
964
+ newCommentHorizontalRulerColor: errorIndicatorColor,
965
+ colorBgErrorMessage: errorIndicatorColor,
705
966
 
706
967
  // Logo/illustration specific colors
707
968
  colorBorderLogoGrid: surface.level4,
@@ -709,27 +970,74 @@ export function makeThemeDefs({
709
970
  colorBorderLogoGridMedium: [alpha(base[4], 0.4), baseDark[4]],
710
971
  colorStrokeLogoDashed: [base[6], baseDark[8]],
711
972
  colorBgLogoCardTransparent: surface.level0elevated,
712
- colorBgLogoCardDark: [base[8], baseDark[8]],
973
+ colorBgLogoCardDark: base8,
713
974
  colorBgLogoCardMedium: surface.level4,
714
975
 
976
+ // Skeleton/loading
977
+ colorBgSkeletonFrom: whiteA5,
978
+ colorBgSkeletonTo: whiteA10,
979
+
980
+ // Inset edge shadows (scroll containers)
981
+ colorShadowInsetEdge: whiteA5,
982
+
983
+ // Shadow border (surface direction for colors-css)
984
+ colorShadowBorder: whiteA10,
985
+
986
+ // Elevation shadows (ink direction)
987
+ colorShadowElevation: blackA10,
988
+ colorShadowOutline: [alpha(black, 0.2), alpha(white, 0.2)],
989
+
990
+ // Placeholder/fallback
991
+ colorPlaceholder: whiteA40,
992
+ colorPlaceholderSubtle: whiteA25,
993
+ colorBgSubtleLight: whiteA5,
994
+ colorStrokeSurface: whiteA100,
995
+
996
+ // Ink-based tokens (contrast direction)
997
+ colorTextMilestone: blackA50,
998
+ colorSpinnerIcon: blackA90,
999
+ colorSpinnerBg: blackA10,
1000
+ colorBgLaneSubtle: blackA5,
1001
+
1002
+ // Opacities (numeric)
1003
+ opacity15: opacities.subtle,
1004
+ opacity20: opacities.faint,
1005
+ opacity25: same(opacity.opacity25.toString()),
1006
+ opacity30: opacities.weak,
1007
+ opacity40: opacities.drag,
1008
+ opacity50: opacities.muted,
1009
+ opacity60: opacities.done,
1010
+ opacity65: opacities.disabled,
1011
+ opacity70: opacities.visible,
1012
+ opacity75: opacities.disabledHoverOrFocus,
1013
+ opacity80: same(opacity.opacity80.toString()),
1014
+ opacity85: same(opacity.opacity85.toString()),
1015
+ opacity90: same(opacity.opacity90.toString()),
1016
+
1017
+ // Gradient overlays (whiteA direction)
1018
+ whiteA10,
1019
+ whiteA40,
1020
+ whiteA100,
1021
+
1022
+ // File hover overlay (always dark scrim for white text readability)
1023
+ colorBgFileOverlay: same(alpha(black, 0.6)),
1024
+
1025
+ // Scroll fade edges
1026
+ colorBgScrollFade: [alpha(white, 0.15), alpha(black, 0.15)],
1027
+
1028
+ // Date picker selected outline
1029
+ colorStrokeSelectedOutline: [alpha(black, 0.75), alpha(white, 0.75)],
1030
+
715
1031
  // Preloader / chrome
716
1032
  scrollbar: [alpha(base[9], 0.5), alpha(baseDark[7], 0.5)],
717
1033
  } as const satisfies ThemeColorsDef;
718
1034
 
1035
+ const adaptive = makeAdaptiveBgFg(white, blackish);
719
1036
  const fns = {
720
- getEnumBackground: {
721
- light: (color: string) => a11yColor(alpha(color, 0.15), white, 1),
722
- dark: (color: string) => a11yColor(alpha(color, 0.3), blackish, 1.3),
723
- },
724
- getAppIconBackground: {
725
- light: (color: string) => a11yColor(alpha(color, 0.15), white, 1),
726
- dark: (color: string) => a11yColor(alpha(color, 0.3), blackish, 1.3),
727
- light2: (color: string) => a11yColor(alpha(color, 0.3), blackish, 1.3),
728
- },
729
- getIconColor: {
730
- light: (color: string) => a11yColor(alpha(color, 0.95), white, 3),
731
- dark: (color: string) => a11yColor(alpha(color, 0.95), blackish, 5),
732
- },
1037
+ deneutralize: {light: deneutralizeL, dark: deneutralizeD},
1038
+ getEnumBackground: {light: adaptive.bg[0], dark: adaptive.bg[1]},
1039
+ getAppIconBackground: {light: adaptive.bg[0], dark: adaptive.bg[1], light2: adaptive.bg[1]},
1040
+ getIconColor: {light: adaptive.fg[0], dark: adaptive.fg[1]},
733
1041
  getLinkedHighlightBackground: {
734
1042
  light: (color: string) => produceColor(color, [(c) => setAlpha(c, 0.3), (c) => setLuminanceChroma(c, 0.6)]),
735
1043
  dark: (color: string) => produceColor(color, [(c) => setAlpha(c, 0.4), (c) => setLuminanceChroma(c, 0.5)]),
@@ -741,20 +1049,10 @@ export function makeThemeDefs({
741
1049
  },
742
1050
  } as const satisfies ThemeFnsDef;
743
1051
 
744
- return {colors, fns} as const;
1052
+ return {key, colors, fns} as const;
745
1053
  }
746
1054
 
747
- export type ThemeDefs = ReturnType<typeof makeThemeDefs>;
748
-
749
- type ThemeFns = {
750
- [K in keyof ThemeDefs["fns"]]: ThemeDefs["fns"][K]["light"];
751
- };
752
-
753
- export function pickFns(fns: ThemeFnsDef, mode: ThemeMode) {
754
- return Object.fromEntries(
755
- Object.entries(fns).map(([key, modeFns]) => [key, modeFns[mode] ?? modeFns.light])
756
- ) as ThemeFns;
757
- }
1055
+ export type ThemeDefs = ReturnType<typeof defsFromPalette>;
758
1056
 
759
1057
  type ThemeDefsColors = ThemeDefs["colors"];
760
1058
 
@@ -762,36 +1060,34 @@ type GetThemeColors<idx extends number> = {
762
1060
  [k in keyof ThemeDefsColors]: ThemeDefsColors[k][idx];
763
1061
  };
764
1062
 
765
- function pickColorsByIndex<I extends 0 | 1>(colors: ThemeDefsColors, idx: I): GetThemeColors<I> {
1063
+ function colorsByIndex<I extends 0 | 1>(colors: ThemeDefsColors, idx: I): GetThemeColors<I> {
766
1064
  type ColorTuple = readonly [unknown, unknown];
767
1065
  return Object.fromEntries(
768
1066
  (Object.entries(colors) as [string, ColorTuple][]).map(([k, v]) => [k, v[idx]])
769
1067
  ) as GetThemeColors<I>;
770
1068
  }
771
1069
 
772
- function pickLightColors(themeDefs: ThemeDefs) {
773
- return pickColorsByIndex(themeDefs.colors, 0);
1070
+ function colorsFromDefs(themeDefs: ThemeDefs, side: ThemeMode) {
1071
+ if (side === "dark") {
1072
+ return colorsByIndex(themeDefs.colors, 1);
1073
+ }
1074
+ if (side === "light2") {
1075
+ return {
1076
+ ...colorsByIndex(themeDefs.colors, 0),
1077
+ mode: "light2",
1078
+ } as const;
1079
+ }
1080
+ return colorsByIndex(themeDefs.colors, 0);
774
1081
  }
775
1082
 
776
- function pickDarkColors(themeDefs: ThemeDefs) {
777
- return pickColorsByIndex(themeDefs.colors, 1);
1083
+ function fnsFromDefs({fns}: {fns: ThemeFnsDef}, side: ThemeMode) {
1084
+ return Object.fromEntries(Object.entries(fns).map(([key, modeFns]) => [key, modeFns[side] ?? modeFns.light])) as {
1085
+ [K in keyof ThemeDefs["fns"]]: ThemeDefs["fns"][K]["light"];
1086
+ };
778
1087
  }
779
-
780
- function pickLight2Colors(themeDefs: ThemeDefs) {
1088
+ export function sideFromDefs(defs: ThemeDefs, side: ThemeMode) {
781
1089
  return {
782
- ...pickLightColors(themeDefs),
783
- mode: "light2",
784
- } as const;
785
- }
786
-
787
- export function pickColors(themeDefs: ThemeDefs, mode: ThemeMode) {
788
- if (mode === "dark") {
789
- return pickDarkColors(themeDefs);
790
- }
791
- if (mode === "light2") {
792
- return pickLight2Colors(themeDefs);
793
- }
794
- return pickLightColors(themeDefs);
1090
+ colors: colorsFromDefs(defs, side),
1091
+ fns: fnsFromDefs(defs, side),
1092
+ };
795
1093
  }
796
-
797
- export type Colors = ReturnType<typeof pickColors>;