@sanity/ui 1.7.2 → 1.7.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 (137) hide show
  1. package/README.md +1 -1
  2. package/dist/index.d.ts +19 -19
  3. package/dist/index.esm.js +340 -103
  4. package/dist/index.esm.js.map +1 -1
  5. package/dist/index.js +340 -103
  6. package/dist/index.js.map +1 -1
  7. package/package.json +33 -33
  8. package/src/__workshop__/constants.ts +2 -2
  9. package/src/components/autocomplete/__mocks__/apiStore.ts +2 -2
  10. package/src/components/autocomplete/__workshop__/async.tsx +2 -2
  11. package/src/components/autocomplete/__workshop__/constrainedHeight.tsx +2 -2
  12. package/src/components/autocomplete/__workshop__/custom.tsx +1 -1
  13. package/src/components/autocomplete/__workshop__/fullscreen.tsx +6 -6
  14. package/src/components/autocomplete/autocomplete.tsx +20 -20
  15. package/src/components/autocomplete/autocompleteOption.tsx +1 -1
  16. package/src/components/autocomplete/autocompleteReducer.ts +1 -1
  17. package/src/components/breadcrumbs/breadcrumbs.tsx +2 -2
  18. package/src/components/dialog/dialog.tsx +11 -11
  19. package/src/components/dialog/dialogProvider.tsx +1 -1
  20. package/src/components/dialog/styles.ts +1 -1
  21. package/src/components/hotkeys/hotkeys.tsx +1 -1
  22. package/src/components/menu/__workshop__/asComponent.tsx +1 -1
  23. package/src/components/menu/__workshop__/index.ts +5 -0
  24. package/src/components/menu/__workshop__/menuButton.tsx +1 -1
  25. package/src/components/menu/__workshop__/shouldFocus.tsx +46 -0
  26. package/src/components/menu/menu.test.tsx +3 -3
  27. package/src/components/menu/menu.tsx +7 -7
  28. package/src/components/menu/menuButton.tsx +7 -7
  29. package/src/components/menu/menuGroup.tsx +4 -4
  30. package/src/components/menu/menuItem.tsx +4 -4
  31. package/src/components/menu/useMenuController.ts +10 -5
  32. package/src/components/skeleton/skeleton.tsx +2 -2
  33. package/src/components/skeleton/textSkeleton.tsx +25 -19
  34. package/src/components/tab/tab.tsx +2 -2
  35. package/src/components/tab/tabList.tsx +3 -3
  36. package/src/components/tab/tabPanel.tsx +1 -1
  37. package/src/components/toast/toast.test.tsx +2 -1
  38. package/src/components/toast/toast.tsx +1 -1
  39. package/src/components/toast/toastProvider.tsx +1 -1
  40. package/src/components/tree/__workshop__/basic.perf.ts +1 -1
  41. package/src/components/tree/helpers.ts +2 -2
  42. package/src/components/tree/style.ts +1 -1
  43. package/src/components/tree/tree.tsx +9 -9
  44. package/src/components/tree/treeGroup.tsx +1 -1
  45. package/src/components/tree/treeItem.tsx +4 -4
  46. package/src/hooks/useArrayProp.ts +2 -2
  47. package/src/hooks/useClickOutside.ts +2 -2
  48. package/src/hooks/useCustomValidity.ts +1 -1
  49. package/src/hooks/useMediaIndex/useMediaIndex.test.tsx +4 -4
  50. package/src/hooks/usePrefersDark.hydration.test.tsx +2 -1
  51. package/src/hooks/usePrefersReducedMotion.hydration.test.tsx +2 -1
  52. package/src/lib/globalScope.ts +1 -0
  53. package/src/primitives/_selectable/selectable.tsx +1 -1
  54. package/src/primitives/_selectable/style.ts +1 -1
  55. package/src/primitives/avatar/avatar.tsx +3 -3
  56. package/src/primitives/avatar/avatarCounter.tsx +5 -3
  57. package/src/primitives/avatar/avatarStack.tsx +2 -2
  58. package/src/primitives/avatar/styles.ts +1 -1
  59. package/src/primitives/badge/badge.tsx +2 -2
  60. package/src/primitives/box/box.tsx +2 -2
  61. package/src/primitives/button/button.tsx +2 -2
  62. package/src/primitives/button/styles.ts +1 -1
  63. package/src/primitives/card/__workshop__/asComponent.tsx +1 -1
  64. package/src/primitives/card/__workshop__/selected.tsx +19 -15
  65. package/src/primitives/card/card.tsx +1 -1
  66. package/src/primitives/card/styles.ts +1 -1
  67. package/src/primitives/checkbox/checkbox.tsx +1 -1
  68. package/src/primitives/code/code.tsx +2 -1
  69. package/src/primitives/container/container.tsx +2 -2
  70. package/src/primitives/container/styles.ts +1 -1
  71. package/src/primitives/flex/flex.tsx +2 -2
  72. package/src/primitives/grid/grid.tsx +1 -1
  73. package/src/primitives/heading/heading.tsx +1 -1
  74. package/src/primitives/heading/styles.ts +4 -2
  75. package/src/primitives/helpers.ts +2 -2
  76. package/src/primitives/inline/inline.tsx +2 -2
  77. package/src/primitives/kbd/kbd.tsx +1 -1
  78. package/src/primitives/label/label.tsx +1 -1
  79. package/src/primitives/label/styles.ts +1 -1
  80. package/src/primitives/popover/__workshop__/RecursiveStory.tsx +1 -1
  81. package/src/primitives/popover/__workshop__/TestStory.tsx +1 -1
  82. package/src/primitives/popover/helpers.ts +1 -1
  83. package/src/primitives/popover/popover.tsx +11 -11
  84. package/src/primitives/popover/popoverArrow.tsx +1 -1
  85. package/src/primitives/popover/popoverCard.tsx +4 -4
  86. package/src/primitives/radio/radio.tsx +1 -1
  87. package/src/primitives/select/select.tsx +1 -1
  88. package/src/primitives/select/styles.ts +2 -2
  89. package/src/primitives/spinner/spinner.tsx +1 -1
  90. package/src/primitives/stack/stack.tsx +1 -1
  91. package/src/primitives/stack/styles.ts +1 -1
  92. package/src/primitives/switch/__workshop__/props.tsx +1 -1
  93. package/src/primitives/switch/styles.ts +1 -1
  94. package/src/primitives/switch/switch.tsx +1 -1
  95. package/src/primitives/text/__workshop__/colored.tsx +9 -8
  96. package/src/primitives/text/styles.ts +4 -2
  97. package/src/primitives/text/text.tsx +2 -2
  98. package/src/primitives/textArea/textArea.tsx +3 -3
  99. package/src/primitives/textInput/__workshop__/plain.tsx +2 -2
  100. package/src/primitives/textInput/textInput.tsx +11 -11
  101. package/src/primitives/tooltip/tooltip.tsx +8 -7
  102. package/src/primitives/tooltip/tooltipArrow.tsx +1 -1
  103. package/src/styles/border/borderStyle.ts +5 -5
  104. package/src/styles/colorVars/colorVarsStyle.ts +1 -1
  105. package/src/styles/flex/flexItemStyle.ts +1 -1
  106. package/src/styles/flex/flexStyle.ts +3 -3
  107. package/src/styles/font/responsiveFont.ts +1 -1
  108. package/src/styles/font/textAlignStyle.ts +1 -1
  109. package/src/styles/helpers.ts +3 -3
  110. package/src/styles/input/responsiveInputPaddingStyle.ts +4 -4
  111. package/src/styles/input/textInputStyle.ts +2 -2
  112. package/src/styles/margin/marginStyle.ts +1 -1
  113. package/src/styles/padding/paddingStyle.ts +1 -1
  114. package/src/theme/__workshop__/color.tsx +1 -0
  115. package/src/theme/lib/theme/color/button/createButtonModes.ts +1 -1
  116. package/src/theme/lib/theme/color/button/createButtonTones.ts +1 -1
  117. package/src/theme/lib/theme/color/card/createCardStates.ts +1 -1
  118. package/src/theme/lib/theme/color/factory.ts +2 -2
  119. package/src/theme/lib/theme/color/input/createInputModes.ts +1 -1
  120. package/src/theme/lib/theme/color/muted/createMuted.ts +1 -1
  121. package/src/theme/lib/theme/color/selectable/createSelectableTones.ts +2 -2
  122. package/src/theme/lib/theme/color/solid/createSolidTones.ts +1 -1
  123. package/src/theme/lib/theme/color/spot/createSpot.ts +1 -1
  124. package/src/theme/lib/theme/shadow.ts +1 -1
  125. package/src/theme/lib/theme/theme.ts +1 -1
  126. package/src/theme/theme.test.tsx +2 -1
  127. package/src/theme/themeProvider.tsx +1 -1
  128. package/src/theme/useRootTheme.ts +1 -0
  129. package/src/utils/boundaryElement/boundaryElement.test.tsx +2 -1
  130. package/src/utils/elementQuery/elementQuery.tsx +2 -2
  131. package/src/utils/layer/layer.test.tsx +2 -1
  132. package/src/utils/layer/layer.tsx +3 -3
  133. package/src/utils/layer/layerProvider.tsx +2 -2
  134. package/src/utils/portal/portal.test.tsx +2 -1
  135. package/src/utils/srOnly/srOnly.tsx +1 -1
  136. package/src/utils/virtualList/__workshop__/changingProps.tsx +1 -1
  137. package/src/utils/virtualList/virtualList.tsx +2 -1
@@ -1,4 +1,5 @@
1
1
  /** @jest-environment jsdom */
2
+ /* eslint-disable @typescript-eslint/no-explicit-any */
2
3
 
3
4
  import {render} from '../../test'
4
5
  import {studioTheme} from './studioTheme'
@@ -98,7 +99,7 @@ describe('theme', () => {
98
99
  render(<Root />)
99
100
 
100
101
  expect(log.mock.calls[0][0].message).toEqual(
101
- 'useRootTheme(): the context value is not compatible'
102
+ 'useRootTheme(): the context value is not compatible',
102
103
  )
103
104
  })
104
105
  })
@@ -46,7 +46,7 @@ export function ThemeProvider(props: ThemeProviderProps): React.ReactElement {
46
46
  scheme,
47
47
  tone,
48
48
  },
49
- [themeProp, scheme, tone]
49
+ [themeProp, scheme, tone],
50
50
  )
51
51
 
52
52
  if (!theme) {
@@ -1,3 +1,4 @@
1
+ /* eslint-disable @typescript-eslint/no-explicit-any */
1
2
  import {useContext} from 'react'
2
3
  import {isRecord} from '../lib/isRecord'
3
4
  import {ThemeContext} from './themeContext'
@@ -1,4 +1,5 @@
1
1
  /** @jest-environment jsdom */
2
+ /* eslint-disable @typescript-eslint/no-explicit-any */
2
3
 
3
4
  import {render} from '../../../test'
4
5
  import {BoundaryElementContext} from './boundaryElementContext'
@@ -93,7 +94,7 @@ describe('utils/boundaryElement', () => {
93
94
  render(<Root />)
94
95
 
95
96
  expect(log.mock.calls[0][0].message).toEqual(
96
- 'useBoundaryElement(): the context value is not compatible'
97
+ 'useBoundaryElement(): the context value is not compatible',
97
98
  )
98
99
  })
99
100
  })
@@ -18,7 +18,7 @@ export interface MediaQueryProps {
18
18
  */
19
19
  export const ElementQuery = forwardRef(function ElementQuery(
20
20
  props: MediaQueryProps & Omit<React.HTMLProps<HTMLDivElement>, 'as' | 'media'>,
21
- ref: React.ForwardedRef<HTMLDivElement>
21
+ ref: React.ForwardedRef<HTMLDivElement>,
22
22
  ) {
23
23
  const theme = useTheme()
24
24
  const {children, media = theme.sanity.media, ...restProps} = props
@@ -36,7 +36,7 @@ export const ElementQuery = forwardRef(function ElementQuery(
36
36
  forwardedRef.current = el
37
37
  setElement(el)
38
38
  },
39
- [forwardedRef]
39
+ [forwardedRef],
40
40
  )
41
41
 
42
42
  return (
@@ -1,4 +1,5 @@
1
1
  /** @jest-environment jsdom */
2
+ /* eslint-disable @typescript-eslint/no-explicit-any */
2
3
 
3
4
  import {render} from '../../../test'
4
5
  import {LayerContext} from './layerContext'
@@ -101,7 +102,7 @@ describe('utils/layer', () => {
101
102
  render(<Root />)
102
103
 
103
104
  expect(log.mock.calls[0][0].message).toEqual(
104
- 'useLayer(): the context value is not compatible'
105
+ 'useLayer(): the context value is not compatible',
105
106
  )
106
107
  })
107
108
  })
@@ -25,7 +25,7 @@ const Root = styled.div({position: 'relative'})
25
25
 
26
26
  const LayerChildren = forwardRef(function LayerChildren(
27
27
  props: LayerChildrenProps & Omit<React.HTMLProps<HTMLDivElement>, 'as'>,
28
- ref: React.Ref<HTMLDivElement>
28
+ ref: React.Ref<HTMLDivElement>,
29
29
  ) {
30
30
  const {children, onActivate, onFocus, style = EMPTY_RECORD, ...restProps} = props
31
31
  const {zIndex, isTopLayer} = useLayer()
@@ -60,7 +60,7 @@ const LayerChildren = forwardRef(function LayerChildren(
60
60
  lastFocusedRef.current = target
61
61
  }
62
62
  },
63
- [forwardedRef, isTopLayer, onFocus]
63
+ [forwardedRef, isTopLayer, onFocus],
64
64
  )
65
65
 
66
66
  return (
@@ -81,7 +81,7 @@ const LayerChildren = forwardRef(function LayerChildren(
81
81
  */
82
82
  export const Layer = forwardRef(function Layer(
83
83
  props: LayerProps & Omit<React.HTMLProps<HTMLDivElement>, 'as'>,
84
- ref: React.Ref<HTMLDivElement>
84
+ ref: React.Ref<HTMLDivElement>,
85
85
  ) {
86
86
  const {children, zOffset = 1, ...restProps} = props
87
87
 
@@ -85,7 +85,7 @@ export function LayerProvider(props: LayerProviderProps): React.ReactElement {
85
85
  parentDispose?.()
86
86
  }
87
87
  },
88
- [parentRegisterChild]
88
+ [parentRegisterChild],
89
89
  )
90
90
 
91
91
  // Register this layer on mount
@@ -100,7 +100,7 @@ export function LayerProvider(props: LayerProviderProps): React.ReactElement {
100
100
  size,
101
101
  zIndex,
102
102
  }),
103
- [isTopLayer, level, registerChild, size, zIndex]
103
+ [isTopLayer, level, registerChild, size, zIndex],
104
104
  )
105
105
 
106
106
  return <LayerContext.Provider value={value}>{children}</LayerContext.Provider>
@@ -1,4 +1,5 @@
1
1
  /** @jest-environment jsdom */
2
+ /* eslint-disable @typescript-eslint/no-explicit-any */
2
3
 
3
4
  import {render} from '../../../test'
4
5
  import {PortalContext} from './portalContext'
@@ -96,7 +97,7 @@ describe('utils/portal', () => {
96
97
  render(<Root />)
97
98
 
98
99
  expect(log.mock.calls[0][0].message).toEqual(
99
- 'usePortal(): the context value is not compatible'
100
+ 'usePortal(): the context value is not compatible',
100
101
  )
101
102
  })
102
103
  })
@@ -23,7 +23,7 @@ const Root = styled.div`
23
23
  */
24
24
  export const SrOnly = forwardRef(function SrOnly(
25
25
  props: SrOnlyProps & Omit<React.HTMLProps<HTMLDivElement>, 'aria-hidden' | 'as'>,
26
- ref: React.Ref<HTMLDivElement>
26
+ ref: React.Ref<HTMLDivElement>,
27
27
  ) {
28
28
  const {as, children} = props
29
29
 
@@ -21,7 +21,7 @@ export default function ChangingProps() {
21
21
  <Text>Item #{item.key}</Text>
22
22
  </Card>
23
23
  ),
24
- [expanded, toggleExpand]
24
+ [expanded, toggleExpand],
25
25
  )
26
26
 
27
27
  return (
@@ -1,3 +1,4 @@
1
+ /* eslint-disable @typescript-eslint/no-explicit-any */
1
2
  import {forwardRef, useEffect, useMemo, useRef, useState} from 'react'
2
3
  import styled from 'styled-components'
3
4
  import {_isScrollable} from '../../helpers'
@@ -47,7 +48,7 @@ export const VirtualList = forwardRef(function VirtualList(
47
48
  props: VirtualListProps &
48
49
  StackProps &
49
50
  Omit<React.HTMLProps<HTMLDivElement>, 'as' | 'children' | 'onChange' | 'ref'>,
50
- ref: React.ForwardedRef<HTMLDivElement>
51
+ ref: React.ForwardedRef<HTMLDivElement>,
51
52
  ): React.ReactElement {
52
53
  const {as = 'div', gap = 0, getItemKey, items = [], onChange, renderItem, ...restProps} = props
53
54
  const {space} = useTheme().sanity