@fibery/ui-kit 2.0.0 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1116) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/{eslint.config.mjs → esfint.config.mjs} +1 -1
  3. package/jest.config.cjs +36 -0
  4. package/package.json +17 -54
  5. package/scripts/generate-icons.mjs +42 -34
  6. package/src/@types/css.d.ts +1 -0
  7. package/src/a11y-color.test.ts +62 -55
  8. package/src/a11y-color.ts +40 -37
  9. package/src/actions-menu/actions-menu-checkbox-item.tsx +74 -0
  10. package/src/actions-menu/actions-menu-item.tsx +1 -1
  11. package/src/actions-menu/actions-menu.tsx +3 -3
  12. package/src/actions-menu/contexts/actions-menu-context.tsx +1 -0
  13. package/src/actions-menu/index.tsx +1 -0
  14. package/src/ai/model.tsx +1 -1
  15. package/src/ai/temperature.tsx +1 -1
  16. package/src/animated-height-container.tsx +2 -2
  17. package/src/animated-number.tsx +2 -2
  18. package/src/antd/AutoComplete.d.ts +1 -0
  19. package/src/antd/{AutoComplete.js → AutoComplete.ts} +1 -1
  20. package/src/antd/Tabs.js +2 -2
  21. package/src/antd/ant-upload.tsx +4 -4
  22. package/src/antd/input-number.tsx +2 -2
  23. package/src/antd/input.tsx +2 -2
  24. package/src/antd/styles.ts +8 -8
  25. package/src/antd/utils.tsx +12 -23
  26. package/src/app-icon-with-fallback.tsx +32 -9
  27. package/src/app-icon.tsx +21 -8
  28. package/src/appIcons.json +1227 -1227
  29. package/src/avatar.tsx +50 -8
  30. package/src/axis-header.tsx +2 -2
  31. package/src/banner/banner-action.tsx +23 -0
  32. package/src/banner/banner-context.tsx +4 -0
  33. package/src/banner/banner-variant.ts +1 -0
  34. package/src/banner/banner.tsx +101 -0
  35. package/src/box.tsx +13 -18
  36. package/src/breadcrumb.tsx +14 -11
  37. package/src/button/base-button.tsx +2 -2
  38. package/src/button/make-button-colors.ts +14 -14
  39. package/src/canvas-colors.ts +133 -0
  40. package/src/card-container.tsx +1 -1
  41. package/src/checkbox-multi-select.tsx +4 -4
  42. package/src/checkbox.tsx +23 -11
  43. package/src/collapsible-section.tsx +1 -1
  44. package/src/color-filter.test.ts +155 -0
  45. package/src/color-filter.ts +156 -0
  46. package/src/color-picker/ColorPickerOrLoader.js +1 -1
  47. package/src/color-picker/{SliderPointer.js → SliderPointer.tsx} +3 -2
  48. package/src/color-picker/index.js +7 -4
  49. package/src/color-picker/swatch.tsx +5 -4
  50. package/src/color-utils.test.ts +246 -116
  51. package/src/color-utils.ts +156 -144
  52. package/src/command-menu/index.tsx +1 -1
  53. package/src/context-menu/index.tsx +4 -0
  54. package/src/date-picker/autocomplete.tsx +1 -0
  55. package/src/date-picker/date-range-picker-popup-content.tsx +1 -1
  56. package/src/date-picker/date-range-picker.tsx +2 -2
  57. package/src/date-picker/fake-date-input.tsx +10 -4
  58. package/src/date-picker/relative-date-picker.tsx +35 -3
  59. package/src/date-picker/single-date-picker.tsx +23 -12
  60. package/src/date-picker/styles.ts +12 -12
  61. package/src/date-picker/types.ts +2 -0
  62. package/src/design-system/alpha.ts +6 -12
  63. package/src/design-system/animation.ts +24 -5
  64. package/src/design-system/colors-css.test.ts +1 -9
  65. package/src/design-system/colors-css.ts +5 -5
  66. package/src/design-system/colors-js.test.ts +167 -153
  67. package/src/design-system/colors-js.ts +30 -85
  68. package/src/design-system/colors.test.ts +5 -5
  69. package/src/design-system/colors.ts +896 -540
  70. package/src/design-system/layout.ts +2 -1
  71. package/src/design-system/theme.test.ts +13 -68
  72. package/src/design-system/theme.ts +24 -73
  73. package/src/design-system/vars.test.ts +64 -1677
  74. package/src/design-system/vars.ts +43 -29
  75. package/src/design-system.ts +4 -4
  76. package/src/dnd.tsx +1 -1
  77. package/src/{utils-dom.ts → dom-utils.ts} +19 -0
  78. package/src/dot.tsx +2 -2
  79. package/src/dropdown-menu/index.tsx +4 -0
  80. package/src/emoji-picker/app-icon-picker.tsx +2 -1
  81. package/src/emoji-picker/emoji-picker-content-with-color.tsx +4 -1
  82. package/src/emoji-picker/emoji-picker.tsx +3 -0
  83. package/src/emoji-picker/icon-emoji-picker.tsx +1 -1
  84. package/src/emoji-picker/primitives/emoji.tsx +15 -2
  85. package/src/emoji-picker/primitives/grid.tsx +100 -104
  86. package/src/emoji.tsx +1 -0
  87. package/src/favorites-icon.tsx +1 -1
  88. package/src/fibermoji-placeholder.tsx +6 -1
  89. package/src/file-item/add-query-param.ts +13 -0
  90. package/src/file-item/file-menu-items.tsx +2 -1
  91. package/src/file-item/file-preview-actions.tsx +14 -2
  92. package/src/file-item.tsx +308 -265
  93. package/src/flags.ts +3 -0
  94. package/src/header-layout.tsx +9 -2
  95. package/src/html-styles.ts +3 -3
  96. package/src/hue-shift.test.ts +17 -4
  97. package/src/icons/Icon.tsx +5 -2
  98. package/src/icons/ast/Abort.ts +8 -4
  99. package/src/icons/ast/AccessTemplate.ts +8 -4
  100. package/src/icons/ast/Activity.ts +8 -4
  101. package/src/icons/ast/ActivityFilled.ts +8 -4
  102. package/src/icons/ast/ActivityLog.ts +8 -4
  103. package/src/icons/ast/Add.ts +8 -4
  104. package/src/icons/ast/AddAfter.ts +8 -4
  105. package/src/icons/ast/AddBefore.ts +8 -4
  106. package/src/icons/ast/AddCompact.ts +8 -4
  107. package/src/icons/ast/AddDatabase.ts +8 -4
  108. package/src/icons/ast/AddGroup.ts +8 -4
  109. package/src/icons/ast/AddIntegration.ts +8 -4
  110. package/src/icons/ast/AddReactions.ts +8 -4
  111. package/src/icons/ast/AiAssistant.ts +8 -4
  112. package/src/icons/ast/AiAssistantFilled.ts +8 -4
  113. package/src/icons/ast/AiAvatar.ts +8 -4
  114. package/src/icons/ast/AiFiberyBuild.ts +8 -4
  115. package/src/icons/ast/AiSearch.ts +8 -4
  116. package/src/icons/ast/AlertTriangle.ts +8 -4
  117. package/src/icons/ast/Anthropic.ts +8 -4
  118. package/src/icons/ast/App.ts +8 -4
  119. package/src/icons/ast/AppDetails.ts +8 -4
  120. package/src/icons/ast/AppStore.ts +8 -4
  121. package/src/icons/ast/AppStoreOneColor.ts +8 -4
  122. package/src/icons/ast/AppTemplates.ts +8 -4
  123. package/src/icons/ast/AppWebhooks.ts +8 -4
  124. package/src/icons/ast/AppWiki.ts +8 -4
  125. package/src/icons/ast/AppearanceAuto.ts +8 -4
  126. package/src/icons/ast/AppearanceDark.ts +8 -4
  127. package/src/icons/ast/AppearanceLight.ts +8 -4
  128. package/src/icons/ast/Apple.ts +8 -4
  129. package/src/icons/ast/ArrowBarDown.ts +12 -0
  130. package/src/icons/ast/ArrowBarLeft.ts +8 -4
  131. package/src/icons/ast/ArrowBarRight.ts +8 -4
  132. package/src/icons/ast/ArrowBarUp.ts +12 -0
  133. package/src/icons/ast/ArrowBottom.ts +8 -4
  134. package/src/icons/ast/ArrowCollapse.ts +8 -4
  135. package/src/icons/ast/ArrowCollapseVertical.ts +8 -4
  136. package/src/icons/ast/ArrowForward.ts +8 -4
  137. package/src/icons/ast/ArrowLeft.ts +8 -4
  138. package/src/icons/ast/ArrowRight.ts +8 -4
  139. package/src/icons/ast/ArrowTop.ts +8 -4
  140. package/src/icons/ast/ArrowUpCircle.ts +8 -4
  141. package/src/icons/ast/ArrowsRightLeft.ts +8 -4
  142. package/src/icons/ast/AskForInput.ts +8 -4
  143. package/src/icons/ast/Asterisk.ts +8 -4
  144. package/src/icons/ast/Atom.ts +8 -4
  145. package/src/icons/ast/AutomationsCancelled.ts +8 -4
  146. package/src/icons/ast/AutomationsDisabled.ts +8 -4
  147. package/src/icons/ast/AutomationsError.ts +8 -4
  148. package/src/icons/ast/AutomationsInProgress.ts +8 -4
  149. package/src/icons/ast/AutomationsNotStarted.ts +8 -4
  150. package/src/icons/ast/AutomationsSuccess.ts +8 -4
  151. package/src/icons/ast/Back.ts +8 -4
  152. package/src/icons/ast/BacklogIcon.ts +8 -4
  153. package/src/icons/ast/BatchActionsIcon.ts +8 -4
  154. package/src/icons/ast/BellCircle.ts +8 -4
  155. package/src/icons/ast/BellFilled.ts +8 -4
  156. package/src/icons/ast/BellOff.ts +8 -4
  157. package/src/icons/ast/BellRinging.ts +8 -4
  158. package/src/icons/ast/BellX.ts +8 -4
  159. package/src/icons/ast/Bolt.ts +8 -4
  160. package/src/icons/ast/BringForward.ts +8 -4
  161. package/src/icons/ast/BringToFront.ts +8 -4
  162. package/src/icons/ast/Cards.ts +8 -4
  163. package/src/icons/ast/Chat.ts +8 -4
  164. package/src/icons/ast/ChatAi.ts +8 -4
  165. package/src/icons/ast/ChatBubble.ts +8 -4
  166. package/src/icons/ast/ChatFloat.ts +8 -4
  167. package/src/icons/ast/ChatSidebar.ts +8 -4
  168. package/src/icons/ast/CheckCircle.ts +8 -4
  169. package/src/icons/ast/CheckCircleFilled.ts +8 -4
  170. package/src/icons/ast/Checked.ts +8 -4
  171. package/src/icons/ast/Clean.ts +8 -4
  172. package/src/icons/ast/Clear.ts +8 -4
  173. package/src/icons/ast/ClearInputFilled.ts +8 -4
  174. package/src/icons/ast/ClearValue.ts +8 -4
  175. package/src/icons/ast/Clock.ts +8 -4
  176. package/src/icons/ast/ClockAlarm.ts +8 -4
  177. package/src/icons/ast/ClockForward.ts +8 -4
  178. package/src/icons/ast/Close.ts +8 -4
  179. package/src/icons/ast/CollapseAll.ts +8 -4
  180. package/src/icons/ast/CollapseAllHorizontal.ts +8 -4
  181. package/src/icons/ast/ColorCoding.ts +8 -4
  182. package/src/icons/ast/ColorCodingFilled.ts +8 -4
  183. package/src/icons/ast/Columns.ts +8 -4
  184. package/src/icons/ast/Columns2.ts +8 -4
  185. package/src/icons/ast/Columns4.ts +8 -4
  186. package/src/icons/ast/CommentBubble.ts +8 -4
  187. package/src/icons/ast/Copy.ts +8 -4
  188. package/src/icons/ast/Create.ts +8 -4
  189. package/src/icons/ast/CreditsFilled.ts +8 -4
  190. package/src/icons/ast/CrossCircle.ts +8 -4
  191. package/src/icons/ast/Crosshair.ts +8 -4
  192. package/src/icons/ast/Csv.ts +8 -4
  193. package/src/icons/ast/Database.ts +8 -4
  194. package/src/icons/ast/DatabaseOff.ts +8 -4
  195. package/src/icons/ast/DatabaseStroke.ts +8 -4
  196. package/src/icons/ast/DateRange.ts +8 -4
  197. package/src/icons/ast/Delete.ts +8 -4
  198. package/src/icons/ast/Demo.ts +8 -4
  199. package/src/icons/ast/Dependency.ts +8 -4
  200. package/src/icons/ast/Dividers.ts +8 -4
  201. package/src/icons/ast/Document.ts +8 -4
  202. package/src/icons/ast/DoubleArrowLeft.ts +8 -4
  203. package/src/icons/ast/DoubleArrowRight.ts +8 -4
  204. package/src/icons/ast/DoubleLine.ts +8 -4
  205. package/src/icons/ast/DragBlockHandle.ts +8 -4
  206. package/src/icons/ast/DragBlockHandleSingle.ts +8 -4
  207. package/src/icons/ast/DragHandle.ts +8 -4
  208. package/src/icons/ast/Duplicate.ts +8 -4
  209. package/src/icons/ast/DynamicFilterValue.ts +8 -4
  210. package/src/icons/ast/EditValue.ts +8 -4
  211. package/src/icons/ast/Email.ts +8 -4
  212. package/src/icons/ast/EmojiDelete.ts +8 -4
  213. package/src/icons/ast/EntityCreate.ts +8 -4
  214. package/src/icons/ast/EntityCreateFilled.ts +8 -4
  215. package/src/icons/ast/EntityMerge.ts +8 -4
  216. package/src/icons/ast/Equation.ts +8 -4
  217. package/src/icons/ast/ExpandAll.ts +8 -4
  218. package/src/icons/ast/ExpandAllHorizontal.ts +8 -4
  219. package/src/icons/ast/Export.ts +8 -4
  220. package/src/icons/ast/ExtensionAssignments.ts +8 -4
  221. package/src/icons/ast/ExtensionAvatar.ts +8 -4
  222. package/src/icons/ast/ExtensionComments.ts +8 -4
  223. package/src/icons/ast/ExtensionFiles.ts +8 -4
  224. package/src/icons/ast/ExtensionReferences.ts +8 -4
  225. package/src/icons/ast/ExtensionWorkflow.ts +8 -4
  226. package/src/icons/ast/Eye.ts +8 -4
  227. package/src/icons/ast/Favorites.ts +8 -4
  228. package/src/icons/ast/FavoritesChecked.ts +8 -4
  229. package/src/icons/ast/FavoritesOff.ts +8 -4
  230. package/src/icons/ast/FiberyDesktopApp.ts +8 -4
  231. package/src/icons/ast/FiberyMono.ts +8 -4
  232. package/src/icons/ast/FieldUnit.ts +8 -4
  233. package/src/icons/ast/Fields.ts +8 -4
  234. package/src/icons/ast/Figma.ts +8 -4
  235. package/src/icons/ast/FileArchive.ts +8 -4
  236. package/src/icons/ast/FileBroken.ts +8 -4
  237. package/src/icons/ast/FileCounter.ts +8 -4
  238. package/src/icons/ast/FileDocument.ts +8 -4
  239. package/src/icons/ast/FileDownload.ts +8 -4
  240. package/src/icons/ast/FileImage.ts +8 -4
  241. package/src/icons/ast/FileMultiple.ts +8 -4
  242. package/src/icons/ast/FileOther.ts +8 -4
  243. package/src/icons/ast/FilePresentation.ts +8 -4
  244. package/src/icons/ast/FileTable.ts +8 -4
  245. package/src/icons/ast/FileUpload.ts +8 -4
  246. package/src/icons/ast/FileVideo.ts +8 -4
  247. package/src/icons/ast/Filter.ts +8 -4
  248. package/src/icons/ast/FitToScreen.ts +8 -4
  249. package/src/icons/ast/FocusMode.ts +8 -4
  250. package/src/icons/ast/FocusModeOff.ts +8 -4
  251. package/src/icons/ast/Folder.ts +8 -4
  252. package/src/icons/ast/FolderFavorite.ts +12 -0
  253. package/src/icons/ast/FormWithCover.ts +8 -4
  254. package/src/icons/ast/FormWithoutCover.ts +8 -4
  255. package/src/icons/ast/FullscreenModeOffIcon.ts +8 -4
  256. package/src/icons/ast/FullscreenModeOn.ts +8 -4
  257. package/src/icons/ast/FullscreenModeOnIcon.ts +8 -4
  258. package/src/icons/ast/Gift.ts +8 -4
  259. package/src/icons/ast/Github.ts +8 -4
  260. package/src/icons/ast/Gitlab.ts +8 -4
  261. package/src/icons/ast/Globe.ts +8 -4
  262. package/src/icons/ast/GlobeSimple.ts +8 -4
  263. package/src/icons/ast/GlobeUnpublish.ts +8 -4
  264. package/src/icons/ast/GoTo.ts +8 -4
  265. package/src/icons/ast/GoogleDrive.ts +8 -4
  266. package/src/icons/ast/GoogleMap.ts +8 -4
  267. package/src/icons/ast/GraduationCapFilled.ts +8 -4
  268. package/src/icons/ast/Headphones.ts +8 -4
  269. package/src/icons/ast/HeadphonesAi.ts +8 -4
  270. package/src/icons/ast/Hide.ts +8 -4
  271. package/src/icons/ast/Highlights.ts +8 -4
  272. package/src/icons/ast/Hint.ts +8 -4
  273. package/src/icons/ast/Home.ts +8 -4
  274. package/src/icons/ast/HomeFilled.ts +8 -4
  275. package/src/icons/ast/ImageXmark.ts +8 -4
  276. package/src/icons/ast/Import.ts +8 -4
  277. package/src/icons/ast/ImportFilled.ts +8 -4
  278. package/src/icons/ast/InfoCircle.ts +8 -4
  279. package/src/icons/ast/InfoCircleFilled.ts +8 -4
  280. package/src/icons/ast/Integration.ts +8 -4
  281. package/src/icons/ast/IntegrationsFilled.ts +8 -4
  282. package/src/icons/ast/IntegrationsIntegrationDiscourseColor.ts +8 -4
  283. package/src/icons/ast/IntegrationsIntegrationIntercomColor.ts +8 -4
  284. package/src/icons/ast/IntegrationsIntegrationSlackColor.ts +8 -4
  285. package/src/icons/ast/IntegrationsIntegrationZendeskColor.ts +8 -4
  286. package/src/icons/ast/Intercom.ts +12 -0
  287. package/src/icons/ast/InvitePeople.ts +8 -4
  288. package/src/icons/ast/Items.ts +8 -4
  289. package/src/icons/ast/ItemsTimeline.ts +8 -4
  290. package/src/icons/ast/Jira.ts +8 -4
  291. package/src/icons/ast/Key.ts +8 -4
  292. package/src/icons/ast/KeyboardHideDown.ts +8 -4
  293. package/src/icons/ast/Lab.ts +8 -4
  294. package/src/icons/ast/LayoutDouble.ts +8 -4
  295. package/src/icons/ast/LayoutMultiple.ts +8 -4
  296. package/src/icons/ast/LayoutSingle.ts +8 -4
  297. package/src/icons/ast/LeftPanel.ts +8 -4
  298. package/src/icons/ast/LevelPlus.ts +8 -4
  299. package/src/icons/ast/Levels.ts +8 -4
  300. package/src/icons/ast/LineDivider.ts +8 -4
  301. package/src/icons/ast/LineJump.ts +8 -4
  302. package/src/icons/ast/Link.ts +8 -4
  303. package/src/icons/ast/LocationEdit.ts +8 -4
  304. package/src/icons/ast/Lock.ts +8 -4
  305. package/src/icons/ast/LockOutline.ts +8 -4
  306. package/src/icons/ast/Logout.ts +8 -4
  307. package/src/icons/ast/Loom.ts +8 -4
  308. package/src/icons/ast/LoupeZoom.ts +8 -4
  309. package/src/icons/ast/LoupeZoomIn.ts +8 -4
  310. package/src/icons/ast/LoupeZoomOut.ts +8 -4
  311. package/src/icons/ast/ManyPeople.ts +8 -4
  312. package/src/icons/ast/MapMode.ts +8 -4
  313. package/src/icons/ast/Markdown.ts +8 -4
  314. package/src/icons/ast/MenuCollapser.ts +8 -4
  315. package/src/icons/ast/Mermaid.ts +8 -4
  316. package/src/icons/ast/MessagePlus.ts +8 -4
  317. package/src/icons/ast/MessagePlusSquare.ts +8 -4
  318. package/src/icons/ast/Milestones.ts +8 -4
  319. package/src/icons/ast/Minus.ts +8 -4
  320. package/src/icons/ast/Miro.ts +8 -4
  321. package/src/icons/ast/MirrorOff.ts +8 -4
  322. package/src/icons/ast/MirrorOn.ts +8 -4
  323. package/src/icons/ast/Mixpanel.ts +8 -4
  324. package/src/icons/ast/Monitor.ts +8 -4
  325. package/src/icons/ast/More.ts +8 -4
  326. package/src/icons/ast/MoreCompact.ts +8 -4
  327. package/src/icons/ast/MoveBottom.ts +8 -4
  328. package/src/icons/ast/MoveLeft.ts +8 -4
  329. package/src/icons/ast/MoveRight.ts +8 -4
  330. package/src/icons/ast/MoveSpace.ts +8 -4
  331. package/src/icons/ast/MoveTop.ts +8 -4
  332. package/src/icons/ast/Network.ts +8 -4
  333. package/src/icons/ast/NetworkAdd.ts +8 -4
  334. package/src/icons/ast/NoBorder.ts +8 -4
  335. package/src/icons/ast/NoFill.ts +8 -4
  336. package/src/icons/ast/Notifications.ts +8 -4
  337. package/src/icons/ast/ObjChild.ts +8 -4
  338. package/src/icons/ast/ObjM2M.ts +8 -4
  339. package/src/icons/ast/ObjO2O.ts +8 -4
  340. package/src/icons/ast/ObjParent.ts +8 -4
  341. package/src/icons/ast/ObjSelf.ts +8 -4
  342. package/src/icons/ast/OnSchedule.ts +8 -4
  343. package/src/icons/ast/OpenAi.ts +8 -4
  344. package/src/icons/ast/OpenAsPage.ts +8 -4
  345. package/src/icons/ast/PageRegularMode.ts +8 -4
  346. package/src/icons/ast/PageWideMode.ts +8 -4
  347. package/src/icons/ast/PanelAdd.ts +8 -4
  348. package/src/icons/ast/Pencil.ts +8 -4
  349. package/src/icons/ast/People.ts +8 -4
  350. package/src/icons/ast/PeopleCheck.ts +8 -4
  351. package/src/icons/ast/Photo.ts +8 -4
  352. package/src/icons/ast/Pin.ts +8 -4
  353. package/src/icons/ast/PinFilled.ts +8 -4
  354. package/src/icons/ast/Popup.ts +8 -4
  355. package/src/icons/ast/Posts.ts +8 -4
  356. package/src/icons/ast/PresentPlay.ts +8 -4
  357. package/src/icons/ast/PresentStop.ts +8 -4
  358. package/src/icons/ast/Print.ts +8 -4
  359. package/src/icons/ast/PrivateItems.ts +8 -4
  360. package/src/icons/ast/Question.ts +8 -4
  361. package/src/icons/ast/QuickFilter.ts +8 -4
  362. package/src/icons/ast/QuickFilterPersonal.ts +8 -4
  363. package/src/icons/ast/ReadOnly.ts +8 -4
  364. package/src/icons/ast/Refresh.ts +8 -4
  365. package/src/icons/ast/Remove.ts +8 -4
  366. package/src/icons/ast/RemovePeople.ts +8 -4
  367. package/src/icons/ast/Reply.ts +8 -4
  368. package/src/icons/ast/ResetPassword.ts +8 -4
  369. package/src/icons/ast/Restore.ts +8 -4
  370. package/src/icons/ast/RicheditorActionsMore.ts +8 -4
  371. package/src/icons/ast/RicheditorBlockCallout.ts +8 -4
  372. package/src/icons/ast/RicheditorBlockCode.ts +8 -4
  373. package/src/icons/ast/RicheditorBlockEmbed.ts +8 -4
  374. package/src/icons/ast/RicheditorBlockEntity.ts +8 -4
  375. package/src/icons/ast/RicheditorBlockFile.ts +8 -4
  376. package/src/icons/ast/RicheditorBlockH1.ts +8 -4
  377. package/src/icons/ast/RicheditorBlockH2.ts +8 -4
  378. package/src/icons/ast/RicheditorBlockH3.ts +8 -4
  379. package/src/icons/ast/RicheditorBlockH4.ts +8 -4
  380. package/src/icons/ast/RicheditorBlockMention.ts +8 -4
  381. package/src/icons/ast/RicheditorBlockParagraph.ts +8 -4
  382. package/src/icons/ast/RicheditorBlockQuote.ts +8 -4
  383. package/src/icons/ast/RicheditorChecklistCreate.ts +8 -4
  384. package/src/icons/ast/RicheditorCommentCreate.ts +8 -4
  385. package/src/icons/ast/RicheditorEntityLinkCreate.ts +8 -4
  386. package/src/icons/ast/RicheditorHistoryRedo.ts +8 -4
  387. package/src/icons/ast/RicheditorHistoryUndo.ts +8 -4
  388. package/src/icons/ast/RicheditorImageAlignCenter.ts +8 -4
  389. package/src/icons/ast/RicheditorImageAlignLeft.ts +8 -4
  390. package/src/icons/ast/RicheditorImageAlignRight.ts +8 -4
  391. package/src/icons/ast/RicheditorImageUpload.ts +8 -4
  392. package/src/icons/ast/RicheditorImageWrapCenter.ts +8 -4
  393. package/src/icons/ast/RicheditorImageWrapLeft.ts +8 -4
  394. package/src/icons/ast/RicheditorImageWrapRight.ts +8 -4
  395. package/src/icons/ast/RicheditorImageZoom.ts +8 -4
  396. package/src/icons/ast/RicheditorLinkCreate.ts +8 -4
  397. package/src/icons/ast/RicheditorLinkedhighlightCreate.ts +8 -4
  398. package/src/icons/ast/RicheditorListBullet.ts +8 -4
  399. package/src/icons/ast/RicheditorListIndent.ts +8 -4
  400. package/src/icons/ast/RicheditorListOrdered.ts +8 -4
  401. package/src/icons/ast/RicheditorListUnindent.ts +8 -4
  402. package/src/icons/ast/RicheditorMarkCode.ts +8 -4
  403. package/src/icons/ast/RicheditorMarkEm.ts +8 -4
  404. package/src/icons/ast/RicheditorMarkHighlight.ts +8 -4
  405. package/src/icons/ast/RicheditorMarkStrike.ts +8 -4
  406. package/src/icons/ast/RicheditorMarkStrong.ts +8 -4
  407. package/src/icons/ast/RicheditorMarkTextBackgroundColor.ts +8 -4
  408. package/src/icons/ast/RicheditorMarkUnderline.ts +8 -4
  409. package/src/icons/ast/RicheditorOpenLink.ts +8 -4
  410. package/src/icons/ast/RicheditorTableCreate.ts +8 -4
  411. package/src/icons/ast/RicheditorUnlink.ts +8 -4
  412. package/src/icons/ast/RicheditorVideoUpload.ts +8 -4
  413. package/src/icons/ast/RightPanel.ts +8 -4
  414. package/src/icons/ast/Rows.ts +8 -4
  415. package/src/icons/ast/RuleScheduled.ts +8 -4
  416. package/src/icons/ast/Search.ts +8 -4
  417. package/src/icons/ast/SearchAdd.ts +8 -4
  418. package/src/icons/ast/SearchFilled.ts +8 -4
  419. package/src/icons/ast/SearchRemove.ts +8 -4
  420. package/src/icons/ast/SelfReferenceOff.ts +8 -4
  421. package/src/icons/ast/SelfReferenceOn.ts +8 -4
  422. package/src/icons/ast/SendArrow.ts +8 -4
  423. package/src/icons/ast/SendBackward.ts +8 -4
  424. package/src/icons/ast/SendToBack.ts +8 -4
  425. package/src/icons/ast/Settings.ts +8 -4
  426. package/src/icons/ast/SettingsFilled.ts +8 -4
  427. package/src/icons/ast/SettingsOff.ts +8 -4
  428. package/src/icons/ast/Share.ts +8 -4
  429. package/src/icons/ast/Shared.ts +8 -4
  430. package/src/icons/ast/ShieldKeyhole.ts +8 -4
  431. package/src/icons/ast/ShowAuthor.ts +8 -4
  432. package/src/icons/ast/Sidebar.ts +8 -4
  433. package/src/icons/ast/SidebarFields.ts +8 -4
  434. package/src/icons/ast/SidebarFieldsOpened.ts +8 -4
  435. package/src/icons/ast/SimpleCompass.ts +8 -4
  436. package/src/icons/ast/Slack.ts +8 -4
  437. package/src/icons/ast/SlackIcon.ts +8 -4
  438. package/src/icons/ast/SlideMenu.ts +8 -4
  439. package/src/icons/ast/SlideMenuClose.ts +8 -4
  440. package/src/icons/ast/SlideMenuFilled.ts +8 -4
  441. package/src/icons/ast/SlideMenuOpen.ts +8 -4
  442. package/src/icons/ast/SmartFolder.ts +8 -4
  443. package/src/icons/ast/Sort.ts +8 -4
  444. package/src/icons/ast/SortOnBottom.ts +8 -4
  445. package/src/icons/ast/SortOnTop.ts +8 -4
  446. package/src/icons/ast/SpaceApp.ts +8 -4
  447. package/src/icons/ast/SpaceGenerate.ts +8 -4
  448. package/src/icons/ast/SpaceList.ts +8 -4
  449. package/src/icons/ast/SpaceScratch.ts +8 -4
  450. package/src/icons/ast/SpaceTemplate.ts +8 -4
  451. package/src/icons/ast/Spinner.ts +8 -4
  452. package/src/icons/ast/Success.ts +8 -4
  453. package/src/icons/ast/SuggestIntegration.ts +8 -4
  454. package/src/icons/ast/SwitchToMention.ts +8 -4
  455. package/src/icons/ast/SwitchToText.ts +8 -4
  456. package/src/icons/ast/SwitchToWidget.ts +8 -4
  457. package/src/icons/ast/TableLayout.ts +8 -4
  458. package/src/icons/ast/Template.ts +8 -4
  459. package/src/icons/ast/Templates.ts +8 -4
  460. package/src/icons/ast/TemplatesFilled.ts +8 -4
  461. package/src/icons/ast/Terminal.ts +8 -4
  462. package/src/icons/ast/TextNoWrap.ts +8 -4
  463. package/src/icons/ast/TextToolAlignBottom.ts +8 -4
  464. package/src/icons/ast/TextToolAlignMiddle.ts +8 -4
  465. package/src/icons/ast/TextToolAlignTop.ts +8 -4
  466. package/src/icons/ast/TextWrap.ts +8 -4
  467. package/src/icons/ast/ThumbsDown.ts +8 -4
  468. package/src/icons/ast/ThumbsUp.ts +8 -4
  469. package/src/icons/ast/Toc.ts +12 -0
  470. package/src/icons/ast/Twitter.ts +8 -4
  471. package/src/icons/ast/TypeBoolean.ts +8 -4
  472. package/src/icons/ast/TypeButton.ts +8 -4
  473. package/src/icons/ast/TypeCheckbox.ts +8 -4
  474. package/src/icons/ast/TypeDate.ts +8 -4
  475. package/src/icons/ast/TypeEmail.ts +8 -4
  476. package/src/icons/ast/TypeEmoji.ts +8 -4
  477. package/src/icons/ast/TypeFormula.ts +8 -4
  478. package/src/icons/ast/TypeFunction.ts +8 -4
  479. package/src/icons/ast/TypeId.ts +8 -4
  480. package/src/icons/ast/TypeLocation.ts +8 -4
  481. package/src/icons/ast/TypeLookup.ts +8 -4
  482. package/src/icons/ast/TypeMoney.ts +8 -4
  483. package/src/icons/ast/TypeMultiSelect.ts +8 -4
  484. package/src/icons/ast/TypeNumber.ts +8 -4
  485. package/src/icons/ast/TypePercent.ts +8 -4
  486. package/src/icons/ast/TypePhone.ts +8 -4
  487. package/src/icons/ast/TypeRelation.ts +8 -4
  488. package/src/icons/ast/TypeRichText.ts +8 -4
  489. package/src/icons/ast/TypeRule.ts +8 -4
  490. package/src/icons/ast/TypeSingleSelect.ts +8 -4
  491. package/src/icons/ast/TypeText.ts +8 -4
  492. package/src/icons/ast/TypeUrl.ts +8 -4
  493. package/src/icons/ast/UnitsAvatar.ts +8 -4
  494. package/src/icons/ast/UnitsCollection.ts +8 -4
  495. package/src/icons/ast/UnitsCounter.ts +8 -4
  496. package/src/icons/ast/UnitsDate.ts +8 -4
  497. package/src/icons/ast/UnitsDbBadgeAbbr.ts +8 -4
  498. package/src/icons/ast/UnitsDbBadgeFull.ts +8 -4
  499. package/src/icons/ast/UnitsDbIcon.ts +8 -4
  500. package/src/icons/ast/UnitsField.ts +8 -4
  501. package/src/icons/ast/UnitsFieldIconButton.ts +8 -4
  502. package/src/icons/ast/UnitsInput.ts +8 -4
  503. package/src/icons/ast/UnitsProgressBar.ts +8 -4
  504. package/src/icons/ast/UnitsRichText.ts +8 -4
  505. package/src/icons/ast/UnitsSnippet.ts +8 -4
  506. package/src/icons/ast/Unlink.ts +8 -4
  507. package/src/icons/ast/UnlockFilled.ts +8 -4
  508. package/src/icons/ast/UnlockOutline.ts +8 -4
  509. package/src/icons/ast/Upgrade.ts +8 -4
  510. package/src/icons/ast/UsbFlashDrive.ts +8 -4
  511. package/src/icons/ast/UserCheck.ts +8 -4
  512. package/src/icons/ast/UserGroup.ts +8 -4
  513. package/src/icons/ast/UserGroupRemove.ts +8 -4
  514. package/src/icons/ast/UserRole.ts +8 -4
  515. package/src/icons/ast/UserX.ts +8 -4
  516. package/src/icons/ast/ValueEdit.ts +8 -4
  517. package/src/icons/ast/ViewAi.ts +8 -4
  518. package/src/icons/ast/ViewBoard.ts +8 -4
  519. package/src/icons/ast/ViewCalendar.ts +8 -4
  520. package/src/icons/ast/ViewCanvas.ts +8 -4
  521. package/src/icons/ast/ViewChart.ts +8 -4
  522. package/src/icons/ast/ViewDashboard.ts +8 -4
  523. package/src/icons/ast/ViewDetails.ts +8 -4
  524. package/src/icons/ast/ViewDocument.ts +8 -4
  525. package/src/icons/ast/ViewEmbed.ts +12 -0
  526. package/src/icons/ast/ViewFeed.ts +8 -4
  527. package/src/icons/ast/ViewForm.ts +8 -4
  528. package/src/icons/ast/ViewGallery.ts +8 -4
  529. package/src/icons/ast/ViewGantt.ts +8 -4
  530. package/src/icons/ast/ViewList.ts +8 -4
  531. package/src/icons/ast/ViewMap.ts +8 -4
  532. package/src/icons/ast/ViewPage.ts +8 -4
  533. package/src/icons/ast/ViewTable.ts +8 -4
  534. package/src/icons/ast/ViewTimeline.ts +8 -4
  535. package/src/icons/ast/Views.ts +8 -4
  536. package/src/icons/ast/Warning.ts +8 -4
  537. package/src/icons/ast/WarningTriangle.ts +8 -4
  538. package/src/icons/ast/WarningTriangleFilled.ts +8 -4
  539. package/src/icons/ast/Webhooks.ts +12 -0
  540. package/src/icons/ast/Windows.ts +8 -4
  541. package/src/icons/ast/WorkspaceMap.ts +8 -4
  542. package/src/icons/ast/Youtube.ts +8 -4
  543. package/src/icons/ast/ZoomIn.ts +8 -4
  544. package/src/icons/ast/ZoomOut.ts +8 -4
  545. package/src/icons/ast/index.tsx +453 -441
  546. package/src/icons/react/Abort.tsx +10 -5
  547. package/src/icons/react/AccessTemplate.tsx +10 -5
  548. package/src/icons/react/Activity.tsx +10 -5
  549. package/src/icons/react/ActivityFilled.tsx +10 -5
  550. package/src/icons/react/ActivityLog.tsx +10 -5
  551. package/src/icons/react/Add.tsx +10 -5
  552. package/src/icons/react/AddAfter.tsx +10 -5
  553. package/src/icons/react/AddBefore.tsx +10 -5
  554. package/src/icons/react/AddCompact.tsx +10 -5
  555. package/src/icons/react/AddDatabase.tsx +10 -5
  556. package/src/icons/react/AddGroup.tsx +10 -5
  557. package/src/icons/react/AddIntegration.tsx +10 -5
  558. package/src/icons/react/AddReactions.tsx +10 -5
  559. package/src/icons/react/AiAssistant.tsx +10 -5
  560. package/src/icons/react/AiAssistantFilled.tsx +10 -5
  561. package/src/icons/react/AiAvatar.tsx +10 -5
  562. package/src/icons/react/AiFiberyBuild.tsx +10 -5
  563. package/src/icons/react/AiSearch.tsx +10 -5
  564. package/src/icons/react/AlertTriangle.tsx +10 -5
  565. package/src/icons/react/Anthropic.tsx +10 -5
  566. package/src/icons/react/App.tsx +10 -5
  567. package/src/icons/react/AppDetails.tsx +10 -5
  568. package/src/icons/react/AppStore.tsx +10 -5
  569. package/src/icons/react/AppStoreOneColor.tsx +10 -5
  570. package/src/icons/react/AppTemplates.tsx +10 -5
  571. package/src/icons/react/AppWebhooks.tsx +10 -5
  572. package/src/icons/react/AppWiki.tsx +10 -5
  573. package/src/icons/react/AppearanceAuto.tsx +10 -5
  574. package/src/icons/react/AppearanceDark.tsx +10 -5
  575. package/src/icons/react/AppearanceLight.tsx +10 -5
  576. package/src/icons/react/Apple.tsx +10 -5
  577. package/src/icons/react/ArrowBarDown.tsx +18 -0
  578. package/src/icons/react/ArrowBarLeft.tsx +10 -5
  579. package/src/icons/react/ArrowBarRight.tsx +10 -5
  580. package/src/icons/react/ArrowBarUp.tsx +18 -0
  581. package/src/icons/react/ArrowBottom.tsx +10 -5
  582. package/src/icons/react/ArrowCollapse.tsx +10 -5
  583. package/src/icons/react/ArrowCollapseVertical.tsx +10 -5
  584. package/src/icons/react/ArrowForward.tsx +10 -5
  585. package/src/icons/react/ArrowLeft.tsx +10 -5
  586. package/src/icons/react/ArrowRight.tsx +10 -5
  587. package/src/icons/react/ArrowTop.tsx +10 -5
  588. package/src/icons/react/ArrowUpCircle.tsx +10 -5
  589. package/src/icons/react/ArrowsRightLeft.tsx +10 -5
  590. package/src/icons/react/AskForInput.tsx +10 -5
  591. package/src/icons/react/Asterisk.tsx +10 -5
  592. package/src/icons/react/Atom.tsx +10 -5
  593. package/src/icons/react/AutomationsCancelled.tsx +10 -5
  594. package/src/icons/react/AutomationsDisabled.tsx +10 -5
  595. package/src/icons/react/AutomationsError.tsx +10 -5
  596. package/src/icons/react/AutomationsInProgress.tsx +10 -5
  597. package/src/icons/react/AutomationsNotStarted.tsx +10 -5
  598. package/src/icons/react/AutomationsSuccess.tsx +10 -5
  599. package/src/icons/react/Back.tsx +10 -5
  600. package/src/icons/react/BacklogIcon.tsx +10 -5
  601. package/src/icons/react/BatchActionsIcon.tsx +10 -5
  602. package/src/icons/react/BellCircle.tsx +10 -5
  603. package/src/icons/react/BellFilled.tsx +10 -5
  604. package/src/icons/react/BellOff.tsx +10 -5
  605. package/src/icons/react/BellRinging.tsx +10 -5
  606. package/src/icons/react/BellX.tsx +10 -5
  607. package/src/icons/react/Bolt.tsx +10 -5
  608. package/src/icons/react/BringForward.tsx +10 -5
  609. package/src/icons/react/BringToFront.tsx +10 -5
  610. package/src/icons/react/Cards.tsx +10 -5
  611. package/src/icons/react/Chat.tsx +10 -5
  612. package/src/icons/react/ChatAi.tsx +10 -5
  613. package/src/icons/react/ChatBubble.tsx +10 -5
  614. package/src/icons/react/ChatFloat.tsx +10 -5
  615. package/src/icons/react/ChatSidebar.tsx +10 -5
  616. package/src/icons/react/CheckCircle.tsx +10 -5
  617. package/src/icons/react/CheckCircleFilled.tsx +10 -5
  618. package/src/icons/react/Checked.tsx +10 -5
  619. package/src/icons/react/Clean.tsx +10 -5
  620. package/src/icons/react/Clear.tsx +10 -5
  621. package/src/icons/react/ClearInputFilled.tsx +10 -5
  622. package/src/icons/react/ClearValue.tsx +10 -5
  623. package/src/icons/react/Clock.tsx +10 -5
  624. package/src/icons/react/ClockAlarm.tsx +10 -5
  625. package/src/icons/react/ClockForward.tsx +10 -5
  626. package/src/icons/react/Close.tsx +10 -5
  627. package/src/icons/react/CollapseAll.tsx +10 -5
  628. package/src/icons/react/CollapseAllHorizontal.tsx +10 -5
  629. package/src/icons/react/ColorCoding.tsx +10 -5
  630. package/src/icons/react/ColorCodingFilled.tsx +10 -5
  631. package/src/icons/react/Columns.tsx +10 -5
  632. package/src/icons/react/Columns2.tsx +10 -5
  633. package/src/icons/react/Columns4.tsx +10 -5
  634. package/src/icons/react/CommentBubble.tsx +10 -5
  635. package/src/icons/react/Copy.tsx +10 -5
  636. package/src/icons/react/Create.tsx +10 -5
  637. package/src/icons/react/CreditsFilled.tsx +10 -5
  638. package/src/icons/react/CrossCircle.tsx +10 -5
  639. package/src/icons/react/Crosshair.tsx +10 -5
  640. package/src/icons/react/Csv.tsx +10 -5
  641. package/src/icons/react/Database.tsx +10 -5
  642. package/src/icons/react/DatabaseOff.tsx +10 -5
  643. package/src/icons/react/DatabaseStroke.tsx +10 -5
  644. package/src/icons/react/DateRange.tsx +10 -5
  645. package/src/icons/react/Delete.tsx +10 -5
  646. package/src/icons/react/Demo.tsx +10 -5
  647. package/src/icons/react/Dependency.tsx +10 -5
  648. package/src/icons/react/Dividers.tsx +10 -5
  649. package/src/icons/react/Document.tsx +10 -5
  650. package/src/icons/react/DoubleArrowLeft.tsx +10 -5
  651. package/src/icons/react/DoubleArrowRight.tsx +10 -5
  652. package/src/icons/react/DoubleLine.tsx +10 -5
  653. package/src/icons/react/DragBlockHandle.tsx +10 -5
  654. package/src/icons/react/DragBlockHandleSingle.tsx +10 -5
  655. package/src/icons/react/DragHandle.tsx +10 -5
  656. package/src/icons/react/Duplicate.tsx +10 -5
  657. package/src/icons/react/DynamicFilterValue.tsx +10 -5
  658. package/src/icons/react/EditValue.tsx +10 -5
  659. package/src/icons/react/Email.tsx +10 -5
  660. package/src/icons/react/EmojiDelete.tsx +10 -5
  661. package/src/icons/react/EntityCreate.tsx +10 -5
  662. package/src/icons/react/EntityCreateFilled.tsx +10 -5
  663. package/src/icons/react/EntityMerge.tsx +10 -5
  664. package/src/icons/react/Equation.tsx +10 -5
  665. package/src/icons/react/ExpandAll.tsx +10 -5
  666. package/src/icons/react/ExpandAllHorizontal.tsx +10 -5
  667. package/src/icons/react/Export.tsx +10 -5
  668. package/src/icons/react/ExtensionAssignments.tsx +10 -5
  669. package/src/icons/react/ExtensionAvatar.tsx +10 -5
  670. package/src/icons/react/ExtensionComments.tsx +10 -5
  671. package/src/icons/react/ExtensionFiles.tsx +10 -5
  672. package/src/icons/react/ExtensionReferences.tsx +10 -5
  673. package/src/icons/react/ExtensionWorkflow.tsx +10 -5
  674. package/src/icons/react/Eye.tsx +10 -5
  675. package/src/icons/react/Favorites.tsx +10 -5
  676. package/src/icons/react/FavoritesChecked.tsx +10 -5
  677. package/src/icons/react/FavoritesOff.tsx +10 -5
  678. package/src/icons/react/FiberyDesktopApp.tsx +10 -5
  679. package/src/icons/react/FiberyMono.tsx +10 -5
  680. package/src/icons/react/FieldUnit.tsx +10 -5
  681. package/src/icons/react/Fields.tsx +10 -5
  682. package/src/icons/react/Figma.tsx +10 -5
  683. package/src/icons/react/FileArchive.tsx +10 -5
  684. package/src/icons/react/FileBroken.tsx +10 -5
  685. package/src/icons/react/FileCounter.tsx +10 -5
  686. package/src/icons/react/FileDocument.tsx +10 -5
  687. package/src/icons/react/FileDownload.tsx +10 -5
  688. package/src/icons/react/FileImage.tsx +10 -5
  689. package/src/icons/react/FileMultiple.tsx +10 -5
  690. package/src/icons/react/FileOther.tsx +10 -5
  691. package/src/icons/react/FilePresentation.tsx +10 -5
  692. package/src/icons/react/FileTable.tsx +10 -5
  693. package/src/icons/react/FileUpload.tsx +10 -5
  694. package/src/icons/react/FileVideo.tsx +10 -5
  695. package/src/icons/react/Filter.tsx +10 -5
  696. package/src/icons/react/FitToScreen.tsx +10 -5
  697. package/src/icons/react/FocusMode.tsx +10 -5
  698. package/src/icons/react/FocusModeOff.tsx +10 -5
  699. package/src/icons/react/Folder.tsx +10 -5
  700. package/src/icons/react/FolderFavorite.tsx +18 -0
  701. package/src/icons/react/FormWithCover.tsx +10 -5
  702. package/src/icons/react/FormWithoutCover.tsx +10 -5
  703. package/src/icons/react/FullscreenModeOffIcon.tsx +10 -5
  704. package/src/icons/react/FullscreenModeOn.tsx +10 -5
  705. package/src/icons/react/FullscreenModeOnIcon.tsx +10 -5
  706. package/src/icons/react/Gift.tsx +10 -5
  707. package/src/icons/react/Github.tsx +10 -5
  708. package/src/icons/react/Gitlab.tsx +10 -5
  709. package/src/icons/react/Globe.tsx +10 -5
  710. package/src/icons/react/GlobeSimple.tsx +10 -5
  711. package/src/icons/react/GlobeUnpublish.tsx +10 -5
  712. package/src/icons/react/GoTo.tsx +10 -5
  713. package/src/icons/react/GoogleDrive.tsx +10 -5
  714. package/src/icons/react/GoogleMap.tsx +10 -5
  715. package/src/icons/react/GraduationCapFilled.tsx +10 -5
  716. package/src/icons/react/Headphones.tsx +10 -5
  717. package/src/icons/react/HeadphonesAi.tsx +10 -5
  718. package/src/icons/react/Hide.tsx +10 -5
  719. package/src/icons/react/Highlights.tsx +10 -5
  720. package/src/icons/react/Hint.tsx +10 -5
  721. package/src/icons/react/Home.tsx +10 -5
  722. package/src/icons/react/HomeFilled.tsx +10 -5
  723. package/src/icons/react/ImageXmark.tsx +10 -5
  724. package/src/icons/react/Import.tsx +10 -5
  725. package/src/icons/react/ImportFilled.tsx +10 -5
  726. package/src/icons/react/InfoCircle.tsx +10 -5
  727. package/src/icons/react/InfoCircleFilled.tsx +10 -5
  728. package/src/icons/react/Integration.tsx +10 -5
  729. package/src/icons/react/IntegrationsFilled.tsx +10 -5
  730. package/src/icons/react/IntegrationsIntegrationDiscourseColor.tsx +10 -5
  731. package/src/icons/react/IntegrationsIntegrationIntercomColor.tsx +10 -5
  732. package/src/icons/react/IntegrationsIntegrationSlackColor.tsx +10 -5
  733. package/src/icons/react/IntegrationsIntegrationZendeskColor.tsx +10 -5
  734. package/src/icons/react/Intercom.tsx +18 -0
  735. package/src/icons/react/InvitePeople.tsx +10 -5
  736. package/src/icons/react/Items.tsx +10 -5
  737. package/src/icons/react/ItemsTimeline.tsx +10 -5
  738. package/src/icons/react/Jira.tsx +10 -5
  739. package/src/icons/react/Key.tsx +10 -5
  740. package/src/icons/react/KeyboardHideDown.tsx +10 -5
  741. package/src/icons/react/Lab.tsx +10 -5
  742. package/src/icons/react/LayoutDouble.tsx +10 -5
  743. package/src/icons/react/LayoutMultiple.tsx +10 -5
  744. package/src/icons/react/LayoutSingle.tsx +10 -5
  745. package/src/icons/react/LeftPanel.tsx +10 -5
  746. package/src/icons/react/LevelPlus.tsx +10 -5
  747. package/src/icons/react/Levels.tsx +10 -5
  748. package/src/icons/react/LineDivider.tsx +10 -5
  749. package/src/icons/react/LineJump.tsx +10 -5
  750. package/src/icons/react/Link.tsx +10 -5
  751. package/src/icons/react/LocationEdit.tsx +10 -5
  752. package/src/icons/react/Lock.tsx +10 -5
  753. package/src/icons/react/LockOutline.tsx +10 -5
  754. package/src/icons/react/Logout.tsx +10 -5
  755. package/src/icons/react/Loom.tsx +10 -5
  756. package/src/icons/react/LoupeZoom.tsx +10 -5
  757. package/src/icons/react/LoupeZoomIn.tsx +10 -5
  758. package/src/icons/react/LoupeZoomOut.tsx +10 -5
  759. package/src/icons/react/ManyPeople.tsx +10 -5
  760. package/src/icons/react/MapMode.tsx +10 -5
  761. package/src/icons/react/Markdown.tsx +10 -5
  762. package/src/icons/react/MenuCollapser.tsx +10 -5
  763. package/src/icons/react/Mermaid.tsx +10 -5
  764. package/src/icons/react/MessagePlus.tsx +10 -5
  765. package/src/icons/react/MessagePlusSquare.tsx +10 -5
  766. package/src/icons/react/Milestones.tsx +10 -5
  767. package/src/icons/react/Minus.tsx +10 -5
  768. package/src/icons/react/Miro.tsx +10 -5
  769. package/src/icons/react/MirrorOff.tsx +10 -5
  770. package/src/icons/react/MirrorOn.tsx +10 -5
  771. package/src/icons/react/Mixpanel.tsx +10 -5
  772. package/src/icons/react/Monitor.tsx +10 -5
  773. package/src/icons/react/More.tsx +10 -5
  774. package/src/icons/react/MoreCompact.tsx +10 -5
  775. package/src/icons/react/MoveBottom.tsx +10 -5
  776. package/src/icons/react/MoveLeft.tsx +10 -5
  777. package/src/icons/react/MoveRight.tsx +10 -5
  778. package/src/icons/react/MoveSpace.tsx +10 -5
  779. package/src/icons/react/MoveTop.tsx +10 -5
  780. package/src/icons/react/Network.tsx +10 -5
  781. package/src/icons/react/NetworkAdd.tsx +10 -5
  782. package/src/icons/react/NoBorder.tsx +10 -5
  783. package/src/icons/react/NoFill.tsx +10 -5
  784. package/src/icons/react/Notifications.tsx +10 -5
  785. package/src/icons/react/ObjChild.tsx +10 -5
  786. package/src/icons/react/ObjM2M.tsx +10 -5
  787. package/src/icons/react/ObjO2O.tsx +10 -5
  788. package/src/icons/react/ObjParent.tsx +10 -5
  789. package/src/icons/react/ObjSelf.tsx +10 -5
  790. package/src/icons/react/OnSchedule.tsx +10 -5
  791. package/src/icons/react/OpenAi.tsx +10 -5
  792. package/src/icons/react/OpenAsPage.tsx +10 -5
  793. package/src/icons/react/PageRegularMode.tsx +10 -5
  794. package/src/icons/react/PageWideMode.tsx +10 -5
  795. package/src/icons/react/PanelAdd.tsx +10 -5
  796. package/src/icons/react/Pencil.tsx +10 -5
  797. package/src/icons/react/People.tsx +10 -5
  798. package/src/icons/react/PeopleCheck.tsx +10 -5
  799. package/src/icons/react/Photo.tsx +10 -5
  800. package/src/icons/react/Pin.tsx +10 -5
  801. package/src/icons/react/PinFilled.tsx +10 -5
  802. package/src/icons/react/Popup.tsx +10 -5
  803. package/src/icons/react/Posts.tsx +10 -5
  804. package/src/icons/react/PresentPlay.tsx +10 -5
  805. package/src/icons/react/PresentStop.tsx +10 -5
  806. package/src/icons/react/Print.tsx +10 -5
  807. package/src/icons/react/PrivateItems.tsx +10 -5
  808. package/src/icons/react/Question.tsx +10 -5
  809. package/src/icons/react/QuickFilter.tsx +10 -5
  810. package/src/icons/react/QuickFilterPersonal.tsx +10 -5
  811. package/src/icons/react/ReadOnly.tsx +10 -5
  812. package/src/icons/react/Refresh.tsx +10 -5
  813. package/src/icons/react/Remove.tsx +10 -5
  814. package/src/icons/react/RemovePeople.tsx +10 -5
  815. package/src/icons/react/Reply.tsx +10 -5
  816. package/src/icons/react/ResetPassword.tsx +10 -5
  817. package/src/icons/react/Restore.tsx +10 -5
  818. package/src/icons/react/RicheditorActionsMore.tsx +10 -5
  819. package/src/icons/react/RicheditorBlockCallout.tsx +10 -5
  820. package/src/icons/react/RicheditorBlockCode.tsx +10 -5
  821. package/src/icons/react/RicheditorBlockEmbed.tsx +10 -5
  822. package/src/icons/react/RicheditorBlockEntity.tsx +10 -5
  823. package/src/icons/react/RicheditorBlockFile.tsx +10 -5
  824. package/src/icons/react/RicheditorBlockH1.tsx +10 -5
  825. package/src/icons/react/RicheditorBlockH2.tsx +10 -5
  826. package/src/icons/react/RicheditorBlockH3.tsx +10 -5
  827. package/src/icons/react/RicheditorBlockH4.tsx +10 -5
  828. package/src/icons/react/RicheditorBlockMention.tsx +10 -5
  829. package/src/icons/react/RicheditorBlockParagraph.tsx +10 -5
  830. package/src/icons/react/RicheditorBlockQuote.tsx +10 -5
  831. package/src/icons/react/RicheditorChecklistCreate.tsx +10 -5
  832. package/src/icons/react/RicheditorCommentCreate.tsx +10 -5
  833. package/src/icons/react/RicheditorEntityLinkCreate.tsx +10 -5
  834. package/src/icons/react/RicheditorHistoryRedo.tsx +10 -5
  835. package/src/icons/react/RicheditorHistoryUndo.tsx +10 -5
  836. package/src/icons/react/RicheditorImageAlignCenter.tsx +10 -5
  837. package/src/icons/react/RicheditorImageAlignLeft.tsx +10 -5
  838. package/src/icons/react/RicheditorImageAlignRight.tsx +10 -5
  839. package/src/icons/react/RicheditorImageUpload.tsx +10 -5
  840. package/src/icons/react/RicheditorImageWrapCenter.tsx +10 -5
  841. package/src/icons/react/RicheditorImageWrapLeft.tsx +10 -5
  842. package/src/icons/react/RicheditorImageWrapRight.tsx +10 -5
  843. package/src/icons/react/RicheditorImageZoom.tsx +10 -5
  844. package/src/icons/react/RicheditorLinkCreate.tsx +10 -5
  845. package/src/icons/react/RicheditorLinkedhighlightCreate.tsx +10 -5
  846. package/src/icons/react/RicheditorListBullet.tsx +10 -5
  847. package/src/icons/react/RicheditorListIndent.tsx +10 -5
  848. package/src/icons/react/RicheditorListOrdered.tsx +10 -5
  849. package/src/icons/react/RicheditorListUnindent.tsx +10 -5
  850. package/src/icons/react/RicheditorMarkCode.tsx +10 -5
  851. package/src/icons/react/RicheditorMarkEm.tsx +10 -5
  852. package/src/icons/react/RicheditorMarkHighlight.tsx +10 -5
  853. package/src/icons/react/RicheditorMarkStrike.tsx +10 -5
  854. package/src/icons/react/RicheditorMarkStrong.tsx +10 -5
  855. package/src/icons/react/RicheditorMarkTextBackgroundColor.tsx +10 -5
  856. package/src/icons/react/RicheditorMarkUnderline.tsx +10 -5
  857. package/src/icons/react/RicheditorOpenLink.tsx +10 -5
  858. package/src/icons/react/RicheditorTableCreate.tsx +10 -5
  859. package/src/icons/react/RicheditorUnlink.tsx +10 -5
  860. package/src/icons/react/RicheditorVideoUpload.tsx +10 -5
  861. package/src/icons/react/RightPanel.tsx +10 -5
  862. package/src/icons/react/Rows.tsx +10 -5
  863. package/src/icons/react/RuleScheduled.tsx +10 -5
  864. package/src/icons/react/Search.tsx +10 -5
  865. package/src/icons/react/SearchAdd.tsx +10 -5
  866. package/src/icons/react/SearchFilled.tsx +10 -5
  867. package/src/icons/react/SearchRemove.tsx +10 -5
  868. package/src/icons/react/SelfReferenceOff.tsx +10 -5
  869. package/src/icons/react/SelfReferenceOn.tsx +10 -5
  870. package/src/icons/react/SendArrow.tsx +10 -5
  871. package/src/icons/react/SendBackward.tsx +10 -5
  872. package/src/icons/react/SendToBack.tsx +10 -5
  873. package/src/icons/react/Settings.tsx +10 -5
  874. package/src/icons/react/SettingsFilled.tsx +10 -5
  875. package/src/icons/react/SettingsOff.tsx +10 -5
  876. package/src/icons/react/Share.tsx +10 -5
  877. package/src/icons/react/Shared.tsx +10 -5
  878. package/src/icons/react/ShieldKeyhole.tsx +10 -5
  879. package/src/icons/react/ShowAuthor.tsx +10 -5
  880. package/src/icons/react/Sidebar.tsx +10 -5
  881. package/src/icons/react/SidebarFields.tsx +10 -5
  882. package/src/icons/react/SidebarFieldsOpened.tsx +10 -5
  883. package/src/icons/react/SimpleCompass.tsx +10 -5
  884. package/src/icons/react/Slack.tsx +10 -5
  885. package/src/icons/react/SlackIcon.tsx +10 -5
  886. package/src/icons/react/SlideMenu.tsx +10 -5
  887. package/src/icons/react/SlideMenuClose.tsx +10 -5
  888. package/src/icons/react/SlideMenuFilled.tsx +10 -5
  889. package/src/icons/react/SlideMenuOpen.tsx +10 -5
  890. package/src/icons/react/SmartFolder.tsx +10 -5
  891. package/src/icons/react/Sort.tsx +10 -5
  892. package/src/icons/react/SortOnBottom.tsx +10 -5
  893. package/src/icons/react/SortOnTop.tsx +10 -5
  894. package/src/icons/react/SpaceApp.tsx +10 -5
  895. package/src/icons/react/SpaceGenerate.tsx +10 -5
  896. package/src/icons/react/SpaceList.tsx +10 -5
  897. package/src/icons/react/SpaceScratch.tsx +10 -5
  898. package/src/icons/react/SpaceTemplate.tsx +10 -5
  899. package/src/icons/react/Spinner.tsx +10 -5
  900. package/src/icons/react/Success.tsx +10 -5
  901. package/src/icons/react/SuggestIntegration.tsx +10 -5
  902. package/src/icons/react/SwitchToMention.tsx +10 -5
  903. package/src/icons/react/SwitchToText.tsx +10 -5
  904. package/src/icons/react/SwitchToWidget.tsx +10 -5
  905. package/src/icons/react/TableLayout.tsx +10 -5
  906. package/src/icons/react/Template.tsx +10 -5
  907. package/src/icons/react/Templates.tsx +10 -5
  908. package/src/icons/react/TemplatesFilled.tsx +10 -5
  909. package/src/icons/react/Terminal.tsx +10 -5
  910. package/src/icons/react/TextNoWrap.tsx +10 -5
  911. package/src/icons/react/TextToolAlignBottom.tsx +10 -5
  912. package/src/icons/react/TextToolAlignMiddle.tsx +10 -5
  913. package/src/icons/react/TextToolAlignTop.tsx +10 -5
  914. package/src/icons/react/TextWrap.tsx +10 -5
  915. package/src/icons/react/ThumbsDown.tsx +10 -5
  916. package/src/icons/react/ThumbsUp.tsx +10 -5
  917. package/src/icons/react/Toc.tsx +18 -0
  918. package/src/icons/react/Twitter.tsx +10 -5
  919. package/src/icons/react/TypeBoolean.tsx +10 -5
  920. package/src/icons/react/TypeButton.tsx +10 -5
  921. package/src/icons/react/TypeCheckbox.tsx +10 -5
  922. package/src/icons/react/TypeDate.tsx +10 -5
  923. package/src/icons/react/TypeEmail.tsx +10 -5
  924. package/src/icons/react/TypeEmoji.tsx +10 -5
  925. package/src/icons/react/TypeFormula.tsx +10 -5
  926. package/src/icons/react/TypeFunction.tsx +10 -5
  927. package/src/icons/react/TypeId.tsx +10 -5
  928. package/src/icons/react/TypeLocation.tsx +10 -5
  929. package/src/icons/react/TypeLookup.tsx +10 -5
  930. package/src/icons/react/TypeMoney.tsx +10 -5
  931. package/src/icons/react/TypeMultiSelect.tsx +10 -5
  932. package/src/icons/react/TypeNumber.tsx +10 -5
  933. package/src/icons/react/TypePercent.tsx +10 -5
  934. package/src/icons/react/TypePhone.tsx +10 -5
  935. package/src/icons/react/TypeRelation.tsx +10 -5
  936. package/src/icons/react/TypeRichText.tsx +10 -5
  937. package/src/icons/react/TypeRule.tsx +10 -5
  938. package/src/icons/react/TypeSingleSelect.tsx +10 -5
  939. package/src/icons/react/TypeText.tsx +10 -5
  940. package/src/icons/react/TypeUrl.tsx +10 -5
  941. package/src/icons/react/UnitsAvatar.tsx +10 -5
  942. package/src/icons/react/UnitsCollection.tsx +10 -5
  943. package/src/icons/react/UnitsCounter.tsx +10 -5
  944. package/src/icons/react/UnitsDate.tsx +10 -5
  945. package/src/icons/react/UnitsDbBadgeAbbr.tsx +10 -5
  946. package/src/icons/react/UnitsDbBadgeFull.tsx +10 -5
  947. package/src/icons/react/UnitsDbIcon.tsx +10 -5
  948. package/src/icons/react/UnitsField.tsx +10 -5
  949. package/src/icons/react/UnitsFieldIconButton.tsx +10 -5
  950. package/src/icons/react/UnitsInput.tsx +10 -5
  951. package/src/icons/react/UnitsProgressBar.tsx +10 -5
  952. package/src/icons/react/UnitsRichText.tsx +10 -5
  953. package/src/icons/react/UnitsSnippet.tsx +10 -5
  954. package/src/icons/react/Unlink.tsx +10 -5
  955. package/src/icons/react/UnlockFilled.tsx +10 -5
  956. package/src/icons/react/UnlockOutline.tsx +10 -5
  957. package/src/icons/react/Upgrade.tsx +10 -5
  958. package/src/icons/react/UsbFlashDrive.tsx +10 -5
  959. package/src/icons/react/UserCheck.tsx +10 -5
  960. package/src/icons/react/UserGroup.tsx +10 -5
  961. package/src/icons/react/UserGroupRemove.tsx +10 -5
  962. package/src/icons/react/UserRole.tsx +10 -5
  963. package/src/icons/react/UserX.tsx +10 -5
  964. package/src/icons/react/ValueEdit.tsx +10 -5
  965. package/src/icons/react/ViewAi.tsx +10 -5
  966. package/src/icons/react/ViewBoard.tsx +10 -5
  967. package/src/icons/react/ViewCalendar.tsx +10 -5
  968. package/src/icons/react/ViewCanvas.tsx +10 -5
  969. package/src/icons/react/ViewChart.tsx +10 -5
  970. package/src/icons/react/ViewDashboard.tsx +10 -5
  971. package/src/icons/react/ViewDetails.tsx +10 -5
  972. package/src/icons/react/ViewDocument.tsx +10 -5
  973. package/src/icons/react/ViewEmbed.tsx +18 -0
  974. package/src/icons/react/ViewFeed.tsx +10 -5
  975. package/src/icons/react/ViewForm.tsx +10 -5
  976. package/src/icons/react/ViewGallery.tsx +10 -5
  977. package/src/icons/react/ViewGantt.tsx +10 -5
  978. package/src/icons/react/ViewList.tsx +10 -5
  979. package/src/icons/react/ViewMap.tsx +10 -5
  980. package/src/icons/react/ViewPage.tsx +10 -5
  981. package/src/icons/react/ViewTable.tsx +10 -5
  982. package/src/icons/react/ViewTimeline.tsx +10 -5
  983. package/src/icons/react/Views.tsx +10 -5
  984. package/src/icons/react/Warning.tsx +10 -5
  985. package/src/icons/react/WarningTriangle.tsx +10 -5
  986. package/src/icons/react/WarningTriangleFilled.tsx +10 -5
  987. package/src/icons/react/Webhooks.tsx +18 -0
  988. package/src/icons/react/Windows.tsx +10 -5
  989. package/src/icons/react/WorkspaceMap.tsx +10 -5
  990. package/src/icons/react/Youtube.tsx +10 -5
  991. package/src/icons/react/ZoomIn.tsx +10 -5
  992. package/src/icons/react/ZoomOut.tsx +10 -5
  993. package/src/icons/react/index.tsx +453 -441
  994. package/src/icons/svg/add-database.svg +1 -1
  995. package/src/icons/svg/add-integration.svg +1 -1
  996. package/src/icons/svg/arrow-bar-down.svg +4 -0
  997. package/src/icons/svg/arrow-bar-up.svg +4 -0
  998. package/src/icons/svg/arrows-right-left.svg +1 -1
  999. package/src/icons/svg/chat-bubble.svg +1 -1
  1000. package/src/icons/svg/chat-float.svg +1 -1
  1001. package/src/icons/svg/chat-sidebar.svg +3 -3
  1002. package/src/icons/svg/clean.svg +1 -1
  1003. package/src/icons/svg/create.svg +1 -1
  1004. package/src/icons/svg/folder-favorite.svg +3 -0
  1005. package/src/icons/svg/intercom.svg +3 -0
  1006. package/src/icons/svg/items-timeline.svg +1 -1
  1007. package/src/icons/svg/key.svg +1 -1
  1008. package/src/icons/svg/network-add.svg +1 -1
  1009. package/src/icons/svg/print.svg +1 -1
  1010. package/src/icons/svg/richeditor/list/indent.svg +7 -2
  1011. package/src/icons/svg/richeditor/list/unindent.svg +7 -2
  1012. package/src/icons/svg/richeditor/mark/underline.svg +2 -2
  1013. package/src/icons/svg/success.svg +1 -1
  1014. package/src/icons/svg/suggest-integration.svg +1 -1
  1015. package/src/icons/svg/toc.svg +5 -0
  1016. package/src/icons/svg/view-embed.svg +3 -0
  1017. package/src/icons/svg/warning-triangle.svg +1 -1
  1018. package/src/icons/svg/webhooks.svg +5 -0
  1019. package/src/icons/svg/windows.svg +1 -1
  1020. package/src/icons/types.ts +2 -0
  1021. package/src/images-gallery/images-gallery.tsx +91 -16
  1022. package/src/images-gallery/slide-buttons.tsx +5 -9
  1023. package/src/integration-compact-info-button.tsx +10 -6
  1024. package/src/lists/actions-menu-row-surface.tsx +2 -1
  1025. package/src/loaders.tsx +2 -2
  1026. package/src/loading-sausage.tsx +4 -4
  1027. package/src/logo.tsx +14 -13
  1028. package/src/mobile-keyboard-aware-popup.tsx +1 -1
  1029. package/src/modal-menu/index.tsx +1 -0
  1030. package/src/modal-menu/modal-menu-checkbox-item.tsx +50 -0
  1031. package/src/modal-menu/modal-menu-content.tsx +1 -1
  1032. package/src/modal-menu/modal-menu-separator.tsx +1 -1
  1033. package/src/modal-menu/modal-submenu-content.tsx +3 -1
  1034. package/src/new-badge.tsx +2 -2
  1035. package/src/number-input/edit-unit-styles.ts +3 -3
  1036. package/src/online-users.tsx +53 -54
  1037. package/src/open-popover-tracker.tsx +73 -0
  1038. package/src/palette-generator.test.ts +145 -147
  1039. package/src/palette-generator.ts +24 -34
  1040. package/src/palettes/_.test.ts +226 -0
  1041. package/src/palettes/_.ts +66 -23
  1042. package/src/palettes/diff-colors.ts +253 -0
  1043. package/src/palettes/inspect.canvas-colors.test.ts +257 -0
  1044. package/src/palettes/inspect.defs.colors.neutral-arch.test.ts +2291 -0
  1045. package/src/palettes/inspect.defs.colors.neutral-user.test.ts +2291 -0
  1046. package/src/palettes/inspect.defs.colors.warm-arch.test.ts +2291 -0
  1047. package/src/palettes/inspect.defs.colors.warm-user.test.ts +2291 -0
  1048. package/src/palettes/inspect.neutral-arch.test.ts +191 -0
  1049. package/src/palettes/inspect.neutral-user.test.ts +191 -0
  1050. package/src/palettes/inspect.warm-arch.test.ts +191 -0
  1051. package/src/palettes/inspect.warm-user.test.ts +191 -0
  1052. package/src/palettes/neutral-arch.ts +37 -0
  1053. package/src/palettes/neutral-user.ts +37 -0
  1054. package/src/palettes/{slate-arch.ts → neutral.ts} +19 -33
  1055. package/src/palettes/warm-arch.ts +2 -187
  1056. package/src/palettes/warm-user.ts +2 -187
  1057. package/src/palettes/warm.ts +157 -0
  1058. package/src/popover/index.tsx +124 -212
  1059. package/src/popover/mobile-popover.tsx +4 -2
  1060. package/src/popover/popup-modifiers-context.ts +4 -4
  1061. package/src/preference-setting.test.ts +223 -0
  1062. package/src/preference-setting.ts +71 -0
  1063. package/src/pretty-size.test.ts +18 -0
  1064. package/src/pretty-size.ts +23 -0
  1065. package/src/reactions/reaction-button.tsx +4 -4
  1066. package/src/reactions/reaction-picker.tsx +2 -2
  1067. package/src/rich-text-embed-error.tsx +3 -1
  1068. package/src/root-theme-provider.test.tsx +25 -20
  1069. package/src/scale-generator.ts +2 -2
  1070. package/src/select/components/clear-indicator.tsx +1 -1
  1071. package/src/select/components/drop-down-indicator.tsx +2 -2
  1072. package/src/select/components/group-heading.tsx +3 -3
  1073. package/src/select/components/menu-list-virtualized.tsx +1 -1
  1074. package/src/select/components/option.tsx +1 -1
  1075. package/src/select/index.tsx +39 -38
  1076. package/src/select/select-in-popover.tsx +34 -202
  1077. package/src/select/select.tsx +6 -4
  1078. package/src/select/styles.ts +3 -0
  1079. package/src/static-palettes.ts +3 -5
  1080. package/src/tab-nav/tab-nav.tsx +61 -17
  1081. package/src/thematic-color-picker.tsx +158 -234
  1082. package/src/thematic-constants.tsx +0 -1
  1083. package/src/thematic-controls.tsx +118 -9
  1084. package/src/thematic-scales.tsx +66 -86
  1085. package/src/thematic-state.ts +62 -45
  1086. package/src/thematic.tsx +379 -244
  1087. package/src/theme-provider.test.tsx +70 -67
  1088. package/src/theme-provider.tsx +51 -34
  1089. package/src/theme-settings.ts +12 -44
  1090. package/src/theme-styles.ts +36 -23
  1091. package/src/themed-ink.tsx +26 -0
  1092. package/src/toast/toast-action.tsx +2 -2
  1093. package/src/toggle-button/round-toggle-button.tsx +2 -1
  1094. package/src/toggle-button/toggle-button.tsx +51 -38
  1095. package/src/toggle-on-off.tsx +7 -7
  1096. package/src/tooltip-if-overflown.tsx +3 -3
  1097. package/src/tree-utils.test.ts +166 -0
  1098. package/src/tree-utils.ts +107 -0
  1099. package/src/type-badge-box.tsx +2 -2
  1100. package/src/type-badge.tsx +9 -10
  1101. package/src/unit/maybe-unit-value.tsx +1 -1
  1102. package/src/unit/types.ts +1 -1
  1103. package/src/workflow-progress-icon.tsx +1 -1
  1104. package/src/actions-menu/actions-menu-open-state-tracker.tsx +0 -66
  1105. package/src/design-system/alpha.test.ts +0 -59
  1106. package/src/design-system.test.ts +0 -47
  1107. package/src/error-alert/error-alert-action.tsx +0 -12
  1108. package/src/error-alert/error-alert.tsx +0 -71
  1109. package/src/file-item/use-register-in-image-gallery.tsx +0 -70
  1110. package/src/file-item-2.tsx +0 -357
  1111. package/src/palettes/slate-arch.colors-snapshot.test.ts +0 -1689
  1112. package/src/palettes/slate-user.colors-snapshot.test.ts +0 -1689
  1113. package/src/palettes/slate-user.ts +0 -187
  1114. package/src/palettes/warm-arch.colors-snapshot.test.ts +0 -1689
  1115. package/src/palettes/warm-user.colors-snapshot.test.ts +0 -1689
  1116. /package/src/number-input/{decimal.test.js → decimal.test.ts} +0 -0
package/src/thematic.tsx CHANGED
@@ -1,8 +1,14 @@
1
+ // oxlint-disable max-lines
1
2
  import {css} from "@linaria/core";
3
+ import {useState} from "react";
2
4
  import {createPortal} from "react-dom";
3
5
  import {border, space, themeVars} from "./design-system";
4
- import {ThemeProvider} from "./theme-provider";
5
- import {toOKLCH, toRGB} from "./color-utils";
6
+ import {ThemeProvider, useTheme} from "./theme-provider";
7
+ import {useWarmPreference} from "./theme-settings";
8
+ import {inspectColor} from "./color-utils";
9
+ import {cardTypeColors} from "./design-system/colors";
10
+ import {backgrounds, sections, stickers} from "./canvas-colors";
11
+ import {type ColorScale, type ThemePalette} from "./palette-generator";
6
12
  import {useThematicState} from "./thematic-state";
7
13
  import {IconButton} from "./button/icon-button";
8
14
  import Refresh from "./icons/react/Refresh";
@@ -10,13 +16,24 @@ import Lab from "./icons/react/Lab";
10
16
  import Restore from "./icons/react/Restore";
11
17
  import ColorCoding from "./icons/react/ColorCoding";
12
18
  import Close from "./icons/react/Close";
13
- import CollapseAll from "./icons/react/CollapseAll";
19
+ import Pin from "./icons/react/Pin";
20
+ import PinFilled from "./icons/react/PinFilled";
14
21
  import FileDownload from "./icons/react/FileDownload";
15
22
  import FileUpload from "./icons/react/FileUpload";
16
23
  import {themeIcons} from "./thematic-constants";
17
- import {ArrayEditor, ArraySlider, controlRowCss, Slider} from "./thematic-controls";
18
- import {scaleCss, ScalePair, ScaleRow, sectionLabelCss, sectionSeparatorCss} from "./thematic-scales";
19
- import {SwatchWithPicker} from "./thematic-color-picker";
24
+ import {
25
+ ArrayEditor,
26
+ ArraySlider,
27
+ chromaGradient,
28
+ controlRowCss,
29
+ hueGradient,
30
+ oklchColor,
31
+ Slider,
32
+ } from "./thematic-controls";
33
+ import type {InspectChannel} from "./thematic-color-picker";
34
+ import {ScaleGrid, sectionLabelCss, sectionSeparatorCss, SPACER} from "./thematic-scales";
35
+
36
+ type PaletteScaleKey = Exclude<keyof ThemePalette, "key" | "deneutralize">;
20
37
 
21
38
  const panelCss = css`
22
39
  position: fixed;
@@ -37,38 +54,26 @@ const buttonsCss = css`
37
54
  `;
38
55
 
39
56
  export function Thematic() {
40
- const {
41
- palette,
42
- isAltPressed,
43
- collapsed,
44
- setCollapsed,
45
- visible,
46
- setVisible,
47
- themePref,
48
- isModified,
49
- showLight,
50
- showDark,
51
- isAuto,
52
- prefsPresent,
53
- staticPalette,
54
- baseCurves,
55
- setBaseCurves,
56
- accentCurves,
57
- setAccentCurves,
58
- update,
59
- randomize,
60
- cycleStaticPalettes,
61
- cycleTheme,
62
- reset,
63
- updateScaleColor,
64
- highlightScale,
65
- clearHighlight,
66
- exportState,
67
- importState,
68
- } = useThematicState();
57
+ const theme = useTheme();
58
+ const [warm, setWarm] = useWarmPreference();
59
+ const state = useThematicState();
60
+
61
+ const [hovered, setHovered] = useState(false);
62
+ const expanded = state.pinned || hovered;
63
+
64
+ const [inspectBase, setInspectBase] = useState<"l" | "c" | "h" | null>(null);
65
+ const inspectChannel: InspectChannel = inspectBase
66
+ ? state.isAltPressed
67
+ ? ({l: "hsl-l", c: "hsl-s", h: "hsl-h"} as const)[inspectBase]
68
+ : ({l: "oklch-l", c: "oklch-c", h: "oklch-h"} as const)[inspectBase]
69
+ : null;
70
+ const inspL = () => setInspectBase("l");
71
+ const inspC = () => setInspectBase("c");
72
+ const inspH = () => setInspectBase("h");
73
+ const inspOff = () => setInspectBase(null);
69
74
 
70
75
  const handleExport = () => {
71
- const data = exportState();
76
+ const data = state.exportState();
72
77
  const blob = new Blob([JSON.stringify(data, null, 2)], {type: "application/json"});
73
78
  const url = URL.createObjectURL(blob);
74
79
  const a = document.createElement("a");
@@ -89,7 +94,7 @@ export function Thematic() {
89
94
  input.onchange = () => {
90
95
  input.files?.[0]?.text().then((json) => {
91
96
  try {
92
- importState(JSON.parse(json));
97
+ state.importState(JSON.parse(json));
93
98
  } catch {
94
99
  /* ignore invalid */
95
100
  }
@@ -98,284 +103,414 @@ export function Thematic() {
98
103
  input.click();
99
104
  };
100
105
 
101
- if (!visible) {
106
+ if (!state.visible) {
102
107
  return null;
103
108
  }
104
109
 
105
110
  const panel = (
106
- <div className={panelCss}>
107
- {collapsed ? (
108
- <IconButton size="small" variant="ghost" color="neutral" onClick={() => setCollapsed(false)} title="Thematic">
109
- <ColorCoding />
110
- </IconButton>
111
+ <div className={panelCss} onMouseEnter={() => setHovered(true)} onMouseLeave={() => setHovered(false)}>
112
+ {!expanded ? (
113
+ <ColorCoding />
111
114
  ) : (
112
115
  <>
113
- <IconButton
114
- size="small"
115
- variant="ghost"
116
- color="neutral"
117
- onClick={() => setVisible(false)}
118
- title="Close"
119
- style={{position: "absolute", top: space.s4, right: space.s4}}
120
- >
121
- <Close />
122
- </IconButton>
123
- <ScalePair
124
- name="base"
125
- label="base"
126
- light={palette.base}
127
- dark={palette.baseDark}
128
- showLight={showLight}
129
- showDark={showDark}
130
- onLightColorChange={(i, c) => updateScaleColor("base", i, c)}
131
- onDarkColorChange={(i, c) => updateScaleColor("baseDark", i, c)}
132
- onLightHighlight={highlightScale("base")}
133
- onDarkHighlight={highlightScale("baseDark")}
134
- onHighlightEnd={clearHighlight}
135
- isAltPressed={isAltPressed}
116
+ <ScaleGrid
117
+ isAltPressed={state.isAltPressed}
118
+ inspectChannel={inspectChannel}
119
+ scales={(() => {
120
+ const alt = (name: PaletteScaleKey) =>
121
+ state.isAltPressed ? ([...state.providerPalette[name]] as (string | null)[]) : undefined;
122
+ const s = (name: string, scale: ColorScale, scaleName: PaletteScaleKey) => ({
123
+ name,
124
+ scale,
125
+ onColorChange: (i: number, c: string) => state.updateScaleColor(scaleName as PaletteScaleKey, i, c),
126
+ onHover: state.onSwatchHover,
127
+ onHoverEnd: state.onSwatchHoverEnd,
128
+ altColors: alt(scaleName),
129
+ });
130
+
131
+ const dn = state.palette.deneutralize ? theme.fns.deneutralize : (c: string) => c;
132
+ const isDark = state.showDark;
133
+ const canvasCol = (
134
+ defs: readonly (readonly [string, string])[],
135
+ label: string,
136
+ padBefore?: Record<number, number>
137
+ ) => {
138
+ const scale: (string | null)[] = [];
139
+ const altColors: (string | null)[] = [];
140
+ defs.forEach(([light, dark], i) => {
141
+ const pad = padBefore?.[i] ?? 0;
142
+ for (let p = 0; p < pad; p++) {
143
+ scale.push(SPACER);
144
+ altColors.push(SPACER);
145
+ }
146
+ scale.push(dn(isDark ? dark : light));
147
+ altColors.push(isDark ? light : dark);
148
+ });
149
+ return {
150
+ name: label,
151
+ scale: scale as unknown as ColorScale,
152
+ onHover: state.onSwatchHover,
153
+ onHoverEnd: state.onSwatchHoverEnd,
154
+ altColors: state.isAltPressed ? altColors : undefined,
155
+ mini: true,
156
+ };
157
+ };
158
+
159
+ return [
160
+ {
161
+ name: "whiteA",
162
+ scale: state.palette.whiteA,
163
+ onColorChange: (i: number, c: string) => state.updateScaleColor("whiteA", i, c),
164
+ onHover: state.onSwatchHover,
165
+ onHoverEnd: state.onSwatchHoverEnd,
166
+ extra: {
167
+ color: state.palette.white,
168
+ name: "white",
169
+ onChange: (c: string) => state.updateScaleColor("white", 0, c),
170
+ },
171
+ splitBg: true,
172
+ altColors: alt("whiteA"),
173
+ },
174
+ {
175
+ name: "blackA",
176
+ scale: state.palette.blackA,
177
+ onColorChange: (i: number, c: string) => state.updateScaleColor("blackA", i, c),
178
+ onHover: state.onSwatchHover,
179
+ onHoverEnd: state.onSwatchHoverEnd,
180
+ extra: {
181
+ color: state.palette.black,
182
+ name: "black",
183
+ onChange: (c: string) => state.updateScaleColor("black", 0, c),
184
+ },
185
+ splitBg: true,
186
+ altColors: alt("blackA"),
187
+ },
188
+ ...(state.showLight
189
+ ? [
190
+ s("base", state.palette.base, "base"),
191
+ s("accent", state.palette.accent, "accent"),
192
+ s("red", state.palette.red, "red"),
193
+ s("teal", state.palette.teal, "teal"),
194
+ s("yellow", state.palette.yellow, "yellow"),
195
+ ]
196
+ : []),
197
+ ...(state.showDark
198
+ ? [
199
+ s("baseDark", state.palette.baseDark, "baseDark"),
200
+ s("accentDark", state.palette.accentDark, "accentDark"),
201
+ s("redDark", state.palette.redDark, "redDark"),
202
+ s("tealDark", state.palette.tealDark, "tealDark"),
203
+ s("yellowDark", state.palette.yellowDark, "yellowDark"),
204
+ ]
205
+ : []),
206
+ {
207
+ name: "cardType",
208
+ scale: cardTypeColors.map((c) => dn(c)) as unknown as ColorScale,
209
+ onHover: state.onSwatchHover,
210
+ onHoverEnd: state.onSwatchHoverEnd,
211
+ altColors: state.isAltPressed ? [...cardTypeColors] : undefined,
212
+ mini: true,
213
+ },
214
+ canvasCol(backgrounds, "background"),
215
+ canvasCol(stickers, "sticker", {0: 1, 8: 2}),
216
+ canvasCol(sections, "section"),
217
+ ];
218
+ })()}
136
219
  />
137
- {!isAuto && (
138
- <div className={controlRowCss}>
139
- <ArrayEditor
140
- label="L"
141
- values={baseCurves.lightness}
142
- onChange={(L) => setBaseCurves({...baseCurves, lightness: L})}
143
- />
220
+
221
+ <div style={{display: "flex", alignItems: "center", gap: space.s8, minHeight: 28}}>
222
+ <div style={{display: "flex", gap: space.s2, flexShrink: 0}}>
223
+ <IconButton size="small" variant="ghost" color="neutral" onClick={handleExport} title="Export">
224
+ <FileDownload />
225
+ </IconButton>
226
+ <IconButton size="small" variant="ghost" color="neutral" onClick={handleImport} title="Import">
227
+ <FileUpload />
228
+ </IconButton>
144
229
  </div>
145
- )}
230
+ {state.hoveredInfo &&
231
+ (() => {
232
+ const [hex, hsl, oklch] = inspectColor(state.hoveredInfo.color, "\t").split("\t");
233
+ return (
234
+ <div
235
+ style={{
236
+ display: "grid",
237
+ gridTemplateColumns: "auto 1fr",
238
+ columnGap: space.s8,
239
+ fontFamily: "monospace",
240
+ fontSize: 11,
241
+ lineHeight: "14px",
242
+ color: themeVars.colorTextSecondary,
243
+ }}
244
+ >
245
+ <span>{state.hoveredInfo.name}</span>
246
+ <span>{hsl}</span>
247
+ <span>{hex}</span>
248
+ <span>{oklch}</span>
249
+ </div>
250
+ );
251
+ })()}
252
+ </div>
253
+
254
+ <div className={sectionSeparatorCss} />
255
+
256
+ <div className={sectionLabelCss} style={{fontWeight: 700}}>
257
+ palette
258
+ </div>
259
+
260
+ <div className={sectionLabelCss}>base{state.prefs ? " *" : ""}</div>
261
+ <div className={controlRowCss}>
262
+ <ArrayEditor
263
+ label="L"
264
+ values={state.baseCurves.lightness}
265
+ onChange={(L) => state.setBaseCurves({...state.baseCurves, lightness: L})}
266
+ onLabelHover={inspL}
267
+ onLabelLeave={inspOff}
268
+ />
269
+ </div>
146
270
  <ArraySlider
147
- label="C"
148
- values={baseCurves.chroma}
149
- onValuesChange={isAuto ? undefined : (C) => setBaseCurves({...baseCurves, chroma: C})}
150
- sliderValue={prefsPresent.baseChroma ?? 0}
151
- onSliderChange={(v) => update({baseChroma: v})}
271
+ label={state.prefs?.baseChroma !== undefined ? "C *" : "C"}
272
+ values={state.baseCurves.chroma}
273
+ onValuesChange={(C) => state.setBaseCurves({...state.baseCurves, chroma: C})}
274
+ sliderValue={state.prefsPresent.baseChroma ?? 0}
275
+ onSliderChange={(v) => state.update({baseChroma: v})}
152
276
  min={0}
153
277
  max={0.25}
154
278
  step={0.001}
279
+ gradient={chromaGradient(state.prefsPresent.baseHue ?? 0, 0.25)}
280
+ color={oklchColor(state.prefsPresent.baseHue ?? 0, state.prefsPresent.baseChroma ?? 0)}
281
+ onLabelHover={inspC}
282
+ onLabelLeave={inspOff}
155
283
  />
156
284
  <Slider
157
- label="H"
158
- value={prefsPresent.baseHue ?? 0}
285
+ label={state.prefs?.baseHue !== undefined ? "H *" : "H"}
286
+ value={state.prefsPresent.baseHue ?? 0}
159
287
  min={0}
160
288
  max={360}
161
289
  step={1}
162
- onChange={(v) => update({baseHue: v})}
290
+ onChange={(v) => state.update({baseHue: v})}
291
+ gradient={hueGradient(state.prefsPresent.baseChroma ?? 0)}
292
+ color={oklchColor(state.prefsPresent.baseHue ?? 0, state.prefsPresent.baseChroma ?? 0)}
293
+ onLabelHover={inspH}
294
+ onLabelLeave={inspOff}
163
295
  />
164
296
 
165
- <div className={sectionSeparatorCss} />
166
-
167
- <ScalePair
168
- name="accent"
169
- label="accent"
170
- light={palette.accent}
171
- dark={palette.accentDark}
172
- showLight={showLight}
173
- showDark={showDark}
174
- onLightColorChange={(i, c) => updateScaleColor("accent", i, c)}
175
- onDarkColorChange={(i, c) => updateScaleColor("accentDark", i, c)}
176
- onLightHighlight={highlightScale("accent")}
177
- onDarkHighlight={highlightScale("accentDark")}
178
- onHighlightEnd={clearHighlight}
179
- isAltPressed={isAltPressed}
180
- />
181
- {!isAuto && (
182
- <div className={controlRowCss}>
183
- <ArrayEditor
184
- label="L"
185
- values={accentCurves.lightness}
186
- onChange={(L) => setAccentCurves({...accentCurves, lightness: L})}
187
- />
188
- </div>
189
- )}
297
+ <div className={sectionLabelCss}>accent{state.prefs ? " *" : ""}</div>
298
+ <div className={controlRowCss}>
299
+ <ArrayEditor
300
+ label="L"
301
+ values={state.accentCurves.lightness}
302
+ onChange={(L) => state.setAccentCurves({...state.accentCurves, lightness: L})}
303
+ onLabelHover={inspL}
304
+ onLabelLeave={inspOff}
305
+ />
306
+ </div>
190
307
  <ArraySlider
191
- label="C"
192
- values={accentCurves.chroma}
193
- onValuesChange={isAuto ? undefined : (C) => setAccentCurves({...accentCurves, chroma: C})}
194
- sliderValue={prefsPresent.accentChroma}
195
- onSliderChange={(v) => update({accentChroma: v})}
308
+ label={state.prefs?.accentChroma !== undefined ? "C *" : "C"}
309
+ values={state.accentCurves.chroma}
310
+ onValuesChange={(C) => state.setAccentCurves({...state.accentCurves, chroma: C})}
311
+ sliderValue={state.prefsPresent.accentChroma}
312
+ onSliderChange={(v) => state.update({accentChroma: v})}
196
313
  min={0.05}
197
314
  max={0.25}
198
315
  step={0.001}
316
+ gradient={chromaGradient(state.prefsPresent.accentHue, 0.25)}
317
+ color={oklchColor(state.prefsPresent.accentHue, state.prefsPresent.accentChroma)}
318
+ onLabelHover={inspC}
319
+ onLabelLeave={inspOff}
199
320
  />
200
321
  <Slider
201
- label="H"
202
- value={prefsPresent.accentHue}
322
+ label={state.prefs?.accentHue !== undefined ? "H *" : "H"}
323
+ value={state.prefsPresent.accentHue}
203
324
  min={0}
204
325
  max={360}
205
326
  step={1}
206
- onChange={(v) => update({accentHue: v})}
327
+ onChange={(v) => state.update({accentHue: v})}
328
+ gradient={hueGradient(state.prefsPresent.accentChroma)}
329
+ color={oklchColor(state.prefsPresent.accentHue, state.prefsPresent.accentChroma)}
330
+ onLabelHover={inspH}
331
+ onLabelLeave={inspOff}
207
332
  />
208
333
 
209
- <div className={sectionSeparatorCss} />
210
-
211
- <ScalePair
212
- name="red"
213
- light={palette.red}
214
- dark={palette.redDark}
215
- showLight={showLight}
216
- showDark={showDark}
217
- onLightColorChange={(i, c) => updateScaleColor("red", i, c)}
218
- onDarkColorChange={(i, c) => updateScaleColor("redDark", i, c)}
219
- onLightHighlight={highlightScale("red")}
220
- onDarkHighlight={highlightScale("redDark")}
221
- onHighlightEnd={clearHighlight}
222
- isAltPressed={isAltPressed}
223
- />
224
- <ScalePair
225
- name="teal"
226
- light={palette.teal}
227
- dark={palette.tealDark}
228
- showLight={showLight}
229
- showDark={showDark}
230
- onLightColorChange={(i, c) => updateScaleColor("teal", i, c)}
231
- onDarkColorChange={(i, c) => updateScaleColor("tealDark", i, c)}
232
- onLightHighlight={highlightScale("teal")}
233
- onDarkHighlight={highlightScale("tealDark")}
234
- onHighlightEnd={clearHighlight}
235
- isAltPressed={isAltPressed}
236
- />
237
- <ScalePair
238
- name="yellow"
239
- light={palette.yellow}
240
- dark={palette.yellowDark}
241
- showLight={showLight}
242
- showDark={showDark}
243
- onLightColorChange={(i, c) => updateScaleColor("yellow", i, c)}
244
- onDarkColorChange={(i, c) => updateScaleColor("yellowDark", i, c)}
245
- onLightHighlight={highlightScale("yellow")}
246
- onDarkHighlight={highlightScale("yellowDark")}
247
- onHighlightEnd={clearHighlight}
248
- isAltPressed={isAltPressed}
334
+ <div className={sectionLabelCss}>
335
+ hue shift
336
+ {state.prefs?.hueShiftTargetHue !== undefined || state.prefs?.hueShiftAmount !== undefined ? " *" : ""}
337
+ </div>
338
+ <Slider
339
+ label={state.prefs?.hueShiftTargetHue !== undefined ? "target H *" : "target H"}
340
+ value={state.prefsPresent.hueShiftTargetHue ?? state.prefsPresent.baseHue ?? 0}
341
+ min={0}
342
+ max={360}
343
+ step={1}
344
+ onChange={(v) => state.updateHueShift({hueShiftTargetHue: v})}
345
+ gradient={hueGradient(0.15)}
346
+ color={oklchColor(state.prefsPresent.hueShiftTargetHue ?? state.prefsPresent.baseHue ?? 0, 0.15)}
249
347
  />
250
-
251
348
  <Slider
252
- label="contrast"
253
- value={prefsPresent.contrast ?? 1}
254
- min={0.7}
255
- max={1.3}
349
+ label={state.prefs?.hueShiftAmount !== undefined ? "amount *" : "amount"}
350
+ value={state.prefsPresent.hueShiftAmount ?? Math.min((state.prefsPresent.baseChroma ?? 0) * 2, 0.3)}
351
+ min={0}
352
+ max={1}
256
353
  step={0.01}
257
- onChange={(v) => update({contrast: v})}
354
+ onChange={(v) => state.updateHueShift({hueShiftAmount: v})}
258
355
  />
259
356
 
260
357
  <div className={sectionSeparatorCss} />
261
358
 
262
- <div className={sectionLabelCss}>lights & shades</div>
263
- <div className={scaleCss}>
264
- <div style={{border: "1px solid #888", borderRadius: 5}}>
265
- <SwatchWithPicker
266
- color={palette.white}
267
- title={`white\n${toRGB(palette.white)}\n${toOKLCH(palette.white)}`}
268
- onChange={(c) => updateScaleColor("white", 0, c)}
269
- isAltPressed={isAltPressed}
270
- />
271
- </div>
272
- <div style={{border: "1px solid #888", borderRadius: 5}}>
273
- <SwatchWithPicker
274
- color={palette.black}
275
- title={`black\n${toRGB(palette.black)}\n${toOKLCH(palette.black)}`}
276
- onChange={(c) => updateScaleColor("black", 0, c)}
277
- isAltPressed={isAltPressed}
278
- />
279
- </div>
359
+ <div className={sectionLabelCss} style={{fontWeight: 700}}>
360
+ deneutralize{state.prefs?.filter || state.customPalette?.deneutralize ? " *" : ""}
280
361
  </div>
281
-
282
- <ScaleRow
283
- name="whiteA"
284
- scale={palette.whiteA}
285
- onColorChange={(i, c) => updateScaleColor("whiteA", i, c)}
286
- onHighlight={highlightScale("whiteA")}
287
- onHighlightEnd={clearHighlight}
288
- isAltPressed={isAltPressed}
362
+ <Slider
363
+ label="hue shift H"
364
+ value={state.palette.deneutralize?.hueShift?.targetHue ?? 0}
365
+ min={0}
366
+ max={360}
367
+ step={1}
368
+ onChange={(v) =>
369
+ state.updateFilter({hueShift: {targetHue: v, amount: state.palette.deneutralize?.hueShift?.amount ?? 0}})
370
+ }
371
+ gradient={hueGradient(0.15)}
372
+ color={oklchColor(state.palette.deneutralize?.hueShift?.targetHue ?? 0, 0.15)}
373
+ />
374
+ <Slider
375
+ label="hue shift amt"
376
+ value={state.palette.deneutralize?.hueShift?.amount ?? 0}
377
+ min={0}
378
+ max={1}
379
+ step={0.01}
380
+ onChange={(v) =>
381
+ state.updateFilter({
382
+ hueShift: {targetHue: state.palette.deneutralize?.hueShift?.targetHue ?? 0, amount: v},
383
+ })
384
+ }
289
385
  />
290
386
  <Slider
291
- label="L"
292
- value={prefsPresent.whiteLuminosity ?? 1}
293
- min={0.5}
294
- max={1.5}
387
+ label="oklch L"
388
+ value={state.palette.deneutralize?.oklchL ?? 1}
389
+ min={0}
390
+ max={2}
295
391
  step={0.01}
296
- onChange={(v) => update({whiteLuminosity: v})}
392
+ onChange={(v) => state.updateFilter({oklchL: v})}
297
393
  />
298
394
  <Slider
299
- label="C"
300
- value={prefsPresent.whiteChroma ?? 1}
395
+ label="oklch C"
396
+ value={state.palette.deneutralize?.oklchC ?? 1}
301
397
  min={0}
302
398
  max={3}
303
399
  step={0.01}
304
- onChange={(v) => update({whiteChroma: v})}
400
+ onChange={(v) => state.updateFilter({oklchC: v})}
305
401
  />
306
-
307
- <ScaleRow
308
- name="blackA"
309
- scale={palette.blackA}
310
- onColorChange={(i, c) => updateScaleColor("blackA", i, c)}
311
- onHighlight={highlightScale("blackA")}
312
- onHighlightEnd={clearHighlight}
313
- isAltPressed={isAltPressed}
402
+ <Slider
403
+ label="brightness"
404
+ value={state.palette.deneutralize?.brightness ?? 1}
405
+ min={0}
406
+ max={3}
407
+ step={0.01}
408
+ onChange={(v) => state.updateFilter({brightness: v})}
314
409
  />
315
410
  <Slider
316
- label="L"
317
- value={prefsPresent.blackLuminosity ?? 1}
318
- min={0.5}
319
- max={1.5}
411
+ label="contrast"
412
+ value={state.palette.deneutralize?.contrast ?? 1}
413
+ min={0}
414
+ max={3}
320
415
  step={0.01}
321
- onChange={(v) => update({blackLuminosity: v})}
416
+ onChange={(v) => state.updateFilter({contrast: v})}
322
417
  />
323
418
  <Slider
324
- label="C"
325
- value={prefsPresent.blackChroma ?? 1}
419
+ label="saturate"
420
+ value={state.palette.deneutralize?.saturate ?? 1}
326
421
  min={0}
327
422
  max={3}
328
423
  step={0.01}
329
- onChange={(v) => update({blackChroma: v})}
424
+ onChange={(v) => state.updateFilter({saturate: v})}
425
+ />
426
+ <Slider
427
+ label="hue rotate"
428
+ value={state.palette.deneutralize?.hueRotate ?? 0}
429
+ min={-180}
430
+ max={180}
431
+ step={1}
432
+ onChange={(v) => state.updateFilter({hueRotate: v})}
433
+ />
434
+ <Slider
435
+ label="sepia"
436
+ value={state.palette.deneutralize?.sepia ?? 0}
437
+ min={0}
438
+ max={1}
439
+ step={0.01}
440
+ onChange={(v) => state.updateFilter({sepia: v})}
441
+ />
442
+ <Slider
443
+ label="grayscale"
444
+ value={state.palette.deneutralize?.grayscale ?? 0}
445
+ min={0}
446
+ max={1}
447
+ step={0.01}
448
+ onChange={(v) => state.updateFilter({grayscale: v})}
449
+ />
450
+ <Slider
451
+ label="invert"
452
+ value={state.palette.deneutralize?.invert ?? 0}
453
+ min={0}
454
+ max={1}
455
+ step={0.01}
456
+ onChange={(v) => state.updateFilter({invert: v})}
330
457
  />
331
458
 
459
+ <div className={sectionSeparatorCss} />
460
+
332
461
  <div className={buttonsCss} style={{justifyContent: "space-between"}}>
333
462
  <div style={{display: "flex", gap: space.s4}}>
334
463
  <IconButton
335
464
  size="small"
336
- variant="ghost"
465
+ variant={state.pinned && !state.isAltPressed ? "soft" : "ghost"}
337
466
  color="neutral"
338
- onClick={() => setCollapsed(true)}
339
- title="Collapse"
467
+ onClick={() => (state.isAltPressed ? state.setVisible(false) : state.setPinned(!state.pinned))}
468
+ title={state.isAltPressed ? "Close" : state.pinned ? "Unpin" : "Pin"}
340
469
  >
341
- <CollapseAll />
470
+ {state.isAltPressed ? <Close /> : state.pinned ? <PinFilled /> : <Pin />}
342
471
  </IconButton>
343
- {isAltPressed ? (
472
+ </div>
473
+ <div style={{display: "flex", gap: space.s4}}>
474
+ {state.isAltPressed ? (
475
+ <>
476
+ <IconButton
477
+ size="small"
478
+ variant={state.staticPalette ? "solid" : "soft"}
479
+ color="error"
480
+ onClick={state.cycleStaticPalettes}
481
+ title="Static palettes"
482
+ >
483
+ <Lab />
484
+ </IconButton>
485
+ <IconButton size="small" variant="soft" color="accent" onClick={state.randomize} title="Randomize">
486
+ <Refresh />
487
+ </IconButton>
488
+ </>
489
+ ) : state.isModified ? (
490
+ <IconButton size="small" variant="ghost" color="neutral" onClick={state.reset} title="Defaults">
491
+ <Restore />
492
+ </IconButton>
493
+ ) : (
344
494
  <IconButton
345
495
  size="small"
346
- variant={staticPalette ? "solid" : "soft"}
347
- color="error"
348
- onClick={cycleStaticPalettes}
349
- title="Beware"
496
+ variant={warm ? "soft" : "ghost"}
497
+ color="neutral"
498
+ onClick={() => setWarm(!warm)}
499
+ title={warm ? "warm → neutral" : "neutral → warm"}
350
500
  >
351
- <Lab />
352
- </IconButton>
353
- ) : (
354
- <IconButton size="small" variant="soft" color="accent" onClick={randomize} title="Shuffle">
355
- <Refresh />
501
+ <span style={{fontSize: 11, fontWeight: 600}}>{warm ? "W" : "N"}</span>
356
502
  </IconButton>
357
503
  )}
358
- <IconButton size="small" variant="ghost" color="neutral" onClick={handleExport} title="Export">
359
- <FileDownload />
360
- </IconButton>
361
- <IconButton size="small" variant="ghost" color="neutral" onClick={handleImport} title="Import">
362
- <FileUpload />
504
+ <IconButton
505
+ size="small"
506
+ variant="ghost"
507
+ color="neutral"
508
+ onClick={state.cycleTheme}
509
+ title={state.isAltPressed ? "auto" : state.themePref}
510
+ >
511
+ {themeIcons[state.isAltPressed ? "auto" : state.themePref]}
363
512
  </IconButton>
364
- {isModified && (
365
- <IconButton size="small" variant="ghost" color="neutral" onClick={reset} title="Defaults">
366
- <Restore />
367
- </IconButton>
368
- )}
369
513
  </div>
370
- <IconButton
371
- size="small"
372
- variant="ghost"
373
- color="neutral"
374
- onClick={cycleTheme}
375
- title={isAltPressed ? "auto" : themePref}
376
- >
377
- {themeIcons[isAltPressed ? "auto" : themePref]}
378
- </IconButton>
379
514
  </div>
380
515
  </>
381
516
  )}