@algolia/satellite 1.0.0-beta.162 → 1.0.0-beta.164

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 (108) hide show
  1. package/cjs/AnnouncementBadge/AnnouncementBadge.d.ts +2 -2
  2. package/cjs/AnnouncementBadge/AnnouncementBadge.js +7 -3
  3. package/cjs/AutoComplete/AutoComplete.d.ts +1 -1
  4. package/cjs/AutoComplete/AutoComplete.tailwind.js +1 -1
  5. package/cjs/AutoComplete/components/AutoCompleteEmptyState.d.ts +1 -1
  6. package/cjs/Button/PolymorphicButton.d.ts +2 -1
  7. package/cjs/Button/PolymorphicButton.js +1 -0
  8. package/cjs/Button/PolymorphicIconButton.d.ts +2 -1
  9. package/cjs/Button/PolymorphicIconButton.js +1 -0
  10. package/cjs/Button/index.d.ts +1 -1
  11. package/cjs/Button/index.js +1 -17
  12. package/cjs/DatePicker/DatePicker/DatePicker.d.ts +1 -1
  13. package/cjs/DatePicker/DateRangePicker/DateRangePicker.d.ts +2 -1
  14. package/cjs/DatePicker/DateRangePicker/DateRangePickerDisplay.d.ts +2 -2
  15. package/cjs/DatePicker/DateRangePicker/dateRangePickerReducer.d.ts +1 -1
  16. package/cjs/DatePicker/components/Calendar.d.ts +1 -1
  17. package/cjs/DatePicker/components/FooterActions.d.ts +1 -1
  18. package/cjs/DatePicker/components/NavBar.d.ts +1 -1
  19. package/cjs/Dropdown/Dropdown.d.ts +2 -3
  20. package/cjs/Dropdown/DropdownButton.d.ts +3 -3
  21. package/cjs/Dropdown/components/DropdownButtonItem.d.ts +1 -1
  22. package/cjs/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItemsMultiGroup.d.ts +1 -2
  23. package/cjs/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItemsSingleGroup.d.ts +1 -2
  24. package/cjs/Dropdown/components/DropdownLinkItem.d.ts +1 -1
  25. package/cjs/Dropdown/components/DropdownLinkItem.js +6 -1
  26. package/cjs/Dropdown/components/DropdownRadioItem.d.ts +2 -2
  27. package/cjs/Dropdown/components/DropdownToggleItem.d.ts +2 -2
  28. package/cjs/Dropzone/Dropzone.d.ts +2 -1
  29. package/cjs/Dropzone/Dropzone.js +17 -18
  30. package/cjs/Field/Field.d.ts +1 -1
  31. package/cjs/HelpUnderline/HelpUnderline.d.ts +1 -1
  32. package/cjs/HelpUnderline/HelpUnderline.js +1 -1
  33. package/cjs/Input/Input.tailwind.js +1 -1
  34. package/cjs/Insert/Insert.d.ts +1 -1
  35. package/cjs/ProgressBar/ProgressBar.d.ts +2 -2
  36. package/cjs/ProgressBar/ProgressBar.js +7 -3
  37. package/cjs/RangeSlider/RangeSlider.d.ts +6 -4
  38. package/cjs/RangeSlider/RangeSlider.js +14 -10
  39. package/cjs/Satellite/SatelliteContext.d.ts +1 -1
  40. package/cjs/Satellite/useCreatePortal.d.ts +1 -1
  41. package/cjs/Sidebar/SidebarButtonLink.js +2 -2
  42. package/cjs/Sidebar/SidebarHeading.js +1 -1
  43. package/cjs/Switch/SwitchOption.js +3 -1
  44. package/cjs/Tables/DataTable/components/Loader.d.ts +1 -1
  45. package/cjs/TextArea/TextArea.tailwind.js +4 -1
  46. package/cjs/Tooltip/OverflowTooltipWrapper.d.ts +4 -2
  47. package/cjs/Tooltip/OverflowTooltipWrapper.js +4 -1
  48. package/cjs/Tooltip/TooltipWrapper.d.ts +1 -2
  49. package/cjs/Tooltip/TooltipWrapper.js +4 -3
  50. package/cjs/Tooltip/types.d.ts +2 -2
  51. package/cjs/styles/tailwind.config.js +3 -1
  52. package/cjs/utils/isReactText.d.ts +2 -0
  53. package/cjs/utils/isReactText.js +10 -0
  54. package/esm/AnnouncementBadge/AnnouncementBadge.d.ts +2 -2
  55. package/esm/AnnouncementBadge/AnnouncementBadge.js +7 -3
  56. package/esm/AutoComplete/AutoComplete.d.ts +1 -1
  57. package/esm/AutoComplete/AutoComplete.tailwind.js +1 -1
  58. package/esm/AutoComplete/components/AutoCompleteEmptyState.d.ts +1 -1
  59. package/esm/Button/PolymorphicButton.d.ts +2 -1
  60. package/esm/Button/PolymorphicButton.js +1 -0
  61. package/esm/Button/PolymorphicIconButton.d.ts +2 -1
  62. package/esm/Button/PolymorphicIconButton.js +1 -0
  63. package/esm/Button/index.d.ts +1 -1
  64. package/esm/Button/index.js +0 -1
  65. package/esm/DatePicker/DatePicker/DatePicker.d.ts +1 -1
  66. package/esm/DatePicker/DateRangePicker/DateRangePicker.d.ts +2 -1
  67. package/esm/DatePicker/DateRangePicker/DateRangePickerDisplay.d.ts +2 -2
  68. package/esm/DatePicker/DateRangePicker/dateRangePickerReducer.d.ts +1 -1
  69. package/esm/DatePicker/components/Calendar.d.ts +1 -1
  70. package/esm/DatePicker/components/FooterActions.d.ts +1 -1
  71. package/esm/DatePicker/components/NavBar.d.ts +1 -1
  72. package/esm/Dropdown/Dropdown.d.ts +2 -3
  73. package/esm/Dropdown/DropdownButton.d.ts +3 -3
  74. package/esm/Dropdown/components/DropdownButtonItem.d.ts +1 -1
  75. package/esm/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItemsMultiGroup.d.ts +1 -2
  76. package/esm/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItemsSingleGroup.d.ts +1 -2
  77. package/esm/Dropdown/components/DropdownLinkItem.d.ts +1 -1
  78. package/esm/Dropdown/components/DropdownLinkItem.js +6 -1
  79. package/esm/Dropdown/components/DropdownRadioItem.d.ts +2 -2
  80. package/esm/Dropdown/components/DropdownToggleItem.d.ts +2 -2
  81. package/esm/Dropzone/Dropzone.d.ts +2 -1
  82. package/esm/Dropzone/Dropzone.js +17 -18
  83. package/esm/Field/Field.d.ts +1 -1
  84. package/esm/HelpUnderline/HelpUnderline.d.ts +1 -1
  85. package/esm/HelpUnderline/HelpUnderline.js +1 -1
  86. package/esm/Input/Input.tailwind.js +1 -1
  87. package/esm/Insert/Insert.d.ts +1 -1
  88. package/esm/ProgressBar/ProgressBar.d.ts +2 -2
  89. package/esm/ProgressBar/ProgressBar.js +7 -3
  90. package/esm/RangeSlider/RangeSlider.d.ts +6 -4
  91. package/esm/RangeSlider/RangeSlider.js +14 -10
  92. package/esm/Satellite/SatelliteContext.d.ts +1 -1
  93. package/esm/Satellite/useCreatePortal.d.ts +1 -1
  94. package/esm/Sidebar/SidebarButtonLink.js +2 -2
  95. package/esm/Sidebar/SidebarHeading.js +1 -1
  96. package/esm/Switch/SwitchOption.js +3 -1
  97. package/esm/Tables/DataTable/components/Loader.d.ts +1 -1
  98. package/esm/TextArea/TextArea.tailwind.js +4 -1
  99. package/esm/Tooltip/OverflowTooltipWrapper.d.ts +4 -2
  100. package/esm/Tooltip/OverflowTooltipWrapper.js +4 -1
  101. package/esm/Tooltip/TooltipWrapper.d.ts +1 -2
  102. package/esm/Tooltip/TooltipWrapper.js +4 -3
  103. package/esm/Tooltip/types.d.ts +2 -2
  104. package/esm/styles/tailwind.config.js +3 -1
  105. package/esm/utils/isReactText.d.ts +2 -0
  106. package/esm/utils/isReactText.js +3 -0
  107. package/package.json +3 -2
  108. package/satellite.min.css +1 -1
@@ -4,7 +4,7 @@ import _defineProperty from "@babel/runtime/helpers/defineProperty";
4
4
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
5
5
  import _taggedTemplateLiteral from "@babel/runtime/helpers/taggedTemplateLiteral";
6
6
  var _excluded = ["id", "placeholder", "disabled", "multiple", "clearable", "onChange", "className", "locale"];
7
- var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11;
7
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10;
8
8
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
9
9
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
10
10
  import cx from "clsx";
@@ -26,22 +26,20 @@ var DropzoneFileItem = function DropzoneFileItem(_ref) {
26
26
  children: [file.name, " - ", formatHumanSize(file.size)]
27
27
  });
28
28
  };
29
- var STATUS_CLASSNAMES = {
30
- "default": "",
31
- invalid: stl(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["input-invalid"]))),
32
- validated: ""
33
- };
34
29
  var DEFAULT_DROPZONE_LOCALE = {
35
- clearInput: "Clear input"
30
+ clearInput: "Clear input",
31
+ placeholder: function placeholder(multiple) {
32
+ return "Drop ".concat(multiple ? "files" : "file", " here or click to select.");
33
+ }
36
34
  };
37
35
  var InvalidIcon = function InvalidIcon() {
38
36
  return /*#__PURE__*/_jsx(X, {
39
- className: stl(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["mr-4 h-4 w-4 text-white bg-red-700 p-px rounded-full"])))
37
+ className: stl(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["mr-4 h-4 w-4 text-white bg-red-700 p-px rounded-full"])))
40
38
  });
41
39
  };
42
40
  var ValidatedIcon = function ValidatedIcon() {
43
41
  return /*#__PURE__*/_jsx(Check, {
44
- className: stl(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["mr-4 h-4 w-4 text-white bg-accent-600 p-px rounded-full"])))
42
+ className: stl(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["mr-4 h-4 w-4 text-white bg-accent-600 p-px rounded-full"])))
45
43
  });
46
44
  };
47
45
  export var Dropzone = function Dropzone(_ref2) {
@@ -92,10 +90,11 @@ export var Dropzone = function Dropzone(_ref2) {
92
90
  return id !== null && id !== void 0 ? id : uniqueId("dropzone");
93
91
  }, [id]);
94
92
  var isValueEmpty = files.length === 0;
95
- var StatusIcon = status === "invalid" ? InvalidIcon : status === "validated" ? ValidatedIcon : Fragment;
93
+ var isInvalid = status === "invalid";
94
+ var StatusIcon = isInvalid ? InvalidIcon : status === "validated" ? ValidatedIcon : Fragment;
96
95
  return /*#__PURE__*/_jsxs("div", _objectSpread(_objectSpread({}, getRootProps({
97
96
  "aria-controls": dropzoneId,
98
- className: cx(stl(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral(["\n input group\n ", "\n ", "\n min-h-16 cursor-pointer\n ", ""])), focused && "input-focused", disabled && "input-disabled cursor-not-allowed", isDragReject ? "border-red-200 cursor-not-allowed" : isDragActive ? "border-accent-500" : null), STATUS_CLASSNAMES[status], className),
97
+ className: cx(stl(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n relative flex items-center group/dropzone\n border border-grey-500 rounded\n shadow-field\n overflow-hidden transition-all ease-in-out delay-100\n focus-within:border-accent-600 focus-within:shadow-field-focused\n min-h-16\n ", "\n ", "\n ", "\n ", ""])), focused && "border-accent-600 shadow-field-focused", disabled ? "cursor-not-allowed border-grey-200/30 shadow-none bg-gradient-to-b from-white to-grey-100" : "cursor-pointer", isDragReject && !disabled ? "border-red-200 cursor-not-allowed" : isDragActive ? "border-accent-500 cursor-pointer" : null, isInvalid ? "bg-red-100 border-red-700 hover:bg-red-50" : "bg-white hover:bg-grey-50"), className),
99
98
  onClick: function onClick(evt) {
100
99
  // Helps with https://github.com/react-dropzone/react-dropzone/issues/182
101
100
  if (evt.target.closest("label")) {
@@ -112,7 +111,7 @@ export var Dropzone = function Dropzone(_ref2) {
112
111
  return setFocused(false);
113
112
  }
114
113
  }))), /*#__PURE__*/_jsx("div", {
115
- className: stl(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral(["flex-1 flex items-center justify-center space-x-2 display-body"]))),
114
+ className: stl(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral(["flex-1 flex items-center justify-center space-x-2 display-body"]))),
116
115
  children: files.length > 0 ? files.length > 1 ? /*#__PURE__*/_jsx("ul", {
117
116
  children: files.map(function (file) {
118
117
  return /*#__PURE__*/_jsx("li", {
@@ -124,19 +123,19 @@ export var Dropzone = function Dropzone(_ref2) {
124
123
  }) : /*#__PURE__*/_jsx(DropzoneFileItem, {
125
124
  file: files[0]
126
125
  }) : /*#__PURE__*/_jsxs("div", {
127
- className: stl(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral(["flex items-center justify-center space-x-2 display-body"]))),
126
+ className: stl(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral(["flex items-center justify-center space-x-2 display-body"]))),
128
127
  children: [/*#__PURE__*/_jsx(UploadCloud, {
129
128
  size: "1rem",
130
- className: stl(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral(["", ""])), disabled ? "text-grey-200" : "text-grey-500")
129
+ className: stl(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral(["", ""])), disabled ? "text-grey-200" : "text-grey-500")
131
130
  }), /*#__PURE__*/_jsx("p", {
132
- className: stl(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral(["", ""])), disabled ? "text-grey-300" : "typo-subdued"),
133
- children: placeholder || "Drop ".concat(multiple ? "files" : "file", " here or click to select.")
131
+ className: stl(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral(["", ""])), disabled ? "text-grey-300" : "typo-subdued"),
132
+ children: placeholder || locale.placeholder(multiple)
134
133
  })]
135
134
  })
136
135
  }), clearable && !disabled && !isValueEmpty && /*#__PURE__*/_jsx("span", {
137
- className: stl(_templateObject10 || (_templateObject10 = _taggedTemplateLiteral([""]))),
136
+ className: stl(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral([""]))),
138
137
  children: /*#__PURE__*/_jsx(IconButton, {
139
- className: stl(_templateObject11 || (_templateObject11 = _taggedTemplateLiteral(["mr-2 ", ""])), focused ? "visible" : "invisible group-hover:visible"),
138
+ className: stl(_templateObject10 || (_templateObject10 = _taggedTemplateLiteral(["mr-2 ", ""])), focused ? "visible" : "invisible group-hover/dropzone:visible"),
140
139
  title: locale.clearInput,
141
140
  icon: X,
142
141
  variant: "subtle",
@@ -1,5 +1,5 @@
1
1
  import type { ReactChild, ReactNode, VFC } from "react";
2
- import { FieldState } from "./FieldStateContext";
2
+ import type { FieldState } from "./FieldStateContext";
3
3
  export interface FieldProps {
4
4
  /** @ignore */
5
5
  className?: string;
@@ -1,5 +1,5 @@
1
1
  import type { VFC } from "react";
2
- import { TooltipWrapperProps } from "../Tooltip";
2
+ import type { TooltipWrapperProps } from "../Tooltip";
3
3
  import type { TooltipWrapperBaseProps } from "../Tooltip/types";
4
4
  export declare type HelpUnderlineProps = {
5
5
  /** @ignore */
@@ -20,7 +20,7 @@ export var HelpUnderline = function HelpUnderline(_ref) {
20
20
  content: tooltipContent
21
21
  }, props), {}, {
22
22
  children: /*#__PURE__*/_jsx("span", {
23
- className: cx(stl(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["help-underline leading-inherit"]))), className),
23
+ className: cx(stl(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["help-underline"]))), className),
24
24
  children: children
25
25
  })
26
26
  }));
@@ -22,7 +22,7 @@ var inputPlugin = plugin(function (_ref) {
22
22
  boxShadow: "inset 0px 1px 4px 0px ".concat(rgba(theme("colors.grey.500"), 0.3)),
23
23
  overflow: "hidden",
24
24
  transition: "all 100ms ease-in-out",
25
- "&:not(.input-disabled):hover": {
25
+ "&:not(.input-disabled, .input-focused):hover": {
26
26
  borderColor: theme("colors.grey.600"),
27
27
  ".input-spinner-button": {
28
28
  borderColor: theme("colors.grey.600")
@@ -1,5 +1,5 @@
1
1
  import type { ReactNode, VFC } from "react";
2
- import { BadgeVariants } from "../Badge";
2
+ import type { BadgeVariants } from "../Badge";
3
3
  declare type InsertContext = {
4
4
  label: string;
5
5
  variant?: BadgeVariants;
@@ -1,4 +1,4 @@
1
- import type { HTMLAttributes, VFC } from "react";
1
+ import { type HTMLAttributes } from "react";
2
2
  export interface ProgressBarProps extends HTMLAttributes<HTMLDivElement> {
3
3
  barClassName?: string;
4
4
  value: number;
@@ -9,5 +9,5 @@ export interface ProgressBarProps extends HTMLAttributes<HTMLDivElement> {
9
9
  * - Progress bars show an indication of how much of the task has been completed and how much is still left.
10
10
  * - You should indicate either a percentage or other numeric values (such as - 234/4092 queries processed)
11
11
  */
12
- export declare const ProgressBar: VFC<ProgressBarProps>;
12
+ export declare const ProgressBar: import("react").ForwardRefExoticComponent<ProgressBarProps & import("react").RefAttributes<HTMLDivElement>>;
13
13
  export default ProgressBar;
@@ -6,6 +6,7 @@ var _excluded = ["value", "className", "barClassName"];
6
6
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
7
7
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
8
8
  import cx from "clsx";
9
+ import { forwardRef } from "react";
9
10
  import stl from "../styles/helpers/satellitePrefixer";
10
11
  import { jsx as _jsx } from "react/jsx-runtime";
11
12
  /**
@@ -14,12 +15,14 @@ import { jsx as _jsx } from "react/jsx-runtime";
14
15
  * - Progress bars show an indication of how much of the task has been completed and how much is still left.
15
16
  * - You should indicate either a percentage or other numeric values (such as - 234/4092 queries processed)
16
17
  */
17
- export var ProgressBar = function ProgressBar(_ref) {
18
+ export var ProgressBar = /*#__PURE__*/forwardRef(function (_ref, ref) {
18
19
  var value = _ref.value,
19
20
  className = _ref.className,
20
21
  barClassName = _ref.barClassName,
21
22
  props = _objectWithoutProperties(_ref, _excluded);
22
- return /*#__PURE__*/_jsx("div", _objectSpread(_objectSpread({}, props), {}, {
23
+ return /*#__PURE__*/_jsx("div", _objectSpread(_objectSpread({
24
+ ref: ref
25
+ }, props), {}, {
23
26
  className: cx(stl(_templateObject || (_templateObject = _taggedTemplateLiteral(["progress-bar"]))), className),
24
27
  role: "progressbar",
25
28
  "aria-valuenow": value,
@@ -33,5 +36,6 @@ export var ProgressBar = function ProgressBar(_ref) {
33
36
  }
34
37
  })
35
38
  }));
36
- };
39
+ });
40
+ ProgressBar.displayName = "ProgressBar";
37
41
  export default ProgressBar;
@@ -1,4 +1,4 @@
1
- /// <reference types="react" />
1
+ import type { ForwardedRef } from "react";
2
2
  declare type RangeSliderValue = number | [number, number];
3
3
  declare type WidenNumber<T> = T extends number ? number : T;
4
4
  export interface RangeSliderProps<Value extends RangeSliderValue = number> {
@@ -20,6 +20,7 @@ export interface RangeSliderProps<Value extends RangeSliderValue = number> {
20
20
  track1Color?: string;
21
21
  track2Color?: string;
22
22
  }
23
+ declare const RangeSliderInternal: <Value extends RangeSliderValue = number>({ className, value, defaultValue, onChange, onCommit, disabled, min, max, track1Color, track2Color, ...otherProps }: RangeSliderProps<Value>, ref: ForwardedRef<HTMLSpanElement>) => JSX.Element;
23
24
  /**
24
25
  * A range slider is an input field where users select one or two numeric values within a given range (minimum and maximum values).
25
26
  *
@@ -27,8 +28,9 @@ export interface RangeSliderProps<Value extends RangeSliderValue = number> {
27
28
  * - Provide min and max value whenever possible
28
29
  * - Provide text input for better accessibility
29
30
  */
30
- export declare const RangeSlider: {
31
- <Value extends RangeSliderValue = number>({ className, value, defaultValue, onChange, onCommit, disabled, min, max, track1Color, track2Color, ...otherProps }: RangeSliderProps<Value>): JSX.Element;
32
- displayName: string;
31
+ export declare const RangeSlider: (<Value extends RangeSliderValue>(props: RangeSliderProps<Value> & {
32
+ ref?: ForwardedRef<HTMLSpanElement> | undefined;
33
+ }) => ReturnType<typeof RangeSliderInternal>) & {
34
+ displayName?: string | undefined;
33
35
  };
34
36
  export default RangeSlider;
@@ -7,6 +7,7 @@ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (O
7
7
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
8
8
  import { SliderRange, Root as SliderRoot, SliderThumb, SliderTrack } from "@radix-ui/react-slider";
9
9
  import cx from "clsx";
10
+ import { forwardRef } from "react";
10
11
  import colors from "../styles/colors";
11
12
  import stl from "../styles/helpers/satellitePrefixer";
12
13
 
@@ -26,15 +27,7 @@ var ThumbGroove = function ThumbGroove(_ref) {
26
27
  className: cx(stl(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["h-3 w-px bg-grey-500 group-hover:bg-grey-600"]))), className)
27
28
  });
28
29
  };
29
-
30
- /**
31
- * A range slider is an input field where users select one or two numeric values within a given range (minimum and maximum values).
32
- *
33
- * - Range sliders should always be used with a label
34
- * - Provide min and max value whenever possible
35
- * - Provide text input for better accessibility
36
- */
37
- export var RangeSlider = function RangeSlider(_ref2) {
30
+ var RangeSliderInternal = function RangeSliderInternal(_ref2, ref) {
38
31
  var className = _ref2.className,
39
32
  value = _ref2.value,
40
33
  defaultValue = _ref2.defaultValue,
@@ -53,7 +46,9 @@ export var RangeSlider = function RangeSlider(_ref2) {
53
46
  track1: disabled ? colors.grey[200] : track1Color,
54
47
  track2: disabled ? colors.grey[100] : track2Color
55
48
  };
56
- return /*#__PURE__*/_jsxs(SliderRoot, _objectSpread(_objectSpread({}, otherProps), {}, {
49
+ return /*#__PURE__*/_jsxs(SliderRoot, _objectSpread(_objectSpread({
50
+ ref: ref
51
+ }, otherProps), {}, {
57
52
  className: cx(stl(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["relative h-6 min-w-[200px] flex items-center select-none touch-none aria-disabled:opacity-70 cursor-pointer aria-disabled:cursor-not-allowed"]))), className),
58
53
  value: coerceToRadixValue(value),
59
54
  defaultValue: coerceToRadixValue(defaultValue),
@@ -93,5 +88,14 @@ export var RangeSlider = function RangeSlider(_ref2) {
93
88
  })]
94
89
  }));
95
90
  };
91
+
92
+ /**
93
+ * A range slider is an input field where users select one or two numeric values within a given range (minimum and maximum values).
94
+ *
95
+ * - Range sliders should always be used with a label
96
+ * - Provide min and max value whenever possible
97
+ * - Provide text input for better accessibility
98
+ */
99
+ export var RangeSlider = /*#__PURE__*/forwardRef(RangeSliderInternal);
96
100
  RangeSlider.displayName = "RangeSlider";
97
101
  export default RangeSlider;
@@ -1,6 +1,6 @@
1
1
  /// <reference types="react" />
2
2
  import type { ComponentsLocales } from "./locale";
3
- import { SatelliteRouter } from "./SatelliteRouter";
3
+ import type { SatelliteRouter } from "./SatelliteRouter";
4
4
  export interface SatelliteContextType {
5
5
  router: SatelliteRouter;
6
6
  portalTarget: HTMLElement | null;
@@ -1,4 +1,4 @@
1
- import { ReactElement, ReactNode } from "react";
1
+ import type { ReactElement, ReactNode } from "react";
2
2
  declare type CreatePortal = (children: ReactNode) => ReactElement;
3
3
  export declare const useCreatePortal: () => CreatePortal;
4
4
  export {};
@@ -63,11 +63,11 @@ export var SidebarButtonLink = function SidebarButtonLink(props) {
63
63
  className: stl(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n h-8 min-w-8 w-full rounded\n flex items-center space-x-3\n border border-transparent\n display-body\n hover:no-underline focus:no-underline\n ", "\n ", "\n ", "\n ", "\n "])), disabled ? "cursor-not-allowed opacity-70" : "focus:border-grey-500", isActive ? "shadow-z100" : !disabled && "hover:border-grey-200", isActive && "bg-gradient-to-b from-white to-grey-50", collapsed ? "pl-2" : "px-2"),
64
64
  "aria-current": isActive,
65
65
  children: [/*#__PURE__*/_jsx(Icon, {
66
- className: stl(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["", " ml-[-3px]"])), showColors ? "text-accent-600" : "text-grey-400"),
66
+ className: stl(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["", " ml-[-3px] shrink-0"])), showColors ? "text-accent-600" : "text-grey-400"),
67
67
  height: 20,
68
68
  width: 20
69
69
  }), /*#__PURE__*/_jsx("span", {
70
- className: stl(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n ", "\n ", "\n ", "\n "])), collapsed && "sr-only", showColors ? "text-accent-600" : "typo-subdued", isActive && "font-bold"),
70
+ className: stl(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n truncate\n ", "\n ", "\n ", "\n "])), collapsed && "sr-only", showColors ? "text-accent-600" : "typo-subdued", isActive && "font-bold"),
71
71
  children: children
72
72
  }), isExternalLink && !collapsed && /*#__PURE__*/_jsx(ExternalLink, {
73
73
  className: stl(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["", " !ml-1 shrink-0"])), showColors ? "text-accent-600" : "typo-subdued"),
@@ -12,7 +12,7 @@ export var SidebarHeading = function SidebarHeading(_ref) {
12
12
  collapsed = _useSidebarContext.collapsed;
13
13
  return /*#__PURE__*/_jsx("span", {
14
14
  id: id,
15
- className: cx(stl(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n h-8 block leading-[2rem]\n display-subheading typo-subdued uppercase select-none\n ", "\n "])), collapsed && "opacity-0"), className),
15
+ className: cx(stl(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n h-8 block leading-[2rem]\n display-subheading typo-subdued uppercase select-none truncate\n ", "\n "])), collapsed && "opacity-0"), className),
16
16
  children: children
17
17
  });
18
18
  };
@@ -30,7 +30,9 @@ export var SwitchOption = function SwitchOption(_ref) {
30
30
  return context.onChange(evt.currentTarget.value);
31
31
  }
32
32
  }), /*#__PURE__*/_jsx(OverflowTooltipWrapper, {
33
- children: children
33
+ children: /*#__PURE__*/_jsx("span", {
34
+ children: children
35
+ })
34
36
  })]
35
37
  }));
36
38
  };
@@ -1,4 +1,4 @@
1
- import { VFC } from "react";
1
+ import type { VFC } from "react";
2
2
  import type { DataTableLocale } from "../DataTable";
3
3
  export interface LoaderProps {
4
4
  className?: string;
@@ -13,7 +13,7 @@ var textAreaPlugin = plugin(function (_ref) {
13
13
  width: "100%",
14
14
  padding: theme("spacing.4"),
15
15
  backgroundColor: theme("colors.white"),
16
- border: "1px solid ".concat(theme("colors.grey.200")),
16
+ border: "1px solid ".concat(theme("colors.grey.500")),
17
17
  borderRadius: theme("borderRadius.DEFAULT"),
18
18
  boxShadow: "inset 0px 1px 4px 0px ".concat(rgba(theme("colors.grey.500"), 0.3)),
19
19
  transition: "all 100ms ease-in-out",
@@ -22,6 +22,9 @@ var textAreaPlugin = plugin(function (_ref) {
22
22
  "&::placeholder": {
23
23
  color: theme("colors.grey.600")
24
24
  },
25
+ "&:hover": {
26
+ borderColor: theme("colors.grey.600")
27
+ },
25
28
  "&:focus": {
26
29
  borderColor: theme("colors.accent.600"),
27
30
  boxShadow: "0px 1px 0px 0px ".concat(theme("colors.shadow.5")),
@@ -1,3 +1,5 @@
1
- import { VFC } from "react";
1
+ import type { VFC } from "react";
2
2
  import type { TooltipWrapperBaseProps } from "./types";
3
- export declare const OverflowTooltipWrapper: VFC<TooltipWrapperBaseProps>;
3
+ export interface OverflowTooltipWrapperProps extends TooltipWrapperBaseProps {
4
+ }
5
+ export declare const OverflowTooltipWrapper: VFC<OverflowTooltipWrapperProps>;
@@ -6,9 +6,11 @@ var _templateObject;
6
6
  var _excluded = ["children"];
7
7
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
8
8
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
9
+ import { Slot } from "@radix-ui/react-slot";
9
10
  import { useState } from "react";
10
11
  import stl from "../styles/helpers/satellitePrefixer";
11
12
  import TextWrap from "../TextWrap";
13
+ import { isReactText } from "../utils/isReactText";
12
14
  import { TooltipWrapper } from "./TooltipWrapper";
13
15
  import { isOverflowing } from "./utils";
14
16
  import { jsx as _jsx } from "react/jsx-runtime";
@@ -22,12 +24,13 @@ export var OverflowTooltipWrapper = function OverflowTooltipWrapper(_ref) {
22
24
  var onMouseEnter = function onMouseEnter(evt) {
23
25
  setContent(isOverflowing(evt.currentTarget) ? evt.currentTarget.textContent : null);
24
26
  };
27
+ var Wrapper = isReactText(children) ? "div" : Slot;
25
28
  return /*#__PURE__*/_jsx(TooltipWrapper, _objectSpread(_objectSpread({
26
29
  content: content && /*#__PURE__*/_jsx(TextWrap, {
27
30
  children: content
28
31
  })
29
32
  }, props), {}, {
30
- children: /*#__PURE__*/_jsx("div", {
33
+ children: /*#__PURE__*/_jsx(Wrapper, {
31
34
  className: stl(_templateObject || (_templateObject = _taggedTemplateLiteral(["truncate"]))),
32
35
  onMouseEnter: onMouseEnter,
33
36
  children: children
@@ -1,4 +1,4 @@
1
- import { ReactElement, ReactNode, ReactText, VFC } from "react";
1
+ import type { ReactNode, VFC } from "react";
2
2
  import type { TooltipWrapperBaseProps } from "./types";
3
3
  export interface TooltipWrapperProps extends TooltipWrapperBaseProps {
4
4
  /**
@@ -10,6 +10,5 @@ export interface TooltipWrapperProps extends TooltipWrapperBaseProps {
10
10
  * Defines the content of the tooltip.
11
11
  */
12
12
  content: ReactNode;
13
- children: ReactElement | ReactText;
14
13
  }
15
14
  export declare const TooltipWrapper: VFC<TooltipWrapperProps>;
@@ -5,6 +5,7 @@ import cx from "clsx";
5
5
  import { Fragment } from "react";
6
6
  import { useCreatePortal } from "../Satellite";
7
7
  import stl from "../styles/helpers/satellitePrefixer";
8
+ import { isReactText } from "../utils/isReactText";
8
9
  import TooltipInternal from "./Tooltip";
9
10
  import { Fragment as _Fragment } from "react/jsx-runtime";
10
11
  import { jsx as _jsx } from "react/jsx-runtime";
@@ -38,8 +39,8 @@ export var TooltipWrapper = function TooltipWrapper(_ref) {
38
39
  if (!tooltipContent) return /*#__PURE__*/_jsx(_Fragment, {
39
40
  children: children
40
41
  });
41
- var isReactText = typeof children === "string" || typeof children === "number";
42
- if (!isReactText && children.type === Fragment) throw new Error("TooltipWrapper component doesn't accept a Fragment as a child.");
42
+ var hasTextChildren = isReactText(children);
43
+ if (!hasTextChildren && children.type === Fragment) throw new Error("TooltipWrapper component doesn't accept a Fragment as a child.");
43
44
  return /*#__PURE__*/_jsx(Tooltip.Provider, {
44
45
  delayDuration: delay,
45
46
  skipDelayDuration: 300,
@@ -47,7 +48,7 @@ export var TooltipWrapper = function TooltipWrapper(_ref) {
47
48
  children: /*#__PURE__*/_jsxs(Tooltip.Root, {
48
49
  open: show,
49
50
  children: [/*#__PURE__*/_jsx(Tooltip.Trigger, {
50
- asChild: !isReactText,
51
+ asChild: !hasTextChildren,
51
52
  children: children
52
53
  }), createPortal( /*#__PURE__*/_jsxs(Tooltip.Content, {
53
54
  className: cx(stl(_templateObject || (_templateObject = _taggedTemplateLiteral(["tooltip-content"]))), tooltipClassName),
@@ -1,5 +1,5 @@
1
1
  import type { TooltipContentProps } from "@radix-ui/react-tooltip";
2
- import type { ReactNode } from "react";
2
+ import type { ReactElement, ReactText } from "react";
3
3
  import type { TooltipVariant } from "./Tooltip";
4
4
  export interface TooltipWrapperBaseProps {
5
5
  /**
@@ -61,5 +61,5 @@ export interface TooltipWrapperBaseProps {
61
61
  * @default true
62
62
  */
63
63
  avoidCollisions?: boolean;
64
- children: ReactNode;
64
+ children: ReactElement | ReactText;
65
65
  }
@@ -81,7 +81,9 @@ export default {
81
81
  z200: "0px 0px 0px 1px ".concat(theme("colors.shadow.5"), ", 0px 4px 8px -2px ").concat(theme("colors.shadow.25")),
82
82
  z300: "0px 0px 0px 1px ".concat(theme("colors.shadow.5"), ", 0px 8px 16px -4px ").concat(theme("colors.shadow.25")),
83
83
  z400: "0px 0px 0px 1px ".concat(theme("colors.shadow.5"), ", 0px 12px 24px -6px ").concat(theme("colors.shadow.25")),
84
- z500: "0px 0px 0px 1px ".concat(theme("colors.shadow.5"), ", 0px 20px 32px -8px ").concat(theme("colors.shadow.25"))
84
+ z500: "0px 0px 0px 1px ".concat(theme("colors.shadow.5"), ", 0px 20px 32px -8px ").concat(theme("colors.shadow.25")),
85
+ field: "inset 0px 1px 4px 0px ".concat(rgba(colors.grey[500], 0.3)),
86
+ "field-focused": "0px 1px 0px 0px ".concat(theme("colors.shadow.5"))
85
87
  };
86
88
  },
87
89
  opacity: {
@@ -0,0 +1,2 @@
1
+ import type { ReactNode } from "react";
2
+ export declare const isReactText: (children: ReactNode) => children is string | number;
@@ -0,0 +1,3 @@
1
+ export var isReactText = function isReactText(children) {
2
+ return typeof children === "string" || typeof children === "number";
3
+ };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@algolia/satellite",
3
- "version": "1.0.0-beta.162",
3
+ "version": "1.0.0-beta.164",
4
4
  "description": "Algolia design system React components",
5
5
  "scripts": {
6
6
  "clean": "rimraf dist",
@@ -74,6 +74,7 @@
74
74
  "@radix-ui/react-dialog": "^1.0.4",
75
75
  "@radix-ui/react-separator": "^1.0.3",
76
76
  "@radix-ui/react-slider": "^1.1.2",
77
+ "@radix-ui/react-slot": "^1.0.2",
77
78
  "@radix-ui/react-tabs": "^1.0.4",
78
79
  "@radix-ui/react-tooltip": "^1.0.6",
79
80
  "clsx": "^1.2.1",
@@ -87,7 +88,7 @@
87
88
  "react-popper": "^2.2.5",
88
89
  "react-transition-group": "^4.4.5",
89
90
  "react-use": "^15.3.8",
90
- "tailwindcss": "^3.3.1"
91
+ "tailwindcss": "^3.3.3"
91
92
  },
92
93
  "main": "./cjs/index.js",
93
94
  "module": "./esm/index.js",