@sanity/ui 3.3.2 → 3.3.4

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 (437) hide show
  1. package/dist/index.d.mts +8 -8
  2. package/dist/index.d.mts.map +1 -1
  3. package/dist/index.d.ts +8 -8
  4. package/dist/index.d.ts.map +1 -1
  5. package/dist/index.js +16 -16
  6. package/dist/index.mjs +16 -16
  7. package/dist/index.mjs.map +1 -1
  8. package/dist/tabList.js +2 -2
  9. package/dist/tabList.mjs +2 -2
  10. package/dist/tabList.mjs.map +1 -1
  11. package/dist/useTheme.d.mts +3 -3
  12. package/dist/useTheme.d.mts.map +1 -1
  13. package/dist/useTheme.d.ts +3 -3
  14. package/dist/useTheme.d.ts.map +1 -1
  15. package/package.json +8 -13
  16. package/exports/_visual-editing.ts +0 -32
  17. package/exports/index.ts +0 -1
  18. package/exports/theme.ts +0 -1
  19. package/src/core/_compat.ts +0 -294
  20. package/src/core/components/autocomplete/autocomplete.styles.tsx +0 -39
  21. package/src/core/components/autocomplete/autocomplete.tsx +0 -775
  22. package/src/core/components/autocomplete/autocompleteOption.tsx +0 -46
  23. package/src/core/components/autocomplete/autocompleteReducer.ts +0 -47
  24. package/src/core/components/autocomplete/constants.ts +0 -28
  25. package/src/core/components/autocomplete/index.ts +0 -2
  26. package/src/core/components/autocomplete/types.ts +0 -108
  27. package/src/core/components/breadcrumbs/breadcrumbs.styles.ts +0 -18
  28. package/src/core/components/breadcrumbs/breadcrumbs.test.tsx +0 -54
  29. package/src/core/components/breadcrumbs/breadcrumbs.tsx +0 -136
  30. package/src/core/components/breadcrumbs/index.ts +0 -1
  31. package/src/core/components/dialog/dialog.tsx +0 -433
  32. package/src/core/components/dialog/dialogContext.ts +0 -20
  33. package/src/core/components/dialog/dialogProvider.tsx +0 -35
  34. package/src/core/components/dialog/index.ts +0 -4
  35. package/src/core/components/dialog/styles.ts +0 -77
  36. package/src/core/components/dialog/useDialog.ts +0 -11
  37. package/src/core/components/hotkeys/hotkeys.test.tsx +0 -47
  38. package/src/core/components/hotkeys/hotkeys.tsx +0 -68
  39. package/src/core/components/hotkeys/index.ts +0 -1
  40. package/src/core/components/index.ts +0 -9
  41. package/src/core/components/menu/helpers.ts +0 -82
  42. package/src/core/components/menu/index.ts +0 -5
  43. package/src/core/components/menu/menu.spacing.test.tsx +0 -68
  44. package/src/core/components/menu/menu.test.tsx +0 -128
  45. package/src/core/components/menu/menu.tsx +0 -180
  46. package/src/core/components/menu/menuButton.tsx +0 -276
  47. package/src/core/components/menu/menuContext.ts +0 -18
  48. package/src/core/components/menu/menuDivider.ts +0 -24
  49. package/src/core/components/menu/menuGroup.spacing.test.tsx +0 -66
  50. package/src/core/components/menu/menuGroup.tsx +0 -237
  51. package/src/core/components/menu/menuItem.spacing.test.tsx +0 -62
  52. package/src/core/components/menu/menuItem.tsx +0 -201
  53. package/src/core/components/menu/useMenu.ts +0 -21
  54. package/src/core/components/menu/useMenuController.ts +0 -233
  55. package/src/core/components/skeleton/index.ts +0 -2
  56. package/src/core/components/skeleton/skeleton.tsx +0 -58
  57. package/src/core/components/skeleton/styles.ts +0 -50
  58. package/src/core/components/skeleton/textSkeleton.tsx +0 -122
  59. package/src/core/components/tab/index.ts +0 -3
  60. package/src/core/components/tab/tab.tsx +0 -102
  61. package/src/core/components/tab/tabList.test.tsx +0 -50
  62. package/src/core/components/tab/tabList.tsx +0 -71
  63. package/src/core/components/tab/tabPanel.tsx +0 -39
  64. package/src/core/components/toast/index.ts +0 -4
  65. package/src/core/components/toast/styles.ts +0 -77
  66. package/src/core/components/toast/toast.test.tsx +0 -106
  67. package/src/core/components/toast/toast.tsx +0 -199
  68. package/src/core/components/toast/toastContext.ts +0 -7
  69. package/src/core/components/toast/toastLayer.tsx +0 -52
  70. package/src/core/components/toast/toastProvider.tsx +0 -113
  71. package/src/core/components/toast/toastState.ts +0 -6
  72. package/src/core/components/toast/types.ts +0 -26
  73. package/src/core/components/toast/useToast.ts +0 -25
  74. package/src/core/components/tree/helpers.ts +0 -105
  75. package/src/core/components/tree/index.ts +0 -4
  76. package/src/core/components/tree/style.ts +0 -105
  77. package/src/core/components/tree/tree.test.tsx +0 -60
  78. package/src/core/components/tree/tree.tsx +0 -242
  79. package/src/core/components/tree/treeContext.ts +0 -10
  80. package/src/core/components/tree/treeGroup.tsx +0 -29
  81. package/src/core/components/tree/treeItem.test.tsx +0 -70
  82. package/src/core/components/tree/treeItem.tsx +0 -225
  83. package/src/core/components/tree/types.ts +0 -25
  84. package/src/core/components/tree/useTree.ts +0 -17
  85. package/src/core/constants.ts +0 -79
  86. package/src/core/helpers/animation.ts +0 -27
  87. package/src/core/helpers/element.ts +0 -55
  88. package/src/core/helpers/focus.ts +0 -100
  89. package/src/core/helpers/index.ts +0 -4
  90. package/src/core/helpers/scroll.ts +0 -15
  91. package/src/core/hooks/index.ts +0 -13
  92. package/src/core/hooks/useArrayProp.ts +0 -17
  93. package/src/core/hooks/useClickOutside.test.tsx +0 -510
  94. package/src/core/hooks/useClickOutside.ts +0 -118
  95. package/src/core/hooks/useClickOutsideEvent.test.tsx +0 -119
  96. package/src/core/hooks/useClickOutsideEvent.ts +0 -73
  97. package/src/core/hooks/useCustomValidity.ts +0 -13
  98. package/src/core/hooks/useDelayed.test.ts +0 -89
  99. package/src/core/hooks/useDelayedState.ts +0 -36
  100. package/src/core/hooks/useElementRect/index.ts +0 -1
  101. package/src/core/hooks/useElementRect/useElementRect.ts +0 -14
  102. package/src/core/hooks/useElementSize.ts +0 -19
  103. package/src/core/hooks/useForwardedRef.ts +0 -20
  104. package/src/core/hooks/useGlobalKeyDown.ts +0 -24
  105. package/src/core/hooks/useIsomorphicEffect.ts +0 -7
  106. package/src/core/hooks/useMatchMedia.ts +0 -28
  107. package/src/core/hooks/useMediaIndex/index.ts +0 -1
  108. package/src/core/hooks/useMediaIndex/useMediaIndex.test.tsx +0 -37
  109. package/src/core/hooks/useMediaIndex/useMediaIndex.ts +0 -102
  110. package/src/core/hooks/useMounted.ts +0 -15
  111. package/src/core/hooks/usePrefersDark.hydration.test.tsx +0 -58
  112. package/src/core/hooks/usePrefersDark.test.tsx +0 -21
  113. package/src/core/hooks/usePrefersDark.ts +0 -16
  114. package/src/core/hooks/usePrefersReducedMotion.hydration.test.tsx +0 -58
  115. package/src/core/hooks/usePrefersReducedMotion.test.tsx +0 -21
  116. package/src/core/hooks/usePrefersReducedMotion.ts +0 -16
  117. package/src/core/index.ts +0 -10
  118. package/src/core/lib/createGlobalScopedContext.ts +0 -37
  119. package/src/core/lib/globalScope.ts +0 -20
  120. package/src/core/lib/isRecord.ts +0 -3
  121. package/src/core/middleware/origin.ts +0 -47
  122. package/src/core/observers/elementSizeObserver.ts +0 -117
  123. package/src/core/observers/index.ts +0 -2
  124. package/src/core/observers/resizeObserver.ts +0 -9
  125. package/src/core/primitives/_selectable/index.ts +0 -1
  126. package/src/core/primitives/_selectable/selectable.tsx +0 -15
  127. package/src/core/primitives/_selectable/style.ts +0 -115
  128. package/src/core/primitives/avatar/avatar.tsx +0 -200
  129. package/src/core/primitives/avatar/avatarCounter.tsx +0 -91
  130. package/src/core/primitives/avatar/avatarStack.tsx +0 -101
  131. package/src/core/primitives/avatar/index.ts +0 -4
  132. package/src/core/primitives/avatar/styles.ts +0 -167
  133. package/src/core/primitives/avatar/types.ts +0 -17
  134. package/src/core/primitives/badge/badge.test.tsx +0 -17
  135. package/src/core/primitives/badge/badge.tsx +0 -72
  136. package/src/core/primitives/badge/index.ts +0 -1
  137. package/src/core/primitives/badge/styles.ts +0 -20
  138. package/src/core/primitives/badge/types.ts +0 -8
  139. package/src/core/primitives/box/box.test.tsx +0 -155
  140. package/src/core/primitives/box/box.tsx +0 -162
  141. package/src/core/primitives/box/index.ts +0 -1
  142. package/src/core/primitives/button/button.test.tsx +0 -86
  143. package/src/core/primitives/button/button.tsx +0 -214
  144. package/src/core/primitives/button/index.ts +0 -1
  145. package/src/core/primitives/button/styles.ts +0 -118
  146. package/src/core/primitives/card/card.tsx +0 -125
  147. package/src/core/primitives/card/index.ts +0 -2
  148. package/src/core/primitives/card/styles.ts +0 -147
  149. package/src/core/primitives/card/types.ts +0 -12
  150. package/src/core/primitives/checkbox/checkbox.tsx +0 -73
  151. package/src/core/primitives/checkbox/index.ts +0 -1
  152. package/src/core/primitives/checkbox/styles.ts +0 -128
  153. package/src/core/primitives/code/code.tsx +0 -56
  154. package/src/core/primitives/code/index.ts +0 -1
  155. package/src/core/primitives/code/refractor.tsx +0 -22
  156. package/src/core/primitives/code/styles.ts +0 -77
  157. package/src/core/primitives/container/container.tsx +0 -55
  158. package/src/core/primitives/container/index.ts +0 -2
  159. package/src/core/primitives/container/styles.ts +0 -23
  160. package/src/core/primitives/container/types.ts +0 -6
  161. package/src/core/primitives/flex/flex.tsx +0 -63
  162. package/src/core/primitives/flex/index.ts +0 -1
  163. package/src/core/primitives/grid/grid.test.tsx +0 -86
  164. package/src/core/primitives/grid/grid.tsx +0 -77
  165. package/src/core/primitives/grid/index.ts +0 -1
  166. package/src/core/primitives/heading/heading.tsx +0 -89
  167. package/src/core/primitives/heading/index.ts +0 -1
  168. package/src/core/primitives/heading/styles.ts +0 -64
  169. package/src/core/primitives/heading/types.ts +0 -7
  170. package/src/core/primitives/index.ts +0 -27
  171. package/src/core/primitives/inline/index.ts +0 -1
  172. package/src/core/primitives/inline/inline.test.tsx +0 -55
  173. package/src/core/primitives/inline/inline.tsx +0 -66
  174. package/src/core/primitives/inline/styles.ts +0 -32
  175. package/src/core/primitives/inline/types.ts +0 -6
  176. package/src/core/primitives/kbd/index.ts +0 -1
  177. package/src/core/primitives/kbd/kbd.tsx +0 -73
  178. package/src/core/primitives/label/index.ts +0 -1
  179. package/src/core/primitives/label/label.tsx +0 -88
  180. package/src/core/primitives/label/styles.ts +0 -45
  181. package/src/core/primitives/popover/constants.ts +0 -22
  182. package/src/core/primitives/popover/floating-ui/size.ts +0 -99
  183. package/src/core/primitives/popover/helpers.ts +0 -31
  184. package/src/core/primitives/popover/index.ts +0 -2
  185. package/src/core/primitives/popover/popover.tsx +0 -512
  186. package/src/core/primitives/popover/popoverCard.tsx +0 -167
  187. package/src/core/primitives/popover/types.ts +0 -6
  188. package/src/core/primitives/radio/index.ts +0 -1
  189. package/src/core/primitives/radio/radio.tsx +0 -51
  190. package/src/core/primitives/radio/styles.ts +0 -117
  191. package/src/core/primitives/select/index.ts +0 -1
  192. package/src/core/primitives/select/select.test.tsx +0 -56
  193. package/src/core/primitives/select/select.tsx +0 -95
  194. package/src/core/primitives/select/styles.ts +0 -166
  195. package/src/core/primitives/spinner/index.ts +0 -1
  196. package/src/core/primitives/spinner/spinner.tsx +0 -46
  197. package/src/core/primitives/stack/index.ts +0 -1
  198. package/src/core/primitives/stack/stack.test.tsx +0 -61
  199. package/src/core/primitives/stack/stack.tsx +0 -59
  200. package/src/core/primitives/stack/styles.ts +0 -33
  201. package/src/core/primitives/switch/index.ts +0 -1
  202. package/src/core/primitives/switch/styles.ts +0 -173
  203. package/src/core/primitives/switch/switch.tsx +0 -68
  204. package/src/core/primitives/text/index.ts +0 -1
  205. package/src/core/primitives/text/styles.ts +0 -74
  206. package/src/core/primitives/text/text.tsx +0 -90
  207. package/src/core/primitives/textArea/index.ts +0 -1
  208. package/src/core/primitives/textArea/textArea.tsx +0 -120
  209. package/src/core/primitives/textInput/index.ts +0 -1
  210. package/src/core/primitives/textInput/textInput.test.tsx +0 -52
  211. package/src/core/primitives/textInput/textInput.tsx +0 -398
  212. package/src/core/primitives/tooltip/constants.ts +0 -23
  213. package/src/core/primitives/tooltip/index.ts +0 -2
  214. package/src/core/primitives/tooltip/tooltip.test.tsx +0 -485
  215. package/src/core/primitives/tooltip/tooltip.tsx +0 -497
  216. package/src/core/primitives/tooltip/tooltipCard.tsx +0 -110
  217. package/src/core/primitives/tooltip/tooltipDelayGroup/index.ts +0 -4
  218. package/src/core/primitives/tooltip/tooltipDelayGroup/tooltipDelayGroupContext.tsx +0 -11
  219. package/src/core/primitives/tooltip/tooltipDelayGroup/tooltipDelayGroupProvider.tsx +0 -57
  220. package/src/core/primitives/tooltip/tooltipDelayGroup/types.ts +0 -12
  221. package/src/core/primitives/tooltip/tooltipDelayGroup/useTooltipDelayGroup.ts +0 -13
  222. package/src/core/primitives/types.ts +0 -179
  223. package/src/core/styles/border/borderStyle.ts +0 -56
  224. package/src/core/styles/border/index.ts +0 -2
  225. package/src/core/styles/border/types.ts +0 -10
  226. package/src/core/styles/box/boxStyle.ts +0 -69
  227. package/src/core/styles/box/index.ts +0 -2
  228. package/src/core/styles/box/types.ts +0 -11
  229. package/src/core/styles/card/_cardColorStyle.ts +0 -108
  230. package/src/core/styles/card/index.ts +0 -1
  231. package/src/core/styles/flex/flexItemStyle.ts +0 -27
  232. package/src/core/styles/flex/flexStyle.ts +0 -70
  233. package/src/core/styles/flex/index.ts +0 -3
  234. package/src/core/styles/flex/types.ts +0 -24
  235. package/src/core/styles/focusRing/index.ts +0 -25
  236. package/src/core/styles/font/codeFontStyle.ts +0 -13
  237. package/src/core/styles/font/headingFontStyle.ts +0 -13
  238. package/src/core/styles/font/index.ts +0 -6
  239. package/src/core/styles/font/labelFontStyle.ts +0 -13
  240. package/src/core/styles/font/responsiveFont.ts +0 -100
  241. package/src/core/styles/font/textAlignStyle.ts +0 -19
  242. package/src/core/styles/font/textFontStyle.ts +0 -13
  243. package/src/core/styles/font/types.ts +0 -33
  244. package/src/core/styles/grid/gridItemStyle.ts +0 -82
  245. package/src/core/styles/grid/gridStyle.ts +0 -109
  246. package/src/core/styles/grid/index.ts +0 -3
  247. package/src/core/styles/grid/types.ts +0 -37
  248. package/src/core/styles/helpers.ts +0 -72
  249. package/src/core/styles/index.ts +0 -5
  250. package/src/core/styles/input/index.ts +0 -2
  251. package/src/core/styles/input/responsiveInputPaddingStyle.ts +0 -78
  252. package/src/core/styles/input/textInputStyle.ts +0 -263
  253. package/src/core/styles/internal.ts +0 -12
  254. package/src/core/styles/margin/index.ts +0 -2
  255. package/src/core/styles/margin/marginStyle.ts +0 -22
  256. package/src/core/styles/margin/marginsStyle.test.ts +0 -34
  257. package/src/core/styles/margin/types.ts +0 -9
  258. package/src/core/styles/padding/index.ts +0 -2
  259. package/src/core/styles/padding/paddingStyle.test.ts +0 -34
  260. package/src/core/styles/padding/paddingStyle.ts +0 -22
  261. package/src/core/styles/padding/types.ts +0 -12
  262. package/src/core/styles/radius/index.ts +0 -2
  263. package/src/core/styles/radius/radiusStyle.ts +0 -23
  264. package/src/core/styles/radius/types.ts +0 -8
  265. package/src/core/styles/shadow/index.ts +0 -2
  266. package/src/core/styles/shadow/shadowStyle.ts +0 -29
  267. package/src/core/styles/shadow/types.ts +0 -6
  268. package/src/core/styles/types.ts +0 -8
  269. package/src/core/theme/index.ts +0 -5
  270. package/src/core/theme/theme.test.tsx +0 -77
  271. package/src/core/theme/themeColorProvider.tsx +0 -29
  272. package/src/core/theme/themeContext.ts +0 -10
  273. package/src/core/theme/themeProvider.tsx +0 -62
  274. package/src/core/theme/types.ts +0 -12
  275. package/src/core/theme/useRootTheme.ts +0 -18
  276. package/src/core/theme/useTheme.ts +0 -18
  277. package/src/core/types/avatar.ts +0 -14
  278. package/src/core/types/badge.ts +0 -12
  279. package/src/core/types/box.ts +0 -19
  280. package/src/core/types/button.ts +0 -21
  281. package/src/core/types/card.ts +0 -6
  282. package/src/core/types/component.ts +0 -32
  283. package/src/core/types/dialog.ts +0 -4
  284. package/src/core/types/flex.ts +0 -30
  285. package/src/core/types/grid.ts +0 -14
  286. package/src/core/types/gridItem.ts +0 -29
  287. package/src/core/types/index.ts +0 -15
  288. package/src/core/types/placement.ts +0 -18
  289. package/src/core/types/popover.ts +0 -4
  290. package/src/core/types/radius.ts +0 -4
  291. package/src/core/types/selectable.ts +0 -6
  292. package/src/core/types/text.ts +0 -4
  293. package/src/core/utils/arrow/arrow.tsx +0 -124
  294. package/src/core/utils/arrow/cmds.ts +0 -91
  295. package/src/core/utils/arrow/index.ts +0 -1
  296. package/src/core/utils/boundaryElement/boundaryElement.test.tsx +0 -105
  297. package/src/core/utils/boundaryElement/boundaryElementContext.ts +0 -7
  298. package/src/core/utils/boundaryElement/boundaryElementProvider.tsx +0 -24
  299. package/src/core/utils/boundaryElement/index.ts +0 -3
  300. package/src/core/utils/boundaryElement/types.ts +0 -7
  301. package/src/core/utils/boundaryElement/useBoundaryElement.ts +0 -26
  302. package/src/core/utils/conditionalWrapper/conditionalWrapper.tsx +0 -22
  303. package/src/core/utils/conditionalWrapper/index.ts +0 -1
  304. package/src/core/utils/elementQuery/elementQuery.tsx +0 -53
  305. package/src/core/utils/elementQuery/helpers.ts +0 -27
  306. package/src/core/utils/elementQuery/index.ts +0 -1
  307. package/src/core/utils/errorBoundary.tsx +0 -48
  308. package/src/core/utils/getElementRef.ts +0 -31
  309. package/src/core/utils/index.ts +0 -9
  310. package/src/core/utils/layer/getLayerContext.test.ts +0 -32
  311. package/src/core/utils/layer/getLayerContext.ts +0 -21
  312. package/src/core/utils/layer/index.ts +0 -4
  313. package/src/core/utils/layer/layer.test.tsx +0 -113
  314. package/src/core/utils/layer/layer.tsx +0 -99
  315. package/src/core/utils/layer/layerContext.ts +0 -7
  316. package/src/core/utils/layer/layerProvider.tsx +0 -111
  317. package/src/core/utils/layer/types.ts +0 -9
  318. package/src/core/utils/layer/useLayer.ts +0 -28
  319. package/src/core/utils/portal/index.ts +0 -4
  320. package/src/core/utils/portal/portal.test.tsx +0 -108
  321. package/src/core/utils/portal/portal.ts +0 -32
  322. package/src/core/utils/portal/portalContext.ts +0 -31
  323. package/src/core/utils/portal/portalProvider.tsx +0 -48
  324. package/src/core/utils/portal/types.ts +0 -9
  325. package/src/core/utils/portal/usePortal.ts +0 -25
  326. package/src/core/utils/spanWithTextOverflow.tsx +0 -10
  327. package/src/core/utils/srOnly/index.ts +0 -1
  328. package/src/core/utils/srOnly/srOnly.tsx +0 -36
  329. package/src/core/utils/virtualList/index.ts +0 -1
  330. package/src/core/utils/virtualList/virtualList.tsx +0 -201
  331. package/src/theme/build/_deprecated/color/_selectable/createSelectableTones.ts +0 -86
  332. package/src/theme/build/_deprecated/color/_solid/createSolidTones.ts +0 -58
  333. package/src/theme/build/_deprecated/color/button/createButtonModes.ts +0 -27
  334. package/src/theme/build/_deprecated/color/button/createButtonTones.ts +0 -60
  335. package/src/theme/build/_deprecated/color/card/createCardStates.ts +0 -66
  336. package/src/theme/build/_deprecated/color/color.test.ts +0 -67
  337. package/src/theme/build/_deprecated/color/defaults.ts +0 -391
  338. package/src/theme/build/_deprecated/color/factory.ts +0 -178
  339. package/src/theme/build/_deprecated/color/index.ts +0 -1
  340. package/src/theme/build/_deprecated/color/input/createInputModes.ts +0 -86
  341. package/src/theme/build/_deprecated/color/muted/createMuted.ts +0 -58
  342. package/src/theme/build/_deprecated/color/spot/createSpot.ts +0 -23
  343. package/src/theme/build/buildColorTheme.test.ts +0 -185
  344. package/src/theme/build/buildColorTheme.ts +0 -507
  345. package/src/theme/build/buildTheme.test.ts +0 -89
  346. package/src/theme/build/buildTheme.ts +0 -36
  347. package/src/theme/build/colorToken/colorToken.ts +0 -19
  348. package/src/theme/build/colorToken/compileColorToken.ts +0 -21
  349. package/src/theme/build/colorToken/index.ts +0 -2
  350. package/src/theme/build/colorToken/types.ts +0 -6
  351. package/src/theme/build/index.ts +0 -3
  352. package/src/theme/build/lib/color-fns/blend/index.ts +0 -3
  353. package/src/theme/build/lib/color-fns/blend/mix.ts +0 -21
  354. package/src/theme/build/lib/color-fns/blend/multiply.ts +0 -18
  355. package/src/theme/build/lib/color-fns/blend/screen.ts +0 -18
  356. package/src/theme/build/lib/color-fns/color-fns.test.ts +0 -70
  357. package/src/theme/build/lib/color-fns/contrastRatio.ts +0 -31
  358. package/src/theme/build/lib/color-fns/convert.ts +0 -150
  359. package/src/theme/build/lib/color-fns/index.ts +0 -6
  360. package/src/theme/build/lib/color-fns/parse.ts +0 -60
  361. package/src/theme/build/lib/color-fns/rgba.ts +0 -10
  362. package/src/theme/build/lib/color-fns/types.ts +0 -28
  363. package/src/theme/build/lib/isRecord.ts +0 -3
  364. package/src/theme/build/lib/lazy.ts +0 -30
  365. package/src/theme/build/lib/utils.ts +0 -19
  366. package/src/theme/build/merge.ts +0 -31
  367. package/src/theme/build/mixThemeColor.test.ts +0 -23
  368. package/src/theme/build/mixThemeColor.ts +0 -53
  369. package/src/theme/build/renderColorTheme.ts +0 -538
  370. package/src/theme/build/renderColorValue.ts +0 -83
  371. package/src/theme/build/resolveColorTokens.ts +0 -274
  372. package/src/theme/build/theme.test.ts +0 -29
  373. package/src/theme/config/helpers.ts +0 -60
  374. package/src/theme/config/index.ts +0 -4
  375. package/src/theme/config/system.ts +0 -117
  376. package/src/theme/config/tokens/color/index.ts +0 -1
  377. package/src/theme/config/tokens/color/types.ts +0 -135
  378. package/src/theme/config/tokens/index.ts +0 -4
  379. package/src/theme/config/tokens/parseTokenKey.test.ts +0 -66
  380. package/src/theme/config/tokens/parseTokenKey.ts +0 -67
  381. package/src/theme/config/tokens/parseTokenValue.test.ts +0 -44
  382. package/src/theme/config/tokens/parseTokenValue.ts +0 -134
  383. package/src/theme/config/tokens/types.ts +0 -53
  384. package/src/theme/config/types.ts +0 -46
  385. package/src/theme/defaults/colorPalette.ts +0 -5
  386. package/src/theme/defaults/colorTokens.ts +0 -648
  387. package/src/theme/defaults/config.ts +0 -84
  388. package/src/theme/defaults/fonts.ts +0 -227
  389. package/src/theme/getScopedTheme.ts +0 -103
  390. package/src/theme/index.ts +0 -5
  391. package/src/theme/system/avatar.ts +0 -14
  392. package/src/theme/system/color/_constants.ts +0 -45
  393. package/src/theme/system/color/_helpers.ts +0 -28
  394. package/src/theme/system/color/_system.ts +0 -40
  395. package/src/theme/system/color/avatar.ts +0 -15
  396. package/src/theme/system/color/badge.ts +0 -16
  397. package/src/theme/system/color/button.ts +0 -17
  398. package/src/theme/system/color/color.ts +0 -34
  399. package/src/theme/system/color/index.ts +0 -13
  400. package/src/theme/system/color/input.ts +0 -25
  401. package/src/theme/system/color/kbd.ts +0 -8
  402. package/src/theme/system/color/selectable.ts +0 -12
  403. package/src/theme/system/color/shadow.ts +0 -7
  404. package/src/theme/system/color/state.ts +0 -43
  405. package/src/theme/system/color/syntax.ts +0 -41
  406. package/src/theme/system/css.ts +0 -14
  407. package/src/theme/system/focusRing.ts +0 -7
  408. package/src/theme/system/font.ts +0 -52
  409. package/src/theme/system/index.ts +0 -11
  410. package/src/theme/system/input.ts +0 -33
  411. package/src/theme/system/layer.ts +0 -8
  412. package/src/theme/system/shadow.ts +0 -19
  413. package/src/theme/system/styles.ts +0 -13
  414. package/src/theme/system/theme.ts +0 -142
  415. package/src/theme/system/v0/avatar.ts +0 -10
  416. package/src/theme/system/v0/color/_generic.ts +0 -35
  417. package/src/theme/system/v0/color/_system.ts +0 -18
  418. package/src/theme/system/v0/color/base.ts +0 -21
  419. package/src/theme/system/v0/color/button.ts +0 -56
  420. package/src/theme/system/v0/color/card.ts +0 -25
  421. package/src/theme/system/v0/color/color.ts +0 -51
  422. package/src/theme/system/v0/color/index.ts +0 -11
  423. package/src/theme/system/v0/color/input.ts +0 -40
  424. package/src/theme/system/v0/color/muted.ts +0 -37
  425. package/src/theme/system/v0/color/selectable.ts +0 -42
  426. package/src/theme/system/v0/color/solid.ts +0 -37
  427. package/src/theme/system/v0/color/spot.ts +0 -14
  428. package/src/theme/system/v0/index.ts +0 -3
  429. package/src/theme/system/v0/input.ts +0 -23
  430. package/src/theme/versioning/getTheme_v2.ts +0 -72
  431. package/src/theme/versioning/index.ts +0 -5
  432. package/src/theme/versioning/is_v0.ts +0 -6
  433. package/src/theme/versioning/is_v2.ts +0 -6
  434. package/src/theme/versioning/themeColor_v0_v2.ts +0 -250
  435. package/src/theme/versioning/themeColor_v2_v2_9.ts +0 -50
  436. package/src/theme/versioning/v0_v2.ts +0 -106
  437. package/src/theme/versioning/v2_v0.ts +0 -153
@@ -1,21 +0,0 @@
1
- /** @vitest-environment node */
2
-
3
- import {renderToStaticMarkup, renderToString} from 'react-dom/server'
4
- import {describe, expect, it} from 'vitest'
5
-
6
- import {usePrefersDark} from './usePrefersDark'
7
-
8
- function Log() {
9
- const dark = usePrefersDark()
10
-
11
- return <>dark: {JSON.stringify(dark)}</>
12
- }
13
-
14
- describe('usePrefersDark', () => {
15
- it(`SSR to static markup returns false`, () => {
16
- expect(renderToStaticMarkup(<Log />)).toBe('dark: false')
17
- })
18
- it(`SSR to markup for hydration doesn't throw`, () => {
19
- expect(renderToString(<Log />)).toMatchInlineSnapshot(`"dark: <!-- -->false"`)
20
- })
21
- })
@@ -1,16 +0,0 @@
1
- import {useMatchMedia} from './useMatchMedia'
2
-
3
- /**
4
- * Returns true if a dark color scheme is preferred, false if a light color scheme is preferred or the preference is not known.
5
- *
6
- * @param getServerSnapshot - Only called during server-side rendering, and hydration if using hydrateRoot. Since the server environment doesn't have access to the DOM, we can't determine the current value of the media query and we assume `(prefers-color-scheme: light)` since it's the most common scheme (https://react.dev/reference/react/useSyncExternalStore#adding-support-for-server-rendering)
7
- *
8
- * If you persist the detected preference in a cookie or a header then you may implement your own server snapshot to read it.
9
- * Chrome supports reading the `prefers-color-scheme` media query from a header if the server response: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Sec-CH-Prefers-Color-Scheme
10
- * @example https://gist.github.com/stipsan/13c0cccf8dfc34f4b44bb1b984baf7df
11
- *
12
- * @public
13
- */
14
- export function usePrefersDark(getServerSnapshot = () => false): boolean {
15
- return useMatchMedia('(prefers-color-scheme: dark)', getServerSnapshot)
16
- }
@@ -1,58 +0,0 @@
1
- /** @vitest-environment jsdom */
2
-
3
- /**
4
- * As this hook is used for top-level theming it's likely to be called while server-rendering
5
- * and that's why it's worth it to have a testing suite for hydration
6
- */
7
- import {waitFor} from '@testing-library/dom'
8
- import {hydrateRoot} from 'react-dom/client'
9
- import {afterAll, beforeAll, describe, expect, it, vi} from 'vitest'
10
-
11
- import {usePrefersReducedMotion} from './usePrefersReducedMotion'
12
-
13
- function Log() {
14
- const reduceMotion = usePrefersReducedMotion()
15
-
16
- return <>prefers-motion: {JSON.stringify(reduceMotion)}</>
17
- }
18
-
19
- const originalMatchMedia = window.matchMedia
20
-
21
- describe('usePrefersReducedMotion SSR hydration', () => {
22
- beforeAll(() => {
23
- window.matchMedia = () =>
24
- // oxlint-disable-next-line no-unsafe-type-assertion
25
- ({
26
- addEventListener: vi.fn(),
27
- removeEventListener: vi.fn(),
28
- matches: true,
29
- }) as any
30
- })
31
-
32
- afterAll(() => {
33
- window.matchMedia = originalMatchMedia
34
- })
35
-
36
- it(`hydrates without any warnings`, async () => {
37
- const spy = vi.spyOn(console, 'error').mockImplementation(() => {})
38
-
39
- const node = document.createElement('div')
40
-
41
- document.body.appendChild(node)
42
-
43
- node.innerHTML = `prefers-motion: <!-- -->false`
44
-
45
- hydrateRoot(node, <Log />)
46
-
47
- // It's false initially
48
- await waitFor(() => expect(node.innerHTML).toBe('prefers-motion: <!-- -->false'))
49
-
50
- // After hydration it should switch to true
51
- await waitFor(() => expect(node.innerHTML).toBe('prefers-motion: <!-- -->true'))
52
-
53
- expect(console.error).not.toHaveBeenCalled()
54
-
55
- spy.mockReset()
56
- spy.mockRestore()
57
- })
58
- })
@@ -1,21 +0,0 @@
1
- /** @vitest-environment node */
2
-
3
- import {renderToStaticMarkup, renderToString} from 'react-dom/server'
4
- import {describe, expect, it} from 'vitest'
5
-
6
- import {usePrefersReducedMotion} from './usePrefersReducedMotion'
7
-
8
- function Log() {
9
- const reduceMotion = usePrefersReducedMotion()
10
-
11
- return <>prefers-motion: {JSON.stringify(reduceMotion)}</>
12
- }
13
-
14
- describe('usePrefersReducedMotion', () => {
15
- it(`SSR to static markup returns false`, () => {
16
- expect(renderToStaticMarkup(<Log />)).toBe('prefers-motion: false')
17
- })
18
- it(`SSR to markup for hydration doesn't throw`, () => {
19
- expect(renderToString(<Log />)).toMatchInlineSnapshot(`"prefers-motion: <!-- -->false"`)
20
- })
21
- })
@@ -1,16 +0,0 @@
1
- import {useMatchMedia} from './useMatchMedia'
2
-
3
- /**
4
- * Returns true if motion should be reduced
5
- *
6
- * @param getServerSnapshot - Only called during server-side rendering, and hydration if using hydrateRoot. Since the server environment doesn't have access to the DOM, we can't determine the current value of the media query and we assume `(prefers-reduced-motion: no-preference)` since it's the most common scheme (https://react.dev/reference/react/useSyncExternalStore#adding-support-for-server-rendering)
7
- *
8
- * If you persist the detected preference in a cookie or a header then you may implement your own server snapshot to read it.
9
- * Chrome supports reading the `prefers-reduced-motion` media query from a header if the server response: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Sec-CH-Prefers-Reduced-Motion
10
- * @example https://gist.github.com/stipsan/0c0f839a27842249cada893e9fb7767b
11
- *
12
- * @public
13
- */
14
- export function usePrefersReducedMotion(getServerSnapshot = () => false): boolean {
15
- return useMatchMedia('(prefers-reduced-motion: reduce)', getServerSnapshot)
16
- }
package/src/core/index.ts DELETED
@@ -1,10 +0,0 @@
1
- export * from './_compat'
2
- export * from './components'
3
- export * from './helpers'
4
- export * from './hooks'
5
- export * from './observers'
6
- export * from './primitives'
7
- export * from './styles'
8
- export * from './theme'
9
- export * from './types'
10
- export * from './utils'
@@ -1,37 +0,0 @@
1
- /**
2
- * As `@sanity/ui` is declared as a dependency, and may be duplicated, sometimes across major versions
3
- * it's critical that vital react contexts are shared even when there is a duplicate.
4
- * If we used a model similar to `sanity` itself, or `styled-components`, this would be unnecessary as
5
- * those libraries enforce single instances.
6
- * Since we don't enforce it we have to support a sanity plugin being able to call hooks like `useToast`, and then
7
- * read the context setup by `sanity`, which calls `ToastProvider`, even if the provider and hook are different instances in memory.
8
- * It's also why it's vital that all changes to globally scoped providers remain fully backwards compatible to v1.
9
- */
10
-
11
- import {type Context, createContext} from 'react'
12
-
13
- import {globalScope} from './globalScope'
14
-
15
- // oxlint-disable-next-line no-unnecessary-type-parameters
16
- export function createGlobalScopedContext<ContextType, const T extends ContextType = ContextType>(
17
- /**
18
- * Enforce that all Symbol.for keys used for globally scoped contexts have a predictable prefix
19
- */
20
- key: `@sanity/ui/context/${string}`,
21
- defaultValue: T,
22
- ): Context<ContextType> {
23
- const symbol = Symbol.for(key)
24
-
25
- /**
26
- * Prevent errors about re-renders on React SSR on Next.js App Router
27
- */
28
- if (typeof document === 'undefined') {
29
- const context = createContext<ContextType>(defaultValue)
30
- context.displayName = key
31
- return context
32
- }
33
-
34
- globalScope[symbol] = globalScope[symbol] || createContext<T>(defaultValue)
35
-
36
- return globalScope[symbol]
37
- }
@@ -1,20 +0,0 @@
1
- /**
2
- * Gets the global scope instance in a given environment.
3
- *
4
- * The strategy is to return the most modern, and if not, the most common:
5
- * - The `globalThis` variable is the modern approach to accessing the global scope
6
- * - The `window` variable is the global scope in a web browser
7
- * - The `self` variable is the global scope in workers and others
8
- * - The `global` variable is the global scope in Node.js
9
- */
10
- function getGlobalScope() {
11
- if (typeof globalThis !== 'undefined') return globalThis
12
- if (typeof window !== 'undefined') return window
13
- if (typeof self !== 'undefined') return self
14
- if (typeof global !== 'undefined') return global
15
-
16
- throw new Error('@sanity/ui: could not locate global scope')
17
- }
18
-
19
- // oxlint-disable-next-line no-unsafe-type-assertion
20
- export const globalScope = getGlobalScope() as any
@@ -1,3 +0,0 @@
1
- export function isRecord(value: unknown): value is Record<string, unknown> {
2
- return Boolean(value && typeof value === 'object' && !Array.isArray(value))
3
- }
@@ -1,47 +0,0 @@
1
- import {Middleware} from '@floating-ui/react-dom'
2
-
3
- /**
4
- * Custom floating-ui middleware which calculates transform-origin X + Y offsets
5
- * based on the current floating rect's dimensions and shift offset.
6
- *
7
- * Scaling popovers with these transform-origin offsets will give the effect of
8
- * popvers slightly 'growing' from the origin/reference element.
9
- *
10
- * This middleware must be applied after both `@sanity/ui/size` and `shift` middlewares.
11
- */
12
- export const origin: Middleware = {
13
- name: '@sanity/ui/origin',
14
- fn({middlewareData, placement, rects}) {
15
- const [side] = placement.split('-')
16
-
17
- const floatingWidth = rects.floating.width
18
- const floatingHeight = rects.floating.height
19
-
20
- const shiftX = middlewareData.shift?.x || 0
21
- const shiftY = middlewareData.shift?.y || 0
22
-
23
- if (floatingWidth <= 0 || floatingHeight <= 0) {
24
- return {}
25
- }
26
-
27
- const isVerticalPlacement = ['bottom', 'top'].includes(side)
28
-
29
- const {originX, originY}: {originX: number; originY: number} = isVerticalPlacement
30
- ? {
31
- originX: clamp(0.5 - shiftX / floatingWidth, 0, 1),
32
- originY: side === 'bottom' ? 0 : 1,
33
- }
34
- : {
35
- originX: side === 'left' ? 1 : 0,
36
- originY: clamp(0.5 - shiftY / floatingHeight, 0, 1),
37
- }
38
-
39
- return {
40
- data: {originX, originY},
41
- }
42
- },
43
- }
44
-
45
- function clamp(num: number, min: number, max: number) {
46
- return Math.min(Math.max(num, min), max)
47
- }
@@ -1,117 +0,0 @@
1
- import {_ResizeObserver} from './resizeObserver'
2
-
3
- /**
4
- * @beta
5
- */
6
- export interface ElementRectValue {
7
- width: number
8
- height: number
9
- }
10
-
11
- /**
12
- * @beta
13
- */
14
- export interface ElementSize {
15
- content: ElementRectValue
16
- border: ElementRectValue
17
-
18
- /** @deprecated INTERNAL ONLY */
19
- _contentRect: DOMRectReadOnly
20
- }
21
-
22
- /**
23
- * @internal
24
- */
25
- export type _ElementSizeSubscriber = (elementRect: ElementSize) => void
26
-
27
- /**
28
- * @internal
29
- */
30
- export interface _ElementSizeObserver {
31
- subscribe: (element: HTMLElement, subscriber: _ElementSizeSubscriber) => () => void
32
- }
33
-
34
- /**
35
- * @internal
36
- */
37
- export interface _ElementSizeListener {
38
- subscribe: (element: HTMLElement, subscriber: _ElementSizeSubscriber) => () => void
39
- }
40
-
41
- // Initialize element size observer
42
- // NOTE: this should NOT have size effects
43
- /**
44
- * @internal
45
- */
46
- export const _elementSizeObserver = _createElementSizeObserver()
47
-
48
- function _createElementRectValueListener(): _ElementSizeListener {
49
- return {
50
- subscribe(element, subscriber) {
51
- const resizeObserver = new _ResizeObserver(([entry]) => {
52
- subscriber({
53
- // oxlint-disable-next-line no-deprecated
54
- _contentRect: entry.contentRect,
55
- border: {
56
- width: entry.borderBoxSize[0].inlineSize,
57
- height: entry.borderBoxSize[0].blockSize,
58
- },
59
- content: {
60
- width: entry.contentRect.width,
61
- height: entry.contentRect.height,
62
- },
63
- })
64
- })
65
-
66
- resizeObserver.observe(element)
67
-
68
- return () => {
69
- resizeObserver.unobserve(element)
70
- resizeObserver.disconnect()
71
- }
72
- },
73
- }
74
- }
75
-
76
- function _createElementSizeObserver(): _ElementSizeObserver {
77
- const disposeCache = new WeakMap<HTMLElement, () => void>()
78
- const subscribersCache = new WeakMap<HTMLElement, _ElementSizeSubscriber[]>()
79
-
80
- return {
81
- subscribe(element, subscriber) {
82
- const subscribers = subscribersCache.get(element) || []
83
-
84
- let dispose = disposeCache.get(element)
85
-
86
- if (!subscribersCache.has(element)) {
87
- subscribersCache.set(element, subscribers)
88
-
89
- const listener = _createElementRectValueListener()
90
-
91
- // listen
92
- dispose = listener.subscribe(element, (elementRect) => {
93
- for (const sub of subscribers) {
94
- sub(elementRect)
95
- }
96
- })
97
- }
98
-
99
- subscribers.push(subscriber)
100
-
101
- return () => {
102
- // dispose
103
-
104
- const idx = subscribers.indexOf(subscriber)
105
-
106
- if (idx > -1) {
107
- subscribers.splice(idx, 1)
108
- }
109
-
110
- if (subscribers.length === 0) {
111
- // unlisten
112
- if (dispose) dispose()
113
- }
114
- }
115
- },
116
- }
117
- }
@@ -1,2 +0,0 @@
1
- export * from './elementSizeObserver'
2
- export * from './resizeObserver'
@@ -1,9 +0,0 @@
1
- import {ResizeObserver as ResizeObserverPolyfill} from '@juggle/resize-observer'
2
-
3
- /**
4
- * @internal
5
- */
6
- export const _ResizeObserver: typeof ResizeObserver =
7
- typeof document !== 'undefined' && typeof window !== 'undefined' && window.ResizeObserver
8
- ? window.ResizeObserver
9
- : ResizeObserverPolyfill
@@ -1 +0,0 @@
1
- export * from './selectable'
@@ -1,15 +0,0 @@
1
- import {styled} from 'styled-components'
2
-
3
- import {responsiveRadiusStyle, ResponsiveRadiusStyleProps} from '../../styles/radius'
4
- import {Box} from '../box'
5
- import {selectableBaseStyle, selectableColorStyle, SelectableStyleProps} from './style'
6
-
7
- /**
8
- * @internal
9
- */
10
- export const Selectable = styled(Box)<SelectableStyleProps & ResponsiveRadiusStyleProps>(
11
- responsiveRadiusStyle,
12
- selectableBaseStyle,
13
- selectableColorStyle,
14
- )
15
- Selectable.displayName = 'Selectable'
@@ -1,115 +0,0 @@
1
- import {getTheme_v2} from '@sanity/ui/theme'
2
- import {css} from 'styled-components'
3
-
4
- import {ThemeProps} from '../../styles'
5
- import {_cardColorStyle} from '../../styles/card'
6
- import {SelectableTone} from '../../types'
7
-
8
- /**
9
- * @internal
10
- */
11
- export interface SelectableStyleProps {
12
- $tone: SelectableTone
13
- }
14
-
15
- export function selectableBaseStyle(): ReturnType<typeof css> {
16
- return css`
17
- background-color: inherit;
18
- color: inherit;
19
-
20
- &[data-as='button'] {
21
- -webkit-font-smoothing: inherit;
22
- appearance: none;
23
- outline: none;
24
- font: inherit;
25
- text-align: inherit;
26
- border: 0;
27
- width: -moz-available;
28
- width: -webkit-fill-available;
29
- width: stretch;
30
- }
31
-
32
- /* &:is(a) */
33
- &[data-as='a'] {
34
- text-decoration: none;
35
- }
36
- `
37
- }
38
-
39
- export function selectableColorStyle(
40
- props: SelectableStyleProps & ThemeProps,
41
- ): ReturnType<typeof css> {
42
- const {$tone} = props
43
- const {color, style} = getTheme_v2(props.theme)
44
- const tone = color.selectable[$tone]
45
-
46
- return css`
47
- ${_cardColorStyle(color, tone.enabled)}
48
-
49
- background-color: var(--card-bg-color);
50
- color: var(--card-fg-color);
51
- outline: none;
52
-
53
- /* &:is(button) */
54
- &[data-as='button'] {
55
- &:disabled {
56
- ${_cardColorStyle(color, tone.disabled)}
57
- }
58
-
59
- &:not(:disabled) {
60
- &[aria-pressed='true'] {
61
- ${_cardColorStyle(color, tone.pressed)}
62
- }
63
-
64
- &[data-selected],
65
- &[aria-selected='true'] > & {
66
- ${_cardColorStyle(color, tone.selected)}
67
- }
68
-
69
- @media (hover: hover) {
70
- &:not([data-selected]) {
71
- &[data-hovered],
72
- &:hover {
73
- ${_cardColorStyle(color, tone.hovered)}
74
- }
75
-
76
- &:active {
77
- ${_cardColorStyle(color, tone.pressed)}
78
- }
79
- }
80
- }
81
- }
82
- }
83
-
84
- /* &:is(a) */
85
- &[data-as='a'] {
86
- &[data-disabled] {
87
- ${_cardColorStyle(color, tone.disabled)}
88
- }
89
-
90
- &:not([data-disabled]) {
91
- &[data-pressed] {
92
- ${_cardColorStyle(color, tone.pressed)}
93
- }
94
-
95
- &[data-selected] {
96
- ${_cardColorStyle(color, tone.selected)}
97
- }
98
-
99
- @media (hover: hover) {
100
- &:not([data-selected]) {
101
- &[data-hovered],
102
- &:hover {
103
- ${_cardColorStyle(color, tone.hovered)}
104
- }
105
- &:active {
106
- ${_cardColorStyle(color, tone.pressed)}
107
- }
108
- }
109
- }
110
- }
111
- }
112
-
113
- ${style?.card?.root}
114
- `
115
- }