@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
@@ -10,17 +10,20 @@ import {
10
10
  useThemePreference,
11
11
  useThemeStyles,
12
12
  } from "./theme-provider";
13
- import {defaultDarkTheme, defaultLightTheme, defaultLightThemeStyles} from "./theme-styles";
14
- import {createInlineStyles, getThemeColors, themeVars} from "./design-system";
15
- import {makeDefaultPalette} from "./palette-generator";
13
+ import {locateThemeBundle} from "./theme-styles";
14
+ import {stylesFromTheme, themeFromPalette, themeVars} from "./design-system";
16
15
 
17
- const palette = makeDefaultPalette();
16
+ const {
17
+ palette,
18
+ themes: [coolLightTheme, coolDarkTheme],
19
+ styles: [coolLightThemeStyles],
20
+ } = locateThemeBundle(false);
18
21
 
19
22
  function ThemeDisplay({testId = "theme-display"}: {testId?: string}) {
20
23
  const theme = useTheme();
21
24
  const mode = useThemeMode();
22
25
  return (
23
- <div data-testid={testId} data-mode={mode} data-primary={theme.primary}>
26
+ <div data-testid={testId} data-mode={mode} data-primary={theme.colors.colorAccent}>
24
27
  {theme.key}
25
28
  </div>
26
29
  );
@@ -30,7 +33,7 @@ describe("ThemeProvider", () => {
30
33
  describe("basic rendering", () => {
31
34
  it("renders children", () => {
32
35
  render(
33
- <ThemeProvider theme={defaultLightTheme}>
36
+ <ThemeProvider theme={coolLightTheme}>
34
37
  <div data-testid="child">Hello</div>
35
38
  </ThemeProvider>
36
39
  );
@@ -39,7 +42,7 @@ describe("ThemeProvider", () => {
39
42
 
40
43
  it("provides theme via useTheme", () => {
41
44
  render(
42
- <ThemeProvider theme={defaultLightTheme}>
45
+ <ThemeProvider theme={coolLightTheme}>
43
46
  <ThemeDisplay />
44
47
  </ThemeProvider>
45
48
  );
@@ -48,7 +51,7 @@ describe("ThemeProvider", () => {
48
51
 
49
52
  it("provides dark theme correctly", () => {
50
53
  render(
51
- <ThemeProvider theme={defaultDarkTheme}>
54
+ <ThemeProvider theme={coolDarkTheme}>
52
55
  <ThemeDisplay />
53
56
  </ThemeProvider>
54
57
  );
@@ -59,8 +62,8 @@ describe("ThemeProvider", () => {
59
62
  describe("diff behavior", () => {
60
63
  it("when theme equals parent, applies no styles", () => {
61
64
  const {container} = render(
62
- <ThemeProvider theme={defaultLightTheme}>
63
- <ThemeProvider theme={defaultLightTheme}>
65
+ <ThemeProvider theme={coolLightTheme}>
66
+ <ThemeProvider theme={coolLightTheme}>
64
67
  <ThemeDisplay />
65
68
  </ThemeProvider>
66
69
  </ThemeProvider>
@@ -72,12 +75,12 @@ describe("ThemeProvider", () => {
72
75
  });
73
76
 
74
77
  it("nested provider only sets properties that differ from parent", () => {
75
- const lightTheme = getThemeColors(null, "light", palette);
76
- const darkTheme = getThemeColors(null, "dark", palette);
78
+ const lightTheme = themeFromPalette(palette, "light");
79
+ const darkTheme = themeFromPalette(palette, "dark");
77
80
 
78
81
  // Compare full inline themes to verify they differ
79
- const lightStyles = createInlineStyles(lightTheme);
80
- const darkStyles = createInlineStyles(darkTheme);
82
+ const lightStyles = stylesFromTheme(lightTheme);
83
+ const darkStyles = stylesFromTheme(darkTheme);
81
84
 
82
85
  // Count how many properties differ between light and dark
83
86
  let diffCount = 0;
@@ -109,13 +112,13 @@ describe("ThemeProvider", () => {
109
112
  });
110
113
 
111
114
  it("deeply nested providers accumulate only diffs", () => {
112
- const theme1 = getThemeColors(null, "light", palette);
113
- const theme2 = getThemeColors(null, "dark", palette);
114
- const theme3 = getThemeColors(null, "light", palette); // back to light
115
+ const theme1 = themeFromPalette(palette, "light");
116
+ const theme2 = themeFromPalette(palette, "dark");
117
+ const theme3 = themeFromPalette(palette, "light"); // back to light
115
118
 
116
119
  // Verify themes differ
117
- const styles1 = createInlineStyles(theme1);
118
- const styles2 = createInlineStyles(theme2);
120
+ const styles1 = stylesFromTheme(theme1);
121
+ const styles2 = stylesFromTheme(theme2);
119
122
 
120
123
  let diffCount = 0;
121
124
  for (const key in styles2) {
@@ -147,7 +150,7 @@ describe("ThemeProvider", () => {
147
150
 
148
151
  describe("context-based diff", () => {
149
152
  it("diffs against parent context value", () => {
150
- const lightTheme = getThemeColors(null, "light", palette);
153
+ const lightTheme = themeFromPalette(palette, "light");
151
154
 
152
155
  // When parent context has same theme, diff should be empty
153
156
  const {container} = render(
@@ -173,8 +176,8 @@ describe("ThemeProvider", () => {
173
176
  // Outer ThemeProvider sets context to dark theme
174
177
  // Inner ThemeProvider with same theme should have empty diff
175
178
  const {container} = render(
176
- <ThemeProvider theme={defaultDarkTheme}>
177
- <ThemeProvider theme={defaultDarkTheme}>
179
+ <ThemeProvider theme={coolDarkTheme}>
180
+ <ThemeProvider theme={coolDarkTheme}>
178
181
  <ThemeDisplay />
179
182
  </ThemeProvider>
180
183
  </ThemeProvider>
@@ -193,11 +196,11 @@ describe("ThemeProvider", () => {
193
196
 
194
197
  describe("rejectKeys", () => {
195
198
  it("by default, all properties are included in diff", () => {
196
- const lightTheme = getThemeColors(null, "light", palette);
197
- const darkTheme = getThemeColors(null, "dark", palette);
199
+ const lightTheme = themeFromPalette(palette, "light");
200
+ const darkTheme = themeFromPalette(palette, "dark");
198
201
 
199
- const lightStyles = createInlineStyles(lightTheme);
200
- const darkStyles = createInlineStyles(darkTheme);
202
+ const lightStyles = stylesFromTheme(lightTheme);
203
+ const darkStyles = stylesFromTheme(darkTheme);
201
204
 
202
205
  let diffCount = 0;
203
206
  for (const key in darkStyles) {
@@ -224,10 +227,10 @@ describe("ThemeProvider", () => {
224
227
  });
225
228
 
226
229
  it("without rejectKeys, uses default reject keys (fewer properties)", () => {
227
- const theme = getThemeColors(null, "dark", palette);
230
+ const theme = themeFromPalette(palette, "dark");
228
231
 
229
232
  const {container: withEmptyReject} = render(
230
- <ThemeProvider theme={defaultLightTheme}>
233
+ <ThemeProvider theme={coolLightTheme}>
231
234
  <ThemeProvider theme={theme}>
232
235
  <ThemeDisplay testId="with-empty" />
233
236
  </ThemeProvider>
@@ -235,7 +238,7 @@ describe("ThemeProvider", () => {
235
238
  );
236
239
 
237
240
  const {container: withDefaultReject} = render(
238
- <ThemeProvider theme={defaultLightTheme}>
241
+ <ThemeProvider theme={coolLightTheme}>
239
242
  <ThemeProvider theme={theme}>
240
243
  <ThemeDisplay testId="with-default" />
241
244
  </ThemeProvider>
@@ -258,8 +261,8 @@ describe("ThemeProvider", () => {
258
261
 
259
262
  describe("useTheme and useThemeMode", () => {
260
263
  it("useTheme returns current theme in nested context", () => {
261
- const lightTheme = getThemeColors(null, "light", palette);
262
- const darkTheme = getThemeColors(null, "dark", palette);
264
+ const lightTheme = themeFromPalette(palette, "light");
265
+ const darkTheme = themeFromPalette(palette, "dark");
263
266
 
264
267
  render(
265
268
  <ThemeProvider theme={lightTheme}>
@@ -325,7 +328,7 @@ describe("ThemeProvider", () => {
325
328
 
326
329
  describe("style optimization verification", () => {
327
330
  it("same theme nested produces no inline styles", () => {
328
- const theme = getThemeColors(null, "light", palette);
331
+ const theme = themeFromPalette(palette, "light");
329
332
 
330
333
  const {container} = render(
331
334
  <ThemeProvider theme={theme}>
@@ -353,11 +356,11 @@ describe("ThemeProvider", () => {
353
356
  });
354
357
 
355
358
  it("switching light→dark→light produces symmetric diffs", () => {
356
- const lightTheme = getThemeColors(null, "light", palette);
357
- const darkTheme = getThemeColors(null, "dark", palette);
359
+ const lightTheme = themeFromPalette(palette, "light");
360
+ const darkTheme = themeFromPalette(palette, "dark");
358
361
 
359
- const lightStyles = createInlineStyles(lightTheme);
360
- const darkStyles = createInlineStyles(darkTheme);
362
+ const lightStyles = stylesFromTheme(lightTheme);
363
+ const darkStyles = stylesFromTheme(darkTheme);
361
364
 
362
365
  // Calculate light→dark diff
363
366
  const lightToDarkDiff: Record<string, string> = {};
@@ -380,14 +383,14 @@ describe("ThemeProvider", () => {
380
383
  });
381
384
 
382
385
  it("diff count is significantly less than full theme count", () => {
383
- const lightTheme = getThemeColors(null, "light", palette);
384
- const darkTheme = getThemeColors(null, "dark", palette);
386
+ const lightTheme = themeFromPalette(palette, "light");
387
+ const darkTheme = themeFromPalette(palette, "dark");
385
388
 
386
- const fullStyles = createInlineStyles(darkTheme);
389
+ const fullStyles = stylesFromTheme(darkTheme);
387
390
  const fullCount = Object.keys(fullStyles).length;
388
391
 
389
392
  // Calculate diff
390
- const lightStyles = createInlineStyles(lightTheme);
393
+ const lightStyles = stylesFromTheme(lightTheme);
391
394
  let diffCount = 0;
392
395
  for (const key in fullStyles) {
393
396
  if (fullStyles[key] !== lightStyles[key]) {
@@ -404,8 +407,8 @@ describe("ThemeProvider", () => {
404
407
 
405
408
  describe("style helpers verification", () => {
406
409
  it("getStyleCount returns correct number of CSS properties", () => {
407
- const lightTheme = getThemeColors(null, "light", palette);
408
- const darkTheme = getThemeColors(null, "dark", palette);
410
+ const lightTheme = themeFromPalette(palette, "light");
411
+ const darkTheme = themeFromPalette(palette, "dark");
409
412
 
410
413
  // Same theme nested = inner div has no style attribute (empty diff)
411
414
  const {container: sameContainer} = render(
@@ -439,10 +442,10 @@ describe("ThemeProvider", () => {
439
442
  });
440
443
 
441
444
  it("getStyleObject returns parseable CSS properties", () => {
442
- const darkTheme = getThemeColors(null, "dark", palette);
445
+ const darkTheme = themeFromPalette(palette, "dark");
443
446
 
444
447
  const {container} = render(
445
- <ThemeProvider theme={defaultLightTheme}>
448
+ <ThemeProvider theme={coolLightTheme}>
446
449
  <ThemeProvider theme={darkTheme}>
447
450
  <span>content</span>
448
451
  </ThemeProvider>
@@ -473,7 +476,7 @@ describe("ThemeProvider", () => {
473
476
  });
474
477
 
475
478
  it("nested providers have decreasing style counts", () => {
476
- const darkTheme = getThemeColors(null, "dark", palette);
479
+ const darkTheme = themeFromPalette(palette, "dark");
477
480
 
478
481
  // Outer: diff from context default
479
482
  // Inner: only diff from outer (which should be 0 since same theme)
@@ -502,10 +505,10 @@ describe("ThemeProvider", () => {
502
505
  });
503
506
 
504
507
  it("getStyleObject can verify specific CSS variable values", () => {
505
- const darkTheme = getThemeColors(null, "dark", palette);
508
+ const darkTheme = themeFromPalette(palette, "dark");
506
509
 
507
510
  const {container} = render(
508
- <ThemeProvider theme={defaultLightTheme}>
511
+ <ThemeProvider theme={coolLightTheme}>
509
512
  <ThemeProvider theme={darkTheme}>
510
513
  <span>content</span>
511
514
  </ThemeProvider>
@@ -541,7 +544,7 @@ describe("ThemeProvider", () => {
541
544
 
542
545
  it("returns computed styles from context", () => {
543
546
  render(
544
- <ThemeProvider theme={defaultLightTheme}>
547
+ <ThemeProvider theme={coolLightTheme}>
545
548
  <StylesDisplay />
546
549
  </ThemeProvider>
547
550
  );
@@ -552,14 +555,14 @@ describe("ThemeProvider", () => {
552
555
  it("returns default styles outside ThemeProvider", () => {
553
556
  render(<StylesDisplay />);
554
557
  const count = Number(screen.getByTestId("styles").getAttribute("data-style-count"));
555
- expect(count).toBe(Object.keys(defaultLightThemeStyles).length);
558
+ expect(count).toBe(Object.keys(coolLightThemeStyles).length);
556
559
  });
557
560
 
558
561
  it("nested provider updates styles context", () => {
559
562
  render(
560
- <ThemeProvider theme={defaultLightTheme}>
563
+ <ThemeProvider theme={coolLightTheme}>
561
564
  <StylesDisplay testId="outer" />
562
- <ThemeProvider theme={defaultDarkTheme}>
565
+ <ThemeProvider theme={coolDarkTheme}>
563
566
  <StylesDisplay testId="inner" />
564
567
  </ThemeProvider>
565
568
  </ThemeProvider>
@@ -624,7 +627,7 @@ describe("ThemeProvider", () => {
624
627
  }
625
628
 
626
629
  it("diffs against root styles, not parent context", () => {
627
- const darkTheme = getThemeColors(null, "dark", palette);
630
+ const darkTheme = themeFromPalette(palette, "dark");
628
631
 
629
632
  // Non-portal dark inside dark parent: diffs against parent (same) → 0 styles
630
633
  const {container: normalContainer} = renderWithRoot(
@@ -660,7 +663,7 @@ describe("ThemeProvider", () => {
660
663
  });
661
664
 
662
665
  it("when theme matches root, produces no inline styles", () => {
663
- const lightTheme = getThemeColors(null, "light", palette);
666
+ const lightTheme = themeFromPalette(palette, "light");
664
667
 
665
668
  const {container} = renderWithRoot(
666
669
  <ThemeProvider theme={lightTheme} portal>
@@ -675,11 +678,11 @@ describe("ThemeProvider", () => {
675
678
  });
676
679
 
677
680
  it("when theme differs from root, emits diff against root", () => {
678
- const lightTheme = getThemeColors(null, "light", palette);
679
- const darkTheme = getThemeColors(null, "dark", palette);
681
+ const lightTheme = themeFromPalette(palette, "light");
682
+ const darkTheme = themeFromPalette(palette, "dark");
680
683
 
681
- const lightStyles = createInlineStyles(lightTheme);
682
- const darkStyles = createInlineStyles(darkTheme);
684
+ const lightStyles = stylesFromTheme(lightTheme);
685
+ const darkStyles = stylesFromTheme(darkTheme);
683
686
  let expectedDiffCount = 0;
684
687
  for (const key in darkStyles) {
685
688
  if (darkStyles[key] !== lightStyles[key]) {
@@ -699,8 +702,8 @@ describe("ThemeProvider", () => {
699
702
  });
700
703
 
701
704
  it("portal ignores intermediate parent overrides for diff base", () => {
702
- const lightTheme = getThemeColors(null, "light", palette);
703
- const darkTheme = getThemeColors(null, "dark", palette);
705
+ const lightTheme = themeFromPalette(palette, "light");
706
+ const darkTheme = themeFromPalette(palette, "dark");
704
707
 
705
708
  // root(light) > dark > portal(light)
706
709
  // Portal diffs against root(light), not dark parent
@@ -719,11 +722,11 @@ describe("ThemeProvider", () => {
719
722
  });
720
723
 
721
724
  it("portal with dark mode emits overrides vs light root", () => {
722
- const lightTheme = getThemeColors(null, "light", palette);
723
- const darkTheme = getThemeColors(null, "dark", palette);
725
+ const lightTheme = themeFromPalette(palette, "light");
726
+ const darkTheme = themeFromPalette(palette, "dark");
724
727
 
725
- const lightStyles = createInlineStyles(lightTheme);
726
- const darkStyles = createInlineStyles(darkTheme);
728
+ const lightStyles = stylesFromTheme(lightTheme);
729
+ const darkStyles = stylesFromTheme(darkTheme);
727
730
  let expectedDiffCount = 0;
728
731
  for (const key in darkStyles) {
729
732
  if (darkStyles[key] !== lightStyles[key]) {
@@ -744,7 +747,7 @@ describe("ThemeProvider", () => {
744
747
  });
745
748
 
746
749
  it("non-portal still diffs against parent context", () => {
747
- const darkTheme = getThemeColors(null, "dark", palette);
750
+ const darkTheme = themeFromPalette(palette, "dark");
748
751
 
749
752
  // Non-portal nested with same theme as parent: empty diff
750
753
  const {container} = renderWithRoot(
@@ -761,7 +764,7 @@ describe("ThemeProvider", () => {
761
764
  });
762
765
 
763
766
  it("provides correct theme context regardless of portal flag", () => {
764
- const darkTheme = getThemeColors(null, "dark", palette);
767
+ const darkTheme = themeFromPalette(palette, "dark");
765
768
 
766
769
  renderWithRoot(
767
770
  <ThemeProvider theme={darkTheme} portal>
@@ -773,11 +776,11 @@ describe("ThemeProvider", () => {
773
776
  });
774
777
 
775
778
  it("provides correct ThemeStylesContext inside portal", () => {
776
- const darkTheme = getThemeColors(null, "dark", palette);
779
+ const darkTheme = themeFromPalette(palette, "dark");
777
780
 
778
781
  function StylesCheck() {
779
782
  const styles = useThemeStyles();
780
- const expected = createInlineStyles(darkTheme);
783
+ const expected = stylesFromTheme(darkTheme);
781
784
  const match = Object.keys(expected).every((k) => styles[k] === expected[k]);
782
785
  return <div data-testid="styles-match" data-match={String(match)} />;
783
786
  }
@@ -1,11 +1,5 @@
1
1
  import invariant from "invariant";
2
- import {
3
- chooseGlobalStyles,
4
- defaultLightTheme,
5
- defaultLightThemeStyles,
6
- defaultPalette,
7
- selectGlobalThemePair,
8
- } from "./theme-styles";
2
+ import {chooseGlobalStyles, locateThemeBundle} from "./theme-styles";
9
3
  import {layoutStyles} from "./layout-styles";
10
4
  import {
11
5
  createContext,
@@ -18,8 +12,8 @@ import {
18
12
  useMemo,
19
13
  useState,
20
14
  } from "react";
21
- import {createInlineStyles, getThemeColors, ThemeColors, ThemeStyles} from "./design-system";
22
- import {selectPalette, ThemePalette} from "./palette-generator";
15
+ import {Styles, stylesFromTheme, Theme, themeFromPalette} from "./design-system";
16
+ import {selectPalette} from "./palette-generator";
23
17
  import {
24
18
  subscribeOnThemeMenuPreferenceChange,
25
19
  subscribeOnThemeModeChange,
@@ -30,6 +24,7 @@ import {
30
24
  useWarmPreference,
31
25
  } from "./theme-settings";
32
26
  import {css} from "@linaria/core";
27
+ import type {ThemePalette} from "./design-system/types";
33
28
 
34
29
  const ThemePreferenceContext = createContext<ThemePreference | null>(null);
35
30
 
@@ -47,10 +42,15 @@ export function useThemeMenuPreference(): ThemeMenuPreference {
47
42
  return themeMenuPreference;
48
43
  }
49
44
 
50
- const ThemeColorsContext = createContext<ThemeColors>(defaultLightTheme);
45
+ const {
46
+ palette,
47
+ themes: [coolLightTheme],
48
+ styles: [coolLightThemeStyles],
49
+ } = locateThemeBundle(false);
50
+ const ThemeContext = createContext<Theme>(coolLightTheme);
51
51
 
52
- export function useTheme(): ThemeColors {
53
- return useContext(ThemeColorsContext);
52
+ export function useTheme(): Theme {
53
+ return useContext(ThemeContext);
54
54
  }
55
55
 
56
56
  export function useThemeMode(): ThemeMode {
@@ -58,14 +58,22 @@ export function useThemeMode(): ThemeMode {
58
58
  return theme.mode;
59
59
  }
60
60
 
61
- const RootThemeStylesContext = createContext<ThemeStyles>(defaultLightThemeStyles);
62
- const ThemeStylesContext = createContext<ThemeStyles>(defaultLightThemeStyles);
61
+ /** @deprecated Use `useThemedColor` instead */
62
+ export const useNeutralColor = useThemedColor;
63
+
64
+ export function useThemedColor(color: string) {
65
+ const theme = useTheme();
66
+ return theme.fns.deneutralize(color);
67
+ }
68
+
69
+ const RootThemeStylesContext = createContext<Styles>(coolLightThemeStyles);
70
+ const ThemeStylesContext = createContext<Styles>(coolLightThemeStyles);
63
71
 
64
- export function useThemeStyles(): ThemeStyles {
72
+ export function useThemeStyles(): Styles {
65
73
  return useContext(ThemeStylesContext);
66
74
  }
67
75
 
68
- const ThemePaletteContext = createContext<ThemePalette>(defaultPalette);
76
+ const ThemePaletteContext = createContext<ThemePalette>(palette);
69
77
 
70
78
  export function useThemePalette(): ThemePalette {
71
79
  return useContext(ThemePaletteContext);
@@ -77,7 +85,7 @@ type ThematicContextValue = {
77
85
  };
78
86
 
79
87
  const ThematicContext = createContext<ThematicContextValue>({
80
- palette: defaultPalette,
88
+ palette,
81
89
  setPalette: () => {},
82
90
  });
83
91
 
@@ -87,30 +95,25 @@ export function useThematic(): ThematicContextValue {
87
95
 
88
96
  export function ThemeProvider({
89
97
  theme: themeOverride,
90
- color: colorOverride,
91
98
  mode: modeOverride,
92
99
  portal,
93
100
  children,
94
101
  }: PropsWithChildren<
95
- {portal?: true} & (
96
- | {theme: ThemeColors; color?: never; mode?: never}
97
- | {color?: string; theme?: never; mode?: ThemeMode}
98
- )
102
+ {portal?: true} & ({theme: Theme; color?: never; mode?: never} | {color?: string; theme?: never; mode?: ThemeMode})
99
103
  >) {
100
104
  const palette = useContext(ThemePaletteContext);
101
- const parentTheme = useContext(ThemeColorsContext);
105
+ const parentTheme = useContext(ThemeContext);
102
106
 
103
107
  const mode = modeOverride ?? parentTheme.mode;
104
- const color = colorOverride ?? parentTheme.primary;
105
- const theme = themeOverride ?? getThemeColors(color, mode, palette);
108
+ const theme = themeOverride ?? themeFromPalette(palette, mode);
106
109
 
107
110
  const parentStyles = useContext(portal ? RootThemeStylesContext : ThemeStylesContext);
108
- const styles = createInlineStyles(theme);
111
+ const styles = stylesFromTheme(theme);
109
112
  const stylesDiff = useMemo(() => {
110
113
  if (styles === parentStyles) {
111
114
  return undefined;
112
115
  }
113
- const diff: ThemeStyles = {};
116
+ const diff: Styles = {};
114
117
  for (const key of Object.keys(styles)) {
115
118
  if (styles[key] !== parentStyles[key]) {
116
119
  diff[key] = styles[key];
@@ -120,7 +123,7 @@ export function ThemeProvider({
120
123
  }, [styles, parentStyles]);
121
124
 
122
125
  return (
123
- <ThemeColorsContext.Provider value={theme}>
126
+ <ThemeContext.Provider value={theme}>
124
127
  <ThemeStylesContext.Provider value={styles}>
125
128
  <div
126
129
  style={stylesDiff}
@@ -131,7 +134,7 @@ export function ThemeProvider({
131
134
  {children}
132
135
  </div>
133
136
  </ThemeStylesContext.Provider>
134
- </ThemeColorsContext.Provider>
137
+ </ThemeContext.Provider>
135
138
  );
136
139
  }
137
140
 
@@ -156,13 +159,13 @@ export function MenuThemeProvider({children}: {children: ReactNode}) {
156
159
  return <ThemeProvider mode={mode}>{children}</ThemeProvider>;
157
160
  }
158
161
 
159
- function useUpdateBrowserThemeColor(light: ThemeColors, dark: ThemeColors) {
162
+ function useUpdateBrowserThemeColor(light: Theme, dark: Theme) {
160
163
  useEffect(() => {
161
164
  const lightEl = document.querySelector('meta[name="theme-color"][media*="light"]');
162
165
  const darkEl = document.querySelector('meta[name="theme-color"][media*="dark"]');
163
- lightEl?.setAttribute("content", light.mainBg);
164
- darkEl?.setAttribute("content", dark.mainBg);
165
- }, [light.mainBg, dark.mainBg]);
166
+ lightEl?.setAttribute("content", light.colors.mainBg);
167
+ darkEl?.setAttribute("content", dark.colors.mainBg);
168
+ }, [light.colors.mainBg, dark.colors.mainBg]);
166
169
  }
167
170
 
168
171
  export function RootThemeProvider({
@@ -178,11 +181,12 @@ export function RootThemeProvider({
178
181
  isArchitect?: boolean;
179
182
  children: ReactNode;
180
183
  }): JSX.Element {
181
- const [themeMode, setThemeMode] = useState<ThemeMode>(initialThemeMode);
182
- useEffect(() => subscribeOnThemeModeChange(setThemeMode), []);
184
+ const [mode, setMode] = useState<ThemeMode>(initialThemeMode);
185
+ useEffect(() => subscribeOnThemeModeChange(setMode), []);
186
+ const dark = mode === "dark";
183
187
 
184
188
  const [warm] = useWarmPreference();
185
- useEffect(() => chooseGlobalStyles(themeMode, warm), [themeMode, warm]);
189
+ useEffect(() => chooseGlobalStyles(mode, warm), [mode, warm]);
186
190
 
187
191
  const [paletteOverride, setPaletteOverride] = useState<ThemePalette | null>(null);
188
192
 
@@ -190,15 +194,22 @@ export function RootThemeProvider({
190
194
  return paletteOverride ?? selectPalette({warmLook: warm, isArchitect});
191
195
  }, [paletteOverride, warm, isArchitect]);
192
196
 
193
- let res = <ThemeProvider theme={getThemeColors(null, themeMode, palette)}>{children}</ThemeProvider>;
197
+ let res = <ThemeProvider theme={themeFromPalette(palette, mode)}>{children}</ThemeProvider>;
194
198
 
195
199
  // Set base context to what global CSS has, so ThemeProvider diffs against it
196
- const [[lightThemeColors, lightThemeStyles], [darkThemeColors, darkThemeStyles]] = selectGlobalThemePair(warm);
197
- const [cssThemeColors, cssThemeStyles] =
198
- themeMode === "dark" ? [darkThemeColors, darkThemeStyles] : [lightThemeColors, lightThemeStyles];
200
+ const {
201
+ themes: [lightThemeColors, darkThemeColors],
202
+ styles: [lightThemeStyles, darkThemeStyles],
203
+ } = locateThemeBundle(warm);
204
+ const cssThemeColors = dark ? darkThemeColors : lightThemeColors;
205
+ let cssThemeStyles = dark ? darkThemeStyles : lightThemeStyles;
206
+ if (process.env.NODE_ENV === "development") {
207
+ // In dev build, we use empty styles as a reference to force all vars inline in top themeproviders — avoids stale Linaria/babel cache.
208
+ cssThemeStyles = {};
209
+ }
199
210
  res = <ThemeStylesContext.Provider value={cssThemeStyles}>{res}</ThemeStylesContext.Provider>;
200
211
  res = <RootThemeStylesContext.Provider value={cssThemeStyles}>{res}</RootThemeStylesContext.Provider>;
201
- res = <ThemeColorsContext.Provider value={cssThemeColors}>{res}</ThemeColorsContext.Provider>;
212
+ res = <ThemeContext.Provider value={cssThemeColors}>{res}</ThemeContext.Provider>;
202
213
  useUpdateBrowserThemeColor(lightThemeColors, darkThemeColors);
203
214
 
204
215
  res = <ThemePaletteContext.Provider value={palette}>{res}</ThemePaletteContext.Provider>;
@@ -1,5 +1,6 @@
1
1
  import {useEffect, useState} from "react";
2
2
  import {getMediaQueryList, subscribeOnChange as subscribeOnMediaQueryChange} from "./media-query-utils";
3
+ import {createPreferenceSetting} from "./preference-setting";
3
4
 
4
5
  const listenersThemeMode = new Map();
5
6
  const listenersThemePreference = new Map();
@@ -170,50 +171,17 @@ export function subscribeOnThemeModeChange(cb: (themeMode: ThemeMode) => void):
170
171
  };
171
172
  }
172
173
 
173
- const warmKey = "warm";
174
- const warmListeners = new Set<(warm: boolean) => void>();
175
-
176
- export function hasWarmPreference(): boolean {
177
- try {
178
- return localStorage.getItem(warmKey) !== null;
179
- } catch {
180
- return false;
181
- }
182
- }
183
-
184
- export function loadWarmPreference(): boolean {
185
- try {
186
- return localStorage.getItem(warmKey) === "true";
187
- } catch {
188
- return false;
189
- }
190
- }
191
-
192
- export function storeWarmPreference(warm: boolean) {
193
- try {
194
- localStorage.setItem(warmKey, JSON.stringify(warm));
195
- } catch {
196
- // ignore
197
- }
198
- warmListeners.forEach((cb) => cb(warm));
199
- }
200
-
201
- export function subscribeOnWarmPreferenceChange(cb: (warm: boolean) => void): () => void {
202
- warmListeners.add(cb);
203
- let prev = loadWarmPreference();
204
- const storageListener = () => {
205
- const next = loadWarmPreference();
206
- if (prev !== next) {
207
- prev = next;
208
- cb(next);
209
- }
210
- };
211
- window.addEventListener("storage", storageListener);
212
- return () => {
213
- warmListeners.delete(cb);
214
- window.removeEventListener("storage", storageListener);
215
- };
216
- }
174
+ export const {
175
+ has: hasWarmPreference,
176
+ load: loadWarmPreference,
177
+ store: storeWarmPreference,
178
+ subscribe: subscribeOnWarmPreferenceChange,
179
+ } = createPreferenceSetting({
180
+ key: "warm",
181
+ parse: (raw) => (raw === "true" ? true : raw === "false" ? false : undefined),
182
+ stringify: (v: boolean) => JSON.stringify(v),
183
+ defaultValue: false,
184
+ });
217
185
 
218
186
  export function useWarmPreference() {
219
187
  const [warm, setWarm] = useState(loadWarmPreference);