@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,40 +1,18 @@
1
- import {ThemeColors} from "../design-system";
2
- import {typedObjectEntries} from "@fibery/helpers/utils/object";
3
1
  import type {Assert, Equals} from "@fibery/helpers/utils/types";
2
+ import {typedObjectEntries} from "@fibery/helpers/utils/object";
3
+ import type {Theme} from "./theme";
4
4
 
5
5
  // eslint-disable-next-line @typescript-eslint/ban-ts-comment
6
6
  // @ts-ignore
7
7
  export const varPrefix = process.env.VAR_THEME_PREFIX || "fibery";
8
8
 
9
- export type ThemeVars = Omit<ThemeColors, "key" | "fns" | "select">;
9
+ export type ThemeVars = Theme["colors"];
10
10
 
11
- export function makeThemeVars(sample: ThemeColors) {
12
- const vars = {} as Record<string, string | {[k: string]: string}>;
11
+ export function varsFromTheme({colors: sample}: Theme) {
12
+ const vars = {} as Record<string, string>;
13
13
  for (const [key, value] of typedObjectEntries(sample)) {
14
- // LINT.IfChange("skipMetaKeys")
15
- if (key === "key" || key === "fns" || key === "select") {
16
- // LINT.ThenChange(["./theme.ts#skipMetaKeys", "./theme.test.ts#skipMetaKeys"])
17
- } else if (key === "opacity") {
18
- vars[key] = Object.fromEntries(
19
- Object.keys(value).map((opacityKey) => [opacityKey, `var(--${varPrefix}-opacity-${opacityKey})`])
20
- );
21
- } else if (key === "shades") {
22
- vars[key] = Object.fromEntries(
23
- Object.keys(value).map((shadeKey) => [shadeKey, `var(--${varPrefix}-shades-${shadeKey})`])
24
- );
25
- } else if (key === "lights") {
26
- vars[key] = Object.fromEntries(
27
- Object.keys(value).map((lightKey) => [lightKey, `var(--${varPrefix}-lights-${lightKey})`])
28
- );
29
- } else if (key === "separators") {
30
- vars[key] = Object.fromEntries(
31
- Object.keys(value).map((separatorKey) => [separatorKey, `var(--${varPrefix}-separator-${separatorKey})`])
32
- );
33
- } else {
34
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
35
- type _ = Assert<Equals<typeof value, string>>;
36
- vars[key] = `var(--${varPrefix}-color-${key})`;
37
- }
14
+ type _ = Assert<Equals<typeof value, string>>;
15
+ vars[key] = `var(--${varPrefix}-color-${key})`;
38
16
  }
39
17
  return vars as ThemeVars;
40
18
  }
@@ -50,3 +28,41 @@ export const layoutVars = {
50
28
  sidebarMenuIconSize: `var(${sidebarMenuIconSizeVar})`,
51
29
  listRowSurfaceFontSize: `var(${listRowSurfaceFontSizeVar})`,
52
30
  };
31
+
32
+ // -- CSS var guard for color-utils fns --
33
+
34
+ const colorVarPrefix = `var(--${varPrefix}-color-`;
35
+ const warned = new Set<string>();
36
+
37
+ function tryResolveFromDOM(value: string): string | undefined {
38
+ if (typeof document === "undefined") {
39
+ return undefined;
40
+ }
41
+ const propName = value.slice(4, -1); // var(--x) → --x
42
+ const resolved = getComputedStyle(document.documentElement).getPropertyValue(propName).trim();
43
+ return resolved || undefined;
44
+ }
45
+
46
+ export function resolveColorArg(value: string, fnName: string): string;
47
+ export function resolveColorArg(value: string | null | undefined, fnName: string): string | null | undefined;
48
+ export function resolveColorArg(value: string | null | undefined, fnName: string): string | null | undefined {
49
+ if (!value?.startsWith("var(")) {
50
+ return value;
51
+ }
52
+
53
+ const resolved = tryResolveFromDOM(value);
54
+
55
+ if (process.env.NODE_ENV !== "production") {
56
+ const cacheKey = `${fnName}\0${value}`;
57
+ if (!warned.has(cacheKey)) {
58
+ warned.add(cacheKey);
59
+ const key =
60
+ value.startsWith(colorVarPrefix) && value.endsWith(")") ? value.slice(colorVarPrefix.length, -1) : undefined;
61
+ const hint = key ? `themeVars.${key} — use theme.colors.${key}` : "CSS variable ref — use an actual color value";
62
+ // oxlint-disable-next-line no-console
63
+ console.warn(`[theme] ${fnName}(): ${hint}`);
64
+ }
65
+ }
66
+
67
+ return resolved ?? value;
68
+ }
@@ -1,7 +1,15 @@
1
- export {opacity, getOpacities, alpha} from "./design-system/alpha";
2
- export {transition, easing, duration, tooltipDelay} from "./design-system/animation";
3
- export {cardTypeColors} from "./design-system/colors";
4
- export {getLinearGradient, getEnumTextColor, dropCursorColor, shadows} from "./design-system/colors-css";
1
+ export type * from "./design-system/types";
2
+ export {opacity, alpha} from "./design-system/alpha";
3
+ export {transition, durations, tooltipDelay, transitionDuration, transitions} from "./design-system/animation";
4
+ export {cardTypeColors, type ThemeDefs} from "./design-system/colors";
5
+ export {
6
+ getLinearGradient,
7
+ getEnumTextColor,
8
+ getBgSwatchBorderColor,
9
+ getBgSwatchFillColor,
10
+ dropCursorColor,
11
+ shadows,
12
+ } from "./design-system/colors-css";
5
13
  export {getDarkenColor, getTextColor, getObjectColorMemoized} from "./design-system/colors-js";
6
14
  export {dateFormat, dateTimeFormat, timeFormat} from "./design-system/date";
7
15
  export {
@@ -14,7 +22,7 @@ export {
14
22
  viewBoxSize,
15
23
  minPanelWidth,
16
24
  } from "./design-system/layout";
17
- export {type ThemeColors, getThemeColors, createInlineStyles, themeVars, type ThemeStyles} from "./design-system/theme";
25
+ export {type Theme, stylesFromTheme, themeFromPalette, themeVars, type Styles} from "./design-system/theme";
18
26
  export {typeSizes, fontSize, fontFamily, fontWeight, lineHeight, textStyles} from "./design-system/typography";
19
27
  export {
20
28
  layoutVars,
package/src/dnd.tsx CHANGED
@@ -16,7 +16,7 @@ const dragHandlerStyle = css`
16
16
  borderRadius: border.radius4,
17
17
  display: "flex",
18
18
  alignItems: "center",
19
- "&:focus-visible": {outline: "none", backgroundColor: themeVars.opacity.opacity15},
19
+ "&:focus-visible": {outline: "none", backgroundColor: themeVars.colorAccentBgMild},
20
20
  }}
21
21
  `;
22
22
 
@@ -24,3 +24,22 @@ export function shouldProcessLinkClick(event: LimitedMouseEvent, target?: string
24
24
  !isModifiedEvent(event) // Ignore clicks with modifier keys
25
25
  );
26
26
  }
27
+
28
+ const isScrollableOverflow = (overflow: string) => overflow === "scroll" || overflow === "auto";
29
+
30
+ function isScrollableElement(element: Element) {
31
+ const computedStyle = window.getComputedStyle(element);
32
+ return (
33
+ isScrollableOverflow(computedStyle.overflow) ||
34
+ isScrollableOverflow(computedStyle.overflowY) ||
35
+ isScrollableOverflow(computedStyle.overflowX)
36
+ );
37
+ }
38
+
39
+ export const findScrollParent = (element: Element | null): Element | null => {
40
+ if (!element) {
41
+ return null;
42
+ }
43
+
44
+ return isScrollableElement(element) || element === document.body ? element : findScrollParent(element.parentElement);
45
+ };
package/src/dot.tsx CHANGED
@@ -1,12 +1,12 @@
1
1
  import {css, CSSProperties, cx} from "@linaria/core";
2
- import {space, themeVars} from "./design-system";
2
+ import {border, space, themeVars} from "./design-system";
3
3
  import {useMemo} from "react";
4
4
 
5
5
  const dotColorVar = "--fibery-dot-color";
6
6
 
7
7
  const dotCss = css`
8
8
  background-color: var(${dotColorVar});
9
- border-radius: 50%;
9
+ border-radius: ${border.radiusFull};
10
10
 
11
11
  &[data-size="small"] {
12
12
  width: ${space.s4}px;
@@ -39,7 +39,7 @@ export const AppIconPicker: React.FC<AppIconPickerProps> = ({
39
39
  display: "block",
40
40
  width: emojiSize,
41
41
  height: emojiSize,
42
- fill: color ? theme.fns.getIconColor(color) : undefined,
42
+ fill: color ? theme.fns.getIconColor(theme.fns.deneutralize(color)) : undefined,
43
43
  }}
44
44
  viewBox="0 0 24 24"
45
45
  >
@@ -57,6 +57,7 @@ export const AppIconPicker: React.FC<AppIconPickerProps> = ({
57
57
  color={color}
58
58
  colors={colors}
59
59
  getHoverColor={getHoverColor}
60
+ getColorOverrideFn={theme.fns.deneutralize}
60
61
  onColorSelect={onColorSelect}
61
62
  searchAutofocus={autoFocus}
62
63
  renderEmoji={renderEmoji}
@@ -19,7 +19,7 @@ type ColorPickerCollapsibleTrigger = {opened: boolean; color?: string};
19
19
 
20
20
  const ColorPickerCollapsibleTrigger: React.FC<ColorPickerCollapsibleTrigger> = ({opened, color}) => {
21
21
  const theme = useTheme();
22
- const iconColor = color ? theme.fns.getIconColor(color) : undefined;
22
+ const iconColor = color ? theme.fns.getIconColor(theme.fns.deneutralize(color)) : undefined;
23
23
 
24
24
  const label = opened ? "Hide color picker" : "Show color picker";
25
25
 
@@ -41,6 +41,7 @@ const collapsibleWrapperCss = css`
41
41
  export type EmojiPickerContentWithColorProps = {
42
42
  color?: string;
43
43
  getHoverColor?: (color: string) => string | undefined;
44
+ getColorOverrideFn?: (color: string) => string;
44
45
  colors?: string[];
45
46
  onColorSelect?: (c: $TSFixMe) => void;
46
47
 
@@ -54,6 +55,7 @@ export const EmojiPickerContentWithColor: React.FC<EmojiPickerContentWithColorPr
54
55
  color,
55
56
  onColorSelect,
56
57
  getHoverColor,
58
+ getColorOverrideFn,
57
59
  searchAutofocus = true,
58
60
  renderEmoji,
59
61
  }) => {
@@ -82,9 +84,10 @@ export const EmojiPickerContentWithColor: React.FC<EmojiPickerContentWithColorPr
82
84
  <div className={colorPickerWrapperCss}>
83
85
  <ColorPicker
84
86
  colors={colors}
85
- getSwatchHoverColor={getHoverColor}
86
- color={color}
87
- onChangeComplete={onColorSelect}
87
+ getSwatchHoverColor={getHoverColor!}
88
+ getColorOverrideFn={getColorOverrideFn}
89
+ color={color!}
90
+ onChangeComplete={onColorSelect!}
88
91
  />
89
92
  </div>
90
93
  </CollapsibleContent>
@@ -1,5 +1,6 @@
1
1
  import {EmojiItem} from "@fibery/emoji-data";
2
2
  import {cardTypeColors} from "../design-system";
3
+ import {useTheme} from "../theme-provider";
3
4
  import {$TSFixMe} from "../tsfixme";
4
5
  import {EmojiPickerContentWithColor} from "./emoji-picker-content-with-color";
5
6
  import {EmojiPickerPreviewFooter} from "./emoji-picker-preview-footer";
@@ -34,6 +35,7 @@ export const EmojiPicker: React.FC<EmojiPickerProps> = ({
34
35
  searchAutofocus,
35
36
  emojiSize = 20,
36
37
  }) => {
38
+ const theme = useTheme();
37
39
  const showFooter = Boolean(onAddCustomEmoji) || showSkinTones;
38
40
 
39
41
  return (
@@ -43,6 +45,7 @@ export const EmojiPicker: React.FC<EmojiPickerProps> = ({
43
45
  color={color}
44
46
  colors={colors}
45
47
  getHoverColor={getHoverColor}
48
+ getColorOverrideFn={theme.fns.deneutralize}
46
49
  onColorSelect={onColorSelect}
47
50
  searchRef={searchRef}
48
51
  searchAutofocus={searchAutofocus}
@@ -11,7 +11,7 @@ import {useState} from "react";
11
11
 
12
12
  const tabNavRootStyle = css`
13
13
  padding: ${space.s4}px ${space.s12}px 0 ${space.s12}px;
14
- box-shadow: inset 0 -1px ${themeVars.shades.opacity5};
14
+ box-shadow: inset 0 -1px ${themeVars.colorShadowInsetEdge};
15
15
  `;
16
16
 
17
17
  type TabKey = "icons" | "emojis";
@@ -8,8 +8,9 @@ import {traceError} from "@fibery/helpers/utils/trace";
8
8
 
9
9
  const emojiWrapperCss = css`
10
10
  color: ${themeVars.textColor};
11
- font-family: "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Segoe UI", "Twemoji Mozilla",
12
- "Noto Color Emoji", "Android Emoji";
11
+ font-family:
12
+ "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Segoe UI", "Twemoji Mozilla", "Noto Color Emoji",
13
+ "Android Emoji";
13
14
  line-height: 1;
14
15
  `;
15
16
  const emojiWrapperSizedCss = css`
@@ -74,7 +74,7 @@ export const FavoritesIcon = ({
74
74
  onClick={onClick}
75
75
  >
76
76
  <IconButton
77
- style={checked ? makeButtonColors(theme.favoritesIconColor, "ghost", theme) : {}}
77
+ style={checked ? makeButtonColors(theme.colors.favoritesIconColor, "ghost", theme) : {}}
78
78
  size={size || "medium"}
79
79
  onClick={handleChange}
80
80
  color="neutral"
@@ -3,6 +3,7 @@ import {css} from "@linaria/core";
3
3
  import {FC, useEffect, useRef} from "react";
4
4
  import {textStyles} from "./design-system";
5
5
  import {useFeatures} from "./features";
6
+ import {useTheme} from "./theme-provider";
6
7
  import {abbreviateName} from "./abbreviate-name";
7
8
 
8
9
  const cyrb53 = (str: string, seed = 0) => {
@@ -58,7 +59,11 @@ interface FibermojiPlaceholderProps {
58
59
 
59
60
  export const FibermojiPlaceholder: FC<FibermojiPlaceholderProps> = ({size, radius = "50%", title}) => {
60
61
  const eyes = useRef<HTMLDivElement>(null);
61
- const [fg, bg] = getColors(title ?? "unknown");
62
+ const theme = useTheme();
63
+ const dn = theme.fns.deneutralize;
64
+ const [rawFg, rawBg] = getColors(title ?? "unknown");
65
+ const fg = dn(rawFg);
66
+ const bg = rawBg.replace(/#[0-9A-Fa-f]{6}/g, (hex) => dn(hex));
62
67
  const mouth = getMouth(title ?? "unknown");
63
68
  const letters = abbreviateName(title).split("");
64
69
 
@@ -0,0 +1,13 @@
1
+ export function addQueryParam<T extends string | null | undefined>(url: T, param: string, value: string) {
2
+ if (!url) {
3
+ return url;
4
+ }
5
+
6
+ const resolved = new URL(url, window.location.href);
7
+ if (resolved.searchParams.has(param)) {
8
+ throw new Error(`url already has param ${param} with value ${resolved.searchParams.get(param)}`);
9
+ }
10
+
11
+ resolved.searchParams.set(param, value);
12
+ return resolved.toString();
13
+ }
@@ -9,6 +9,7 @@ import FileDownload from "../icons/react/FileDownload";
9
9
  import Pencil from "../icons/react/Pencil";
10
10
  import Delete from "../icons/react/Delete";
11
11
  import {UploadFileWithContent} from "./types";
12
+ import {addQueryParam} from "./add-query-param";
12
13
 
13
14
  export function FileMenuItems({
14
15
  file,
@@ -47,7 +48,7 @@ export function FileMenuItems({
47
48
  Download
48
49
  </ActionsMenuItem>
49
50
  ) : (
50
- <a download={file.name} href={`${file.url}?attachment`}>
51
+ <a download={file.name} href={addQueryParam(file.url, "attachment", "true")}>
51
52
  <ActionsMenuItem Icon={FileDownload}>Download</ActionsMenuItem>
52
53
  </a>
53
54
  )}
@@ -1,16 +1,20 @@
1
1
  import {isPhoneApp} from "../use-is-phone";
2
- import {ActionsMenuItem} from "../actions-menu";
2
+ import {ActionsMenuItem, ActionsMenuSeparator, AsyncActionsMenuItem} from "../actions-menu";
3
3
  import RicheditorOpenLink from "../icons/react/RicheditorOpenLink";
4
4
  import FileDownload from "../icons/react/FileDownload";
5
+ import Delete from "../icons/react/Delete";
6
+ import {addQueryParam} from "./add-query-param";
5
7
 
6
8
  export function FilePreviewActions({
7
9
  url,
8
10
  name,
9
11
  onDownloadClick,
12
+ onDeleteClick,
10
13
  }: {
11
14
  url: string;
12
15
  name: string;
13
16
  onDownloadClick?: () => void;
17
+ onDeleteClick?: () => void | Promise<void>;
14
18
  }) {
15
19
  if (isPhoneApp()) {
16
20
  return (
@@ -30,9 +34,17 @@ export function FilePreviewActions({
30
34
  <a href={url} target="_blank" rel="noopener noreferrer">
31
35
  <ActionsMenuItem Icon={RicheditorOpenLink}>Open in new tab</ActionsMenuItem>
32
36
  </a>
33
- <a download={name} href={`${url}?attachment`}>
37
+ <a download={name} href={addQueryParam(url, "attachment", "true")}>
34
38
  <ActionsMenuItem Icon={FileDownload}>Download</ActionsMenuItem>
35
39
  </a>
40
+ {onDeleteClick ? (
41
+ <>
42
+ <ActionsMenuSeparator />
43
+ <AsyncActionsMenuItem Icon={Delete} onSelect={onDeleteClick} dangerous>
44
+ Delete
45
+ </AsyncActionsMenuItem>
46
+ </>
47
+ ) : null}
36
48
  </>
37
49
  );
38
50
  }
package/src/file-item.tsx CHANGED
@@ -26,11 +26,11 @@ const fileItemStyle = css`
26
26
  `;
27
27
 
28
28
  const thumbnailStyle = css`
29
- border: 1px solid ${themeVars.separatorColor};
29
+ border: ${themeVars.borderSolidSeparator};
30
30
  `;
31
31
 
32
32
  const iconOnlyStyle = css`
33
- border: 1px solid ${themeVars.colorBorderButtonOutlineNeutralDefault};
33
+ border: ${themeVars.borderSolidOutlineNeutral};
34
34
  `;
35
35
 
36
36
  const overlayStyle = css`
@@ -104,7 +104,7 @@ export function FileItem(props: FileItemProps) {
104
104
  opacity: 1;
105
105
  background-position: 0 0;
106
106
  color: ${themeVars.whiteColor};
107
- background-color: rgba(0, 0, 0, 0.6);
107
+ background-color: ${themeVars.colorBgFileOverlay};
108
108
  }
109
109
  `,
110
110
  isBackgroundReady &&
@@ -114,7 +114,7 @@ export function FileItem(props: FileItemProps) {
114
114
  opacity: 1;
115
115
  background-position: 0 0;
116
116
  color: ${themeVars.whiteColor};
117
- background-color: rgba(0, 0, 0, 0.6);
117
+ background-color: ${themeVars.colorBgFileOverlay};
118
118
  }
119
119
  `,
120
120
  !isBackgroundReady &&
@@ -250,7 +250,7 @@ export function FileItem(props: FileItemProps) {
250
250
  data={props.data}
251
251
  disabled={props.disabled}
252
252
  actionsButtonStyle={
253
- isBackgroundReady ? makeButtonColors(themeVars.inversedTextColor, "ghost", theme) : undefined
253
+ isBackgroundReady ? makeButtonColors(theme.colors.inversedTextColor, "ghost", theme) : undefined
254
254
  }
255
255
  onDownloadClick={onDownloadClick}
256
256
  onRemoveClick={props.onRemoveClick}
package/src/flags.ts ADDED
@@ -0,0 +1,3 @@
1
+ // FIXME consolidate as common util
2
+ export const isFlagPresent = (flag: string) =>
3
+ globalThis.window && new RegExp(`[?&]${flag}\\b`).test(window.location.search);
@@ -7,7 +7,7 @@ const containerStyle = css`
7
7
  padding: ${space.s8}px;
8
8
  display: flex;
9
9
  align-items: center;
10
- border-bottom: 1px solid ${themeVars.separatorColor};
10
+ border-bottom: ${themeVars.borderSolidSeparator};
11
11
  ${mobileRootSelector} & {
12
12
  padding: ${space.s12}px;
13
13
  min-height: ${space.s60}px;
@@ -28,6 +28,7 @@ export function HeaderLayout({actions, children}: {actions?: ReactNode; children
28
28
  <div className={topGridCompactStyle}>
29
29
  <div
30
30
  className={css`
31
+ min-width: 200px;
31
32
  ${textStyles.heading4}
32
33
  position: relative;
33
34
  ${mobileRootSelector} & {
@@ -37,7 +38,13 @@ export function HeaderLayout({actions, children}: {actions?: ReactNode; children
37
38
  >
38
39
  {children}
39
40
  </div>
40
- <div>{actions}</div>
41
+ <div
42
+ className={css`
43
+ flex-shrink: 0;
44
+ `}
45
+ >
46
+ {actions}
47
+ </div>
41
48
  </div>
42
49
  </div>
43
50
  );
package/src/heat.ts ADDED
@@ -0,0 +1,8 @@
1
+ import {interpolate, type Oklch} from "culori";
2
+
3
+ export function adjustHeat(color: Oklch, amount: number): Oklch {
4
+ const source = color;
5
+ const target = {...source, h: amount < 0 ? 264 : 70};
6
+
7
+ return interpolate([source, target], "oklch")(Math.abs(amount));
8
+ }
@@ -0,0 +1,68 @@
1
+ import {converter, parse} from "culori";
2
+ import {calcContrast} from "apcach";
3
+ import {bgKeyFrom, fgOnBgKeyFrom, highlightColors, highlightHueNames} from "./highlight-colors";
4
+ import {common} from "./palettes/common";
5
+ import {locateThemeBundle} from "./theme-styles";
6
+ import {oklchFrom} from "./color-utils";
7
+
8
+ const highlight = common.highlight;
9
+ const surface = locateThemeBundle(false).defs.colors.panelBg;
10
+ const generated = highlightColors(highlight, surface);
11
+
12
+ function calcLc(fg: string, bg: string) {
13
+ return Math.abs(calcContrast(fg, bg, "apca"));
14
+ }
15
+
16
+ function withBgLc(Lc: number) {
17
+ return highlightColors({...highlight, bg: highlight.bg.map((x) => ({...x, Lc})) as typeof highlight.bg}, surface);
18
+ }
19
+
20
+ describe("highlight-colors", () => {
21
+ it("all values are parseable sRGB colors", () => {
22
+ for (const [, [light, dark]] of Object.entries(generated)) {
23
+ expect(parse(light)).toBeDefined();
24
+ expect(parse(dark)).toBeDefined();
25
+ }
26
+ });
27
+
28
+ const tolerance = 1.5;
29
+ it("fg Lc contrast from bg within ±" + tolerance, () => {
30
+ for (const name of highlightHueNames) {
31
+ const bg = generated[bgKeyFrom(name)];
32
+ const fg = generated[fgOnBgKeyFrom(name)];
33
+ const targetL = highlight.overrides?.[name]?.fg?.[0]?.Lc ?? highlight.fg[0].Lc;
34
+ const targetD = highlight.overrides?.[name]?.fg?.[1]?.Lc ?? highlight.fg[1].Lc;
35
+ expect(calcLc(fg[0], bg[0])).toBeGreaterThan(targetL - tolerance);
36
+ expect(calcLc(fg[0], bg[0])).toBeLessThan(targetL + tolerance);
37
+ expect(calcLc(fg[1], bg[1])).toBeGreaterThan(targetD - tolerance);
38
+ expect(calcLc(fg[1], bg[1])).toBeLessThan(targetD + tolerance);
39
+ }
40
+ });
41
+
42
+ it("light bg colors are distinct per hue (not all white)", () => {
43
+ const lightBgs = highlightHueNames.map((n) => generated[bgKeyFrom(n)][0]);
44
+ const unique = new Set(lightBgs);
45
+ expect(unique.size).toBeGreaterThan(1);
46
+ for (const bg of lightBgs) {
47
+ expect(bg).not.toBe("#ffffff");
48
+ expect(bg).not.toBe("rgb(255, 255, 255)");
49
+ }
50
+ });
51
+
52
+ it("bridge is continuous at Lc=8 boundary", () => {
53
+ const below = withBgLc(7.9);
54
+ const above = withBgLc(8.1);
55
+ for (const name of highlightHueNames) {
56
+ const bgBelow = oklchFrom(parse(below[bgKeyFrom(name)][0])!);
57
+ const bgAbove = oklchFrom(parse(above[bgKeyFrom(name)][0])!);
58
+ expect(Math.abs((bgBelow?.l ?? 0) - (bgAbove?.l ?? 0))).toBeLessThan(0.01);
59
+ }
60
+ });
61
+
62
+ it("grey bg is near-neutral (c < 0.025)", () => {
63
+ const lightBg = converter("oklch")(parse(generated.highlightBgGrey[0])!);
64
+ const darkBg = converter("oklch")(parse(generated.highlightBgGrey[1])!);
65
+ expect(lightBg?.c).toBeLessThan(0.025);
66
+ expect(darkBg?.c).toBeLessThan(0.025);
67
+ });
68
+ });
@@ -0,0 +1,91 @@
1
+ import {apcach, crToBg} from "apcach";
2
+ import {clampChroma, formatRgb} from "culori";
3
+ import {oklchFrom} from "./color-utils";
4
+ import type {Def, HighlightDefs, HighlightHueName, HighlightHueNameCap, ModeDef} from "./design-system/types";
5
+
6
+ function pairFrom<T>(def: ModeDef<T>, mapper: (_: T, idx: number) => string) {
7
+ return def.map(mapper) as Def;
8
+ }
9
+
10
+ function merge<T>(base: ModeDef<T>, override?: ModeDef<Partial<T>>): ModeDef<T> {
11
+ return override ? (override.map((o, i) => ({...base[i], ...o})) as ModeDef<T>) : base;
12
+ }
13
+
14
+ const LC_BRIDGE = 8;
15
+
16
+ function strictOklch(L: number, c: number, hue: number) {
17
+ return formatRgb(clampChroma({mode: "oklch", l: L, c, h: hue}, "oklch", "rgb"));
18
+ }
19
+
20
+ function colorFromLc(surfaceColor: string, Lc: number, c: number, hue: number, referenceC?: number) {
21
+ const lcChroma = referenceC !== undefined && c < referenceC ? referenceC : c;
22
+ return strictOklch(colorLightnessFromLc(surfaceColor, Lc, lcChroma, hue), c, hue);
23
+ }
24
+
25
+ function colorLightnessFromLc(surfaceColor: string, Lc: number, c: number, hue: number) {
26
+ if (Lc >= LC_BRIDGE) {
27
+ return apcach(crToBg(surfaceColor, Lc), c, hue, 100, "srgb").lightness;
28
+ }
29
+ const surfaceL = oklchFrom(surfaceColor)?.l ?? 0;
30
+ if (Lc <= 0) {
31
+ return surfaceL;
32
+ }
33
+ const atBridge = apcach(crToBg(surfaceColor, LC_BRIDGE), c, hue, 100, "srgb").lightness;
34
+ return surfaceL + (atBridge - surfaceL) * (Lc / LC_BRIDGE);
35
+ }
36
+
37
+ const capitalize = (s: string) => s[0].toUpperCase() + s.slice(1);
38
+
39
+ type Colors = Record<`highlightFgOnBg${HighlightHueNameCap}`, Def> &
40
+ Record<`highlightBg${HighlightHueNameCap}`, Def> &
41
+ Record<`highlightFg${HighlightHueNameCap}`, Def>;
42
+ type Key = keyof Colors;
43
+
44
+ export function bgKeyFrom(hueName: HighlightHueName) {
45
+ return `highlightBg${capitalize(hueName)}` as Key;
46
+ }
47
+
48
+ export function fgOnBgKeyFrom(hueName: HighlightHueName) {
49
+ return `highlightFgOnBg${capitalize(hueName)}` as Key;
50
+ }
51
+
52
+ export function fgKeyFrom(hueName: HighlightHueName) {
53
+ return `highlightFg${capitalize(hueName)}` as Key;
54
+ }
55
+
56
+ export const highlightHueNames: HighlightHueName[] = [
57
+ "yellow",
58
+ "green",
59
+ "aquamarine",
60
+ "aqua",
61
+ "blue",
62
+ "purple",
63
+ "pink",
64
+ "red",
65
+ "grey",
66
+ ];
67
+
68
+ export function highlightColors({bg, fg, hues, overrides}: HighlightDefs, surface: Def) {
69
+ const defs: Partial<Colors> = {};
70
+
71
+ for (const hueName of highlightHueNames) {
72
+ const hue = hues[hueName];
73
+ const ov = overrides?.[hueName];
74
+ const mergedBg = merge(bg, ov?.bg);
75
+ const bgs = pairFrom(mergedBg, (b, i) => {
76
+ return colorFromLc(surface[i], b.Lc, b.c, hue, bg[i].c);
77
+ });
78
+ defs[bgKeyFrom(hueName)] = bgs;
79
+
80
+ const mergedFg = merge(fg, ov?.fg);
81
+ defs[fgKeyFrom(hueName)] = pairFrom(mergedFg, (fg, i) => {
82
+ return colorFromLc(surface[i], fg.Lc, fg.c, hue);
83
+ });
84
+
85
+ defs[fgOnBgKeyFrom(hueName)] = pairFrom(mergedFg, (fg, i) => {
86
+ return colorFromLc(bgs[i], fg.Lc, fg.c, hue);
87
+ });
88
+ }
89
+
90
+ return defs as Colors;
91
+ }
@@ -127,7 +127,7 @@ const htmlStyles = {
127
127
  paddingBottom: 0,
128
128
  paddingLeft: space.s12,
129
129
  paddingRight: space.s12,
130
- borderLeft: `${space.s3}px solid ${themeVars.colorBorderBlockQuote}`,
130
+ borderLeft: themeVars.borderBlockQuote,
131
131
  "& p": {
132
132
  fontSize: typeSizes[3],
133
133
  },
@@ -336,7 +336,7 @@ const smallHtmlStyles = {
336
336
  paddingBottom: 0,
337
337
  paddingLeft: space.s10,
338
338
  paddingRight: space.s10,
339
- borderLeft: `3px solid ${themeVars.colorBorderBlockQuote}`,
339
+ borderLeft: themeVars.borderBlockQuote,
340
340
  "& p": {
341
341
  fontSize: typeSizes[4],
342
342
  },
@@ -528,7 +528,7 @@ const chatHtmlStyles = {
528
528
  paddingBottom: 0,
529
529
  paddingLeft: space.s10,
530
530
  paddingRight: space.s10,
531
- borderLeft: `3px solid ${themeVars.colorBorderBlockQuote}`,
531
+ borderLeft: themeVars.borderBlockQuote,
532
532
  "& p": {
533
533
  fontSize: typeSizes[4],
534
534
  },