@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,52 +0,0 @@
1
- import {styled} from 'styled-components'
2
-
3
- import {Grid} from '../../primitives/grid'
4
- import {useLayer} from '../../utils'
5
-
6
- /**
7
- * @public
8
- */
9
- export interface ToastLayerProps {
10
- children: React.ReactNode
11
- padding?: number | number[]
12
- paddingX?: number | number[]
13
- paddingY?: number | number[]
14
- gap?: number | number[]
15
- }
16
-
17
- /**
18
- * @internal
19
- */
20
- export function ToastLayer(props: ToastLayerProps): React.JSX.Element {
21
- const {children, padding = 4, paddingX, paddingY, gap = 3} = props
22
- const {zIndex} = useLayer()
23
-
24
- return (
25
- <StyledLayer
26
- forwardedAs="ul"
27
- data-ui="ToastProvider"
28
- padding={padding}
29
- paddingX={paddingX}
30
- paddingY={paddingY}
31
- gap={gap}
32
- // oxlint-disable-next-line no-deprecated
33
- columns={1}
34
- style={{zIndex}}
35
- >
36
- {children}
37
- </StyledLayer>
38
- )
39
- }
40
-
41
- ToastLayer.displayName = 'ToastLayer'
42
-
43
- const StyledLayer = styled(Grid)`
44
- box-sizing: border-box;
45
- position: fixed;
46
- right: 0;
47
- bottom: 0;
48
- list-style: none;
49
- pointer-events: none;
50
- max-width: 420px;
51
- width: 100%;
52
- `
@@ -1,113 +0,0 @@
1
- import {AnimatePresence} from 'motion/react'
2
- import {startTransition, useMemo, useState} from 'react'
3
-
4
- import {useMounted} from '../../hooks/useMounted'
5
- import {LayerProvider} from '../../utils'
6
- import {Toast} from './toast'
7
- import {ToastContext} from './toastContext'
8
- import {ToastLayer, type ToastLayerProps} from './toastLayer'
9
- import {generateToastId} from './toastState'
10
- import {ToastContextValue, ToastParams} from './types'
11
-
12
- type ToastState = {
13
- dismiss: () => void
14
- id: string
15
- updatedAt: number
16
- params: ToastParams
17
- }[]
18
-
19
- /**
20
- * @public
21
- */
22
- export interface ToastProviderProps extends Omit<ToastLayerProps, 'children'> {
23
- children?: React.ReactNode
24
- zOffset?: number | number[]
25
- }
26
-
27
- /**
28
- * @public
29
- */
30
- export function ToastProvider(props: ToastProviderProps): React.JSX.Element {
31
- const {children, padding, paddingX, paddingY, gap, zOffset = 1} = props
32
- const [state, setState] = useState<ToastState>([])
33
- const mounted = useMounted()
34
-
35
- const value: ToastContextValue = useMemo(() => {
36
- const push = (params: ToastParams) => {
37
- const id = params.id || generateToastId()
38
- const duration = params.duration || 5000
39
-
40
- startTransition(() => {
41
- setState((prevState): ToastState => {
42
- /**
43
- * Backwards compatibility for `sanity` patterns workaround a lack of programatically dismissible toasts.
44
- * It uses a super short duration that closes the toast immediately in previous versions of `@sanity/ui`.
45
- * We interpret this as a request to dismiss the toast immediately, and remove it from the state right away.
46
- * Even once we support programatic dismissal we'll need to keep this for backwards compatibility with v2 and v1.
47
- */
48
- if (duration === 0.01) {
49
- return prevState.filter((toast) => toast.id !== id)
50
- }
51
-
52
- /**
53
- * Creates a function to dismiss this specific toast.
54
- * This function will be passed to the Toast component
55
- * and called either on close button click or after duration.
56
- */
57
- const dismiss = () =>
58
- startTransition(() =>
59
- setState((currentState) => currentState.filter((toast) => toast.id !== id)),
60
- )
61
-
62
- /**
63
- * Create updated state by:
64
- * 1. Removing any existing toast with the same ID (prevents duplicates)
65
- * 2. Adding the new toast with its dismiss handler
66
- * 3. Updates the `updatedAt` timestamp, which resets progress bar count downs.
67
- */
68
- return [
69
- ...prevState.filter((toast) => toast.id !== id),
70
- {
71
- dismiss,
72
- id,
73
- updatedAt: Date.now(),
74
- params: {...params, duration},
75
- },
76
- ]
77
- })
78
- })
79
-
80
- return id
81
- }
82
-
83
- return {version: 0.0, push}
84
- }, [])
85
-
86
- return (
87
- <ToastContext.Provider value={value}>
88
- {children}
89
- {mounted && (
90
- <LayerProvider zOffset={zOffset}>
91
- <ToastLayer padding={padding} paddingX={paddingX} paddingY={paddingY} gap={gap}>
92
- <AnimatePresence initial={false} mode="popLayout">
93
- {state.map(({dismiss, id, params, updatedAt}) => (
94
- <Toast
95
- key={id}
96
- closable={params.closable}
97
- description={params.description}
98
- onClose={dismiss}
99
- status={params.status}
100
- title={params.title}
101
- duration={params.duration}
102
- updatedAt={updatedAt}
103
- />
104
- ))}
105
- </AnimatePresence>
106
- </ToastLayer>
107
- </LayerProvider>
108
- )}
109
- </ToastContext.Provider>
110
- )
111
- }
112
-
113
- ToastProvider.displayName = 'ToastProvider'
@@ -1,6 +0,0 @@
1
- let toastId = 0
2
-
3
- /** @internal */
4
- export function generateToastId(): string {
5
- return String(toastId++)
6
- }
@@ -1,26 +0,0 @@
1
- /**
2
- * @public
3
- */
4
- export interface ToastParams {
5
- closable?: boolean
6
- description?: React.ReactNode
7
- duration?: number
8
- id?: string
9
- onClose?: () => void
10
- title?: React.ReactNode
11
- status?: 'error' | 'warning' | 'success' | 'info'
12
- }
13
-
14
- /**
15
- * @public
16
- */
17
- export interface ToastContextValue {
18
- version: 0.0
19
- /**
20
- * Creates or updates a toast notification.
21
- * If a toast with the same ID already exists, it will be updated.
22
- * If an ID is not provided, a random one will be generated.
23
- * The returned ID can be used to programatically update a toast.
24
- */
25
- push: (params: ToastParams) => string
26
- }
@@ -1,25 +0,0 @@
1
- import {useContext} from 'react'
2
-
3
- import {isRecord} from '../../lib/isRecord'
4
- import {ToastContext} from './toastContext'
5
- import {ToastContextValue} from './types'
6
-
7
- /**
8
- * @public
9
- */
10
- export function useToast(): ToastContextValue {
11
- const value = useContext(ToastContext)
12
-
13
- if (!value) {
14
- throw new Error('useToast(): missing context value')
15
- }
16
-
17
- // NOTE: This check is for future-compatiblity
18
- // - If the value is not an object, it’s not compatible with the current version
19
- // - If the value is an object, but doesn’t have `version: 0.0`, it’s not compatible with the current version
20
- if (!isRecord(value) || value.version !== 0.0) {
21
- throw new Error('useToast(): the context value is not compatible')
22
- }
23
-
24
- return value
25
- }
@@ -1,105 +0,0 @@
1
- import {TreeState} from './types'
2
-
3
- export function _findPrevItemElement(
4
- state: TreeState,
5
- itemElements: HTMLElement[],
6
- focusedElement: HTMLElement,
7
- ): HTMLElement | null {
8
- const idx = itemElements.indexOf(focusedElement)
9
- const els = itemElements.slice(0, idx)
10
- const len = els.length
11
-
12
- for (let i = len - 1; i >= 0; i -= 1) {
13
- const itemKey = els[i].getAttribute('data-tree-key')
14
-
15
- if (!itemKey) {
16
- continue
17
- }
18
-
19
- const segments = itemKey.split('/')
20
-
21
- segments.pop()
22
-
23
- const p: string[] = []
24
-
25
- let expanded = true
26
-
27
- for (let j = 0; j < segments.length; j += 1) {
28
- p.push(segments[j])
29
-
30
- const k = p.join('/')
31
-
32
- if (!state[k]?.expanded) {
33
- expanded = false
34
- break
35
- }
36
- }
37
-
38
- if (expanded) {
39
- return els[i]
40
- }
41
- }
42
-
43
- return null
44
- }
45
-
46
- export function _findNextItemElement(
47
- state: TreeState,
48
- itemElements: HTMLElement[],
49
- focusedElement: HTMLElement,
50
- ): HTMLElement | null {
51
- const idx = itemElements.indexOf(focusedElement)
52
- const els = itemElements.slice(idx)
53
- const len = itemElements.length
54
-
55
- for (let i = 1; i < len; i += 1) {
56
- if (!els[i]) {
57
- continue
58
- }
59
-
60
- const itemKey = els[i].getAttribute('data-tree-key')
61
-
62
- if (!itemKey) {
63
- continue
64
- }
65
-
66
- const segments = itemKey.split('/')
67
-
68
- segments.pop()
69
-
70
- const p: string[] = []
71
-
72
- let expanded = true
73
-
74
- for (let j = 0; j < segments.length; j += 1) {
75
- p.push(segments[j])
76
-
77
- const k = p.join('/')
78
-
79
- if (!state[k]?.expanded) {
80
- expanded = false
81
- break
82
- }
83
- }
84
-
85
- if (expanded) {
86
- return els[i]
87
- }
88
- }
89
-
90
- return null
91
- }
92
-
93
- export function _focusItemElement(el: HTMLElement): void {
94
- if (el.getAttribute('role') === 'treeitem') {
95
- el.focus()
96
- }
97
-
98
- if (el.getAttribute('role') === 'none') {
99
- const firstChild = el.firstChild
100
-
101
- if (firstChild && firstChild instanceof HTMLElement) {
102
- firstChild.focus()
103
- }
104
- }
105
- }
@@ -1,4 +0,0 @@
1
- export * from './tree'
2
- export * from './treeItem'
3
- export * from './types'
4
- export * from './useTree'
@@ -1,105 +0,0 @@
1
- import {getTheme_v2} from '@sanity/ui/theme'
2
- import {css} from 'styled-components'
3
-
4
- import {rem, ThemeProps} from '../../styles'
5
- import {_cardColorStyle} from '../../styles/card'
6
-
7
- export function treeItemRootStyle(): ReturnType<typeof css> {
8
- return css`
9
- &[role='none'] > [role='treeitem'] {
10
- outline: none;
11
- cursor: default;
12
- border-radius: 3px;
13
-
14
- background-color: var(--card-bg-color);
15
- color: var(--treeitem-fg-color);
16
-
17
- &:focus {
18
- position: relative;
19
- }
20
- }
21
-
22
- &[role='treeitem'] {
23
- outline: none;
24
-
25
- & > div {
26
- cursor: default;
27
- border-radius: 3px;
28
-
29
- background-color: var(--card-bg-color);
30
- color: var(--treeitem-fg-color);
31
- }
32
-
33
- &:focus > div {
34
- position: relative;
35
- }
36
- }
37
- `
38
- }
39
-
40
- export function treeItemRootColorStyle(props: ThemeProps): ReturnType<typeof css> {
41
- const $tone = 'default'
42
- const {color} = getTheme_v2(props.theme)
43
- const tone = color.selectable[$tone]
44
-
45
- return css`
46
- &[role='none'] {
47
- & > [role='treeitem'] {
48
- ${_cardColorStyle(color, tone.enabled)}
49
- }
50
-
51
- &[data-selected] > [role='treeitem'] {
52
- ${_cardColorStyle(color, tone.pressed)}
53
- }
54
-
55
- @media (hover: hover) {
56
- &:not([data-selected]) > [role='treeitem']:not(:focus):hover {
57
- ${_cardColorStyle(color, tone.hovered)}
58
- }
59
-
60
- & > [role='treeitem']:focus {
61
- ${_cardColorStyle(color, tone.selected)}
62
- }
63
- }
64
- }
65
-
66
- &[role='treeitem'] {
67
- & > [data-ui='TreeItem__box'] {
68
- ${_cardColorStyle(color, tone.enabled)}
69
- }
70
-
71
- &[data-selected] > [data-ui='TreeItem__box'] {
72
- ${_cardColorStyle(color, tone.pressed)}
73
- }
74
-
75
- @media (hover: hover) {
76
- &:not([data-selected]):not(:focus) > [data-ui='TreeItem__box']:hover {
77
- ${_cardColorStyle(color, tone.hovered)}
78
- }
79
-
80
- &:focus > [data-ui='TreeItem__box'] {
81
- ${_cardColorStyle(color, tone.selected)}
82
- }
83
- }
84
- }
85
- `
86
- }
87
-
88
- export interface TreeItemBoxStyleProps {
89
- $level: number
90
- }
91
-
92
- export function treeItemBoxStyle(
93
- props: TreeItemBoxStyleProps & ThemeProps,
94
- ): ReturnType<typeof css> {
95
- const {$level} = props
96
- const {space} = getTheme_v2(props.theme)
97
-
98
- return css`
99
- padding-left: ${rem(space[2] * $level)};
100
-
101
- &[data-as='a'] {
102
- text-decoration: none;
103
- }
104
- `
105
- }
@@ -1,60 +0,0 @@
1
- /** @vitest-environment jsdom */
2
-
3
- import {beforeEach, describe, expect, it, vi} from 'vitest'
4
-
5
- import {render} from '../../../../test'
6
- import {Stack} from '../../primitives'
7
- import {Tree} from './tree'
8
- import {TreeItem} from './treeItem'
9
-
10
- vi.mock('../../primitives', async (importOriginal) => {
11
- const actual = await importOriginal<typeof import('../../primitives')>()
12
-
13
- return {
14
- ...actual,
15
- // oxlint-disable-next-line no-unsafe-type-assertion
16
- Stack: vi.fn((props: Record<string, unknown>) => (actual.Stack as any).render(props, null)),
17
- }
18
- })
19
-
20
- describe('components/tree spacing', () => {
21
- const mockedStack = vi.mocked(Stack)
22
-
23
- beforeEach(() => {
24
- mockedStack.mockClear()
25
- })
26
-
27
- it('should support `space` and `gap` with the same behavior', () => {
28
- render(
29
- // oxlint-disable-next-line no-deprecated
30
- <Tree space={2}>
31
- <TreeItem text="Item 1" />
32
- </Tree>,
33
- )
34
- expect(mockedStack.mock.calls.map(([props]) => props)).toContainEqual(
35
- expect.objectContaining({gap: 2}),
36
- )
37
-
38
- mockedStack.mockClear()
39
- render(
40
- <Tree gap={2}>
41
- <TreeItem text="Item 1" />
42
- </Tree>,
43
- )
44
- expect(mockedStack.mock.calls.map(([props]) => props)).toContainEqual(
45
- expect.objectContaining({gap: 2}),
46
- )
47
- })
48
-
49
- it('should prefer `gap` over `space` when both are provided', () => {
50
- render(
51
- // oxlint-disable-next-line no-deprecated
52
- <Tree gap={3} space={1}>
53
- <TreeItem text="Item 1" />
54
- </Tree>,
55
- )
56
- const propsList = mockedStack.mock.calls.map(([props]) => props)
57
- expect(propsList).toContainEqual(expect.objectContaining({gap: 3}))
58
- expect(propsList).not.toContainEqual(expect.objectContaining({gap: 1}))
59
- })
60
- })