@sanity/ui 3.3.1 → 3.3.3

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 (651) hide show
  1. package/dist/_visual-editing.d.mts +2 -1126
  2. package/dist/_visual-editing.d.ts +2 -1126
  3. package/dist/_visual-editing.js +3 -31
  4. package/dist/_visual-editing.mjs +2 -31
  5. package/dist/index.d.mts +555 -2769
  6. package/dist/index.d.mts.map +1 -0
  7. package/dist/index.d.ts +555 -2769
  8. package/dist/index.d.ts.map +1 -0
  9. package/dist/index.js +2982 -1934
  10. package/dist/index.mjs +2950 -1903
  11. package/dist/index.mjs.map +1 -1
  12. package/dist/refractor.js +16 -0
  13. package/dist/refractor.mjs +21 -0
  14. package/dist/refractor.mjs.map +1 -0
  15. package/dist/tabList.js +3804 -0
  16. package/dist/tabList.mjs +3355 -0
  17. package/dist/tabList.mjs.map +1 -0
  18. package/dist/theme.d.mts +927 -1227
  19. package/dist/theme.d.mts.map +1 -0
  20. package/dist/theme.d.ts +927 -1227
  21. package/dist/theme.d.ts.map +1 -0
  22. package/dist/theme.js +3 -4127
  23. package/dist/theme.mjs +2 -4127
  24. package/dist/theme2.d.mts +2 -0
  25. package/dist/theme2.d.ts +2 -0
  26. package/dist/theme2.js +4104 -0
  27. package/dist/theme2.mjs +3851 -0
  28. package/dist/theme2.mjs.map +1 -0
  29. package/dist/useTheme.d.mts +1451 -0
  30. package/dist/useTheme.d.mts.map +1 -0
  31. package/dist/useTheme.d.ts +1451 -0
  32. package/dist/useTheme.d.ts.map +1 -0
  33. package/package.json +48 -106
  34. package/dist/_chunks-cjs/_visual-editing.js +0 -5899
  35. package/dist/_chunks-cjs/_visual-editing.js.map +0 -1
  36. package/dist/_chunks-cjs/refractor.js +0 -23
  37. package/dist/_chunks-cjs/refractor.js.map +0 -1
  38. package/dist/_chunks-es/_visual-editing.mjs +0 -5905
  39. package/dist/_chunks-es/_visual-editing.mjs.map +0 -1
  40. package/dist/_chunks-es/refractor.mjs +0 -26
  41. package/dist/_chunks-es/refractor.mjs.map +0 -1
  42. package/dist/_visual-editing.js.map +0 -1
  43. package/dist/_visual-editing.mjs.map +0 -1
  44. package/dist/index.js.map +0 -1
  45. package/dist/theme.js.map +0 -1
  46. package/dist/theme.mjs.map +0 -1
  47. package/exports/_visual-editing.ts +0 -31
  48. package/exports/index.ts +0 -1
  49. package/exports/theme.ts +0 -1
  50. package/src/core/__workshop__/constants.ts +0 -293
  51. package/src/core/_compat.ts +0 -264
  52. package/src/core/components/autocomplete/__mocks__/apiStore.ts +0 -49
  53. package/src/core/components/autocomplete/__mocks__/countries.ts +0 -245
  54. package/src/core/components/autocomplete/__workshop__/async.tsx +0 -156
  55. package/src/core/components/autocomplete/__workshop__/constrainedHeight.tsx +0 -137
  56. package/src/core/components/autocomplete/__workshop__/custom.tsx +0 -89
  57. package/src/core/components/autocomplete/__workshop__/example.tsx +0 -79
  58. package/src/core/components/autocomplete/__workshop__/focusAndBlur.tsx +0 -36
  59. package/src/core/components/autocomplete/__workshop__/fullscreen.tsx +0 -294
  60. package/src/core/components/autocomplete/__workshop__/index.ts +0 -39
  61. package/src/core/components/autocomplete/__workshop__/types.ts +0 -4
  62. package/src/core/components/autocomplete/autocomplete.styles.tsx +0 -39
  63. package/src/core/components/autocomplete/autocomplete.tsx +0 -767
  64. package/src/core/components/autocomplete/autocompleteOption.tsx +0 -45
  65. package/src/core/components/autocomplete/autocompleteReducer.ts +0 -47
  66. package/src/core/components/autocomplete/constants.ts +0 -28
  67. package/src/core/components/autocomplete/index.ts +0 -2
  68. package/src/core/components/autocomplete/types.ts +0 -108
  69. package/src/core/components/breadcrumbs/__workshop__/example.tsx +0 -62
  70. package/src/core/components/breadcrumbs/__workshop__/index.ts +0 -14
  71. package/src/core/components/breadcrumbs/breadcrumbs.styles.ts +0 -18
  72. package/src/core/components/breadcrumbs/breadcrumbs.test.tsx +0 -51
  73. package/src/core/components/breadcrumbs/breadcrumbs.tsx +0 -133
  74. package/src/core/components/breadcrumbs/index.ts +0 -1
  75. package/src/core/components/dialog/__workshop__/activate.tsx +0 -134
  76. package/src/core/components/dialog/__workshop__/autoFocus.tsx +0 -29
  77. package/src/core/components/dialog/__workshop__/index.ts +0 -19
  78. package/src/core/components/dialog/__workshop__/layering.tsx +0 -41
  79. package/src/core/components/dialog/__workshop__/nested.tsx +0 -72
  80. package/src/core/components/dialog/__workshop__/onScroll.tsx +0 -39
  81. package/src/core/components/dialog/__workshop__/panes.tsx +0 -82
  82. package/src/core/components/dialog/__workshop__/position.tsx +0 -30
  83. package/src/core/components/dialog/__workshop__/props.tsx +0 -75
  84. package/src/core/components/dialog/__workshop__/provider.tsx +0 -11
  85. package/src/core/components/dialog/__workshop__/wrapped.tsx +0 -76
  86. package/src/core/components/dialog/dialog.tsx +0 -430
  87. package/src/core/components/dialog/dialogContext.ts +0 -20
  88. package/src/core/components/dialog/dialogProvider.tsx +0 -35
  89. package/src/core/components/dialog/index.ts +0 -4
  90. package/src/core/components/dialog/styles.ts +0 -77
  91. package/src/core/components/dialog/useDialog.ts +0 -11
  92. package/src/core/components/hotkeys/__workshop__/index.ts +0 -14
  93. package/src/core/components/hotkeys/__workshop__/plain.tsx +0 -9
  94. package/src/core/components/hotkeys/hotkeys.test.tsx +0 -42
  95. package/src/core/components/hotkeys/hotkeys.tsx +0 -66
  96. package/src/core/components/hotkeys/index.ts +0 -1
  97. package/src/core/components/index.ts +0 -9
  98. package/src/core/components/menu/__workshop__/asComponent.tsx +0 -45
  99. package/src/core/components/menu/__workshop__/avatarMenu.tsx +0 -51
  100. package/src/core/components/menu/__workshop__/closableMenuButton.tsx +0 -46
  101. package/src/core/components/menu/__workshop__/constrainedInBoundary.tsx +0 -134
  102. package/src/core/components/menu/__workshop__/customMenuItem.tsx +0 -45
  103. package/src/core/components/menu/__workshop__/customSelectedState.tsx +0 -39
  104. package/src/core/components/menu/__workshop__/disableFocusOnClose.tsx +0 -40
  105. package/src/core/components/menu/__workshop__/groups.tsx +0 -156
  106. package/src/core/components/menu/__workshop__/index.ts +0 -89
  107. package/src/core/components/menu/__workshop__/menuButton.tsx +0 -80
  108. package/src/core/components/menu/__workshop__/menuGroupRight.tsx +0 -65
  109. package/src/core/components/menu/__workshop__/nestedMenu.tsx +0 -22
  110. package/src/core/components/menu/__workshop__/onCloseMenuButton.tsx +0 -41
  111. package/src/core/components/menu/__workshop__/selectedItem.tsx +0 -69
  112. package/src/core/components/menu/__workshop__/shouldFocus.tsx +0 -47
  113. package/src/core/components/menu/__workshop__/tones.tsx +0 -25
  114. package/src/core/components/menu/__workshop__/withoutArrow.tsx +0 -32
  115. package/src/core/components/menu/helpers.ts +0 -82
  116. package/src/core/components/menu/index.ts +0 -5
  117. package/src/core/components/menu/menu.spacing.test.tsx +0 -63
  118. package/src/core/components/menu/menu.test.tsx +0 -125
  119. package/src/core/components/menu/menu.tsx +0 -178
  120. package/src/core/components/menu/menuButton.tsx +0 -268
  121. package/src/core/components/menu/menuContext.ts +0 -18
  122. package/src/core/components/menu/menuDivider.ts +0 -23
  123. package/src/core/components/menu/menuGroup.spacing.test.tsx +0 -63
  124. package/src/core/components/menu/menuGroup.tsx +0 -233
  125. package/src/core/components/menu/menuItem.spacing.test.tsx +0 -59
  126. package/src/core/components/menu/menuItem.tsx +0 -197
  127. package/src/core/components/menu/useMenu.ts +0 -21
  128. package/src/core/components/menu/useMenuController.ts +0 -231
  129. package/src/core/components/skeleton/__workshop__/delay.tsx +0 -70
  130. package/src/core/components/skeleton/__workshop__/index.ts +0 -11
  131. package/src/core/components/skeleton/__workshop__/skeleton.tsx +0 -64
  132. package/src/core/components/skeleton/index.ts +0 -2
  133. package/src/core/components/skeleton/skeleton.tsx +0 -57
  134. package/src/core/components/skeleton/styles.ts +0 -50
  135. package/src/core/components/skeleton/textSkeleton.tsx +0 -122
  136. package/src/core/components/tab/__workshop__/example.tsx +0 -79
  137. package/src/core/components/tab/__workshop__/index.ts +0 -14
  138. package/src/core/components/tab/index.ts +0 -3
  139. package/src/core/components/tab/tab.tsx +0 -101
  140. package/src/core/components/tab/tabList.test.tsx +0 -48
  141. package/src/core/components/tab/tabList.tsx +0 -70
  142. package/src/core/components/tab/tabPanel.tsx +0 -39
  143. package/src/core/components/toast/__workshop__/hook.tsx +0 -71
  144. package/src/core/components/toast/__workshop__/index.ts +0 -19
  145. package/src/core/components/toast/__workshop__/toast.tsx +0 -26
  146. package/src/core/components/toast/index.ts +0 -4
  147. package/src/core/components/toast/styles.ts +0 -77
  148. package/src/core/components/toast/toast.test.tsx +0 -101
  149. package/src/core/components/toast/toast.tsx +0 -198
  150. package/src/core/components/toast/toastContext.ts +0 -7
  151. package/src/core/components/toast/toastLayer.tsx +0 -51
  152. package/src/core/components/toast/toastProvider.tsx +0 -113
  153. package/src/core/components/toast/toastState.ts +0 -6
  154. package/src/core/components/toast/types.ts +0 -26
  155. package/src/core/components/toast/useToast.ts +0 -25
  156. package/src/core/components/tree/__workshop__/basic.perf.ts +0 -19
  157. package/src/core/components/tree/__workshop__/basic.tsx +0 -105
  158. package/src/core/components/tree/__workshop__/index.ts +0 -21
  159. package/src/core/components/tree/__workshop__/tabFromElement.tsx +0 -84
  160. package/src/core/components/tree/helpers.ts +0 -105
  161. package/src/core/components/tree/index.ts +0 -4
  162. package/src/core/components/tree/style.ts +0 -105
  163. package/src/core/components/tree/tree.test.tsx +0 -55
  164. package/src/core/components/tree/tree.tsx +0 -240
  165. package/src/core/components/tree/treeContext.ts +0 -10
  166. package/src/core/components/tree/treeGroup.tsx +0 -28
  167. package/src/core/components/tree/treeItem.test.tsx +0 -65
  168. package/src/core/components/tree/treeItem.tsx +0 -224
  169. package/src/core/components/tree/types.ts +0 -25
  170. package/src/core/components/tree/useTree.ts +0 -17
  171. package/src/core/constants.ts +0 -79
  172. package/src/core/helpers/animation.ts +0 -27
  173. package/src/core/helpers/element.ts +0 -55
  174. package/src/core/helpers/focus.ts +0 -100
  175. package/src/core/helpers/index.ts +0 -4
  176. package/src/core/helpers/scroll.ts +0 -15
  177. package/src/core/hooks/index.ts +0 -12
  178. package/src/core/hooks/useArrayProp.ts +0 -17
  179. package/src/core/hooks/useClickOutside.test.tsx +0 -482
  180. package/src/core/hooks/useClickOutside.ts +0 -118
  181. package/src/core/hooks/useClickOutsideEvent.test.tsx +0 -115
  182. package/src/core/hooks/useClickOutsideEvent.ts +0 -73
  183. package/src/core/hooks/useCustomValidity.ts +0 -13
  184. package/src/core/hooks/useDelayed.test.ts +0 -88
  185. package/src/core/hooks/useDelayedState.ts +0 -36
  186. package/src/core/hooks/useElementRect/__workshop__/example.tsx +0 -32
  187. package/src/core/hooks/useElementRect/__workshop__/index.ts +0 -14
  188. package/src/core/hooks/useElementRect/index.ts +0 -1
  189. package/src/core/hooks/useElementRect/useElementRect.ts +0 -13
  190. package/src/core/hooks/useElementSize.ts +0 -19
  191. package/src/core/hooks/useForwardedRef.ts +0 -19
  192. package/src/core/hooks/useGlobalKeyDown.ts +0 -24
  193. package/src/core/hooks/useIsomorphicEffect.ts +0 -7
  194. package/src/core/hooks/useMatchMedia.ts +0 -28
  195. package/src/core/hooks/useMediaIndex/__workshop__/index.ts +0 -14
  196. package/src/core/hooks/useMediaIndex/__workshop__/test.tsx +0 -14
  197. package/src/core/hooks/useMediaIndex/index.ts +0 -1
  198. package/src/core/hooks/useMediaIndex/useMediaIndex.test.tsx +0 -36
  199. package/src/core/hooks/useMediaIndex/useMediaIndex.ts +0 -102
  200. package/src/core/hooks/useMounted.ts +0 -15
  201. package/src/core/hooks/usePrefersDark.hydration.test.tsx +0 -56
  202. package/src/core/hooks/usePrefersDark.test.tsx +0 -19
  203. package/src/core/hooks/usePrefersDark.ts +0 -16
  204. package/src/core/hooks/usePrefersReducedMotion.hydration.test.tsx +0 -56
  205. package/src/core/hooks/usePrefersReducedMotion.test.tsx +0 -19
  206. package/src/core/hooks/usePrefersReducedMotion.ts +0 -16
  207. package/src/core/index.ts +0 -10
  208. package/src/core/lib/createGlobalScopedContext.ts +0 -36
  209. package/src/core/lib/globalScope.ts +0 -19
  210. package/src/core/lib/isRecord.ts +0 -3
  211. package/src/core/middleware/origin.ts +0 -47
  212. package/src/core/observers/elementSizeObserver.ts +0 -116
  213. package/src/core/observers/index.ts +0 -2
  214. package/src/core/observers/resizeObserver.ts +0 -9
  215. package/src/core/primitives/_selectable/index.ts +0 -1
  216. package/src/core/primitives/_selectable/selectable.tsx +0 -15
  217. package/src/core/primitives/_selectable/style.ts +0 -115
  218. package/src/core/primitives/avatar/__workshop__/asButton.tsx +0 -14
  219. package/src/core/primitives/avatar/__workshop__/index.ts +0 -29
  220. package/src/core/primitives/avatar/__workshop__/stack.tsx +0 -25
  221. package/src/core/primitives/avatar/__workshop__/withinButton.tsx +0 -63
  222. package/src/core/primitives/avatar/__workshop__/withinMenuItem.tsx +0 -70
  223. package/src/core/primitives/avatar/avatar.tsx +0 -200
  224. package/src/core/primitives/avatar/avatarCounter.tsx +0 -91
  225. package/src/core/primitives/avatar/avatarStack.tsx +0 -100
  226. package/src/core/primitives/avatar/index.ts +0 -4
  227. package/src/core/primitives/avatar/styles.ts +0 -167
  228. package/src/core/primitives/avatar/types.ts +0 -17
  229. package/src/core/primitives/badge/__workshop__/index.ts +0 -19
  230. package/src/core/primitives/badge/__workshop__/props.tsx +0 -30
  231. package/src/core/primitives/badge/__workshop__/tones.tsx +0 -21
  232. package/src/core/primitives/badge/badge.test.tsx +0 -16
  233. package/src/core/primitives/badge/badge.tsx +0 -70
  234. package/src/core/primitives/badge/index.ts +0 -1
  235. package/src/core/primitives/badge/styles.ts +0 -20
  236. package/src/core/primitives/badge/types.ts +0 -8
  237. package/src/core/primitives/box/__workshop__/asComponent.tsx +0 -31
  238. package/src/core/primitives/box/__workshop__/index.ts +0 -24
  239. package/src/core/primitives/box/__workshop__/props.tsx +0 -20
  240. package/src/core/primitives/box/__workshop__/responsive.tsx +0 -20
  241. package/src/core/primitives/box/box.test.tsx +0 -142
  242. package/src/core/primitives/box/box.tsx +0 -154
  243. package/src/core/primitives/box/index.ts +0 -1
  244. package/src/core/primitives/button/__workshop__/custom.tsx +0 -51
  245. package/src/core/primitives/button/__workshop__/customIcons.tsx +0 -30
  246. package/src/core/primitives/button/__workshop__/disabled.tsx +0 -74
  247. package/src/core/primitives/button/__workshop__/index.ts +0 -59
  248. package/src/core/primitives/button/__workshop__/mixedChildren.tsx +0 -12
  249. package/src/core/primitives/button/__workshop__/props.tsx +0 -55
  250. package/src/core/primitives/button/__workshop__/sanityUploadButton.tsx +0 -36
  251. package/src/core/primitives/button/__workshop__/stacked.tsx +0 -58
  252. package/src/core/primitives/button/__workshop__/styled1.tsx +0 -17
  253. package/src/core/primitives/button/__workshop__/styled2.tsx +0 -19
  254. package/src/core/primitives/button/__workshop__/uploadButton.tsx +0 -28
  255. package/src/core/primitives/button/button.test.tsx +0 -82
  256. package/src/core/primitives/button/button.tsx +0 -210
  257. package/src/core/primitives/button/index.ts +0 -1
  258. package/src/core/primitives/button/styles.ts +0 -117
  259. package/src/core/primitives/card/__workshop__/allTones.tsx +0 -25
  260. package/src/core/primitives/card/__workshop__/asButton.tsx +0 -107
  261. package/src/core/primitives/card/__workshop__/asComponent.tsx +0 -27
  262. package/src/core/primitives/card/__workshop__/checkered.tsx +0 -26
  263. package/src/core/primitives/card/__workshop__/index.ts +0 -18
  264. package/src/core/primitives/card/__workshop__/interactive.tsx +0 -30
  265. package/src/core/primitives/card/__workshop__/listNavigation.tsx +0 -80
  266. package/src/core/primitives/card/__workshop__/props.tsx +0 -53
  267. package/src/core/primitives/card/__workshop__/selected.tsx +0 -94
  268. package/src/core/primitives/card/__workshop__/styled.tsx +0 -14
  269. package/src/core/primitives/card/card.tsx +0 -128
  270. package/src/core/primitives/card/index.ts +0 -2
  271. package/src/core/primitives/card/styles.ts +0 -147
  272. package/src/core/primitives/card/types.ts +0 -11
  273. package/src/core/primitives/checkbox/__workshop__/example.tsx +0 -25
  274. package/src/core/primitives/checkbox/__workshop__/index.ts +0 -13
  275. package/src/core/primitives/checkbox/__workshop__/props.tsx +0 -33
  276. package/src/core/primitives/checkbox/__workshop__/readOnly.tsx +0 -16
  277. package/src/core/primitives/checkbox/__workshop__/tones.tsx +0 -28
  278. package/src/core/primitives/checkbox/checkbox.tsx +0 -73
  279. package/src/core/primitives/checkbox/index.ts +0 -1
  280. package/src/core/primitives/checkbox/styles.ts +0 -128
  281. package/src/core/primitives/code/__workshop__/index.ts +0 -19
  282. package/src/core/primitives/code/__workshop__/opticalAlignment.tsx +0 -48
  283. package/src/core/primitives/code/__workshop__/props.tsx +0 -21
  284. package/src/core/primitives/code/code.tsx +0 -55
  285. package/src/core/primitives/code/index.ts +0 -1
  286. package/src/core/primitives/code/refractor.tsx +0 -20
  287. package/src/core/primitives/code/styles.ts +0 -77
  288. package/src/core/primitives/container/__workshop__/example.tsx +0 -20
  289. package/src/core/primitives/container/__workshop__/index.ts +0 -8
  290. package/src/core/primitives/container/container.tsx +0 -54
  291. package/src/core/primitives/container/index.ts +0 -2
  292. package/src/core/primitives/container/styles.ts +0 -23
  293. package/src/core/primitives/container/types.ts +0 -6
  294. package/src/core/primitives/flex/__workshop__/example.tsx +0 -34
  295. package/src/core/primitives/flex/__workshop__/gap.tsx +0 -25
  296. package/src/core/primitives/flex/__workshop__/index.ts +0 -11
  297. package/src/core/primitives/flex/flex.tsx +0 -64
  298. package/src/core/primitives/flex/index.ts +0 -1
  299. package/src/core/primitives/grid/__workshop__/index.ts +0 -10
  300. package/src/core/primitives/grid/__workshop__/responsive.tsx +0 -54
  301. package/src/core/primitives/grid/grid.test.tsx +0 -80
  302. package/src/core/primitives/grid/grid.tsx +0 -74
  303. package/src/core/primitives/grid/index.ts +0 -1
  304. package/src/core/primitives/heading/__workshop__/index.ts +0 -19
  305. package/src/core/primitives/heading/__workshop__/opticalAlignment.tsx +0 -54
  306. package/src/core/primitives/heading/__workshop__/plain.tsx +0 -32
  307. package/src/core/primitives/heading/heading.tsx +0 -88
  308. package/src/core/primitives/heading/index.ts +0 -1
  309. package/src/core/primitives/heading/styles.ts +0 -64
  310. package/src/core/primitives/heading/types.ts +0 -7
  311. package/src/core/primitives/index.ts +0 -27
  312. package/src/core/primitives/inline/__workshop__/index.ts +0 -8
  313. package/src/core/primitives/inline/__workshop__/plain.tsx +0 -27
  314. package/src/core/primitives/inline/index.ts +0 -1
  315. package/src/core/primitives/inline/inline.test.tsx +0 -51
  316. package/src/core/primitives/inline/inline.tsx +0 -63
  317. package/src/core/primitives/inline/styles.ts +0 -32
  318. package/src/core/primitives/inline/types.ts +0 -6
  319. package/src/core/primitives/kbd/__workshop__/index.ts +0 -8
  320. package/src/core/primitives/kbd/__workshop__/plain.tsx +0 -9
  321. package/src/core/primitives/kbd/index.ts +0 -1
  322. package/src/core/primitives/kbd/kbd.tsx +0 -69
  323. package/src/core/primitives/label/__workshop__/index.ts +0 -19
  324. package/src/core/primitives/label/__workshop__/opticalAlignment.tsx +0 -48
  325. package/src/core/primitives/label/__workshop__/plain.tsx +0 -24
  326. package/src/core/primitives/label/index.ts +0 -1
  327. package/src/core/primitives/label/label.tsx +0 -87
  328. package/src/core/primitives/label/styles.ts +0 -45
  329. package/src/core/primitives/popover/__workshop__/AlignedStory.tsx +0 -77
  330. package/src/core/primitives/popover/__workshop__/MarginsStory.tsx +0 -31
  331. package/src/core/primitives/popover/__workshop__/MatchReferenceWidthStory.tsx +0 -32
  332. package/src/core/primitives/popover/__workshop__/OpenOnMountStory.tsx +0 -11
  333. package/src/core/primitives/popover/__workshop__/PlainStory.tsx +0 -71
  334. package/src/core/primitives/popover/__workshop__/RecursiveStory.tsx +0 -71
  335. package/src/core/primitives/popover/__workshop__/SidePanelStory.tsx +0 -89
  336. package/src/core/primitives/popover/__workshop__/TestStory.tsx +0 -97
  337. package/src/core/primitives/popover/__workshop__/index.ts +0 -49
  338. package/src/core/primitives/popover/constants.ts +0 -22
  339. package/src/core/primitives/popover/floating-ui/size.ts +0 -99
  340. package/src/core/primitives/popover/helpers.ts +0 -31
  341. package/src/core/primitives/popover/index.ts +0 -2
  342. package/src/core/primitives/popover/popover.tsx +0 -511
  343. package/src/core/primitives/popover/popoverCard.tsx +0 -166
  344. package/src/core/primitives/popover/types.ts +0 -7
  345. package/src/core/primitives/radio/__workshop__/example.tsx +0 -63
  346. package/src/core/primitives/radio/__workshop__/index.ts +0 -11
  347. package/src/core/primitives/radio/__workshop__/plain.tsx +0 -28
  348. package/src/core/primitives/radio/index.ts +0 -1
  349. package/src/core/primitives/radio/radio.tsx +0 -51
  350. package/src/core/primitives/radio/styles.ts +0 -117
  351. package/src/core/primitives/select/__workshop__/index.ts +0 -11
  352. package/src/core/primitives/select/__workshop__/plain.tsx +0 -27
  353. package/src/core/primitives/select/__workshop__/readOnly.tsx +0 -23
  354. package/src/core/primitives/select/index.ts +0 -1
  355. package/src/core/primitives/select/select.test.tsx +0 -52
  356. package/src/core/primitives/select/select.tsx +0 -94
  357. package/src/core/primitives/select/styles.ts +0 -166
  358. package/src/core/primitives/spinner/__workshop__/Props.tsx +0 -15
  359. package/src/core/primitives/spinner/__workshop__/index.ts +0 -14
  360. package/src/core/primitives/spinner/index.ts +0 -1
  361. package/src/core/primitives/spinner/spinner.tsx +0 -46
  362. package/src/core/primitives/stack/__workshop__/index.ts +0 -14
  363. package/src/core/primitives/stack/__workshop__/plain.tsx +0 -32
  364. package/src/core/primitives/stack/index.ts +0 -1
  365. package/src/core/primitives/stack/stack.test.tsx +0 -57
  366. package/src/core/primitives/stack/stack.tsx +0 -57
  367. package/src/core/primitives/stack/styles.ts +0 -32
  368. package/src/core/primitives/switch/__workshop__/example.tsx +0 -23
  369. package/src/core/primitives/switch/__workshop__/index.ts +0 -11
  370. package/src/core/primitives/switch/__workshop__/props.tsx +0 -21
  371. package/src/core/primitives/switch/index.ts +0 -1
  372. package/src/core/primitives/switch/styles.ts +0 -173
  373. package/src/core/primitives/switch/switch.tsx +0 -68
  374. package/src/core/primitives/text/__workshop__/colored.tsx +0 -30
  375. package/src/core/primitives/text/__workshop__/example.tsx +0 -39
  376. package/src/core/primitives/text/__workshop__/index.ts +0 -24
  377. package/src/core/primitives/text/__workshop__/opticalAlignment.tsx +0 -48
  378. package/src/core/primitives/text/index.ts +0 -1
  379. package/src/core/primitives/text/styles.ts +0 -74
  380. package/src/core/primitives/text/text.tsx +0 -89
  381. package/src/core/primitives/textArea/__workshop__/index.ts +0 -14
  382. package/src/core/primitives/textArea/__workshop__/plain.tsx +0 -50
  383. package/src/core/primitives/textArea/index.ts +0 -1
  384. package/src/core/primitives/textArea/textArea.tsx +0 -120
  385. package/src/core/primitives/textInput/__workshop__/clearButton.tsx +0 -30
  386. package/src/core/primitives/textInput/__workshop__/customValidity.tsx +0 -17
  387. package/src/core/primitives/textInput/__workshop__/index.ts +0 -44
  388. package/src/core/primitives/textInput/__workshop__/plain.tsx +0 -98
  389. package/src/core/primitives/textInput/__workshop__/readOnly.tsx +0 -9
  390. package/src/core/primitives/textInput/__workshop__/states.tsx +0 -53
  391. package/src/core/primitives/textInput/__workshop__/tones.tsx +0 -277
  392. package/src/core/primitives/textInput/__workshop__/typed.tsx +0 -23
  393. package/src/core/primitives/textInput/index.ts +0 -1
  394. package/src/core/primitives/textInput/textInput.test.tsx +0 -48
  395. package/src/core/primitives/textInput/textInput.tsx +0 -395
  396. package/src/core/primitives/tooltip/__workshop__/customPortal.tsx +0 -102
  397. package/src/core/primitives/tooltip/__workshop__/index.ts +0 -29
  398. package/src/core/primitives/tooltip/__workshop__/overflowingBoundary.tsx +0 -74
  399. package/src/core/primitives/tooltip/__workshop__/props.tsx +0 -107
  400. package/src/core/primitives/tooltip/__workshop__/resizableBoundary.tsx +0 -86
  401. package/src/core/primitives/tooltip/constants.ts +0 -23
  402. package/src/core/primitives/tooltip/index.ts +0 -2
  403. package/src/core/primitives/tooltip/tooltip.test.tsx +0 -452
  404. package/src/core/primitives/tooltip/tooltip.tsx +0 -495
  405. package/src/core/primitives/tooltip/tooltipCard.tsx +0 -109
  406. package/src/core/primitives/tooltip/tooltipDelayGroup/index.ts +0 -4
  407. package/src/core/primitives/tooltip/tooltipDelayGroup/tooltipDelayGroupContext.tsx +0 -11
  408. package/src/core/primitives/tooltip/tooltipDelayGroup/tooltipDelayGroupProvider.tsx +0 -57
  409. package/src/core/primitives/tooltip/tooltipDelayGroup/types.ts +0 -10
  410. package/src/core/primitives/tooltip/tooltipDelayGroup/useTooltipDelayGroup.ts +0 -13
  411. package/src/core/primitives/types.ts +0 -179
  412. package/src/core/styles/border/borderStyle.ts +0 -56
  413. package/src/core/styles/border/index.ts +0 -2
  414. package/src/core/styles/border/types.ts +0 -10
  415. package/src/core/styles/box/boxStyle.ts +0 -69
  416. package/src/core/styles/box/index.ts +0 -2
  417. package/src/core/styles/box/types.ts +0 -11
  418. package/src/core/styles/card/_cardColorStyle.ts +0 -108
  419. package/src/core/styles/card/index.ts +0 -1
  420. package/src/core/styles/flex/flexItemStyle.ts +0 -27
  421. package/src/core/styles/flex/flexStyle.ts +0 -70
  422. package/src/core/styles/flex/index.ts +0 -3
  423. package/src/core/styles/flex/types.ts +0 -25
  424. package/src/core/styles/focusRing/index.ts +0 -25
  425. package/src/core/styles/font/codeFontStyle.ts +0 -13
  426. package/src/core/styles/font/headingFontStyle.ts +0 -13
  427. package/src/core/styles/font/index.ts +0 -6
  428. package/src/core/styles/font/labelFontStyle.ts +0 -13
  429. package/src/core/styles/font/responsiveFont.ts +0 -103
  430. package/src/core/styles/font/textAlignStyle.ts +0 -19
  431. package/src/core/styles/font/textFontStyle.ts +0 -13
  432. package/src/core/styles/font/types.ts +0 -35
  433. package/src/core/styles/grid/gridItemStyle.ts +0 -82
  434. package/src/core/styles/grid/gridStyle.ts +0 -108
  435. package/src/core/styles/grid/index.ts +0 -3
  436. package/src/core/styles/grid/types.ts +0 -37
  437. package/src/core/styles/helpers.ts +0 -72
  438. package/src/core/styles/index.ts +0 -5
  439. package/src/core/styles/input/index.ts +0 -2
  440. package/src/core/styles/input/responsiveInputPaddingStyle.ts +0 -78
  441. package/src/core/styles/input/textInputStyle.ts +0 -263
  442. package/src/core/styles/internal.ts +0 -12
  443. package/src/core/styles/margin/index.ts +0 -2
  444. package/src/core/styles/margin/marginStyle.ts +0 -21
  445. package/src/core/styles/margin/marginsStyle.test.ts +0 -33
  446. package/src/core/styles/margin/types.ts +0 -9
  447. package/src/core/styles/padding/index.ts +0 -2
  448. package/src/core/styles/padding/paddingStyle.test.ts +0 -33
  449. package/src/core/styles/padding/paddingStyle.ts +0 -21
  450. package/src/core/styles/padding/types.ts +0 -12
  451. package/src/core/styles/radius/index.ts +0 -2
  452. package/src/core/styles/radius/radiusStyle.ts +0 -23
  453. package/src/core/styles/radius/types.ts +0 -8
  454. package/src/core/styles/shadow/index.ts +0 -2
  455. package/src/core/styles/shadow/shadowStyle.ts +0 -29
  456. package/src/core/styles/shadow/types.ts +0 -6
  457. package/src/core/styles/types.ts +0 -8
  458. package/src/core/theme/__workshop__/build/Root.tsx +0 -367
  459. package/src/core/theme/__workshop__/build/helpers.ts +0 -46
  460. package/src/core/theme/__workshop__/build/story.tsx +0 -465
  461. package/src/core/theme/__workshop__/canvas.tsx +0 -352
  462. package/src/core/theme/__workshop__/color.tsx +0 -62
  463. package/src/core/theme/__workshop__/debug/story.tsx +0 -408
  464. package/src/core/theme/__workshop__/index.ts +0 -39
  465. package/src/core/theme/__workshop__/layer.tsx +0 -78
  466. package/src/core/theme/__workshop__/nestedProvider.tsx +0 -15
  467. package/src/core/theme/index.ts +0 -5
  468. package/src/core/theme/theme.test.tsx +0 -73
  469. package/src/core/theme/themeColorProvider.tsx +0 -29
  470. package/src/core/theme/themeContext.ts +0 -10
  471. package/src/core/theme/themeProvider.tsx +0 -62
  472. package/src/core/theme/types.ts +0 -12
  473. package/src/core/theme/useRootTheme.ts +0 -17
  474. package/src/core/theme/useTheme.ts +0 -16
  475. package/src/core/types/avatar.ts +0 -14
  476. package/src/core/types/badge.ts +0 -12
  477. package/src/core/types/box.ts +0 -19
  478. package/src/core/types/button.ts +0 -21
  479. package/src/core/types/card.ts +0 -6
  480. package/src/core/types/component.ts +0 -32
  481. package/src/core/types/dialog.ts +0 -4
  482. package/src/core/types/flex.ts +0 -30
  483. package/src/core/types/grid.ts +0 -14
  484. package/src/core/types/gridItem.ts +0 -29
  485. package/src/core/types/index.ts +0 -15
  486. package/src/core/types/placement.ts +0 -18
  487. package/src/core/types/popover.ts +0 -4
  488. package/src/core/types/radius.ts +0 -4
  489. package/src/core/types/selectable.ts +0 -6
  490. package/src/core/types/text.ts +0 -4
  491. package/src/core/utils/arrow/arrow.tsx +0 -123
  492. package/src/core/utils/arrow/cmds.ts +0 -91
  493. package/src/core/utils/arrow/index.ts +0 -1
  494. package/src/core/utils/boundaryElement/__workshop__/index.ts +0 -14
  495. package/src/core/utils/boundaryElement/__workshop__/plain.tsx +0 -19
  496. package/src/core/utils/boundaryElement/boundaryElement.test.tsx +0 -100
  497. package/src/core/utils/boundaryElement/boundaryElementContext.ts +0 -7
  498. package/src/core/utils/boundaryElement/boundaryElementProvider.tsx +0 -24
  499. package/src/core/utils/boundaryElement/index.ts +0 -3
  500. package/src/core/utils/boundaryElement/types.ts +0 -7
  501. package/src/core/utils/boundaryElement/useBoundaryElement.ts +0 -26
  502. package/src/core/utils/conditionalWrapper/conditionalWrapper.tsx +0 -21
  503. package/src/core/utils/conditionalWrapper/index.ts +0 -1
  504. package/src/core/utils/elementQuery/__workshop__/customMedia.tsx +0 -30
  505. package/src/core/utils/elementQuery/__workshop__/index.ts +0 -14
  506. package/src/core/utils/elementQuery/elementQuery.tsx +0 -53
  507. package/src/core/utils/elementQuery/helpers.ts +0 -27
  508. package/src/core/utils/elementQuery/index.ts +0 -1
  509. package/src/core/utils/errorBoundary.tsx +0 -48
  510. package/src/core/utils/getElementRef.ts +0 -26
  511. package/src/core/utils/index.ts +0 -9
  512. package/src/core/utils/layer/__workshop__/_debug.tsx +0 -17
  513. package/src/core/utils/layer/__workshop__/index.ts +0 -24
  514. package/src/core/utils/layer/__workshop__/multipleRoots.tsx +0 -49
  515. package/src/core/utils/layer/__workshop__/nested.tsx +0 -98
  516. package/src/core/utils/layer/__workshop__/responsiveZOffset.tsx +0 -13
  517. package/src/core/utils/layer/getLayerContext.test.ts +0 -30
  518. package/src/core/utils/layer/getLayerContext.ts +0 -21
  519. package/src/core/utils/layer/index.ts +0 -4
  520. package/src/core/utils/layer/layer.test.tsx +0 -108
  521. package/src/core/utils/layer/layer.tsx +0 -98
  522. package/src/core/utils/layer/layerContext.ts +0 -7
  523. package/src/core/utils/layer/layerProvider.tsx +0 -111
  524. package/src/core/utils/layer/types.ts +0 -9
  525. package/src/core/utils/layer/useLayer.ts +0 -26
  526. package/src/core/utils/portal/__workshop__/index.ts +0 -14
  527. package/src/core/utils/portal/__workshop__/named.tsx +0 -63
  528. package/src/core/utils/portal/index.ts +0 -4
  529. package/src/core/utils/portal/portal.test.tsx +0 -103
  530. package/src/core/utils/portal/portal.ts +0 -32
  531. package/src/core/utils/portal/portalContext.ts +0 -31
  532. package/src/core/utils/portal/portalProvider.tsx +0 -47
  533. package/src/core/utils/portal/types.ts +0 -9
  534. package/src/core/utils/portal/usePortal.ts +0 -25
  535. package/src/core/utils/spanWithTextOverflow.tsx +0 -10
  536. package/src/core/utils/srOnly/index.ts +0 -1
  537. package/src/core/utils/srOnly/srOnly.tsx +0 -36
  538. package/src/core/utils/virtualList/__workshop__/changingProps.tsx +0 -36
  539. package/src/core/utils/virtualList/__workshop__/elementScroll.tsx +0 -24
  540. package/src/core/utils/virtualList/__workshop__/index.ts +0 -29
  541. package/src/core/utils/virtualList/__workshop__/infiniteList.tsx +0 -48
  542. package/src/core/utils/virtualList/__workshop__/windowScrolll.tsx +0 -22
  543. package/src/core/utils/virtualList/index.ts +0 -1
  544. package/src/core/utils/virtualList/virtualList.tsx +0 -200
  545. package/src/theme/build/_deprecated/color/_selectable/createSelectableTones.ts +0 -76
  546. package/src/theme/build/_deprecated/color/_solid/createSolidTones.ts +0 -54
  547. package/src/theme/build/_deprecated/color/button/createButtonModes.ts +0 -22
  548. package/src/theme/build/_deprecated/color/button/createButtonTones.ts +0 -55
  549. package/src/theme/build/_deprecated/color/card/createCardStates.ts +0 -60
  550. package/src/theme/build/_deprecated/color/color.test.ts +0 -63
  551. package/src/theme/build/_deprecated/color/defaults.ts +0 -390
  552. package/src/theme/build/_deprecated/color/factory.ts +0 -142
  553. package/src/theme/build/_deprecated/color/index.ts +0 -1
  554. package/src/theme/build/_deprecated/color/input/createInputModes.ts +0 -81
  555. package/src/theme/build/_deprecated/color/muted/createMuted.ts +0 -54
  556. package/src/theme/build/_deprecated/color/spot/createSpot.ts +0 -20
  557. package/src/theme/build/buildColorTheme.test.ts +0 -183
  558. package/src/theme/build/buildColorTheme.ts +0 -499
  559. package/src/theme/build/buildTheme.test.ts +0 -87
  560. package/src/theme/build/buildTheme.ts +0 -36
  561. package/src/theme/build/colorToken/colorToken.ts +0 -19
  562. package/src/theme/build/colorToken/compileColorToken.ts +0 -21
  563. package/src/theme/build/colorToken/index.ts +0 -2
  564. package/src/theme/build/colorToken/types.ts +0 -6
  565. package/src/theme/build/index.ts +0 -3
  566. package/src/theme/build/lib/color-fns/blend/index.ts +0 -3
  567. package/src/theme/build/lib/color-fns/blend/mix.ts +0 -21
  568. package/src/theme/build/lib/color-fns/blend/multiply.ts +0 -18
  569. package/src/theme/build/lib/color-fns/blend/screen.ts +0 -18
  570. package/src/theme/build/lib/color-fns/color-fns.test.ts +0 -68
  571. package/src/theme/build/lib/color-fns/contrastRatio.ts +0 -31
  572. package/src/theme/build/lib/color-fns/convert.ts +0 -150
  573. package/src/theme/build/lib/color-fns/index.ts +0 -6
  574. package/src/theme/build/lib/color-fns/parse.ts +0 -60
  575. package/src/theme/build/lib/color-fns/rgba.ts +0 -10
  576. package/src/theme/build/lib/color-fns/types.ts +0 -28
  577. package/src/theme/build/lib/isRecord.ts +0 -3
  578. package/src/theme/build/lib/lazy.ts +0 -30
  579. package/src/theme/build/lib/utils.ts +0 -19
  580. package/src/theme/build/merge.ts +0 -26
  581. package/src/theme/build/mixThemeColor.test.ts +0 -21
  582. package/src/theme/build/mixThemeColor.ts +0 -53
  583. package/src/theme/build/renderColorTheme.ts +0 -532
  584. package/src/theme/build/renderColorValue.ts +0 -85
  585. package/src/theme/build/resolveColorTokens.ts +0 -268
  586. package/src/theme/build/theme.test.ts +0 -27
  587. package/src/theme/config/helpers.ts +0 -55
  588. package/src/theme/config/index.ts +0 -4
  589. package/src/theme/config/system.ts +0 -115
  590. package/src/theme/config/tokens/color/index.ts +0 -1
  591. package/src/theme/config/tokens/color/types.ts +0 -133
  592. package/src/theme/config/tokens/index.ts +0 -4
  593. package/src/theme/config/tokens/parseTokenKey.test.ts +0 -64
  594. package/src/theme/config/tokens/parseTokenKey.ts +0 -67
  595. package/src/theme/config/tokens/parseTokenValue.test.ts +0 -42
  596. package/src/theme/config/tokens/parseTokenValue.ts +0 -133
  597. package/src/theme/config/tokens/types.ts +0 -53
  598. package/src/theme/config/types.ts +0 -46
  599. package/src/theme/defaults/colorPalette.ts +0 -5
  600. package/src/theme/defaults/colorTokens.ts +0 -648
  601. package/src/theme/defaults/config.ts +0 -84
  602. package/src/theme/defaults/fonts.ts +0 -227
  603. package/src/theme/getScopedTheme.ts +0 -98
  604. package/src/theme/index.ts +0 -5
  605. package/src/theme/system/avatar.ts +0 -14
  606. package/src/theme/system/color/_constants.ts +0 -45
  607. package/src/theme/system/color/_helpers.ts +0 -24
  608. package/src/theme/system/color/_system.ts +0 -40
  609. package/src/theme/system/color/avatar.ts +0 -15
  610. package/src/theme/system/color/badge.ts +0 -16
  611. package/src/theme/system/color/button.ts +0 -17
  612. package/src/theme/system/color/color.ts +0 -34
  613. package/src/theme/system/color/index.ts +0 -13
  614. package/src/theme/system/color/input.ts +0 -25
  615. package/src/theme/system/color/kbd.ts +0 -8
  616. package/src/theme/system/color/selectable.ts +0 -12
  617. package/src/theme/system/color/shadow.ts +0 -7
  618. package/src/theme/system/color/state.ts +0 -43
  619. package/src/theme/system/color/syntax.ts +0 -41
  620. package/src/theme/system/css.ts +0 -14
  621. package/src/theme/system/focusRing.ts +0 -7
  622. package/src/theme/system/font.ts +0 -52
  623. package/src/theme/system/index.ts +0 -11
  624. package/src/theme/system/input.ts +0 -33
  625. package/src/theme/system/layer.ts +0 -8
  626. package/src/theme/system/shadow.ts +0 -19
  627. package/src/theme/system/styles.ts +0 -13
  628. package/src/theme/system/theme.ts +0 -138
  629. package/src/theme/system/v0/avatar.ts +0 -10
  630. package/src/theme/system/v0/color/_generic.ts +0 -35
  631. package/src/theme/system/v0/color/_system.ts +0 -17
  632. package/src/theme/system/v0/color/base.ts +0 -21
  633. package/src/theme/system/v0/color/button.ts +0 -42
  634. package/src/theme/system/v0/color/card.ts +0 -19
  635. package/src/theme/system/v0/color/color.ts +0 -40
  636. package/src/theme/system/v0/color/index.ts +0 -11
  637. package/src/theme/system/v0/color/input.ts +0 -34
  638. package/src/theme/system/v0/color/muted.ts +0 -26
  639. package/src/theme/system/v0/color/selectable.ts +0 -31
  640. package/src/theme/system/v0/color/solid.ts +0 -26
  641. package/src/theme/system/v0/color/spot.ts +0 -13
  642. package/src/theme/system/v0/index.ts +0 -3
  643. package/src/theme/system/v0/input.ts +0 -23
  644. package/src/theme/versioning/getTheme_v2.ts +0 -57
  645. package/src/theme/versioning/index.ts +0 -5
  646. package/src/theme/versioning/is_v0.ts +0 -6
  647. package/src/theme/versioning/is_v2.ts +0 -6
  648. package/src/theme/versioning/themeColor_v0_v2.ts +0 -243
  649. package/src/theme/versioning/themeColor_v2_v2_9.ts +0 -49
  650. package/src/theme/versioning/v0_v2.ts +0 -94
  651. package/src/theme/versioning/v2_v0.ts +0 -135
@@ -1,268 +0,0 @@
1
- import {COLOR_HUES, ColorHueKey} from '@sanity/color'
2
-
3
- import {
4
- ColorConfigCardTone,
5
- ColorConfigInputMode,
6
- ColorConfigInputState,
7
- ColorConfigStateTone,
8
- ThemeColorAvatarTokens,
9
- ThemeColorBadgeTokens,
10
- ThemeColorBaseTokens,
11
- ThemeColorButtonTokens,
12
- ThemeColorInputStateTokens,
13
- ThemeColorInputTokens,
14
- ThemeColorStatesTokens,
15
- ThemeColorStateTokens,
16
- ThemeColorTokens,
17
- } from '../config'
18
- import {defaultColorTokens} from '../defaults/colorTokens'
19
- import {
20
- THEME_COLOR_BUTTON_MODES,
21
- THEME_COLOR_CARD_TONES,
22
- THEME_COLOR_INPUT_MODES,
23
- THEME_COLOR_INPUT_STATES,
24
- THEME_COLOR_STATE_TONES,
25
- THEME_COLOR_STATES,
26
- ThemeColorButtonModeKey,
27
- ThemeColorCardToneKey,
28
- ThemeColorStateKey,
29
- ThemeColorStateToneKey,
30
- } from '../system'
31
- import {merge} from './merge'
32
-
33
- /**
34
- * Convert a tree of color tokens from a sparse format to a dense format.
35
- */
36
- export function resolveColorTokens(inputTokens?: ThemeColorTokens): ThemeColorTokens {
37
- const tokens = merge(defaultColorTokens, inputTokens)
38
-
39
- return {
40
- base: resolveBaseColorTokens(tokens),
41
- button: resolveButtonColorTokens(tokens),
42
- input: resolveInputColorTokens(tokens),
43
- selectable: resolveSelectableColorTokens(tokens),
44
- syntax: tokens.syntax,
45
- }
46
- }
47
-
48
- function resolveBaseColorTokens(sparseTokens: ThemeColorTokens) {
49
- const tokens: Partial<Record<ColorConfigCardTone, ThemeColorBaseTokens>> = {}
50
-
51
- // base tones
52
- for (const tone of THEME_COLOR_CARD_TONES) {
53
- tokens[tone] = resolveBaseColorTones(sparseTokens, tone)
54
- }
55
-
56
- return tokens
57
- }
58
-
59
- function resolveBaseColorTones(
60
- inputTokens: ThemeColorTokens,
61
- tone: ThemeColorCardToneKey,
62
- ): ThemeColorBaseTokens {
63
- const spec = merge(inputTokens?.base?.['*'], inputTokens?.base?.[tone])
64
-
65
- const hue = spec._hue || inputTokens?.base?.[tone]?._hue || 'gray'
66
-
67
- return {
68
- ...spec,
69
- _hue: hue,
70
- avatar: COLOR_HUES.reduce((acc, hue) => {
71
- return {
72
- ...acc,
73
- [hue]: merge({_hue: hue}, spec.avatar?.['*'], spec.avatar?.[hue]),
74
- }
75
- }, {} as ThemeColorAvatarTokens),
76
- badge: THEME_COLOR_STATE_TONES.reduce((acc, tone) => {
77
- return {
78
- ...acc,
79
- [tone]: {
80
- _hue: inputTokens?.base?.[tone]?._hue || hue,
81
- ...spec.badge?.['*'],
82
- ...spec.badge?.[tone],
83
- },
84
- }
85
- }, {} as ThemeColorBadgeTokens),
86
- }
87
- }
88
-
89
- function resolveButtonColorTokens(
90
- inputTokens: ThemeColorTokens,
91
- ): Partial<Record<ThemeColorButtonModeKey, ThemeColorButtonTokens>> {
92
- const tokens: Partial<Record<ThemeColorButtonModeKey, ThemeColorButtonTokens>> = {}
93
-
94
- for (const mode of THEME_COLOR_BUTTON_MODES) {
95
- tokens[mode] = resolveButtonToneColorTokens(inputTokens, mode)
96
- }
97
-
98
- return tokens
99
- }
100
-
101
- function resolveButtonToneColorTokens(
102
- inputTokens: ThemeColorTokens,
103
- mode: ThemeColorButtonModeKey,
104
- ): ThemeColorButtonTokens {
105
- const tokens: ThemeColorButtonTokens = {}
106
-
107
- for (const tone of THEME_COLOR_STATE_TONES) {
108
- tokens[tone] = resolveButtonModeColorTokens(inputTokens, mode, tone)
109
- }
110
-
111
- return tokens
112
- }
113
-
114
- function resolveButtonModeColorTokens(
115
- inputTokens: ThemeColorTokens,
116
- mode: ThemeColorButtonModeKey,
117
- tone: ThemeColorStateToneKey,
118
- ): ThemeColorStatesTokens {
119
- const tokens: ThemeColorStatesTokens = {}
120
-
121
- for (const state of THEME_COLOR_STATES) {
122
- tokens[state] = resolveButtonStateColorTokens(inputTokens, tone, mode, state)
123
- }
124
-
125
- return tokens
126
- }
127
-
128
- function resolveButtonStateColorTokens(
129
- inputTokens: ThemeColorTokens,
130
- tone: ThemeColorStateToneKey,
131
- mode: ThemeColorButtonModeKey,
132
- state: ThemeColorStateKey,
133
- ): ThemeColorStateTokens {
134
- const spec = merge(
135
- inputTokens?.button?.[mode]?.['*']?.['*'],
136
- inputTokens?.button?.[mode]?.[tone]?.['*'],
137
- inputTokens?.button?.[mode]?.['*']?.[state],
138
- inputTokens?.button?.[mode]?.[tone]?.[state],
139
- )
140
-
141
- const hue = spec._hue || inputTokens?.base?.[tone]?._hue
142
-
143
- return {
144
- ...spec,
145
- _hue: hue,
146
- avatar: COLOR_HUES.reduce((acc, hue) => {
147
- return {
148
- ...acc,
149
- [hue]: merge({_hue: hue}, spec.avatar?.['*'], spec.avatar?.[hue]),
150
- }
151
- }, {} as ThemeColorAvatarTokens),
152
- badge: THEME_COLOR_STATE_TONES.reduce((acc, tone) => {
153
- return {
154
- ...acc,
155
- [tone]: {
156
- _hue: inputTokens?.base?.[tone]?._hue || hue,
157
- ...spec.badge?.['*'],
158
- ...spec.badge?.[tone],
159
- },
160
- }
161
- }, {} as ThemeColorBadgeTokens),
162
- }
163
- }
164
-
165
- function resolveInputColorTokens(
166
- inputTokens: ThemeColorTokens,
167
- ): Partial<Record<ColorConfigInputMode, ThemeColorInputTokens>> {
168
- const tokens: Partial<Record<ColorConfigInputMode, ThemeColorInputTokens>> = {}
169
-
170
- for (const mode of THEME_COLOR_INPUT_MODES) {
171
- tokens[mode] = resolveInputModeColorTokens(inputTokens, mode)
172
- }
173
-
174
- return tokens
175
- }
176
-
177
- function resolveInputModeColorTokens(
178
- inputTokens: ThemeColorTokens,
179
- mode: ColorConfigInputMode,
180
- ): ThemeColorInputTokens {
181
- const states: ThemeColorInputTokens = {}
182
-
183
- for (const state of THEME_COLOR_INPUT_STATES) {
184
- states[state] = resolveInputStateColorTokens(inputTokens, mode, state)
185
- }
186
-
187
- return states
188
- }
189
-
190
- function resolveInputStateColorTokens(
191
- inputTokens: ThemeColorTokens,
192
- mode: ColorConfigInputMode,
193
- state: ColorConfigInputState,
194
- ): ThemeColorInputStateTokens {
195
- const spec = merge(
196
- inputTokens?.input?.['*']?.['*'],
197
- inputTokens?.input?.[mode]?.['*'],
198
- inputTokens?.input?.['*']?.[state],
199
- inputTokens?.input?.[mode]?.[state],
200
- )
201
-
202
- const hue = spec._hue || inputTokens?.input?.[mode]?._hue
203
-
204
- return {...spec, _hue: hue}
205
- }
206
-
207
- function resolveSelectableColorTokens(
208
- inputTokens: ThemeColorTokens,
209
- ): Partial<Record<ColorConfigStateTone, {_hue?: ColorHueKey} & ThemeColorStatesTokens>> {
210
- const tokens: ThemeColorButtonTokens = {}
211
-
212
- for (const tone of THEME_COLOR_STATE_TONES) {
213
- tokens[tone] = resolveSelectableToneColorTokens(inputTokens, tone)
214
- }
215
-
216
- return tokens
217
- }
218
-
219
- function resolveSelectableToneColorTokens(
220
- inputTokens: ThemeColorTokens,
221
- tone: ThemeColorStateToneKey,
222
- ): {_hue?: ColorHueKey} & ThemeColorStatesTokens {
223
- const states: {_hue?: ColorHueKey} & ThemeColorStatesTokens = {
224
- _hue: inputTokens?.selectable?.[tone]?._hue || inputTokens?.base?.[tone]?._hue,
225
- }
226
-
227
- for (const state of THEME_COLOR_STATES) {
228
- states[state] = resolveSelectableStateColorTokens(inputTokens, tone, state)
229
- }
230
-
231
- return states
232
- }
233
-
234
- function resolveSelectableStateColorTokens(
235
- inputTokens: ThemeColorTokens,
236
- tone: ThemeColorStateToneKey,
237
- state: ThemeColorStateKey,
238
- ) {
239
- const spec = merge(
240
- inputTokens?.selectable?.['*']?.['*'],
241
- inputTokens?.selectable?.[tone]?.['*'],
242
- inputTokens?.selectable?.['*']?.[state],
243
- inputTokens?.selectable?.[tone]?.[state],
244
- )
245
-
246
- const hue = spec._hue || inputTokens?.base?.[tone]?._hue
247
-
248
- return {
249
- ...spec,
250
- _hue: hue,
251
- avatar: COLOR_HUES.reduce((acc, hue) => {
252
- return {
253
- ...acc,
254
- [hue]: merge({_hue: hue}, spec.avatar?.['*'], spec.avatar?.[hue]),
255
- }
256
- }, {} as ThemeColorAvatarTokens),
257
- badge: THEME_COLOR_STATE_TONES.reduce((acc, tone) => {
258
- return {
259
- ...acc,
260
- [tone]: {
261
- _hue: inputTokens?.base?.[tone]?._hue || hue,
262
- ...spec.badge?.['*'],
263
- ...spec.badge?.[tone],
264
- },
265
- }
266
- }, {} as ThemeColorBadgeTokens),
267
- }
268
- }
@@ -1,27 +0,0 @@
1
- import {buildTheme} from './buildTheme'
2
- import {getContrastRatio} from './lib/color-fns'
3
-
4
- const AA_MIN = 4.5
5
-
6
- it('should have sufficient contrast', () => {
7
- const base = buildTheme().v2!.color.light.default
8
- const selectable = base.selectable.default
9
-
10
- const contrasts = {
11
- base: {
12
- fg: getContrastRatio(base.bg, base.fg),
13
- },
14
- selectable: {
15
- enabled: {
16
- fg: getContrastRatio(selectable.enabled.bg, selectable.enabled.fg),
17
- muted: {
18
- fg: getContrastRatio(selectable.enabled.bg, selectable.enabled.muted.fg),
19
- },
20
- },
21
- },
22
- }
23
-
24
- expect(contrasts.base.fg).toBeGreaterThan(AA_MIN)
25
- expect(contrasts.selectable.enabled.fg).toBeGreaterThan(AA_MIN)
26
- expect(contrasts.selectable.enabled.muted.fg).toBeGreaterThan(AA_MIN)
27
- })
@@ -1,55 +0,0 @@
1
- import {
2
- COLOR_CONFIG_BLEND_KEYS,
3
- COLOR_CONFIG_CARD_KEYS,
4
- COLOR_CONFIG_CARD_TONES,
5
- COLOR_CONFIG_STATE_KEYS,
6
- COLOR_CONFIG_STATE_TONES,
7
- ColorConfigBlendKey,
8
- ColorConfigCardKey,
9
- ColorConfigCardTone,
10
- ColorConfigOpacityValue,
11
- ColorConfigStateKey,
12
- ColorConfigStateTone,
13
- ColorConfigValue,
14
- } from './system'
15
- import {parseTokenValue} from './tokens'
16
-
17
- /** @internal */
18
- export function isColorConfigBaseTone(str: string): str is ColorConfigCardTone {
19
- return COLOR_CONFIG_CARD_TONES.includes(str as ColorConfigCardTone)
20
- }
21
-
22
- /** @internal */
23
- export function isColorConfigBaseKey(str: string): str is ColorConfigCardKey {
24
- return COLOR_CONFIG_CARD_KEYS.includes(str as ColorConfigCardKey)
25
- }
26
-
27
- /** @internal */
28
- export function isColorConfigStateKey(str: string): str is ColorConfigStateKey {
29
- return COLOR_CONFIG_STATE_KEYS.includes(str as ColorConfigStateKey)
30
- }
31
-
32
- /** @internal */
33
- export function isColorConfigStateTone(str: string): str is ColorConfigStateTone {
34
- return COLOR_CONFIG_STATE_TONES.includes(str as ColorConfigStateTone)
35
- }
36
-
37
- /** @internal */
38
- export function isColorConfigBlendKey(str: string): str is ColorConfigBlendKey {
39
- return COLOR_CONFIG_BLEND_KEYS.includes(str as ColorConfigBlendKey)
40
- }
41
-
42
- /** @internal */
43
- export function isColorTokenValue(str: string): str is ColorConfigValue {
44
- return parseTokenValue(str)?.type === 'color' || parseTokenValue(str)?.type === 'hue'
45
- }
46
-
47
- /** @internal */
48
- export function isColorValue(str: string): str is 'black' | 'white' {
49
- return str === 'black' || str === 'white'
50
- }
51
-
52
- /** @internal */
53
- export function isColorOpacityValue(str: string): str is ColorConfigOpacityValue {
54
- return str === '0' || /^0\.[0-9]+$/.test(str) || str === '1'
55
- }
@@ -1,4 +0,0 @@
1
- export * from './helpers'
2
- export * from './system'
3
- export * from './tokens'
4
- export * from './types'
@@ -1,115 +0,0 @@
1
- import {ColorHueKey, ColorTintKey} from '@sanity/color'
2
-
3
- import {
4
- THEME_COLOR_AVATAR_COLORS,
5
- THEME_COLOR_CARD_TONES,
6
- THEME_COLOR_INPUT_MODES,
7
- THEME_COLOR_INPUT_STATES,
8
- THEME_COLOR_STATE_TONES,
9
- THEME_COLOR_STATES,
10
- ThemeColorBlendModeKey,
11
- } from '../system'
12
-
13
- /** @public */
14
- export const COLOR_CONFIG_STATE_KEYS = [
15
- '_hue',
16
- 'bg',
17
- 'fg',
18
- 'border',
19
- 'focusRing',
20
- 'muted/fg',
21
- 'accent/fg',
22
- 'link/fg',
23
- 'code/bg',
24
- 'code/fg',
25
- 'skeleton/from',
26
- 'skeleton/to',
27
- 'status/dot',
28
- 'status/icon',
29
- ] as const
30
-
31
- /** @public */
32
- export type ColorConfigStateKey = (typeof COLOR_CONFIG_STATE_KEYS)[number]
33
-
34
- /** @public */
35
- export const COLOR_CONFIG_CARD_KEYS = [
36
- ...COLOR_CONFIG_STATE_KEYS,
37
- '_hue',
38
- 'bg',
39
- 'fg',
40
- 'border',
41
- 'focusRing',
42
- 'shadow/outline',
43
- 'shadow/umbra',
44
- 'shadow/penumbra',
45
- 'shadow/ambient',
46
- ] as const
47
-
48
- /** @public */
49
- export type ColorConfigCardKey = (typeof COLOR_CONFIG_CARD_KEYS)[number]
50
-
51
- /** @public */
52
- export const COLOR_CONFIG_BLEND_KEYS = ['_blend'] as const
53
-
54
- /** @public */
55
- export type ColorConfigBlendKey = (typeof COLOR_CONFIG_BLEND_KEYS)[number]
56
-
57
- /** @public */
58
- export type ColorConfigOpacityValue = `0` | `0.${number}` | `1`
59
-
60
- /** @public */
61
- export type ColorConfigValue =
62
- | `black`
63
- | `white`
64
- | `black/${ColorConfigOpacityValue}`
65
- | `white/${ColorConfigOpacityValue}`
66
- | `${ColorHueKey}`
67
- | `${ColorHueKey} ${number}%`
68
- | `${ColorHueKey}/${ColorTintKey}`
69
- | `${ColorHueKey}/${ColorTintKey} ${number}%`
70
- | `${ColorHueKey}/${ColorTintKey}/${ColorConfigOpacityValue}`
71
- | `${ColorTintKey}`
72
- | `${ColorTintKey} ${number}%`
73
- | `${ColorTintKey}/${ColorConfigOpacityValue}`
74
-
75
- /** @public */
76
- export type ThemeColorTokenValue = [ColorConfigValue, ColorConfigValue]
77
-
78
- /** @public */
79
- export type ColorBlendModeTokenValue = [ThemeColorBlendModeKey, ThemeColorBlendModeKey]
80
-
81
- /** @public */
82
- export const COLOR_CONFIG_AVATAR_COLORS = ['*', ...THEME_COLOR_AVATAR_COLORS] as const
83
-
84
- /** @public */
85
- export type ColorConfigAvatarColor = (typeof COLOR_CONFIG_AVATAR_COLORS)[number]
86
-
87
- /** @public */
88
- export const COLOR_CONFIG_CARD_TONES = ['*', ...THEME_COLOR_CARD_TONES] as const
89
-
90
- /** @public */
91
- export type ColorConfigCardTone = (typeof COLOR_CONFIG_CARD_TONES)[number]
92
-
93
- /** @public */
94
- export const COLOR_CONFIG_STATE_TONES = ['*', ...THEME_COLOR_STATE_TONES] as const
95
-
96
- /** @public */
97
- export type ColorConfigStateTone = (typeof COLOR_CONFIG_STATE_TONES)[number]
98
-
99
- /** @public */
100
- export const COLOR_CONFIG_STATES = ['*', ...THEME_COLOR_STATES] as const
101
-
102
- /** @public */
103
- export type ColorConfigState = (typeof COLOR_CONFIG_STATES)[number]
104
-
105
- /** @public */
106
- export const COLOR_CONFIG_INPUT_MODES = ['*', ...THEME_COLOR_INPUT_MODES] as const
107
-
108
- /** @public */
109
- export type ColorConfigInputMode = (typeof COLOR_CONFIG_INPUT_MODES)[number]
110
-
111
- /** @public */
112
- export const COLOR_CONFIG_INPUT_STATES = ['*', ...THEME_COLOR_INPUT_STATES] as const
113
-
114
- /** @public */
115
- export type ColorConfigInputState = (typeof COLOR_CONFIG_INPUT_STATES)[number]
@@ -1 +0,0 @@
1
- export * from './types'
@@ -1,133 +0,0 @@
1
- import {ColorHueKey} from '@sanity/color'
2
-
3
- import {ThemeColorButtonModeKey, ThemeColorStateToneKey, ThemeColorSyntax} from '../../../system'
4
- import {
5
- ColorBlendModeTokenValue,
6
- ColorConfigCardTone,
7
- ColorConfigInputMode,
8
- ColorConfigInputState,
9
- ColorConfigState,
10
- ColorConfigStateTone,
11
- ThemeColorTokenValue,
12
- } from '../../system'
13
-
14
- /** @public */
15
- export interface ThemeColorAvatarHueTokens {
16
- _blend?: ColorBlendModeTokenValue
17
- _hue?: ColorHueKey
18
- bg?: ThemeColorTokenValue
19
- fg?: ThemeColorTokenValue
20
- }
21
-
22
- /** @public */
23
- export interface ThemeColorAvatarTokens {
24
- '*'?: ThemeColorAvatarHueTokens
25
- 'gray'?: ThemeColorAvatarHueTokens
26
- 'blue'?: ThemeColorAvatarHueTokens
27
- 'purple'?: ThemeColorAvatarHueTokens
28
- 'magenta'?: ThemeColorAvatarHueTokens
29
- 'red'?: ThemeColorAvatarHueTokens
30
- 'orange'?: ThemeColorAvatarHueTokens
31
- 'yellow'?: ThemeColorAvatarHueTokens
32
- 'green'?: ThemeColorAvatarHueTokens
33
- 'cyan'?: ThemeColorAvatarHueTokens
34
- }
35
-
36
- /** @public */
37
- export interface ThemeColorBaseTokens extends ThemeColorStateTokens {
38
- focusRing?: ThemeColorTokenValue
39
- backdrop?: ThemeColorTokenValue
40
- shadow?: {
41
- outline?: ThemeColorTokenValue
42
- umbra?: ThemeColorTokenValue
43
- penumbra?: ThemeColorTokenValue
44
- ambient?: ThemeColorTokenValue
45
- }
46
- }
47
-
48
- /** @public */
49
- export interface ThemeColorBadgeToneTokens {
50
- _blend?: ColorBlendModeTokenValue
51
- _hue?: ColorHueKey
52
- bg?: ThemeColorTokenValue
53
- dot?: ThemeColorTokenValue
54
- fg?: ThemeColorTokenValue
55
- icon?: ThemeColorTokenValue
56
- }
57
-
58
- /** @public */
59
- export type ThemeColorBadgeTokens = Partial<
60
- Record<'*' | ThemeColorStateToneKey, ThemeColorBadgeToneTokens>
61
- >
62
-
63
- /** @public */
64
- export interface ThemeColorStateTokens {
65
- _blend?: ColorBlendModeTokenValue
66
- _hue?: ColorHueKey
67
- accent?: {
68
- fg?: ThemeColorTokenValue
69
- }
70
- avatar?: ThemeColorAvatarTokens
71
- badge?: ThemeColorBadgeTokens
72
- bg?: ThemeColorTokenValue
73
- border?: ThemeColorTokenValue
74
- code?: {
75
- bg?: ThemeColorTokenValue
76
- fg?: ThemeColorTokenValue
77
- }
78
- fg?: ThemeColorTokenValue
79
- icon?: ThemeColorTokenValue
80
- kbd?: {
81
- bg?: ThemeColorTokenValue
82
- fg?: ThemeColorTokenValue
83
- border?: ThemeColorTokenValue
84
- }
85
- link?: {
86
- fg?: ThemeColorTokenValue
87
- }
88
- muted?: {
89
- bg?: ThemeColorTokenValue
90
- fg?: ThemeColorTokenValue
91
- }
92
- skeleton?: {
93
- from?: ThemeColorTokenValue
94
- to?: ThemeColorTokenValue
95
- }
96
- }
97
-
98
- /** @public */
99
- export type ThemeColorStatesTokens = Partial<Record<ColorConfigState, ThemeColorStateTokens>>
100
-
101
- /** @public */
102
- export interface ThemeColorButtonTokens
103
- extends Partial<Record<ColorConfigStateTone, ThemeColorStatesTokens>> {
104
- _hue?: ColorHueKey
105
- }
106
-
107
- /** @public */
108
- export interface ThemeColorInputStateTokens {
109
- _blend?: ColorBlendModeTokenValue
110
- _hue?: ColorHueKey
111
- bg?: ThemeColorTokenValue
112
- border?: ThemeColorTokenValue
113
- fg?: ThemeColorTokenValue
114
- muted?: {
115
- bg?: ThemeColorTokenValue
116
- }
117
- placeholder?: ThemeColorTokenValue
118
- }
119
-
120
- /** @public */
121
- export interface ThemeColorInputTokens
122
- extends Partial<Record<ColorConfigInputState, ThemeColorInputStateTokens>> {
123
- _hue?: ColorHueKey
124
- }
125
-
126
- /** @public */
127
- export interface ThemeColorTokens {
128
- base?: Partial<Record<ColorConfigCardTone, ThemeColorBaseTokens>>
129
- button?: Partial<Record<ThemeColorButtonModeKey, ThemeColorButtonTokens>>
130
- input?: Partial<Record<ColorConfigInputMode, ThemeColorInputTokens>>
131
- selectable?: Partial<Record<ColorConfigStateTone, {_hue?: ColorHueKey} & ThemeColorStatesTokens>>
132
- syntax?: Partial<Record<keyof ThemeColorSyntax, ThemeColorTokenValue>>
133
- }
@@ -1,4 +0,0 @@
1
- export * from './color'
2
- export * from './parseTokenKey'
3
- export * from './parseTokenValue'
4
- export * from './types'
@@ -1,64 +0,0 @@
1
- import {parseTokenKey} from './parseTokenKey'
2
-
3
- test('parse token key', () => {
4
- expect(parseTokenKey('*/_blend')).toEqual({
5
- type: 'base',
6
- tone: '*',
7
- key: '_blend',
8
- })
9
-
10
- expect(parseTokenKey('*/_hue')).toEqual({
11
- type: 'base',
12
- tone: '*',
13
- key: '_hue',
14
- })
15
-
16
- expect(parseTokenKey('primary/_hue')).toEqual({
17
- type: 'base',
18
- tone: 'primary',
19
- key: '_hue',
20
- })
21
-
22
- expect(parseTokenKey('*/bg')).toEqual({
23
- type: 'base',
24
- tone: '*',
25
- key: 'bg',
26
- })
27
-
28
- expect(parseTokenKey('*/focusRing')).toEqual({
29
- type: 'base',
30
- tone: '*',
31
- key: 'focusRing',
32
- })
33
-
34
- expect(parseTokenKey('*/muted/fg')).toEqual({
35
- type: 'base',
36
- tone: '*',
37
- key: 'muted/fg',
38
- })
39
-
40
- expect(parseTokenKey('*/link/fg')).toEqual({
41
- type: 'base',
42
- tone: '*',
43
- key: 'link/fg',
44
- })
45
-
46
- expect(parseTokenKey('*/code/fg')).toEqual({
47
- type: 'base',
48
- tone: '*',
49
- key: 'code/fg',
50
- })
51
-
52
- expect(parseTokenKey('default/_blend')).toEqual({
53
- type: 'base',
54
- tone: 'default',
55
- key: '_blend',
56
- })
57
-
58
- expect(parseTokenKey('button/*/default/_blend')).toEqual({
59
- type: 'button',
60
- tone: '*',
61
- mode: 'default',
62
- key: '_blend',
63
- })
64
- })