@sanity/ui 0.37.13 → 0.37.14-next.5

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 (46) hide show
  1. package/lib/dts/src/components/autocomplete/autocomplete.styles.d.ts +1 -1
  2. package/lib/dts/src/components/autocomplete/autocomplete.styles.d.ts.map +1 -1
  3. package/lib/dts/src/components/autocomplete/constants.d.ts.map +1 -1
  4. package/lib/dts/src/constants.d.ts +10 -0
  5. package/lib/dts/src/constants.d.ts.map +1 -1
  6. package/lib/dts/src/primitives/popover/popover.d.ts +6 -5
  7. package/lib/dts/src/primitives/popover/popover.d.ts.map +1 -1
  8. package/lib/dts/src/primitives/popover/{arrow.d.ts → popoverArrow.d.ts} +1 -1
  9. package/lib/dts/src/primitives/popover/popoverArrow.d.ts.map +1 -0
  10. package/lib/dts/src/primitives/popover/popoverCard.d.ts +33 -0
  11. package/lib/dts/src/primitives/popover/popoverCard.d.ts.map +1 -0
  12. package/lib/dts/src/primitives/tooltip/tooltip.d.ts +2 -0
  13. package/lib/dts/src/primitives/tooltip/tooltip.d.ts.map +1 -1
  14. package/lib/dts/src/primitives/tooltip/tooltipArrow.d.ts.map +1 -1
  15. package/lib/sanity-ui.js +488 -439
  16. package/lib/sanity-ui.js.map +1 -1
  17. package/lib/sanity-ui.modern.mjs +561 -555
  18. package/lib/sanity-ui.modern.mjs.map +1 -1
  19. package/lib/sanity-ui.module.js +489 -439
  20. package/lib/sanity-ui.module.js.map +1 -1
  21. package/package.json +5 -6
  22. package/src/components/autocomplete/autocomplete.styles.tsx +0 -5
  23. package/src/components/autocomplete/constants.ts +3 -3
  24. package/src/constants.ts +17 -0
  25. package/src/primitives/popover/__workshop__/PlainStory.tsx +1 -0
  26. package/src/primitives/popover/__workshop__/RightAlignedStory.tsx +1 -0
  27. package/src/primitives/popover/__workshop__/TestStory.tsx +1 -0
  28. package/src/primitives/popover/popover.tsx +245 -195
  29. package/src/primitives/popover/{arrow.tsx → popoverArrow.tsx} +5 -5
  30. package/src/primitives/popover/popoverCard.tsx +160 -0
  31. package/src/primitives/tooltip/__workshop__/props.tsx +3 -1
  32. package/src/primitives/tooltip/tooltip.tsx +159 -83
  33. package/src/primitives/tooltip/tooltipArrow.tsx +25 -10
  34. package/lib/dts/src/primitives/popover/arrow.d.ts.map +0 -1
  35. package/lib/dts/src/primitives/popover/modifiers/getPopoverModifiers.d.ts +0 -4
  36. package/lib/dts/src/primitives/popover/modifiers/getPopoverModifiers.d.ts.map +0 -1
  37. package/lib/dts/src/primitives/popover/modifiers/index.d.ts +0 -2
  38. package/lib/dts/src/primitives/popover/modifiers/index.d.ts.map +0 -1
  39. package/lib/dts/src/primitives/popover/modifiers/types.d.ts +0 -18
  40. package/lib/dts/src/primitives/popover/modifiers/types.d.ts.map +0 -1
  41. package/lib/dts/src/primitives/popover/modifiers/usePopoverModifiers.d.ts +0 -4
  42. package/lib/dts/src/primitives/popover/modifiers/usePopoverModifiers.d.ts.map +0 -1
  43. package/src/primitives/popover/modifiers/getPopoverModifiers.ts +0 -137
  44. package/src/primitives/popover/modifiers/index.ts +0 -1
  45. package/src/primitives/popover/modifiers/types.ts +0 -18
  46. package/src/primitives/popover/modifiers/usePopoverModifiers.ts +0 -58
package/lib/sanity-ui.js CHANGED
@@ -6,9 +6,8 @@ var resizeObserver = require('@juggle/resize-observer');
6
6
  var color$1 = require('@sanity/color');
7
7
  var icons = require('@sanity/icons');
8
8
  var Refractor = require('react-refractor');
9
- var reactPopper = require('react-popper');
9
+ var reactDom = require('@floating-ui/react-dom');
10
10
  var ReactDOM = require('react-dom');
11
- var maxSizeModifier = require('popper-max-size-modifier');
12
11
  var framerMotion = require('framer-motion');
13
12
 
14
13
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
@@ -18,7 +17,6 @@ var ReactIs__default = /*#__PURE__*/_interopDefaultLegacy(ReactIs);
18
17
  var styled__default = /*#__PURE__*/_interopDefaultLegacy(styled);
19
18
  var Refractor__default = /*#__PURE__*/_interopDefaultLegacy(Refractor);
20
19
  var ReactDOM__default = /*#__PURE__*/_interopDefaultLegacy(ReactDOM);
21
- var maxSizeModifier__default = /*#__PURE__*/_interopDefaultLegacy(maxSizeModifier);
22
20
 
23
21
  function _extends() {
24
22
  _extends = Object.assign || function (target) {
@@ -116,8 +114,25 @@ function _createForOfIteratorHelperLoose(o, allowArrayLike) {
116
114
  throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
117
115
  }
118
116
 
117
+ /**
118
+ * @internal
119
+ */
119
120
  var EMPTY_ARRAY = [];
121
+ /**
122
+ * @internal
123
+ */
124
+
120
125
  var EMPTY_RECORD = {};
126
+ /**
127
+ * @internal
128
+ */
129
+
130
+ var FLOATING_STATIC_SIDES = {
131
+ top: 'bottom',
132
+ right: 'left',
133
+ bottom: 'top',
134
+ left: 'right'
135
+ };
121
136
 
122
137
  /**
123
138
  * @internal
@@ -2932,7 +2947,7 @@ globalScope[key$7] = globalScope[key$7] || /*#__PURE__*/React.createContext(null
2932
2947
 
2933
2948
  var ThemeContext = globalScope[key$7];
2934
2949
 
2935
- var _excluded$H = ["color", "layer"];
2950
+ var _excluded$I = ["color", "layer"];
2936
2951
  /**
2937
2952
  * @public
2938
2953
  */
@@ -2951,7 +2966,7 @@ function ThemeProvider(props) {
2951
2966
 
2952
2967
  var rootColor = themeProp.color,
2953
2968
  rootLayer = themeProp.layer,
2954
- restTheme = _objectWithoutPropertiesLoose(themeProp, _excluded$H);
2969
+ restTheme = _objectWithoutPropertiesLoose(themeProp, _excluded$I);
2955
2970
 
2956
2971
  var colorScheme = rootColor[scheme] || rootColor.light;
2957
2972
  var color = colorScheme[tone] || colorScheme["default"];
@@ -3694,8 +3709,8 @@ function responsiveInputPaddingIconRightStyle(props) {
3694
3709
  }));
3695
3710
  }
3696
3711
 
3697
- var _templateObject$D, _templateObject2$n, _templateObject3$e;
3698
- var ROOT_STYLE = styled.css(_templateObject$D || (_templateObject$D = _taggedTemplateLiteralLoose(["\n &:not([hidden]) {\n display: flex;\n }\n\n align-items: center;\n"])));
3712
+ var _templateObject$C, _templateObject2$m, _templateObject3$d;
3713
+ var ROOT_STYLE = styled.css(_templateObject$C || (_templateObject$C = _taggedTemplateLiteralLoose(["\n &:not([hidden]) {\n display: flex;\n }\n\n align-items: center;\n"])));
3699
3714
  function textInputRootStyle() {
3700
3715
  return ROOT_STYLE;
3701
3716
  }
@@ -3705,7 +3720,7 @@ function textInputBaseStyle(props) {
3705
3720
  $weight = props.$weight;
3706
3721
  var font = theme.sanity.fonts.text;
3707
3722
  var color = theme.sanity.color.input;
3708
- return styled.css(_templateObject2$n || (_templateObject2$n = _taggedTemplateLiteralLoose(["\n appearance: none;\n background: none;\n border: 0;\n border-radius: 0;\n outline: none;\n width: 100%;\n box-sizing: border-box;\n font-family: ", ";\n font-weight: ", ";\n margin: 0;\n position: relative;\n z-index: 1;\n display: block;\n\n /* NOTE: This is a hack to disable Chrome\u2019s autofill styles */\n &:-webkit-autofill,\n &:-webkit-autofill:hover,\n &:-webkit-autofill:focus,\n &:-webkit-autofill:active {\n -webkit-text-fill-color: var(--input-fg-color) !important;\n transition: background-color 5000s;\n transition-delay: 86400s /* 24h */;\n }\n\n /* &:is(textarea) */\n &[data-as='textarea'] {\n resize: none;\n }\n\n color: var(--input-fg-color);\n\n &::placeholder {\n color: var(--input-placeholder-color);\n }\n\n &[data-tone='", "'] {\n --input-fg-color: ", ";\n --input-placeholder-color: ", ";\n\n /* enabled */\n &:not(:invalid):not(:disabled):not(:read-only) {\n --input-fg-color: ", ";\n --input-placeholder-color: ", ";\n }\n\n /* disabled */\n &:not(:invalid):disabled {\n --input-fg-color: ", ";\n --input-placeholder-color: ", ";\n }\n\n /* invalid */\n &:invalid {\n --input-fg-color: ", ";\n --input-placeholder-color: ", ";\n }\n\n /* readOnly */\n &:read-only {\n --input-fg-color: ", ";\n --input-placeholder-color: ", ";\n }\n }\n "])), font.family, $weight && font.weights[$weight] || font.weights.regular, $tone, color["default"].enabled.fg, color["default"].enabled.placeholder, color["default"].enabled.fg, color["default"].enabled.placeholder, color["default"].disabled.fg, color["default"].disabled.placeholder, color.invalid.enabled.fg, color.invalid.enabled.placeholder, color["default"].readOnly.fg, color["default"].readOnly.placeholder);
3723
+ return styled.css(_templateObject2$m || (_templateObject2$m = _taggedTemplateLiteralLoose(["\n appearance: none;\n background: none;\n border: 0;\n border-radius: 0;\n outline: none;\n width: 100%;\n box-sizing: border-box;\n font-family: ", ";\n font-weight: ", ";\n margin: 0;\n position: relative;\n z-index: 1;\n display: block;\n\n /* NOTE: This is a hack to disable Chrome\u2019s autofill styles */\n &:-webkit-autofill,\n &:-webkit-autofill:hover,\n &:-webkit-autofill:focus,\n &:-webkit-autofill:active {\n -webkit-text-fill-color: var(--input-fg-color) !important;\n transition: background-color 5000s;\n transition-delay: 86400s /* 24h */;\n }\n\n /* &:is(textarea) */\n &[data-as='textarea'] {\n resize: none;\n }\n\n color: var(--input-fg-color);\n\n &::placeholder {\n color: var(--input-placeholder-color);\n }\n\n &[data-tone='", "'] {\n --input-fg-color: ", ";\n --input-placeholder-color: ", ";\n\n /* enabled */\n &:not(:invalid):not(:disabled):not(:read-only) {\n --input-fg-color: ", ";\n --input-placeholder-color: ", ";\n }\n\n /* disabled */\n &:not(:invalid):disabled {\n --input-fg-color: ", ";\n --input-placeholder-color: ", ";\n }\n\n /* invalid */\n &:invalid {\n --input-fg-color: ", ";\n --input-placeholder-color: ", ";\n }\n\n /* readOnly */\n &:read-only {\n --input-fg-color: ", ";\n --input-placeholder-color: ", ";\n }\n }\n "])), font.family, $weight && font.weights[$weight] || font.weights.regular, $tone, color["default"].enabled.fg, color["default"].enabled.placeholder, color["default"].enabled.fg, color["default"].enabled.placeholder, color["default"].disabled.fg, color["default"].disabled.placeholder, color.invalid.enabled.fg, color.invalid.enabled.placeholder, color["default"].readOnly.fg, color["default"].readOnly.placeholder);
3709
3724
  }
3710
3725
  function textInputFontSizeStyle(props) {
3711
3726
  var theme = props.theme;
@@ -3730,7 +3745,7 @@ function textInputRepresentationStyle(props) {
3730
3745
  focusRing = _theme$sanity2.focusRing,
3731
3746
  input = _theme$sanity2.input;
3732
3747
  var color = theme.sanity.color.input;
3733
- return styled.css(_templateObject3$e || (_templateObject3$e = _taggedTemplateLiteralLoose(["\n --input-box-shadow: none;\n\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n display: block;\n pointer-events: none;\n z-index: 0;\n\n background-color: var(--card-bg-color);\n box-shadow: var(--input-box-shadow);\n\n border-top-left-radius: ", ";\n border-bottom-left-radius: ", ";\n border-top-right-radius: ", ";\n border-bottom-right-radius: ", ";\n\n &[data-tone='", "'] {\n --card-bg-color: ", ";\n --card-fg-color: ", ";\n\n /* enabled */\n *:not(:disabled) + & {\n --input-box-shadow: ", ";\n }\n\n /* invalid */\n *:not(:disabled):invalid + & {\n --card-bg-color: ", ";\n --card-fg-color: ", ";\n --input-box-shadow: ", ";\n }\n\n /* focused */\n *:not(:disabled):focus + & {\n --input-box-shadow: ", ";\n }\n\n /* disabled */\n *:disabled + & {\n --card-bg-color: ", " !important;\n --card-fg-color: ", " !important;\n --input-box-shadow: ", ";\n }\n\n /* readOnly */\n *:read-only + & {\n --card-bg-color: ", " !important;\n --card-fg-color: ", " !important;\n }\n\n /* hovered */\n @media (hover: hover) {\n *:not(:disabled):not(:read-only):not(:invalid):hover + & {\n --card-bg-color: ", ";\n --card-fg-color: ", ";\n }\n\n *:not(:disabled):not(:read-only):not(:invalid):not(:focus):hover + & {\n --input-box-shadow: ", ";\n }\n }\n }\n "])), $hasPrefix ? 0 : undefined, $hasPrefix ? 0 : undefined, $hasSuffix ? 0 : undefined, $hasSuffix ? 0 : undefined, $tone, color["default"].enabled.bg, color["default"].enabled.fg, $border ? focusRingBorderStyle({
3748
+ return styled.css(_templateObject3$d || (_templateObject3$d = _taggedTemplateLiteralLoose(["\n --input-box-shadow: none;\n\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n display: block;\n pointer-events: none;\n z-index: 0;\n\n background-color: var(--card-bg-color);\n box-shadow: var(--input-box-shadow);\n\n border-top-left-radius: ", ";\n border-bottom-left-radius: ", ";\n border-top-right-radius: ", ";\n border-bottom-right-radius: ", ";\n\n &[data-tone='", "'] {\n --card-bg-color: ", ";\n --card-fg-color: ", ";\n\n /* enabled */\n *:not(:disabled) + & {\n --input-box-shadow: ", ";\n }\n\n /* invalid */\n *:not(:disabled):invalid + & {\n --card-bg-color: ", ";\n --card-fg-color: ", ";\n --input-box-shadow: ", ";\n }\n\n /* focused */\n *:not(:disabled):focus + & {\n --input-box-shadow: ", ";\n }\n\n /* disabled */\n *:disabled + & {\n --card-bg-color: ", " !important;\n --card-fg-color: ", " !important;\n --input-box-shadow: ", ";\n }\n\n /* readOnly */\n *:read-only + & {\n --card-bg-color: ", " !important;\n --card-fg-color: ", " !important;\n }\n\n /* hovered */\n @media (hover: hover) {\n *:not(:disabled):not(:read-only):not(:invalid):hover + & {\n --card-bg-color: ", ";\n --card-fg-color: ", ";\n }\n\n *:not(:disabled):not(:read-only):not(:invalid):not(:focus):hover + & {\n --input-box-shadow: ", ";\n }\n }\n }\n "])), $hasPrefix ? 0 : undefined, $hasPrefix ? 0 : undefined, $hasSuffix ? 0 : undefined, $hasSuffix ? 0 : undefined, $tone, color["default"].enabled.bg, color["default"].enabled.fg, $border ? focusRingBorderStyle({
3734
3749
  color: color["default"].enabled.border,
3735
3750
  width: input.border.width
3736
3751
  }) : undefined, color.invalid.enabled.bg, color.invalid.enabled.fg, $border ? focusRingBorderStyle({
@@ -3798,20 +3813,20 @@ function responsiveShadowStyle(props) {
3798
3813
  });
3799
3814
  }
3800
3815
 
3801
- var _templateObject$C, _templateObject2$m, _templateObject3$d;
3816
+ var _templateObject$B, _templateObject2$l, _templateObject3$c;
3802
3817
  function textBaseStyle(props) {
3803
3818
  var $accent = props.$accent,
3804
3819
  $muted = props.$muted,
3805
3820
  theme = props.theme;
3806
3821
  var weights = theme.sanity.fonts.text.weights;
3807
- return styled.css(_templateObject$C || (_templateObject$C = _taggedTemplateLiteralLoose(["\n color: var(--card-fg-color);\n\n ", "\n\n ", "\n\n & code {\n font-family: ", ";\n border-radius: 1px;\n background-color: var(--card-code-bg-color);\n color: var(--card-code-fg-color);\n }\n\n & a {\n text-decoration: none;\n border-radius: 1px;\n color: var(--card-link-color);\n outline: none;\n\n @media (hover: hover) {\n &:hover {\n text-decoration: underline;\n }\n }\n\n &:focus {\n box-shadow: 0 0 0 1px var(--card-bg-color), 0 0 0 3px var(--card-focus-ring-color);\n }\n\n &:focus:not(:focus-visible) {\n box-shadow: none;\n }\n }\n\n & strong {\n font-weight: ", ";\n }\n\n & [data-sanity-icon] {\n vertical-align: baseline;\n }\n "])), $accent && styled.css(_templateObject2$m || (_templateObject2$m = _taggedTemplateLiteralLoose(["\n color: var(--card-accent-fg-color);\n "]))), $muted && styled.css(_templateObject3$d || (_templateObject3$d = _taggedTemplateLiteralLoose(["\n color: var(--card-muted-fg-color);\n "]))), theme.sanity.fonts.code.family, weights.bold);
3822
+ return styled.css(_templateObject$B || (_templateObject$B = _taggedTemplateLiteralLoose(["\n color: var(--card-fg-color);\n\n ", "\n\n ", "\n\n & code {\n font-family: ", ";\n border-radius: 1px;\n background-color: var(--card-code-bg-color);\n color: var(--card-code-fg-color);\n }\n\n & a {\n text-decoration: none;\n border-radius: 1px;\n color: var(--card-link-color);\n outline: none;\n\n @media (hover: hover) {\n &:hover {\n text-decoration: underline;\n }\n }\n\n &:focus {\n box-shadow: 0 0 0 1px var(--card-bg-color), 0 0 0 3px var(--card-focus-ring-color);\n }\n\n &:focus:not(:focus-visible) {\n box-shadow: none;\n }\n }\n\n & strong {\n font-weight: ", ";\n }\n\n & [data-sanity-icon] {\n vertical-align: baseline;\n }\n "])), $accent && styled.css(_templateObject2$l || (_templateObject2$l = _taggedTemplateLiteralLoose(["\n color: var(--card-accent-fg-color);\n "]))), $muted && styled.css(_templateObject3$c || (_templateObject3$c = _taggedTemplateLiteralLoose(["\n color: var(--card-muted-fg-color);\n "]))), theme.sanity.fonts.code.family, weights.bold);
3808
3823
  }
3809
3824
 
3810
- var _excluded$G = ["accent", "align", "children", "muted", "size", "textOverflow", "weight"];
3825
+ var _excluded$H = ["accent", "align", "children", "muted", "size", "textOverflow", "weight"];
3811
3826
 
3812
- var _templateObject$B;
3827
+ var _templateObject$A;
3813
3828
  var Root$E = styled__default["default"].div(responsiveTextFont, responsiveTextAlignStyle, textBaseStyle);
3814
- var SpanWithTextOverflow$2 = styled__default["default"].span(_templateObject$B || (_templateObject$B = _taggedTemplateLiteralLoose(["\n display: block;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n"])));
3829
+ var SpanWithTextOverflow$2 = styled__default["default"].span(_templateObject$A || (_templateObject$A = _taggedTemplateLiteralLoose(["\n display: block;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n"])));
3815
3830
  /**
3816
3831
  * @public
3817
3832
  */
@@ -3827,7 +3842,7 @@ var Text = /*#__PURE__*/React.forwardRef(function Text(props, ref) {
3827
3842
  size = _props$size === void 0 ? 2 : _props$size,
3828
3843
  textOverflow = props.textOverflow,
3829
3844
  weight = props.weight,
3830
- restProps = _objectWithoutPropertiesLoose(props, _excluded$G);
3845
+ restProps = _objectWithoutPropertiesLoose(props, _excluded$H);
3831
3846
 
3832
3847
  var children = childrenProp;
3833
3848
 
@@ -3987,7 +4002,7 @@ function avatarStrokeStyle() {
3987
4002
  };
3988
4003
  }
3989
4004
 
3990
- var _excluded$F = ["as", "color", "src", "title", "initials", "onImageLoadError", "arrowPosition", "animateArrowFrom", "status", "size"];
4005
+ var _excluded$G = ["as", "color", "src", "title", "initials", "onImageLoadError", "arrowPosition", "animateArrowFrom", "status", "size"];
3991
4006
  var Root$D = styled__default["default"].div(responsiveAvatarSizeStyle, avatarStyle.root);
3992
4007
  var Arrow = styled__default["default"].div(avatarStyle.arrow);
3993
4008
  var BgStroke = styled__default["default"].ellipse(avatarStyle.bgStroke);
@@ -4011,7 +4026,7 @@ var Avatar = /*#__PURE__*/React.forwardRef(function Avatar(props, ref) {
4011
4026
  status = _props$status === void 0 ? 'online' : _props$status,
4012
4027
  _props$size = props.size,
4013
4028
  sizeProp = _props$size === void 0 ? 0 : _props$size,
4014
- restProps = _objectWithoutPropertiesLoose(props, _excluded$F);
4029
+ restProps = _objectWithoutPropertiesLoose(props, _excluded$G);
4015
4030
 
4016
4031
  var as = ReactIs__default["default"].isValidElementType(asProp) ? asProp : 'div';
4017
4032
  var size = useArrayProp(sizeProp);
@@ -4116,7 +4131,7 @@ var Avatar = /*#__PURE__*/React.forwardRef(function Avatar(props, ref) {
4116
4131
  }, /*#__PURE__*/React__default["default"].createElement("strong", null, initials)))));
4117
4132
  });
4118
4133
 
4119
- var _templateObject$A;
4134
+ var _templateObject$z;
4120
4135
 
4121
4136
  function _responsiveAvatarCounterSizeStyle(props) {
4122
4137
  var theme = props.theme;
@@ -4136,7 +4151,7 @@ function _responsiveAvatarCounterSizeStyle(props) {
4136
4151
 
4137
4152
  function _avatarCounterBaseStyle(props) {
4138
4153
  var theme = props.theme;
4139
- return styled.css(_templateObject$A || (_templateObject$A = _taggedTemplateLiteralLoose(["\n align-items: center;\n justify-content: center;\n box-sizing: border-box;\n user-select: none;\n color: inherit;\n color: var(--card-fg-color);\n background: var(--card-bg-color);\n box-shadow: 0 0 0 1px var(--card-bg-color), inset 0 0 0 1.5px var(--card-hairline-hard-color);\n padding: 0 ", ";\n\n &:not([hidden]) {\n display: flex;\n }\n "])), rem(theme.sanity.space[2]));
4154
+ return styled.css(_templateObject$z || (_templateObject$z = _taggedTemplateLiteralLoose(["\n align-items: center;\n justify-content: center;\n box-sizing: border-box;\n user-select: none;\n color: inherit;\n color: var(--card-fg-color);\n background: var(--card-bg-color);\n box-shadow: 0 0 0 1px var(--card-bg-color), inset 0 0 0 1.5px var(--card-hairline-hard-color);\n padding: 0 ", ";\n\n &:not([hidden]) {\n display: flex;\n }\n "])), rem(theme.sanity.space[2]));
4140
4155
  }
4141
4156
 
4142
4157
  var Root$C = styled__default["default"].div(_responsiveAvatarCounterSizeStyle, _avatarCounterBaseStyle);
@@ -4171,10 +4186,10 @@ function childrenToElementArray(children) {
4171
4186
  });
4172
4187
  }
4173
4188
 
4174
- var _excluded$E = ["children", "maxLength", "size"];
4189
+ var _excluded$F = ["children", "maxLength", "size"];
4175
4190
 
4176
- var _templateObject$z;
4177
- var BASE_STYLES = styled.css(_templateObject$z || (_templateObject$z = _taggedTemplateLiteralLoose(["\n white-space: nowrap;\n\n & > div {\n vertical-align: top;\n\n &:not([hidden]) {\n display: inline-block;\n }\n }\n"])));
4191
+ var _templateObject$y;
4192
+ var BASE_STYLES = styled.css(_templateObject$y || (_templateObject$y = _taggedTemplateLiteralLoose(["\n white-space: nowrap;\n\n & > div {\n vertical-align: top;\n\n &:not([hidden]) {\n display: inline-block;\n }\n }\n"])));
4178
4193
 
4179
4194
  function avatarStackStyle() {
4180
4195
  return BASE_STYLES;
@@ -4207,7 +4222,7 @@ var AvatarStack = /*#__PURE__*/React.forwardRef(function AvatarStack(props, ref)
4207
4222
  maxLengthProp = _props$maxLength === void 0 ? 4 : _props$maxLength,
4208
4223
  _props$size = props.size,
4209
4224
  sizeProp = _props$size === void 0 ? 0 : _props$size,
4210
- restProps = _objectWithoutPropertiesLoose(props, _excluded$E);
4225
+ restProps = _objectWithoutPropertiesLoose(props, _excluded$F);
4211
4226
 
4212
4227
  var children = childrenToElementArray(childrenProp).filter(function (child) {
4213
4228
  return typeof child !== 'string';
@@ -4237,7 +4252,7 @@ var AvatarStack = /*#__PURE__*/React.forwardRef(function AvatarStack(props, ref)
4237
4252
  }));
4238
4253
  });
4239
4254
 
4240
- var _excluded$D = ["as", "column", "columnStart", "columnEnd", "display", "flex", "height", "margin", "marginX", "marginY", "marginTop", "marginRight", "marginBottom", "marginLeft", "overflow", "padding", "paddingX", "paddingY", "paddingTop", "paddingRight", "paddingBottom", "paddingLeft", "row", "rowStart", "rowEnd", "sizing"];
4255
+ var _excluded$E = ["as", "column", "columnStart", "columnEnd", "display", "flex", "height", "margin", "marginX", "marginY", "marginTop", "marginRight", "marginBottom", "marginLeft", "overflow", "padding", "paddingX", "paddingY", "paddingTop", "paddingRight", "paddingBottom", "paddingLeft", "row", "rowStart", "rowEnd", "sizing"];
4241
4256
  var Root$A = styled__default["default"].div(boxStyle, flexItemStyle, responsiveBoxStyle, responsiveGridItemStyle, responsiveMarginStyle, responsivePaddingStyle);
4242
4257
  /**
4243
4258
  * @public
@@ -4274,7 +4289,7 @@ var Box = /*#__PURE__*/React.forwardRef(function Box(props, ref) {
4274
4289
  rowStart = props.rowStart,
4275
4290
  rowEnd = props.rowEnd,
4276
4291
  sizing = props.sizing,
4277
- restProps = _objectWithoutPropertiesLoose(props, _excluded$D);
4292
+ restProps = _objectWithoutPropertiesLoose(props, _excluded$E);
4278
4293
 
4279
4294
  return /*#__PURE__*/React__default["default"].createElement(Root$A, _extends({
4280
4295
  "data-as": typeof asProp === 'string' ? asProp : undefined,
@@ -4310,20 +4325,20 @@ var Box = /*#__PURE__*/React.forwardRef(function Box(props, ref) {
4310
4325
  }), props.children);
4311
4326
  });
4312
4327
 
4313
- var _templateObject$y, _templateObject2$l, _templateObject3$c;
4328
+ var _templateObject$x, _templateObject2$k, _templateObject3$b;
4314
4329
  function labelBaseStyle(props) {
4315
4330
  var $accent = props.$accent,
4316
4331
  $muted = props.$muted,
4317
4332
  theme = props.theme;
4318
4333
  var fonts = theme.sanity.fonts;
4319
- return styled.css(_templateObject$y || (_templateObject$y = _taggedTemplateLiteralLoose(["\n text-transform: uppercase;\n\n ", "\n\n ", "\n\n & code {\n font-family: ", ";\n border-radius: 1px;\n }\n\n & a {\n text-decoration: none;\n border-radius: 1px;\n }\n\n & [data-sanity-icon] {\n vertical-align: baseline;\n }\n "])), $accent && styled.css(_templateObject2$l || (_templateObject2$l = _taggedTemplateLiteralLoose(["\n color: var(--card-accent-fg-color);\n "]))), $muted && styled.css(_templateObject3$c || (_templateObject3$c = _taggedTemplateLiteralLoose(["\n color: var(--card-muted-fg-color);\n "]))), fonts.code.family);
4334
+ return styled.css(_templateObject$x || (_templateObject$x = _taggedTemplateLiteralLoose(["\n text-transform: uppercase;\n\n ", "\n\n ", "\n\n & code {\n font-family: ", ";\n border-radius: 1px;\n }\n\n & a {\n text-decoration: none;\n border-radius: 1px;\n }\n\n & [data-sanity-icon] {\n vertical-align: baseline;\n }\n "])), $accent && styled.css(_templateObject2$k || (_templateObject2$k = _taggedTemplateLiteralLoose(["\n color: var(--card-accent-fg-color);\n "]))), $muted && styled.css(_templateObject3$b || (_templateObject3$b = _taggedTemplateLiteralLoose(["\n color: var(--card-muted-fg-color);\n "]))), fonts.code.family);
4320
4335
  }
4321
4336
 
4322
- var _excluded$C = ["accent", "align", "children", "muted", "size", "textOverflow", "weight"];
4337
+ var _excluded$D = ["accent", "align", "children", "muted", "size", "textOverflow", "weight"];
4323
4338
 
4324
- var _templateObject$x;
4339
+ var _templateObject$w;
4325
4340
  var Root$z = styled__default["default"].div(responsiveLabelFont, responsiveTextAlignStyle, labelBaseStyle);
4326
- var SpanWithTextOverflow$1 = styled__default["default"].span(_templateObject$x || (_templateObject$x = _taggedTemplateLiteralLoose(["\n display: block;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n"])));
4341
+ var SpanWithTextOverflow$1 = styled__default["default"].span(_templateObject$w || (_templateObject$w = _taggedTemplateLiteralLoose(["\n display: block;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n"])));
4327
4342
  /**
4328
4343
  * @public
4329
4344
  */
@@ -4338,7 +4353,7 @@ var Label = /*#__PURE__*/React.forwardRef(function Label(props, ref) {
4338
4353
  size = _props$size === void 0 ? 2 : _props$size,
4339
4354
  textOverflow = props.textOverflow,
4340
4355
  weight = props.weight,
4341
- restProps = _objectWithoutPropertiesLoose(props, _excluded$C);
4356
+ restProps = _objectWithoutPropertiesLoose(props, _excluded$D);
4342
4357
 
4343
4358
  var children = childrenProp;
4344
4359
 
@@ -4377,7 +4392,7 @@ function badgeStyle(props) {
4377
4392
  };
4378
4393
  }
4379
4394
 
4380
- var _excluded$B = ["children", "fontSize", "mode", "padding", "radius", "tone"];
4395
+ var _excluded$C = ["children", "fontSize", "mode", "padding", "radius", "tone"];
4381
4396
  var Root$y = styled__default["default"](Box)(responsiveRadiusStyle, badgeStyle);
4382
4397
  /**
4383
4398
  * @public
@@ -4394,7 +4409,7 @@ var Badge = /*#__PURE__*/React.forwardRef(function Badge(props, ref) {
4394
4409
  radius = _props$radius === void 0 ? 2 : _props$radius,
4395
4410
  _props$tone = props.tone,
4396
4411
  tone = _props$tone === void 0 ? 'default' : _props$tone,
4397
- restProps = _objectWithoutPropertiesLoose(props, _excluded$B);
4412
+ restProps = _objectWithoutPropertiesLoose(props, _excluded$C);
4398
4413
 
4399
4414
  return /*#__PURE__*/React__default["default"].createElement(Root$y, _extends({
4400
4415
  "data-ui": "Badge"
@@ -4409,7 +4424,7 @@ var Badge = /*#__PURE__*/React.forwardRef(function Badge(props, ref) {
4409
4424
  }, children));
4410
4425
  });
4411
4426
 
4412
- var _excluded$A = ["align", "as", "direction", "gap", "justify", "wrap"];
4427
+ var _excluded$B = ["align", "as", "direction", "gap", "justify", "wrap"];
4413
4428
  var Root$x = styled__default["default"](Box)(flexItemStyle, responsiveFlexStyle);
4414
4429
  /**
4415
4430
  * @public
@@ -4423,7 +4438,7 @@ var Flex = /*#__PURE__*/React.forwardRef(function Flex(props, ref) {
4423
4438
  gap = props.gap,
4424
4439
  justify = props.justify,
4425
4440
  wrap = props.wrap,
4426
- restProps = _objectWithoutPropertiesLoose(props, _excluded$A);
4441
+ restProps = _objectWithoutPropertiesLoose(props, _excluded$B);
4427
4442
 
4428
4443
  return /*#__PURE__*/React__default["default"].createElement(Root$x, _extends({
4429
4444
  "data-ui": "Flex"
@@ -4438,9 +4453,9 @@ var Flex = /*#__PURE__*/React.forwardRef(function Flex(props, ref) {
4438
4453
  }));
4439
4454
  });
4440
4455
 
4441
- var _templateObject$w, _templateObject2$k;
4442
- var rotate$1 = styled.keyframes(_templateObject$w || (_templateObject$w = _taggedTemplateLiteralLoose(["\n from {\n transform: rotate(0deg);\n }\n\n to {\n transform: rotate(360deg);\n }\n"])));
4443
- var Root$w = styled__default["default"](Text)(_templateObject2$k || (_templateObject2$k = _taggedTemplateLiteralLoose(["\n & > span > svg {\n animation: ", " 500ms linear infinite;\n }\n"])), rotate$1);
4456
+ var _templateObject$v, _templateObject2$j;
4457
+ var rotate$1 = styled.keyframes(_templateObject$v || (_templateObject$v = _taggedTemplateLiteralLoose(["\n from {\n transform: rotate(0deg);\n }\n\n to {\n transform: rotate(360deg);\n }\n"])));
4458
+ var Root$w = styled__default["default"](Text)(_templateObject2$j || (_templateObject2$j = _taggedTemplateLiteralLoose(["\n & > span > svg {\n animation: ", " 500ms linear infinite;\n }\n"])), rotate$1);
4444
4459
  /**
4445
4460
  * @public
4446
4461
  */
@@ -4490,13 +4505,13 @@ function _colorVarsStyle(base, color, checkered) {
4490
4505
  };
4491
4506
  }
4492
4507
 
4493
- var _templateObject$v;
4508
+ var _templateObject$u;
4494
4509
  /**
4495
4510
  * @internal
4496
4511
  */
4497
4512
 
4498
4513
  function buttonBaseStyles() {
4499
- return styled.css(_templateObject$v || (_templateObject$v = _taggedTemplateLiteralLoose(["\n -webkit-font-smoothing: inherit;\n appearance: none;\n display: inline-flex;\n align-items: center;\n font: inherit;\n border: 0;\n outline: none;\n user-select: none;\n text-decoration: none;\n border: 0;\n box-sizing: border-box;\n padding: 0;\n margin: 0;\n white-space: nowrap;\n text-align: left;\n position: relative;\n\n & > span {\n display: block;\n flex: 1;\n min-width: 0;\n border-radius: inherit;\n }\n\n &::-moz-focus-inner {\n border: 0;\n padding: 0;\n }\n "])));
4514
+ return styled.css(_templateObject$u || (_templateObject$u = _taggedTemplateLiteralLoose(["\n -webkit-font-smoothing: inherit;\n appearance: none;\n display: inline-flex;\n align-items: center;\n font: inherit;\n border: 0;\n outline: none;\n user-select: none;\n text-decoration: none;\n border: 0;\n box-sizing: border-box;\n padding: 0;\n margin: 0;\n white-space: nowrap;\n text-align: left;\n position: relative;\n\n & > span {\n display: block;\n flex: 1;\n min-width: 0;\n border-radius: inherit;\n }\n\n &::-moz-focus-inner {\n border: 0;\n padding: 0;\n }\n "])));
4500
4515
  }
4501
4516
  var buttonTheme = {
4502
4517
  border: {
@@ -4545,11 +4560,11 @@ function buttonColorStyles(props) {
4545
4560
  }, (_theme$sanity$styles = theme.sanity.styles) == null ? void 0 : (_theme$sanity$styles$ = _theme$sanity$styles.button) == null ? void 0 : _theme$sanity$styles$.root].filter(Boolean);
4546
4561
  }
4547
4562
 
4548
- var _excluded$z = ["children", "disabled", "fontSize", "icon", "iconRight", "justify", "loading", "mode", "padding", "paddingX", "paddingY", "paddingTop", "paddingBottom", "paddingLeft", "paddingRight", "radius", "selected", "space", "text", "textAlign", "tone", "type"];
4563
+ var _excluded$A = ["children", "disabled", "fontSize", "icon", "iconRight", "justify", "loading", "mode", "padding", "paddingX", "paddingY", "paddingTop", "paddingBottom", "paddingLeft", "paddingRight", "radius", "selected", "space", "text", "textAlign", "tone", "type"];
4549
4564
 
4550
- var _templateObject$u;
4565
+ var _templateObject$t;
4551
4566
  var Root$v = styled__default["default"].button(responsiveRadiusStyle, buttonBaseStyles, buttonColorStyles);
4552
- var LoadingBox = styled__default["default"].div(_templateObject$u || (_templateObject$u = _taggedTemplateLiteralLoose(["\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n background-color: var(--card-bg-color);\n border-radius: inherit;\n z-index: 1;\n box-shadow: inherit;\n"])));
4567
+ var LoadingBox = styled__default["default"].div(_templateObject$t || (_templateObject$t = _taggedTemplateLiteralLoose(["\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n background-color: var(--card-bg-color);\n border-radius: inherit;\n z-index: 1;\n box-shadow: inherit;\n"])));
4553
4568
  /**
4554
4569
  * @public
4555
4570
  */
@@ -4584,7 +4599,7 @@ var Button = /*#__PURE__*/React.forwardRef(function Button(props, ref) {
4584
4599
  tone = _props$tone === void 0 ? 'default' : _props$tone,
4585
4600
  _props$type = props.type,
4586
4601
  type = _props$type === void 0 ? 'button' : _props$type,
4587
- restProps = _objectWithoutPropertiesLoose(props, _excluded$z);
4602
+ restProps = _objectWithoutPropertiesLoose(props, _excluded$A);
4588
4603
 
4589
4604
  var justify = useArrayProp(justifyProp);
4590
4605
  var padding = useArrayProp(paddingProp);
@@ -4643,7 +4658,7 @@ var Button = /*#__PURE__*/React.forwardRef(function Button(props, ref) {
4643
4658
  }, boxProps), children));
4644
4659
  });
4645
4660
 
4646
- var _templateObject$t, _templateObject2$j, _templateObject3$b;
4661
+ var _templateObject$s, _templateObject2$i, _templateObject3$a;
4647
4662
  function cardStyle(props) {
4648
4663
  return [cardBaseStyle(props), cardColorStyle(props)];
4649
4664
  }
@@ -4651,7 +4666,7 @@ function cardBaseStyle(props) {
4651
4666
  var $checkered = props.$checkered,
4652
4667
  theme = props.theme;
4653
4668
  var space = theme.sanity.space;
4654
- return styled.css(_templateObject$t || (_templateObject$t = _taggedTemplateLiteralLoose(["\n ", "\n\n &[data-as='button'] {\n -webkit-font-smoothing: inherit;\n appearance: none;\n outline: none;\n font: inherit;\n text-align: inherit;\n border: 0;\n width: stretch;\n }\n\n /* &:is(a) */\n &[data-as='a'] {\n outline: none;\n text-decoration: none;\n }\n\n /* &:is(pre) */\n &[data-as='pre'] {\n font: inherit;\n }\n "])), $checkered && styled.css(_templateObject2$j || (_templateObject2$j = _taggedTemplateLiteralLoose(["\n background-size: ", "px ", "px;\n background-position: 50% 50%;\n background-image: var(--card-bg-image);\n "])), space[3], space[3]));
4669
+ return styled.css(_templateObject$s || (_templateObject$s = _taggedTemplateLiteralLoose(["\n ", "\n\n &[data-as='button'] {\n -webkit-font-smoothing: inherit;\n appearance: none;\n outline: none;\n font: inherit;\n text-align: inherit;\n border: 0;\n width: stretch;\n }\n\n /* &:is(a) */\n &[data-as='a'] {\n outline: none;\n text-decoration: none;\n }\n\n /* &:is(pre) */\n &[data-as='pre'] {\n font: inherit;\n }\n "])), $checkered && styled.css(_templateObject2$i || (_templateObject2$i = _taggedTemplateLiteralLoose(["\n background-size: ", "px ", "px;\n background-position: 50% 50%;\n background-image: var(--card-bg-image);\n "])), space[3], space[3]));
4655
4670
  }
4656
4671
  function cardColorStyle(props) {
4657
4672
  var _theme$sanity$styles, _theme$sanity$styles$;
@@ -4667,7 +4682,7 @@ function cardColorStyle(props) {
4667
4682
  width: 0,
4668
4683
  color: 'var(--card-border-color)'
4669
4684
  };
4670
- return styled.css(_templateObject3$b || (_templateObject3$b = _taggedTemplateLiteralLoose(["\n ", "\n\n background-color: var(--card-bg-color);\n color: var(--card-fg-color);\n\n /* &:is(button) */\n &[data-as='button'] {\n --card-focus-ring-box-shadow: none;\n\n cursor: default;\n box-shadow: var(--card-focus-ring-box-shadow);\n\n &:disabled {\n ", "\n }\n\n &:not(:disabled) {\n &[data-pressed] {\n ", "\n }\n\n &[data-selected] {\n ", "\n }\n\n @media (hover: hover) {\n &:not([data-pressed]):not([data-selected]) {\n &:hover {\n ", "\n }\n\n &:active {\n ", "\n }\n }\n }\n\n &:focus {\n --card-focus-ring-box-shadow: ", ";\n }\n\n &:focus:not(:focus-visible) {\n --card-focus-ring-box-shadow: ", ";\n }\n }\n }\n\n /* &:is(a) */\n &[data-as='a'] {\n cursor: pointer;\n box-shadow: var(--card-focus-ring-box-shadow);\n\n &[data-disabled] {\n ", "\n }\n\n &:not([data-disabled]) {\n &[data-pressed] {\n ", "\n }\n\n &[data-selected] {\n ", "\n }\n\n @media (hover: hover) {\n &:not([data-pressed]):not([data-selected]) {\n &:hover {\n ", "\n }\n\n &:active {\n ", "\n }\n }\n }\n\n &:focus {\n --card-focus-ring-box-shadow: ", ";\n }\n\n &:focus:not(:focus-visible) {\n --card-focus-ring-box-shadow: ", ";\n }\n }\n }\n\n ", "\n "])), _colorVarsStyle(base, card.enabled, $checkered), _colorVarsStyle(base, card.disabled, $checkered), _colorVarsStyle(base, card.pressed, $checkered), _colorVarsStyle(base, card.selected, $checkered), _colorVarsStyle(base, card.hovered, $checkered), _colorVarsStyle(base, card.pressed, $checkered), $focusRing ? focusRingStyle({
4685
+ return styled.css(_templateObject3$a || (_templateObject3$a = _taggedTemplateLiteralLoose(["\n ", "\n\n background-color: var(--card-bg-color);\n color: var(--card-fg-color);\n\n /* &:is(button) */\n &[data-as='button'] {\n --card-focus-ring-box-shadow: none;\n\n cursor: default;\n box-shadow: var(--card-focus-ring-box-shadow);\n\n &:disabled {\n ", "\n }\n\n &:not(:disabled) {\n &[data-pressed] {\n ", "\n }\n\n &[data-selected] {\n ", "\n }\n\n @media (hover: hover) {\n &:not([data-pressed]):not([data-selected]) {\n &:hover {\n ", "\n }\n\n &:active {\n ", "\n }\n }\n }\n\n &:focus {\n --card-focus-ring-box-shadow: ", ";\n }\n\n &:focus:not(:focus-visible) {\n --card-focus-ring-box-shadow: ", ";\n }\n }\n }\n\n /* &:is(a) */\n &[data-as='a'] {\n cursor: pointer;\n box-shadow: var(--card-focus-ring-box-shadow);\n\n &[data-disabled] {\n ", "\n }\n\n &:not([data-disabled]) {\n &[data-pressed] {\n ", "\n }\n\n &[data-selected] {\n ", "\n }\n\n @media (hover: hover) {\n &:not([data-pressed]):not([data-selected]) {\n &:hover {\n ", "\n }\n\n &:active {\n ", "\n }\n }\n }\n\n &:focus {\n --card-focus-ring-box-shadow: ", ";\n }\n\n &:focus:not(:focus-visible) {\n --card-focus-ring-box-shadow: ", ";\n }\n }\n }\n\n ", "\n "])), _colorVarsStyle(base, card.enabled, $checkered), _colorVarsStyle(base, card.disabled, $checkered), _colorVarsStyle(base, card.pressed, $checkered), _colorVarsStyle(base, card.selected, $checkered), _colorVarsStyle(base, card.hovered, $checkered), _colorVarsStyle(base, card.pressed, $checkered), $focusRing ? focusRingStyle({
4671
4686
  base: base,
4672
4687
  border: border,
4673
4688
  focusRing: focusRing
@@ -4678,7 +4693,7 @@ function cardColorStyle(props) {
4678
4693
  }) : undefined, $focusRing ? focusRingBorderStyle(border) : undefined, (_theme$sanity$styles = theme.sanity.styles) == null ? void 0 : (_theme$sanity$styles$ = _theme$sanity$styles.card) == null ? void 0 : _theme$sanity$styles$.root);
4679
4694
  }
4680
4695
 
4681
- var _excluded$y = ["__unstable_checkered", "__unstable_focusRing", "as", "border", "borderTop", "borderRight", "borderBottom", "borderLeft", "pressed", "radius", "scheme", "selected", "shadow", "tone"];
4696
+ var _excluded$z = ["__unstable_checkered", "__unstable_focusRing", "as", "border", "borderTop", "borderRight", "borderBottom", "borderLeft", "pressed", "radius", "scheme", "selected", "shadow", "tone"];
4682
4697
  var Root$u = styled__default["default"](Box)(responsiveBorderStyle, responsiveRadiusStyle, responsiveShadowStyle, cardStyle);
4683
4698
  /**
4684
4699
  * @public
@@ -4703,7 +4718,7 @@ var Card = /*#__PURE__*/React.forwardRef(function Card(props, ref) {
4703
4718
  shadow = props.shadow,
4704
4719
  _props$tone = props.tone,
4705
4720
  toneProp = _props$tone === void 0 ? 'default' : _props$tone,
4706
- restProps = _objectWithoutPropertiesLoose(props, _excluded$y);
4721
+ restProps = _objectWithoutPropertiesLoose(props, _excluded$z);
4707
4722
 
4708
4723
  var as = ReactIs.isValidElementType(asProp) ? asProp : 'div';
4709
4724
  var rootTheme = useRootTheme();
@@ -4736,9 +4751,9 @@ var Card = /*#__PURE__*/React.forwardRef(function Card(props, ref) {
4736
4751
  })));
4737
4752
  });
4738
4753
 
4739
- var _templateObject$s, _templateObject2$i;
4754
+ var _templateObject$r, _templateObject2$h;
4740
4755
  function checkboxBaseStyles() {
4741
- return styled.css(_templateObject$s || (_templateObject$s = _taggedTemplateLiteralLoose(["\n position: relative;\n display: inline-block;\n "])));
4756
+ return styled.css(_templateObject$r || (_templateObject$r = _taggedTemplateLiteralLoose(["\n position: relative;\n display: inline-block;\n "])));
4742
4757
  }
4743
4758
  function inputElementStyles(props) {
4744
4759
  var theme = props.theme;
@@ -4747,7 +4762,7 @@ function inputElementStyles(props) {
4747
4762
  focusRing = _theme$sanity.focusRing,
4748
4763
  input = _theme$sanity.input,
4749
4764
  radius = _theme$sanity.radius;
4750
- return styled.css(_templateObject2$i || (_templateObject2$i = _taggedTemplateLiteralLoose(["\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n outline: none;\n opacity: 0;\n z-index: 1;\n padding: 0;\n margin: 0;\n\n & + span {\n position: relative;\n display: block;\n height: ", ";\n width: ", ";\n box-sizing: border-box;\n box-shadow: ", ";\n border-radius: ", ";\n line-height: 1;\n background-color: ", ";\n\n & > svg {\n display: block;\n position: absolute;\n opacity: 0;\n height: 100%;\n width: 100%;\n\n & > path {\n vector-effect: non-scaling-stroke;\n stroke-width: 2 !important;\n }\n }\n }\n\n &:not(:disabled):focus + span {\n box-shadow: ", ";\n }\n\n &:not(:disabled):focus:not(:focus-visible) + span {\n box-shadow: ", ";\n }\n\n &:checked + span > svg:first-child {\n opacity: 1;\n }\n\n &[data-read-only] + span {\n background-color: ", ";\n box-shadow: ", ";\n color: ", ";\n }\n\n &:not([data-read-only]):disabled + span {\n background-color: ", ";\n box-shadow: ", ";\n color: ", ";\n }\n\n &:indeterminate + span > svg:last-child {\n opacity: 1;\n }\n "])), rem(input.checkbox.size), rem(input.checkbox.size), focusRingBorderStyle({
4765
+ return styled.css(_templateObject2$h || (_templateObject2$h = _taggedTemplateLiteralLoose(["\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n outline: none;\n opacity: 0;\n z-index: 1;\n padding: 0;\n margin: 0;\n\n & + span {\n position: relative;\n display: block;\n height: ", ";\n width: ", ";\n box-sizing: border-box;\n box-shadow: ", ";\n border-radius: ", ";\n line-height: 1;\n background-color: ", ";\n\n & > svg {\n display: block;\n position: absolute;\n opacity: 0;\n height: 100%;\n width: 100%;\n\n & > path {\n vector-effect: non-scaling-stroke;\n stroke-width: 2 !important;\n }\n }\n }\n\n &:not(:disabled):focus + span {\n box-shadow: ", ";\n }\n\n &:not(:disabled):focus:not(:focus-visible) + span {\n box-shadow: ", ";\n }\n\n &:checked + span > svg:first-child {\n opacity: 1;\n }\n\n &[data-read-only] + span {\n background-color: ", ";\n box-shadow: ", ";\n color: ", ";\n }\n\n &:not([data-read-only]):disabled + span {\n background-color: ", ";\n box-shadow: ", ";\n color: ", ";\n }\n\n &:indeterminate + span > svg:last-child {\n opacity: 1;\n }\n "])), rem(input.checkbox.size), rem(input.checkbox.size), focusRingBorderStyle({
4751
4766
  color: color["default"].enabled.border,
4752
4767
  width: input.border.width
4753
4768
  }), rem(radius[2]), color["default"].enabled.bg, focusRingStyle({
@@ -4768,7 +4783,7 @@ function inputElementStyles(props) {
4768
4783
  }), color["default"].disabled.fg);
4769
4784
  }
4770
4785
 
4771
- var _excluded$x = ["checked", "className", "disabled", "indeterminate", "customValidity", "readOnly", "style"];
4786
+ var _excluded$y = ["checked", "className", "disabled", "indeterminate", "customValidity", "readOnly", "style"];
4772
4787
  var Root$t = styled__default["default"].div(checkboxBaseStyles);
4773
4788
  var Input$5 = styled__default["default"].input(inputElementStyles);
4774
4789
  /**
@@ -4783,7 +4798,7 @@ var Checkbox = /*#__PURE__*/React.forwardRef(function Checkbox(props, forwardedR
4783
4798
  customValidity = props.customValidity,
4784
4799
  readOnly = props.readOnly,
4785
4800
  style = props.style,
4786
- restProps = _objectWithoutPropertiesLoose(props, _excluded$x);
4801
+ restProps = _objectWithoutPropertiesLoose(props, _excluded$y);
4787
4802
 
4788
4803
  var ref = useForwardedRef(forwardedRef);
4789
4804
  useCustomValidity(ref, customValidity);
@@ -4808,7 +4823,7 @@ var Checkbox = /*#__PURE__*/React.forwardRef(function Checkbox(props, forwardedR
4808
4823
  })), /*#__PURE__*/React__default["default"].createElement("span", null, /*#__PURE__*/React__default["default"].createElement(icons.CheckmarkIcon, null), /*#__PURE__*/React__default["default"].createElement(icons.RemoveIcon, null)));
4809
4824
  });
4810
4825
 
4811
- var _templateObject$r;
4826
+ var _templateObject$q;
4812
4827
 
4813
4828
  function codeSyntaxHighlightingStyle(_ref) {
4814
4829
  var theme = _ref.theme;
@@ -4926,10 +4941,10 @@ function codeSyntaxHighlightingStyle(_ref) {
4926
4941
  }
4927
4942
 
4928
4943
  function codeBaseStyle() {
4929
- return styled.css(_templateObject$r || (_templateObject$r = _taggedTemplateLiteralLoose(["\n color: var(--card-code-fg-color);\n\n & code {\n font-family: inherit;\n\n &.refractor .token {\n ", "\n }\n }\n\n & a {\n color: inherit;\n text-decoration: underline;\n border-radius: 1px;\n }\n\n & [data-sanity-icon] {\n vertical-align: baseline;\n }\n "])), codeSyntaxHighlightingStyle);
4944
+ return styled.css(_templateObject$q || (_templateObject$q = _taggedTemplateLiteralLoose(["\n color: var(--card-code-fg-color);\n\n & code {\n font-family: inherit;\n\n &.refractor .token {\n ", "\n }\n }\n\n & a {\n color: inherit;\n text-decoration: underline;\n border-radius: 1px;\n }\n\n & [data-sanity-icon] {\n vertical-align: baseline;\n }\n "])), codeSyntaxHighlightingStyle);
4930
4945
  }
4931
4946
 
4932
- var _excluded$w = ["children", "language", "size", "weight"];
4947
+ var _excluded$x = ["children", "language", "size", "weight"];
4933
4948
  var Root$s = styled__default["default"].pre(codeBaseStyle, responsiveCodeFontStyle);
4934
4949
  /**
4935
4950
  * @public
@@ -4941,7 +4956,7 @@ var Code = /*#__PURE__*/React.forwardRef(function Code(props, ref) {
4941
4956
  _props$size = props.size,
4942
4957
  size = _props$size === void 0 ? 2 : _props$size,
4943
4958
  weight = props.weight,
4944
- restProps = _objectWithoutPropertiesLoose(props, _excluded$w);
4959
+ restProps = _objectWithoutPropertiesLoose(props, _excluded$x);
4945
4960
 
4946
4961
  var language = typeof languageProp === 'string' ? languageProp : undefined;
4947
4962
  var registered = language ? Refractor__default["default"].hasLanguage(language) : false;
@@ -4977,7 +4992,7 @@ function responsiveContainerWidthStyle(props) {
4977
4992
  });
4978
4993
  }
4979
4994
 
4980
- var _excluded$v = ["as", "width"];
4995
+ var _excluded$w = ["as", "width"];
4981
4996
  var Root$r = styled__default["default"](Box)(containerBaseStyle, responsiveContainerWidthStyle);
4982
4997
  /**
4983
4998
  * @public
@@ -4987,7 +5002,7 @@ var Container = /*#__PURE__*/React.forwardRef(function Container(props, ref) {
4987
5002
  var as = props.as,
4988
5003
  _props$width = props.width,
4989
5004
  width = _props$width === void 0 ? 2 : _props$width,
4990
- restProps = _objectWithoutPropertiesLoose(props, _excluded$v);
5005
+ restProps = _objectWithoutPropertiesLoose(props, _excluded$w);
4991
5006
 
4992
5007
  return /*#__PURE__*/React__default["default"].createElement(Root$r, _extends({
4993
5008
  "data-ui": "Container"
@@ -4998,7 +5013,7 @@ var Container = /*#__PURE__*/React.forwardRef(function Container(props, ref) {
4998
5013
  }));
4999
5014
  });
5000
5015
 
5001
- var _excluded$u = ["as", "autoRows", "autoCols", "autoFlow", "columns", "gap", "gapX", "gapY", "rows", "children"];
5016
+ var _excluded$v = ["as", "autoRows", "autoCols", "autoFlow", "columns", "gap", "gapX", "gapY", "rows", "children"];
5002
5017
  var Root$q = styled__default["default"](Box)(responsiveGridStyle);
5003
5018
  /**
5004
5019
  * @public
@@ -5015,7 +5030,7 @@ var Grid = /*#__PURE__*/React.forwardRef(function Grid(props, ref) {
5015
5030
  gapY = props.gapY,
5016
5031
  rows = props.rows,
5017
5032
  children = props.children,
5018
- restProps = _objectWithoutPropertiesLoose(props, _excluded$u);
5033
+ restProps = _objectWithoutPropertiesLoose(props, _excluded$v);
5019
5034
 
5020
5035
  return /*#__PURE__*/React__default["default"].createElement(Root$q, _extends({
5021
5036
  "data-as": typeof as === 'string' ? as : undefined,
@@ -5034,19 +5049,19 @@ var Grid = /*#__PURE__*/React.forwardRef(function Grid(props, ref) {
5034
5049
  }), children);
5035
5050
  });
5036
5051
 
5037
- var _templateObject$q, _templateObject2$h, _templateObject3$a;
5052
+ var _templateObject$p, _templateObject2$g, _templateObject3$9;
5038
5053
  function headingBaseStyle(props) {
5039
5054
  var $accent = props.$accent,
5040
5055
  $muted = props.$muted,
5041
5056
  theme = props.theme;
5042
- return styled.css(_templateObject$q || (_templateObject$q = _taggedTemplateLiteralLoose(["\n ", "\n\n ", "\n\n & code {\n font-family: ", ";\n border-radius: 1px;\n }\n\n & a {\n text-decoration: none;\n border-radius: 1px;\n color: var(--card-link-color);\n outline: none;\n\n @media (hover: hover) {\n &:hover {\n text-decoration: underline;\n }\n }\n\n &:focus {\n box-shadow: 0 0 0 1px var(--card-bg-color), 0 0 0 3px var(--card-focus-ring-color);\n }\n\n &:focus:not(:focus-visible) {\n box-shadow: none;\n }\n }\n\n & [data-sanity-icon] {\n vertical-align: baseline;\n }\n "])), $accent && styled.css(_templateObject2$h || (_templateObject2$h = _taggedTemplateLiteralLoose(["\n color: var(--card-accent-fg-color);\n "]))), $muted && styled.css(_templateObject3$a || (_templateObject3$a = _taggedTemplateLiteralLoose(["\n color: var(--card-muted-fg-color);\n "]))), theme.sanity.fonts.code.family);
5057
+ return styled.css(_templateObject$p || (_templateObject$p = _taggedTemplateLiteralLoose(["\n ", "\n\n ", "\n\n & code {\n font-family: ", ";\n border-radius: 1px;\n }\n\n & a {\n text-decoration: none;\n border-radius: 1px;\n color: var(--card-link-color);\n outline: none;\n\n @media (hover: hover) {\n &:hover {\n text-decoration: underline;\n }\n }\n\n &:focus {\n box-shadow: 0 0 0 1px var(--card-bg-color), 0 0 0 3px var(--card-focus-ring-color);\n }\n\n &:focus:not(:focus-visible) {\n box-shadow: none;\n }\n }\n\n & [data-sanity-icon] {\n vertical-align: baseline;\n }\n "])), $accent && styled.css(_templateObject2$g || (_templateObject2$g = _taggedTemplateLiteralLoose(["\n color: var(--card-accent-fg-color);\n "]))), $muted && styled.css(_templateObject3$9 || (_templateObject3$9 = _taggedTemplateLiteralLoose(["\n color: var(--card-muted-fg-color);\n "]))), theme.sanity.fonts.code.family);
5043
5058
  }
5044
5059
 
5045
- var _excluded$t = ["accent", "align", "children", "muted", "size", "textOverflow", "weight"];
5060
+ var _excluded$u = ["accent", "align", "children", "muted", "size", "textOverflow", "weight"];
5046
5061
 
5047
- var _templateObject$p;
5062
+ var _templateObject$o;
5048
5063
  var Root$p = styled__default["default"].div(headingBaseStyle, responsiveTextAlignStyle, responsiveHeadingFont);
5049
- var SpanWithTextOverflow = styled__default["default"].span(_templateObject$p || (_templateObject$p = _taggedTemplateLiteralLoose(["\n display: block;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n"])));
5064
+ var SpanWithTextOverflow = styled__default["default"].span(_templateObject$o || (_templateObject$o = _taggedTemplateLiteralLoose(["\n display: block;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n"])));
5050
5065
  /**
5051
5066
  * @public
5052
5067
  */
@@ -5062,7 +5077,7 @@ var Heading = /*#__PURE__*/React.forwardRef(function Heading(props, ref) {
5062
5077
  size = _props$size === void 0 ? 2 : _props$size,
5063
5078
  textOverflow = props.textOverflow,
5064
5079
  weight = props.weight,
5065
- restProps = _objectWithoutPropertiesLoose(props, _excluded$t);
5080
+ restProps = _objectWithoutPropertiesLoose(props, _excluded$u);
5066
5081
 
5067
5082
  var children = childrenProp;
5068
5083
 
@@ -5107,7 +5122,7 @@ function inlineSpaceStyle(props) {
5107
5122
  });
5108
5123
  }
5109
5124
 
5110
- var _excluded$s = ["as", "children", "space"];
5125
+ var _excluded$t = ["as", "children", "space"];
5111
5126
  var Root$o = styled__default["default"](Box)(inlineBaseStyle, inlineSpaceStyle);
5112
5127
  /**
5113
5128
  * @public
@@ -5117,7 +5132,7 @@ var Inline = /*#__PURE__*/React.forwardRef(function Inline(props, ref) {
5117
5132
  var as = props.as,
5118
5133
  childrenProp = props.children,
5119
5134
  space = props.space,
5120
- restProps = _objectWithoutPropertiesLoose(props, _excluded$s);
5135
+ restProps = _objectWithoutPropertiesLoose(props, _excluded$t);
5121
5136
 
5122
5137
  var children = React.useMemo(function () {
5123
5138
  return childrenToElementArray(childrenProp).filter(Boolean).map(function (child, idx) {
@@ -5135,12 +5150,12 @@ var Inline = /*#__PURE__*/React.forwardRef(function Inline(props, ref) {
5135
5150
  }), children);
5136
5151
  });
5137
5152
 
5138
- var _excluded$r = ["children", "fontSize", "padding", "radius"];
5153
+ var _excluded$s = ["children", "fontSize", "padding", "radius"];
5139
5154
 
5140
- var _templateObject$o;
5155
+ var _templateObject$n;
5141
5156
 
5142
5157
  function kbdStyle() {
5143
- return styled.css(_templateObject$o || (_templateObject$o = _taggedTemplateLiteralLoose(["\n background: var(--card-bg-color);\n font: inherit;\n box-shadow: inset 0 0 0 1px var(--card-hairline-hard-color);\n\n &:not([hidden]) {\n display: inline-block;\n }\n "])));
5158
+ return styled.css(_templateObject$n || (_templateObject$n = _taggedTemplateLiteralLoose(["\n background: var(--card-bg-color);\n font: inherit;\n box-shadow: inset 0 0 0 1px var(--card-hairline-hard-color);\n\n &:not([hidden]) {\n display: inline-block;\n }\n "])));
5144
5159
  }
5145
5160
 
5146
5161
  var Root$n = styled__default["default"].kbd(responsiveRadiusStyle, kbdStyle);
@@ -5156,7 +5171,7 @@ var KBD = /*#__PURE__*/React.forwardRef(function KBD(props, ref) {
5156
5171
  padding = _props$padding === void 0 ? 1 : _props$padding,
5157
5172
  _props$radius = props.radius,
5158
5173
  radius = _props$radius === void 0 ? 2 : _props$radius,
5159
- restProps = _objectWithoutPropertiesLoose(props, _excluded$r);
5174
+ restProps = _objectWithoutPropertiesLoose(props, _excluded$s);
5160
5175
 
5161
5176
  return /*#__PURE__*/React__default["default"].createElement(Root$n, _extends({
5162
5177
  "data-ui": "KBD"
@@ -5242,7 +5257,7 @@ function findMinBreakpoints(media, width) {
5242
5257
  return ret;
5243
5258
  }
5244
5259
 
5245
- var _excluded$q = ["children", "media"];
5260
+ var _excluded$r = ["children", "media"];
5246
5261
  /**
5247
5262
  * DO NOT USE IN PRODUCTION.
5248
5263
  * @beta
@@ -5254,7 +5269,7 @@ var ElementQuery = /*#__PURE__*/React.forwardRef(function ElementQuery(props, re
5254
5269
  var children = props.children,
5255
5270
  _props$media = props.media,
5256
5271
  media = _props$media === void 0 ? theme.sanity.media : _props$media,
5257
- restProps = _objectWithoutPropertiesLoose(props, _excluded$q);
5272
+ restProps = _objectWithoutPropertiesLoose(props, _excluded$r);
5258
5273
 
5259
5274
  var forwardedRef = useForwardedRef(ref);
5260
5275
 
@@ -5411,16 +5426,16 @@ function LayerProvider(props) {
5411
5426
  }, children);
5412
5427
  }
5413
5428
 
5414
- var _excluded$p = ["children", "style"],
5429
+ var _excluded$q = ["children", "style"],
5415
5430
  _excluded2$1 = ["children", "zOffset"];
5416
5431
 
5417
- var _templateObject$n;
5418
- var Root$m = styled__default["default"].div(_templateObject$n || (_templateObject$n = _taggedTemplateLiteralLoose(["\n position: relative;\n"])));
5432
+ var _templateObject$m;
5433
+ var Root$m = styled__default["default"].div(_templateObject$m || (_templateObject$m = _taggedTemplateLiteralLoose(["\n position: relative;\n"])));
5419
5434
  var LayerChildren = /*#__PURE__*/React.forwardRef(function LayerChildren(props, ref) {
5420
5435
  var children = props.children,
5421
5436
  _props$style = props.style,
5422
5437
  style = _props$style === void 0 ? EMPTY_RECORD : _props$style,
5423
- restProps = _objectWithoutPropertiesLoose(props, _excluded$p);
5438
+ restProps = _objectWithoutPropertiesLoose(props, _excluded$q);
5424
5439
 
5425
5440
  var _useLayer = useLayer(),
5426
5441
  zIndex = _useLayer.zIndex;
@@ -5568,8 +5583,8 @@ function PortalProvider(props) {
5568
5583
  }, children);
5569
5584
  }
5570
5585
 
5571
- var _templateObject$m;
5572
- var Root$l = styled__default["default"].div(_templateObject$m || (_templateObject$m = _taggedTemplateLiteralLoose(["\n display: block;\n width: 0;\n height: 0;\n position: absolute;\n overflow: hidden;\n"])));
5586
+ var _templateObject$l;
5587
+ var Root$l = styled__default["default"].div(_templateObject$l || (_templateObject$l = _taggedTemplateLiteralLoose(["\n display: block;\n width: 0;\n height: 0;\n position: absolute;\n overflow: hidden;\n"])));
5573
5588
  /**
5574
5589
  * @public
5575
5590
  */
@@ -5751,11 +5766,11 @@ function _isScrollable(el) {
5751
5766
  return style.overflowX.includes('auto') || style.overflowX.includes('scroll') || style.overflowY.includes('auto') || style.overflowY.includes('scroll');
5752
5767
  }
5753
5768
 
5754
- var _excluded$o = ["as", "gap", "getItemKey", "items", "onChange", "renderItem"];
5769
+ var _excluded$p = ["as", "gap", "getItemKey", "items", "onChange", "renderItem"];
5755
5770
 
5756
- var _templateObject$l, _templateObject2$g;
5757
- var Root$k = styled__default["default"].div(_templateObject$l || (_templateObject$l = _taggedTemplateLiteralLoose(["\n position: relative;\n"])));
5758
- var ItemWrapper = styled__default["default"].div(_templateObject2$g || (_templateObject2$g = _taggedTemplateLiteralLoose(["\n position: absolute;\n left: 0;\n right: 0;\n"])));
5771
+ var _templateObject$k, _templateObject2$f;
5772
+ var Root$k = styled__default["default"].div(_templateObject$k || (_templateObject$k = _taggedTemplateLiteralLoose(["\n position: relative;\n"])));
5773
+ var ItemWrapper = styled__default["default"].div(_templateObject2$f || (_templateObject2$f = _taggedTemplateLiteralLoose(["\n position: absolute;\n left: 0;\n right: 0;\n"])));
5759
5774
  /**
5760
5775
  * @beta
5761
5776
  */
@@ -5770,7 +5785,7 @@ var VirtualList = /*#__PURE__*/React.forwardRef(function VirtualList(props, ref)
5770
5785
  items = _props$items === void 0 ? [] : _props$items,
5771
5786
  onChange = props.onChange,
5772
5787
  renderItem = props.renderItem,
5773
- restProps = _objectWithoutPropertiesLoose(props, _excluded$o);
5788
+ restProps = _objectWithoutPropertiesLoose(props, _excluded$p);
5774
5789
 
5775
5790
  var space = useTheme().sanity.space;
5776
5791
  var forwardedRef = useForwardedRef(ref);
@@ -5899,13 +5914,13 @@ var VirtualList = /*#__PURE__*/React.forwardRef(function VirtualList(props, ref)
5899
5914
  }, children));
5900
5915
  });
5901
5916
 
5902
- var _templateObject$k, _templateObject2$f, _templateObject3$9;
5903
- var Root$j = styled__default["default"].div(_templateObject$k || (_templateObject$k = _taggedTemplateLiteralLoose(["\n position: absolute;\n pointer-events: none;\n width: 27px;\n height: 27px;\n fill: none;\n\n :empty + & {\n display: none;\n }\n\n & > svg {\n display: block;\n transform-origin: 13.5px 13.5px;\n }\n\n [data-popper-placement^='top'] > div > & {\n bottom: -27px;\n }\n\n [data-popper-placement^='right'] > div > & {\n left: -27px;\n\n & > svg {\n transform: rotate(90deg);\n }\n }\n\n [data-popper-placement^='left'] > div > & {\n right: -27px;\n\n & > svg {\n transform: rotate(-90deg);\n }\n }\n\n [data-popper-placement^='bottom'] > div > & {\n top: -27px;\n\n & > svg {\n transform: rotate(180deg);\n }\n }\n"])));
5904
- var BorderPath = styled__default["default"].path(_templateObject2$f || (_templateObject2$f = _taggedTemplateLiteralLoose(["\n fill: var(--card-shadow-outline-color);\n"])));
5905
- var ShapePath = styled__default["default"].path(_templateObject3$9 || (_templateObject3$9 = _taggedTemplateLiteralLoose(["\n fill: var(--card-bg-color);\n"])));
5917
+ var _templateObject$j, _templateObject2$e, _templateObject3$8;
5918
+ var Root$j = styled__default["default"].div(_templateObject$j || (_templateObject$j = _taggedTemplateLiteralLoose(["\n position: absolute;\n pointer-events: none;\n width: 27px;\n height: 27px;\n fill: none;\n\n :empty + & {\n display: none;\n }\n\n & > svg {\n display: block;\n transform-origin: 13.5px 13.5px;\n }\n\n [data-placement^='top'] > & {\n bottom: -27px;\n }\n\n [data-placement^='right'] > & {\n left: -27px;\n\n & > svg {\n transform: rotate(90deg);\n }\n }\n\n [data-placement^='left'] > & {\n right: -27px;\n\n & > svg {\n transform: rotate(-90deg);\n }\n }\n\n [data-placement^='bottom'] > & {\n top: -27px;\n\n & > svg {\n transform: rotate(180deg);\n }\n }\n"])));
5919
+ var BorderPath = styled__default["default"].path(_templateObject2$e || (_templateObject2$e = _taggedTemplateLiteralLoose(["\n fill: var(--card-shadow-outline-color);\n"])));
5920
+ var ShapePath = styled__default["default"].path(_templateObject3$8 || (_templateObject3$8 = _taggedTemplateLiteralLoose(["\n fill: var(--card-bg-color);\n"])));
5906
5921
  var PopoverArrow = /*#__PURE__*/React.forwardRef(function PopoverArrow(props, ref) {
5907
5922
  return /*#__PURE__*/React__default["default"].createElement(Root$j, _extends({
5908
- "data-ui": "PopoverArrow"
5923
+ "data-ui": "Popover__arrow"
5909
5924
  }, props, {
5910
5925
  ref: ref
5911
5926
  }), /*#__PURE__*/React__default["default"].createElement("svg", {
@@ -5921,317 +5936,309 @@ var PopoverArrow = /*#__PURE__*/React.forwardRef(function PopoverArrow(props, re
5921
5936
  })));
5922
5937
  });
5923
5938
 
5924
- /*
5925
-
5926
- The order of popper phases:
5939
+ var _excluded$o = ["__unstable_margins", "arrow", "arrowRef", "arrowX", "arrowY", "availableHeight", "availableWidth", "boundaryWidth", "children", "padding", "placement", "overflow", "radius", "referenceWidth", "scheme", "shadow", "strategy", "tone", "width", "x", "y"];
5927
5940
 
5928
- - beforeRead
5929
- - read
5930
- - afterRead
5931
- - beforeMain
5932
- - main
5933
- - afterMain
5934
- - beforeWrite
5935
- - write
5936
- - afterWrite
5941
+ function popoverCardStyle(props) {
5942
+ var $boundaryWidth = props.$boundaryWidth;
5943
+ return {
5944
+ maxWidth: $boundaryWidth ? $boundaryWidth - 16 + "px" : 'calc(100% - 16px)'
5945
+ };
5946
+ }
5937
5947
 
5938
- */
5948
+ var Root$i = /*#__PURE__*/React.memo(styled__default["default"](Card)(popoverCardStyle));
5949
+ /**
5950
+ * @internal
5951
+ */
5939
5952
 
5940
- function getPopoverModifiers(props) {
5941
- var allowedAutoPlacements = props.allowedAutoPlacements,
5953
+ var PopoverCard = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function PopoverCard(props, ref) {
5954
+ var marginsProp = props.__unstable_margins,
5942
5955
  arrow = props.arrow,
5943
- arrowElement = props.arrowElement,
5944
- boundaryElement = props.boundaryElement,
5945
- constrainSize = props.constrainSize,
5946
- distance = props.distance,
5947
- fallbackPlacements = props.fallbackPlacements,
5948
- margins = props.margins,
5949
- matchReferenceWidth = props.matchReferenceWidth,
5950
- open = props.open,
5951
- preventOverflow = props.preventOverflow,
5952
- skidding = props.skidding,
5953
- tether = props.tether,
5954
- tetherOffset = props.tetherOffset; // NOTE: For later viewers:
5955
- // Prior to adding this change, the popover would get `maxWidth: 0` the 2nd time it
5956
- // was opened, when used with `constrainSize`. I was looking for a way to "reset"
5957
- // the size of the popover as measured by Popper.js, and this seems to be a workaround.
5958
-
5959
- if (!open) {
5960
- return [];
5961
- }
5956
+ arrowRef = props.arrowRef,
5957
+ arrowX = props.arrowX,
5958
+ arrowY = props.arrowY,
5959
+ availableHeight = props.availableHeight,
5960
+ availableWidth = props.availableWidth,
5961
+ boundaryWidth = props.boundaryWidth,
5962
+ children = props.children,
5963
+ padding = props.padding,
5964
+ placement = props.placement,
5965
+ overflow = props.overflow,
5966
+ radius = props.radius,
5967
+ referenceWidthProp = props.referenceWidth,
5968
+ scheme = props.scheme,
5969
+ shadow = props.shadow,
5970
+ strategy = props.strategy,
5971
+ tone = props.tone,
5972
+ width = props.width,
5973
+ xProp = props.x,
5974
+ yProp = props.y,
5975
+ restProps = _objectWithoutPropertiesLoose(props, _excluded$o);
5962
5976
 
5963
- var detectOverflowOptions = {
5964
- altAxis: !constrainSize,
5965
- boundary: boundaryElement || undefined,
5966
- padding: 8,
5967
- tether: tether,
5968
- tetherOffset: tetherOffset
5969
- };
5970
- return [constrainSize && _extends({}, maxSizeModifier__default["default"], {
5971
- options: detectOverflowOptions
5972
- }), constrainSize && {
5973
- name: 'applyMaxSize',
5974
- enabled: true,
5975
- phase: 'beforeWrite',
5976
- requires: ['maxSize'],
5977
- fn: function fn(_ref) {
5978
- var state = _ref.state;
5979
- var _state$modifiersData$ = state.modifiersData.maxSize,
5980
- width = _state$modifiersData$.width,
5981
- height = _state$modifiersData$.height;
5982
- state.styles.popper = _extends({}, state.styles.popper, {
5983
- maxWidth: width + "px",
5984
- maxHeight: height + "px"
5985
- });
5986
- }
5987
- }, arrow && {
5988
- name: 'arrow',
5989
- options: {
5990
- element: arrowElement,
5991
- padding: 4
5992
- }
5993
- }, (constrainSize || preventOverflow) && {
5994
- name: 'preventOverflow',
5995
- options: detectOverflowOptions
5996
- }, {
5997
- name: 'offset',
5998
- options: {
5999
- offset: [skidding, distance]
6000
- }
6001
- }, margins && {
6002
- name: 'margins',
6003
- enabled: true,
6004
- phase: 'beforeRead',
6005
- fn: function fn(_ref2) {
6006
- var state = _ref2.state;
6007
- var rects = state.rects;
6008
-
6009
- if (rects.reference) {
6010
- rects.reference.x += margins[3];
6011
- rects.reference.y += margins[1];
6012
- rects.reference.width -= margins[1] + margins[3];
6013
- rects.reference.height -= margins[0] + margins[2];
6014
- }
6015
- }
6016
- }, {
6017
- name: 'flip',
6018
- options: {
6019
- allowedAutoPlacements: allowedAutoPlacements,
6020
- boundary: boundaryElement || undefined,
6021
- fallbackPlacements: fallbackPlacements,
6022
- padding: 8
6023
- }
6024
- }, matchReferenceWidth && {
6025
- name: 'matchWidth',
6026
- enabled: true,
6027
- phase: 'beforeWrite',
6028
- requires: ['computeStyles'],
6029
- fn: function fn(_ref3) {
6030
- var state = _ref3.state;
6031
- var width = state.rects.reference.width;
6032
- state.styles.popper.width = width + "px";
6033
- },
6034
- effect: function effect(_ref4) {
6035
- var state = _ref4.state;
6036
- var refElement = state.elements.reference;
5977
+ var _useLayer = useLayer(),
5978
+ zIndex = _useLayer.zIndex; // top right bottom left
6037
5979
 
6038
- if (refElement instanceof HTMLElement) {
6039
- state.elements.popper.style.width = refElement.offsetWidth - (margins ? margins[1] + margins[3] : 0) + "px";
6040
- }
6041
- }
6042
- }].filter(Boolean);
6043
- }
6044
5980
 
6045
- function usePopoverModifiers(props) {
6046
- var allowedAutoPlacements = props.allowedAutoPlacements,
6047
- arrow = props.arrow,
6048
- arrowElement = props.arrowElement,
6049
- boundaryElement = props.boundaryElement,
6050
- constrainSize = props.constrainSize,
6051
- distance = props.distance,
6052
- fallbackPlacements = props.fallbackPlacements,
6053
- margins = props.margins,
6054
- matchReferenceWidth = props.matchReferenceWidth,
6055
- open = props.open,
6056
- preventOverflow = props.preventOverflow,
6057
- skidding = props.skidding,
6058
- tether = props.tether,
6059
- tetherOffset = props.tetherOffset;
6060
- return React.useMemo(function () {
6061
- return getPopoverModifiers({
6062
- allowedAutoPlacements: allowedAutoPlacements,
6063
- arrow: arrow,
6064
- arrowElement: arrowElement,
6065
- boundaryElement: boundaryElement,
6066
- constrainSize: constrainSize,
6067
- distance: distance,
6068
- fallbackPlacements: fallbackPlacements,
6069
- margins: margins,
6070
- matchReferenceWidth: matchReferenceWidth,
6071
- open: open,
6072
- preventOverflow: preventOverflow,
6073
- skidding: skidding,
6074
- tether: tether,
6075
- tetherOffset: tetherOffset
6076
- });
6077
- }, [allowedAutoPlacements, arrow, arrowElement, boundaryElement, constrainSize, distance, fallbackPlacements, margins, matchReferenceWidth, open, preventOverflow, skidding, tether, tetherOffset]);
6078
- }
5981
+ var margins = React.useMemo(function () {
5982
+ return marginsProp || [0, 0, 0, 0];
5983
+ }, [marginsProp]); // translate according to margins
6079
5984
 
6080
- var _excluded$n = ["__unstable_margins", "allowedAutoPlacements", "arrow", "boundaryElement", "children", "content", "constrainSize", "disabled", "fallbackPlacements", "open", "padding", "placement", "portal", "preventOverflow", "radius", "referenceElement", "matchReferenceWidth", "shadow", "scheme", "style", "tether", "tetherOffset", "tone", "width", "zOffset"];
5985
+ var referenceWidth = referenceWidthProp ? referenceWidthProp - margins[1] - margins[3] : undefined;
5986
+ var x = (xProp != null ? xProp : 0) + margins[3];
5987
+ var y = (yProp != null ? yProp : 0) + margins[0];
5988
+ var maxWidth = availableWidth ? Math.min(availableWidth - 8, referenceWidth || Infinity) : undefined;
5989
+ var rootStyle = React.useMemo(function () {
5990
+ return {
5991
+ position: strategy,
5992
+ top: y,
5993
+ left: x,
5994
+ zIndex: zIndex,
5995
+ width: referenceWidth,
5996
+ maxWidth: referenceWidth ? undefined : maxWidth
5997
+ };
5998
+ }, [referenceWidth, maxWidth, strategy, x, y, zIndex]);
5999
+ var wrapperStyle = React.useMemo(function () {
6000
+ return {
6001
+ minHeight: 25,
6002
+ maxHeight: availableHeight ? availableHeight - 8 : undefined
6003
+ };
6004
+ }, [availableHeight]);
6005
+ var staticSide = placement && FLOATING_STATIC_SIDES[placement.split('-')[0]];
6006
+ var arrowStyle = React.useMemo(function () {
6007
+ var style = {
6008
+ left: arrowX !== null ? arrowX : undefined,
6009
+ top: arrowY !== null ? arrowY : undefined,
6010
+ right: undefined,
6011
+ bottom: undefined
6012
+ };
6013
+ if (staticSide) style[staticSide] = -27;
6014
+ return style;
6015
+ }, [arrowX, arrowY, staticSide]);
6016
+ return /*#__PURE__*/React__default["default"].createElement(Root$i, _extends({}, restProps, {
6017
+ "$boundaryWidth": boundaryWidth,
6018
+ "data-placement": placement,
6019
+ "data-ui": "Popover",
6020
+ radius: radius,
6021
+ ref: ref,
6022
+ scheme: scheme,
6023
+ shadow: shadow,
6024
+ style: rootStyle,
6025
+ tone: tone,
6026
+ "$width": width
6027
+ }), /*#__PURE__*/React__default["default"].createElement(Box, {
6028
+ "data-ui": "Popover__wrapper",
6029
+ overflow: overflow,
6030
+ padding: padding,
6031
+ sizing: "border",
6032
+ style: wrapperStyle
6033
+ }, children), arrow && /*#__PURE__*/React__default["default"].createElement(PopoverArrow, {
6034
+ ref: arrowRef,
6035
+ style: arrowStyle
6036
+ }));
6037
+ }));
6038
+ PopoverCard.displayName = 'PopoverCard';
6081
6039
 
6082
- var _templateObject$j, _templateObject2$e, _templateObject3$8;
6083
- var Root$i = styled__default["default"](Layer)(function (_ref) {
6084
- var $preventOverflow = _ref.$preventOverflow;
6085
- return styled.css(_templateObject$j || (_templateObject$j = _taggedTemplateLiteralLoose(["\n pointer-events: none;\n display: flex;\n flex-direction: column;\n max-width: calc(100% - 16px);\n\n & > * {\n min-height: 0;\n }\n\n /* Hide the popover when the reference element is out of bounds */\n ", "\n "])), $preventOverflow && styled.css(_templateObject2$e || (_templateObject2$e = _taggedTemplateLiteralLoose(["\n &[data-popper-reference-hidden='true'] {\n display: none;\n }\n "]))));
6086
- });
6087
- var PopoverCard = styled__default["default"](Card)(function (_ref2) {
6088
- var $constrainSize = _ref2.$constrainSize;
6089
- return styled.css(_templateObject3$8 || (_templateObject3$8 = _taggedTemplateLiteralLoose(["\n flex: 1;\n max-height: ", ";\n pointer-events: all;\n\n && {\n display: flex;\n }\n\n flex-direction: column;\n\n & > * {\n min-height: 0;\n }\n\n ", "\n "])), $constrainSize && '100%', responsiveContainerWidthStyle);
6090
- });
6091
- /**
6092
- * @public
6093
- */
6040
+ var _excluded$n = ["__unstable_margins", "allowedAutoPlacements", "arrow", "boundaryElement", "children", "constrainSize", "content", "disabled", "fallbackPlacements", "matchReferenceWidth", "open", "overflow", "padding", "placement", "portal", "preventOverflow", "radius", "referenceElement", "scheme", "shadow", "tether", "tetherOffset", "tone", "width", "zOffset"];
6094
6041
 
6095
- var Popover = /*#__PURE__*/React.forwardRef(function Popover(props, ref) {
6096
- var _theme$sanity$layer;
6042
+ function size(scope) {
6043
+ return reactDom.size({
6044
+ apply: function apply(args) {
6045
+ if (scope.constrainSize) {
6046
+ scope.setAvailableWidth(args.availableWidth);
6047
+ scope.setAvailableHeight(args.availableHeight);
6048
+ }
6049
+
6050
+ if (scope.matchReferenceWidth) {
6051
+ scope.setReferenceWidth(args.rects.reference.width);
6052
+ }
6053
+ },
6054
+ boundary: scope.boundaryElement || undefined
6055
+ });
6056
+ }
6057
+
6058
+ var Popover = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function Popover(props, ref) {
6059
+ var _theme$sanity$layer, _useElementSize, _middlewareData$arrow, _middlewareData$arrow2;
6097
6060
 
6098
- var boundaryElementContext = useBoundaryElement();
6099
6061
  var theme = useTheme();
6062
+ var boundaryElementContext = useBoundaryElement();
6100
6063
 
6101
6064
  var margins = props.__unstable_margins,
6102
- allowedAutoPlacements = props.allowedAutoPlacements,
6103
6065
  _props$arrow = props.arrow,
6104
- arrow = _props$arrow === void 0 ? true : _props$arrow,
6066
+ arrowProp = _props$arrow === void 0 ? true : _props$arrow,
6105
6067
  _props$boundaryElemen = props.boundaryElement,
6106
- boundaryElementProp = _props$boundaryElemen === void 0 ? boundaryElementContext.element : _props$boundaryElemen,
6107
- child = props.children,
6068
+ boundaryElement = _props$boundaryElemen === void 0 ? boundaryElementContext.element : _props$boundaryElemen,
6069
+ childProp = props.children,
6070
+ _props$constrainSize = props.constrainSize,
6071
+ constrainSize = _props$constrainSize === void 0 ? false : _props$constrainSize,
6108
6072
  content = props.content,
6109
- constrainSize = props.constrainSize,
6110
6073
  disabled = props.disabled,
6111
6074
  fallbackPlacements = props.fallbackPlacements,
6112
- _props$open = props.open,
6113
- open = _props$open === void 0 ? false : _props$open,
6114
- padding = props.padding,
6075
+ matchReferenceWidthProp = props.matchReferenceWidth,
6076
+ open = props.open,
6077
+ _props$overflow = props.overflow,
6078
+ overflow = _props$overflow === void 0 ? props.constrainSize ? 'auto' : undefined : _props$overflow,
6079
+ paddingProp = props.padding,
6115
6080
  _props$placement = props.placement,
6116
- placement = _props$placement === void 0 ? 'bottom' : _props$placement,
6117
- _props$portal = props.portal,
6118
- portalProp = _props$portal === void 0 ? false : _props$portal,
6119
- preventOverflow = props.preventOverflow,
6081
+ placementProp = _props$placement === void 0 ? 'bottom' : _props$placement,
6082
+ portal = props.portal,
6083
+ _props$preventOverflo = props.preventOverflow,
6084
+ preventOverflow = _props$preventOverflo === void 0 ? true : _props$preventOverflo,
6120
6085
  _props$radius = props.radius,
6121
- radius = _props$radius === void 0 ? 3 : _props$radius,
6122
- referenceElementProp = props.referenceElement,
6123
- matchReferenceWidth = props.matchReferenceWidth,
6124
- _props$shadow = props.shadow,
6125
- shadow = _props$shadow === void 0 ? 3 : _props$shadow,
6086
+ radiusProp = _props$radius === void 0 ? 3 : _props$radius,
6087
+ referenceElement = props.referenceElement,
6126
6088
  scheme = props.scheme,
6127
- _props$style = props.style,
6128
- style = _props$style === void 0 ? EMPTY_RECORD : _props$style,
6129
- tether = props.tether,
6130
- tetherOffset = props.tetherOffset,
6089
+ _props$shadow = props.shadow,
6090
+ shadowProp = _props$shadow === void 0 ? 3 : _props$shadow,
6131
6091
  _props$tone = props.tone,
6132
6092
  tone = _props$tone === void 0 ? 'inherit' : _props$tone,
6133
6093
  _props$width = props.width,
6134
- widthProp = _props$width === void 0 ? 0 : _props$width,
6094
+ widthProp = _props$width === void 0 ? undefined : _props$width,
6135
6095
  _props$zOffset = props.zOffset,
6136
- zOffset = _props$zOffset === void 0 ? (_theme$sanity$layer = theme.sanity.layer) == null ? void 0 : _theme$sanity$layer.popover.zOffset : _props$zOffset,
6096
+ zOffsetProp = _props$zOffset === void 0 ? (_theme$sanity$layer = theme.sanity.layer) == null ? void 0 : _theme$sanity$layer.popover.zOffset : _props$zOffset,
6137
6097
  restProps = _objectWithoutPropertiesLoose(props, _excluded$n);
6138
6098
 
6099
+ var boundarySize = (_useElementSize = useElementSize(boundaryElement)) == null ? void 0 : _useElementSize.border;
6100
+ var padding = useArrayProp(paddingProp);
6101
+ var radius = useArrayProp(radiusProp);
6102
+ var shadow = useArrayProp(shadowProp);
6103
+ var width = useArrayProp(widthProp);
6104
+ var zOffset = useArrayProp(zOffsetProp);
6105
+
6106
+ var _useState = React.useState(undefined),
6107
+ availableWidth = _useState[0],
6108
+ setAvailableWidth = _useState[1];
6109
+
6110
+ var _useState2 = React.useState(undefined),
6111
+ availableHeight = _useState2[0],
6112
+ setAvailableHeight = _useState2[1];
6113
+
6114
+ var _useState3 = React.useState(undefined),
6115
+ referenceWidth = _useState3[0],
6116
+ setReferenceWidth = _useState3[1];
6117
+
6139
6118
  var forwardedRef = useForwardedRef(ref);
6140
- var portal = usePortal();
6119
+ var arrowRef = React.useRef(null);
6120
+ var rootBoundary = 'viewport';
6121
+ var middleware = React.useMemo(function () {
6122
+ var ret = []; // Flip the floating element when leaving the boundary box
6141
6123
 
6142
- var _useState = React.useState(null),
6143
- referenceElement = _useState[0],
6144
- setReferenceElement = _useState[1];
6124
+ if (constrainSize || preventOverflow) {
6125
+ ret.push(reactDom.flip({
6126
+ boundary: boundaryElement || undefined,
6127
+ fallbackPlacements: fallbackPlacements,
6128
+ padding: 8,
6129
+ rootBoundary: rootBoundary
6130
+ }));
6131
+ } // Track sizes
6145
6132
 
6146
- var _useState2 = React.useState(null),
6147
- popperElement = _useState2[0],
6148
- setPopperElement = _useState2[1];
6149
6133
 
6150
- var _useState3 = React.useState(null),
6151
- arrowElement = _useState3[0],
6152
- setArrowElement = _useState3[1];
6134
+ ret.push(size({
6135
+ boundaryElement: boundaryElement,
6136
+ constrainSize: constrainSize,
6137
+ matchReferenceWidth: matchReferenceWidthProp,
6138
+ setAvailableHeight: setAvailableHeight,
6139
+ setAvailableWidth: setAvailableWidth,
6140
+ setReferenceWidth: setReferenceWidth
6141
+ })); // Define distance between reference and floating element
6142
+
6143
+ ret.push(reactDom.offset({
6144
+ mainAxis: arrowProp ? 4 : 0
6145
+ })); // Shift the popover so its sits with the boundary eleement
6146
+
6147
+ if (preventOverflow) {
6148
+ ret.push(reactDom.shift({
6149
+ boundary: boundaryElement || undefined,
6150
+ rootBoundary: rootBoundary,
6151
+ padding: 8
6152
+ }));
6153
+ } // Place arrow
6153
6154
 
6154
- var popperReferenceElement = referenceElementProp || referenceElement;
6155
- var width = useArrayProp(widthProp);
6156
- var modifiers = usePopoverModifiers({
6157
- allowedAutoPlacements: allowedAutoPlacements,
6158
- arrow: arrow,
6159
- arrowElement: arrowElement,
6160
- boundaryElement: boundaryElementProp || portal.boundaryElement,
6161
- constrainSize: constrainSize,
6162
- distance: arrow ? 4 : 0,
6163
- fallbackPlacements: fallbackPlacements,
6164
- margins: margins,
6165
- matchReferenceWidth: matchReferenceWidth,
6166
- open: open,
6167
- preventOverflow: preventOverflow,
6168
- skidding: 0,
6169
- tether: tether,
6170
- tetherOffset: tetherOffset
6171
- });
6172
- var popper = reactPopper.usePopper(popperReferenceElement, popperElement, {
6173
- placement: placement,
6174
- modifiers: modifiers
6175
- });
6176
- var attributes = popper.attributes,
6177
- forceUpdate = popper.forceUpdate,
6178
- styles = popper.styles;
6179
- var setRef = React.useCallback(function (el) {
6180
- var childRef = child.ref;
6181
- setReferenceElement(el);
6155
+
6156
+ if (arrowProp) {
6157
+ ret.push(reactDom.arrow({
6158
+ element: arrowRef,
6159
+ padding: 4
6160
+ }));
6161
+ }
6162
+
6163
+ return ret;
6164
+ }, [arrowProp, boundaryElement, constrainSize, fallbackPlacements, matchReferenceWidthProp, preventOverflow]);
6165
+
6166
+ var _useFloating = reactDom.useFloating({
6167
+ middleware: middleware,
6168
+ placement: placementProp,
6169
+ whileElementsMounted: reactDom.autoUpdate
6170
+ }),
6171
+ x = _useFloating.x,
6172
+ y = _useFloating.y,
6173
+ placement = _useFloating.placement,
6174
+ reference = _useFloating.reference,
6175
+ floating = _useFloating.floating,
6176
+ middlewareData = _useFloating.middlewareData,
6177
+ strategy = _useFloating.strategy;
6178
+
6179
+ var arrowX = (_middlewareData$arrow = middlewareData.arrow) == null ? void 0 : _middlewareData$arrow.x;
6180
+ var arrowY = (_middlewareData$arrow2 = middlewareData.arrow) == null ? void 0 : _middlewareData$arrow2.y;
6181
+ var setArrow = React.useCallback(function (arrowEl) {
6182
+ arrowRef.current = arrowEl;
6183
+ }, []);
6184
+ var setFloating = React.useCallback(function (node) {
6185
+ forwardedRef.current = node;
6186
+ floating(node);
6187
+ }, [floating, forwardedRef]);
6188
+ var setReference = React.useCallback(function (node) {
6189
+ reference(node);
6190
+ var childRef = childProp == null ? void 0 : childProp.ref;
6182
6191
 
6183
6192
  if (typeof childRef === 'function') {
6184
- childRef(el);
6193
+ childRef(node);
6185
6194
  } else if (childRef) {
6186
- childRef.current = el;
6195
+ childRef.current = node;
6187
6196
  }
6188
- }, [child]);
6189
- var setRootRef = React.useCallback(function (el) {
6190
- setPopperElement(el);
6191
- forwardedRef.current = el;
6192
- }, [forwardedRef]);
6193
- var popoverStyle = React.useMemo(function () {
6194
- return _extends({}, style, styles.popper);
6195
- }, [style, styles]);
6197
+ }, [childProp, reference]);
6198
+ var child = React.useMemo(function () {
6199
+ if (!childProp || referenceElement) return null;
6200
+ return /*#__PURE__*/React.cloneElement(childProp, {
6201
+ ref: setReference
6202
+ });
6203
+ }, [childProp, referenceElement, setReference]);
6196
6204
  React.useEffect(function () {
6197
- if (forceUpdate) {
6198
- try {
6199
- forceUpdate();
6200
- } catch (_) {// ignore caught error
6201
- }
6202
- }
6203
- }, [content, forceUpdate, open, popperReferenceElement]);
6205
+ if (referenceElement) reference(referenceElement);
6206
+ }, [reference, referenceElement]);
6204
6207
 
6205
6208
  if (disabled) {
6206
- return child || /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null);
6209
+ return childProp || /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null);
6207
6210
  }
6208
6211
 
6209
- var node = /*#__PURE__*/React__default["default"].createElement(Root$i, _extends({
6210
- "data-ui": "Popover"
6211
- }, restProps, {
6212
- "$preventOverflow": preventOverflow,
6213
- ref: setRootRef,
6214
- style: popoverStyle,
6212
+ var popover = /*#__PURE__*/React__default["default"].createElement(LayerProvider, {
6215
6213
  zOffset: zOffset
6216
- }, attributes.popper), /*#__PURE__*/React__default["default"].createElement(PopoverCard, {
6217
- "$constrainSize": constrainSize,
6218
- "$width": width,
6219
- "data-ui": "PopoverCard",
6214
+ }, /*#__PURE__*/React__default["default"].createElement(PopoverCard, _extends({}, restProps, {
6215
+ __unstable_margins: margins,
6216
+ arrow: arrowProp,
6217
+ arrowRef: setArrow,
6218
+ arrowX: arrowX,
6219
+ arrowY: arrowY,
6220
+ availableWidth: constrainSize ? availableWidth : undefined,
6221
+ availableHeight: constrainSize ? availableHeight : undefined,
6222
+ boundaryWidth: boundarySize == null ? void 0 : boundarySize.width,
6223
+ overflow: overflow,
6220
6224
  padding: padding,
6225
+ placement: placement,
6221
6226
  radius: radius,
6227
+ ref: setFloating,
6228
+ referenceWidth: matchReferenceWidthProp ? referenceWidth : undefined,
6222
6229
  scheme: scheme,
6223
6230
  shadow: shadow,
6224
- tone: tone
6225
- }, arrow && /*#__PURE__*/React__default["default"].createElement(PopoverArrow, {
6226
- ref: setArrowElement,
6227
- style: styles.arrow
6231
+ strategy: strategy,
6232
+ tone: tone,
6233
+ x: x,
6234
+ y: y,
6235
+ width: width
6228
6236
  }), content));
6229
- return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, child && !referenceElementProp ? /*#__PURE__*/React.cloneElement(child, {
6230
- ref: setRef
6231
- }) : child || /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null), open && /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, portalProp && /*#__PURE__*/React__default["default"].createElement(Portal, {
6232
- __unstable_name: typeof portalProp === 'string' ? portalProp : undefined
6233
- }, node), !portalProp && node));
6234
- });
6237
+ return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, open && /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, portal ? /*#__PURE__*/React__default["default"].createElement(Portal, {
6238
+ __unstable_name: typeof portal === 'string' ? portal : undefined
6239
+ }, popover) : popover), child);
6240
+ }));
6241
+ Popover.displayName = 'Popover';
6235
6242
 
6236
6243
  var _templateObject$i, _templateObject2$d;
6237
6244
  function radioBaseStyle() {
@@ -6773,13 +6780,15 @@ var TextInput = /*#__PURE__*/React.forwardRef(function TextInput(props, forwarde
6773
6780
  });
6774
6781
 
6775
6782
  var _templateObject$d, _templateObject2$9, _templateObject3$4;
6776
- var Root$b = styled__default["default"].div(_templateObject$d || (_templateObject$d = _taggedTemplateLiteralLoose(["\n position: absolute;\n width: 15px;\n height: 15px;\n fill: none;\n\n :empty + & {\n display: none;\n }\n\n & > svg {\n &:not([hidden]) {\n display: block;\n }\n transform-origin: 7.5px 7.5px;\n }\n\n [data-popper-placement^='top'] > div > & {\n bottom: -15px;\n }\n\n [data-popper-placement^='right'] > div > & {\n left: -15px;\n\n & > svg {\n transform: rotate(90deg);\n }\n }\n\n [data-popper-placement^='left'] > div > & {\n right: -15px;\n\n & > svg {\n transform: rotate(-90deg);\n }\n }\n\n [data-popper-placement^='bottom'] > div > & {\n top: -15px;\n\n & > svg {\n transform: rotate(180deg);\n }\n }\n"])));
6783
+ var Root$b = styled__default["default"].div(_templateObject$d || (_templateObject$d = _taggedTemplateLiteralLoose(["\n position: absolute;\n pointer-events: none;\n width: 15px;\n height: 15px;\n fill: none;\n\n :empty + & {\n display: none;\n }\n\n & > svg {\n display: block;\n transform-origin: 7.5px 7.5px;\n }\n\n /* position: absolute;\n width: 15px;\n height: 15px;\n fill: none;\n\n :empty + & {\n display: none;\n }\n\n & > svg {\n &:not([hidden]) {\n display: block;\n }\n transform-origin: 7.5px 7.5px;\n } */\n\n [data-placement^='top'] > & {\n bottom: -27px;\n }\n\n [data-placement^='right'] > & {\n left: -27px;\n\n & > svg {\n transform: rotate(90deg);\n }\n }\n\n [data-placement^='left'] > & {\n right: -27px;\n\n & > svg {\n transform: rotate(-90deg);\n }\n }\n\n [data-placement^='bottom'] > & {\n top: -27px;\n\n & > svg {\n transform: rotate(180deg);\n }\n }\n"])));
6777
6784
  var Border = styled__default["default"].path(_templateObject2$9 || (_templateObject2$9 = _taggedTemplateLiteralLoose(["\n fill: var(--card-shadow-outline-color);\n"])));
6778
6785
  var Shape = styled__default["default"].path(_templateObject3$4 || (_templateObject3$4 = _taggedTemplateLiteralLoose(["\n fill: var(--card-bg-color);\n"])));
6779
6786
  var TooltipArrow = /*#__PURE__*/React.forwardRef(function TooltipArrow(props, ref) {
6780
6787
  var restProps = _extends({}, props);
6781
6788
 
6782
- return /*#__PURE__*/React__default["default"].createElement(Root$b, _extends({}, restProps, {
6789
+ return /*#__PURE__*/React__default["default"].createElement(Root$b, _extends({
6790
+ "data-ui": "Tooltip__arrow"
6791
+ }, restProps, {
6783
6792
  ref: ref
6784
6793
  }), /*#__PURE__*/React__default["default"].createElement("svg", {
6785
6794
  width: "15",
@@ -6792,7 +6801,7 @@ var TooltipArrow = /*#__PURE__*/React.forwardRef(function TooltipArrow(props, re
6792
6801
  })));
6793
6802
  });
6794
6803
 
6795
- var _excluded$g = ["allowedAutoPlacements", "boundaryElement", "children", "content", "disabled", "fallbackPlacements", "placement", "portal", "scheme", "zOffset"];
6804
+ var _excluded$g = ["boundaryElement", "children", "content", "disabled", "fallbackPlacements", "placement", "portal", "scheme", "shadow", "zOffset"];
6796
6805
 
6797
6806
  var _templateObject$c;
6798
6807
  var Root$a = styled__default["default"](Layer)(_templateObject$c || (_templateObject$c = _taggedTemplateLiteralLoose(["\n pointer-events: none;\n"])));
@@ -6801,22 +6810,23 @@ var Root$a = styled__default["default"](Layer)(_templateObject$c || (_templateOb
6801
6810
  */
6802
6811
 
6803
6812
  var Tooltip = /*#__PURE__*/React.forwardRef(function Tooltip(props, ref) {
6804
- var _theme$sanity$layer;
6813
+ var _theme$sanity$layer, _middlewareData$arrow, _middlewareData$arrow2;
6805
6814
 
6806
6815
  var boundaryElementContext = useBoundaryElement();
6807
6816
  var theme = useTheme();
6808
6817
 
6809
- var allowedAutoPlacements = props.allowedAutoPlacements,
6810
- _props$boundaryElemen = props.boundaryElement,
6818
+ var _props$boundaryElemen = props.boundaryElement,
6811
6819
  boundaryElement = _props$boundaryElemen === void 0 ? boundaryElementContext == null ? void 0 : boundaryElementContext.element : _props$boundaryElemen,
6812
- children = props.children,
6820
+ childProp = props.children,
6813
6821
  content = props.content,
6814
6822
  disabled = props.disabled,
6815
6823
  fallbackPlacementsProp = props.fallbackPlacements,
6816
6824
  _props$placement = props.placement,
6817
- placement = _props$placement === void 0 ? 'bottom' : _props$placement,
6825
+ placementProp = _props$placement === void 0 ? 'bottom' : _props$placement,
6818
6826
  portal = props.portal,
6819
6827
  scheme = props.scheme,
6828
+ _props$shadow = props.shadow,
6829
+ shadow = _props$shadow === void 0 ? 2 : _props$shadow,
6820
6830
  _props$zOffset = props.zOffset,
6821
6831
  zOffset = _props$zOffset === void 0 ? (_theme$sanity$layer = theme.sanity.layer) == null ? void 0 : _theme$sanity$layer.tooltip.zOffset : _props$zOffset,
6822
6832
  restProps = _objectWithoutPropertiesLoose(props, _excluded$g);
@@ -6828,47 +6838,73 @@ var Tooltip = /*#__PURE__*/React.forwardRef(function Tooltip(props, ref) {
6828
6838
  referenceElement = _useState[0],
6829
6839
  setReferenceElement = _useState[1];
6830
6840
 
6831
- var _useState2 = React.useState(null),
6832
- popperElement = _useState2[0],
6833
- setPopperElement = _useState2[1];
6841
+ var arrowRef = React.useRef(null);
6842
+ var rootBoundary = 'viewport';
6843
+ var middleware = React.useMemo(function () {
6844
+ var ret = []; // Flip the floating element when leaving the boundary box
6834
6845
 
6835
- var _useState3 = React.useState(null),
6836
- arrowElement = _useState3[0],
6837
- setArrowElement = _useState3[1];
6846
+ ret.push(reactDom.flip({
6847
+ boundary: boundaryElement || undefined,
6848
+ fallbackPlacements: fallbackPlacements,
6849
+ padding: 4,
6850
+ rootBoundary: rootBoundary
6851
+ })); // Define distance between reference and floating element
6838
6852
 
6839
- var popper = reactPopper.usePopper(referenceElement, popperElement, {
6840
- placement: placement,
6841
- modifiers: [{
6842
- name: 'arrow',
6843
- options: {
6844
- element: arrowElement,
6845
- padding: 4
6846
- }
6847
- }, {
6848
- name: 'preventOverflow',
6849
- options: {
6850
- altAxis: true,
6851
- boundary: boundaryElement || undefined,
6852
- padding: 4
6853
- }
6854
- }, {
6855
- name: 'offset',
6856
- options: {
6857
- offset: [0, 3]
6858
- }
6859
- }, {
6860
- name: 'flip',
6861
- options: {
6862
- allowedAutoPlacements: allowedAutoPlacements,
6863
- fallbackPlacements: fallbackPlacements
6864
- }
6865
- }]
6866
- });
6867
- var forceUpdate = popper.forceUpdate;
6853
+ ret.push(reactDom.offset({
6854
+ mainAxis: 3
6855
+ })); // Shift the tooltip so its sits with the boundary eleement
6856
+
6857
+ ret.push(reactDom.shift({
6858
+ boundary: boundaryElement || undefined,
6859
+ rootBoundary: rootBoundary,
6860
+ padding: 4
6861
+ })); // Place arrow
6862
+
6863
+ ret.push(reactDom.arrow({
6864
+ element: arrowRef,
6865
+ padding: 2
6866
+ }));
6867
+ return ret;
6868
+ }, [boundaryElement, fallbackPlacements]);
6869
+
6870
+ var _useFloating = reactDom.useFloating({
6871
+ middleware: middleware,
6872
+ placement: placementProp,
6873
+ whileElementsMounted: reactDom.autoUpdate
6874
+ }),
6875
+ x = _useFloating.x,
6876
+ y = _useFloating.y,
6877
+ placement = _useFloating.placement,
6878
+ reference = _useFloating.reference,
6879
+ floating = _useFloating.floating,
6880
+ middlewareData = _useFloating.middlewareData,
6881
+ update = _useFloating.update,
6882
+ strategy = _useFloating.strategy;
6883
+
6884
+ var rootStyle = React.useMemo(function () {
6885
+ return {
6886
+ position: strategy,
6887
+ top: y != null ? y : 0,
6888
+ left: x != null ? x : 0
6889
+ };
6890
+ }, [strategy, x, y]);
6891
+ var staticSide = placement && FLOATING_STATIC_SIDES[placement.split('-')[0]];
6892
+ var arrowX = (_middlewareData$arrow = middlewareData.arrow) == null ? void 0 : _middlewareData$arrow.x;
6893
+ var arrowY = (_middlewareData$arrow2 = middlewareData.arrow) == null ? void 0 : _middlewareData$arrow2.y;
6894
+ var arrowStyle = React.useMemo(function () {
6895
+ var style = {
6896
+ left: arrowX !== null ? arrowX : undefined,
6897
+ top: arrowY !== null ? arrowY : undefined,
6898
+ right: undefined,
6899
+ bottom: undefined
6900
+ };
6901
+ if (staticSide) style[staticSide] = -15;
6902
+ return style;
6903
+ }, [arrowX, arrowY, staticSide]);
6868
6904
 
6869
- var _useState4 = React.useState(false),
6870
- isOpen = _useState4[0],
6871
- setIsOpen = _useState4[1];
6905
+ var _useState2 = React.useState(false),
6906
+ isOpen = _useState2[0],
6907
+ setIsOpen = _useState2[1];
6872
6908
 
6873
6909
  var handleBlur = React.useCallback(function () {
6874
6910
  return setIsOpen(false);
@@ -6902,15 +6938,7 @@ var Tooltip = /*#__PURE__*/React.forwardRef(function Tooltip(props, ref) {
6902
6938
  return function () {
6903
6939
  window.removeEventListener('mousemove', handleWindowMouseMove);
6904
6940
  };
6905
- }, [isOpen, referenceElement]);
6906
- React.useEffect(function () {
6907
- if (forceUpdate) {
6908
- try {
6909
- forceUpdate();
6910
- } catch (_) {// ignore caught error
6911
- }
6912
- }
6913
- }, [forceUpdate, content]); // Close when `disabled` changes to `true`
6941
+ }, [isOpen, referenceElement]); // Close when `disabled` changes to `true`
6914
6942
 
6915
6943
  React.useEffect(function () {
6916
6944
  if (disabled) setIsOpen(false);
@@ -6918,40 +6946,61 @@ var Tooltip = /*#__PURE__*/React.forwardRef(function Tooltip(props, ref) {
6918
6946
 
6919
6947
  React.useEffect(function () {
6920
6948
  if (!content) setIsOpen(false);
6921
- }, [content]);
6949
+ }, [content]); // Update reference
6922
6950
 
6923
- var setRef = function setRef(el) {
6924
- setPopperElement(el);
6925
- forwardedRef.current = el;
6926
- };
6927
-
6928
- if (!children) return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null);
6929
- if (disabled) return children;
6930
- var referenceProps = {
6931
- onBlur: handleBlur,
6932
- onFocus: handleFocus,
6933
- onMouseEnter: handleMouseEnter,
6934
- onMouseLeave: handleMouseLeave,
6935
- ref: setReferenceElement
6936
- };
6937
- var referenceNode = /*#__PURE__*/React.cloneElement(children, referenceProps);
6938
- var popperNode = /*#__PURE__*/React__default["default"].createElement(Root$a, _extends({
6951
+ React.useEffect(function () {
6952
+ return reference(referenceElement);
6953
+ }, [reference, referenceElement]);
6954
+ var setArrow = React.useCallback(function (arrowEl) {
6955
+ arrowRef.current = arrowEl;
6956
+ update();
6957
+ }, [update]);
6958
+ var setFloating = React.useCallback(function (node) {
6959
+ forwardedRef.current = node;
6960
+ floating(node);
6961
+ }, [floating, forwardedRef]);
6962
+ var childRef = childProp == null ? void 0 : childProp.ref;
6963
+ var setReference = React.useCallback(function (node) {
6964
+ if (typeof childRef === 'function') {
6965
+ childRef(node);
6966
+ } else if (childRef) {
6967
+ childRef.current = node;
6968
+ } // childRef.current = node
6969
+
6970
+
6971
+ setReferenceElement(node);
6972
+ }, [childRef]);
6973
+ var child = React.useMemo(function () {
6974
+ if (!childProp) return null;
6975
+ return /*#__PURE__*/React.cloneElement(childProp, {
6976
+ onBlur: handleBlur,
6977
+ onFocus: handleFocus,
6978
+ onMouseEnter: handleMouseEnter,
6979
+ onMouseLeave: handleMouseLeave,
6980
+ ref: setReference
6981
+ });
6982
+ }, [childProp, handleBlur, handleFocus, handleMouseEnter, handleMouseLeave, setReference]);
6983
+ if (!child) return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null);
6984
+ if (disabled) return child;
6985
+ var root = /*#__PURE__*/React__default["default"].createElement(Root$a, _extends({
6939
6986
  "data-ui": "Tooltip"
6940
- }, restProps, popper.attributes.popper, {
6941
- ref: setRef,
6942
- style: popper.styles.popper,
6987
+ }, restProps, {
6988
+ ref: setFloating,
6989
+ style: rootStyle,
6943
6990
  zOffset: zOffset
6944
6991
  }), /*#__PURE__*/React__default["default"].createElement(Card, {
6992
+ "data-ui": "Tooltip__card",
6993
+ "data-placement": placement,
6945
6994
  radius: 2,
6946
6995
  scheme: scheme,
6947
- shadow: 3
6996
+ shadow: shadow
6948
6997
  }, content, /*#__PURE__*/React__default["default"].createElement(TooltipArrow, {
6949
- ref: setArrowElement,
6950
- style: popper.styles.arrow
6998
+ ref: setArrow,
6999
+ style: arrowStyle
6951
7000
  })));
6952
- return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, referenceNode, isOpen && /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, portal && /*#__PURE__*/React__default["default"].createElement(Portal, {
7001
+ return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, child, isOpen && /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, portal ? /*#__PURE__*/React__default["default"].createElement(Portal, {
6953
7002
  __unstable_name: typeof portal === 'string' ? portal : undefined
6954
- }, popperNode), !portal && popperNode));
7003
+ }, root) : root));
6955
7004
  });
6956
7005
 
6957
7006
  var _templateObject$b, _templateObject2$8, _templateObject3$3, _templateObject4$2, _templateObject5$1;
@@ -6969,7 +7018,7 @@ var ListBox = styled__default["default"](Box)(_templateObject2$8 || (_templateOb
6969
7018
  * @internal
6970
7019
  */
6971
7020
 
6972
- var ResultsPopover = styled__default["default"](Popover)(_templateObject3$3 || (_templateObject3$3 = _taggedTemplateLiteralLoose(["\n & > div {\n overflow: auto;\n -webkit-overflow-scrolling: touch;\n }\n\n &[data-popper-reference-hidden='true'] {\n display: none;\n }\n"])));
7021
+ var ResultsPopover = styled__default["default"](Popover)(_templateObject3$3 || (_templateObject3$3 = _taggedTemplateLiteralLoose(["\n &[data-popper-reference-hidden='true'] {\n display: none;\n }\n"])));
6973
7022
  var rotate = styled.keyframes(_templateObject4$2 || (_templateObject4$2 = _taggedTemplateLiteralLoose(["\n from {\n transform: rotate(0deg);\n }\n\n to {\n transform: rotate(360deg);\n }\n"])));
6974
7023
  /**
6975
7024
  * @internal
@@ -7085,17 +7134,17 @@ var AUTOCOMPLETE_LISTBOX_IGNORE_KEYS = ['Control', 'Shift', 'Alt', 'Enter', 'Hom
7085
7134
  * @internal
7086
7135
  */
7087
7136
 
7088
- var AUTOCOMPLETE_POPOVER_MARGINS = [0, 1, 1, 1];
7137
+ var AUTOCOMPLETE_POPOVER_MARGINS = [0, 1, 0, 0];
7089
7138
  /**
7090
7139
  * @internal
7091
7140
  */
7092
7141
 
7093
- var AUTOCOMPLETE_POPOVER_PLACEMENT = 'bottom-start';
7142
+ var AUTOCOMPLETE_POPOVER_PLACEMENT = 'bottom';
7094
7143
  /**
7095
7144
  * @internal
7096
7145
  */
7097
7146
 
7098
- var AUTOCOMPLETE_POPOVER_FALLBACK_PLACEMENTS = ['top-start'];
7147
+ var AUTOCOMPLETE_POPOVER_FALLBACK_PLACEMENTS = ['bottom', 'top'];
7099
7148
 
7100
7149
  var _excluded$f = ["border", "customValidity", "disabled", "filterOption", "fontSize", "icon", "id", "listBox", "loading", "onBlur", "onChange", "onFocus", "onQueryChange", "onSelect", "openButton", "options", "padding", "popover", "prefix", "radius", "readOnly", "relatedElements", "renderOption", "renderPopover", "renderValue", "suffix", "value"];
7101
7150