@algolia/satellite 1.8.0 → 1.10.0
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.
- package/README.md +26 -22
- package/dist/cjs/Actions/index.d.ts +1 -2
- package/dist/cjs/Actions/index.js +10 -17
- package/dist/cjs/Fields/AutoComplete/AutoComplete.js +11 -11
- package/dist/cjs/Fields/DatePicker/DatePicker/DatePicker.js +68 -75
- package/dist/cjs/Fields/DatePicker/DateRangePicker/DateRangePicker.js +69 -77
- package/dist/cjs/Fields/DatePicker/DateRangePicker/DateRangePickerDisplay.d.ts +2 -3
- package/dist/cjs/Fields/DatePicker/DateRangePicker/DateRangePickerDisplay.js +14 -7
- package/dist/cjs/Fields/DatePicker/components/Display.d.ts +0 -1
- package/dist/cjs/Fields/DatePicker/components/Display.js +1 -3
- package/dist/cjs/Fields/DatePicker/components/FooterActions.d.ts +2 -2
- package/dist/cjs/Fields/DatePicker/components/FooterActions.js +5 -2
- package/dist/cjs/Fields/DatePicker/components/Popover.d.ts +13 -0
- package/dist/cjs/Fields/DatePicker/components/Popover.js +51 -0
- package/dist/cjs/Fields/DatePicker/components/index.d.ts +1 -1
- package/dist/cjs/Fields/DatePicker/components/index.js +4 -4
- package/dist/cjs/Fields/DatePicker/types.d.ts +3 -2
- package/dist/cjs/Fields/DatePicker/utils.js +2 -1
- package/dist/cjs/Helpers/ClickAwayContainer/ClickAwayContainer.d.ts +3 -0
- package/dist/cjs/Helpers/ClickAwayContainer/ClickAwayContainer.js +3 -0
- package/dist/cjs/Helpers/Separator/Separator.js +1 -4
- package/dist/cjs/Icons/index.d.ts +1 -1
- package/dist/cjs/Icons/index.js +6 -0
- package/dist/cjs/Layout/Tables/DataTable/DataTable.js +3 -15
- package/dist/cjs/Layout/Tables/DataTable/types.d.ts +0 -2
- package/dist/cjs/Overlay/Modal/Modal.d.ts +1 -1
- package/dist/cjs/Overlay/Modal/Modal.js +10 -5
- package/dist/cjs/Overlay/Popover/Popover.js +14 -5
- package/dist/cjs/Overlay/Popover/types.d.ts +32 -8
- package/dist/esm/Actions/index.d.ts +1 -2
- package/dist/esm/Actions/index.js +3 -2
- package/dist/esm/Fields/AutoComplete/AutoComplete.js +11 -11
- package/dist/esm/Fields/DatePicker/DatePicker/DatePicker.js +70 -77
- package/dist/esm/Fields/DatePicker/DateRangePicker/DateRangePicker.js +71 -79
- package/dist/esm/Fields/DatePicker/DateRangePicker/DateRangePickerDisplay.d.ts +2 -3
- package/dist/esm/Fields/DatePicker/DateRangePicker/DateRangePickerDisplay.js +14 -7
- package/dist/esm/Fields/DatePicker/components/Display.d.ts +0 -1
- package/dist/esm/Fields/DatePicker/components/Display.js +1 -3
- package/dist/esm/Fields/DatePicker/components/FooterActions.d.ts +2 -2
- package/dist/esm/Fields/DatePicker/components/FooterActions.js +5 -2
- package/dist/esm/Fields/DatePicker/components/Popover.d.ts +13 -0
- package/dist/esm/Fields/DatePicker/components/Popover.js +41 -0
- package/dist/esm/Fields/DatePicker/components/index.d.ts +1 -1
- package/dist/esm/Fields/DatePicker/components/index.js +1 -1
- package/dist/esm/Fields/DatePicker/types.d.ts +3 -2
- package/dist/esm/Fields/DatePicker/utils.js +2 -1
- package/dist/esm/Helpers/ClickAwayContainer/ClickAwayContainer.d.ts +3 -0
- package/dist/esm/Helpers/ClickAwayContainer/ClickAwayContainer.js +3 -0
- package/dist/esm/Helpers/Separator/Separator.js +1 -4
- package/dist/esm/Icons/index.d.ts +1 -1
- package/dist/esm/Icons/index.js +1 -1
- package/dist/esm/Layout/Tables/DataTable/DataTable.js +3 -15
- package/dist/esm/Layout/Tables/DataTable/types.d.ts +0 -2
- package/dist/esm/Overlay/Modal/Modal.d.ts +1 -1
- package/dist/esm/Overlay/Modal/Modal.js +10 -5
- package/dist/esm/Overlay/Popover/Popover.js +14 -5
- package/dist/esm/Overlay/Popover/types.d.ts +32 -8
- package/dist/satellite.min.css +1 -1
- package/package.json +16 -15
- package/dist/cjs/Fields/DatePicker/components/Modal.d.ts +0 -15
- package/dist/cjs/Fields/DatePicker/components/Modal.js +0 -66
- package/dist/esm/Fields/DatePicker/components/Modal.d.ts +0 -15
- package/dist/esm/Fields/DatePicker/components/Modal.js +0 -59
@@ -1,13 +1,12 @@
|
|
1
|
-
|
1
|
+
/// <reference types="react" />
|
2
2
|
import type { WithRequiredProperty } from "../../../types";
|
3
3
|
import { type DatePickerDisplayProps } from "../components/Display";
|
4
4
|
import type { DatePickerLocale } from "../types";
|
5
5
|
import type { DateRangePickerTimeRange } from "./dateRangePickerTimeRange";
|
6
6
|
export interface DateRangePickerDisplayProps {
|
7
7
|
id?: string;
|
8
|
-
onClick: DatePickerDisplayProps["onClick"];
|
9
8
|
range: DateRangePickerTimeRange;
|
10
9
|
buttonSize?: DatePickerDisplayProps["size"];
|
11
10
|
locale: WithRequiredProperty<DatePickerLocale, "openButton">;
|
12
11
|
}
|
13
|
-
export declare const DateRangePickerDisplay:
|
12
|
+
export declare const DateRangePickerDisplay: import("react").ForwardRefExoticComponent<DateRangePickerDisplayProps & import("react").RefAttributes<HTMLButtonElement>>;
|
@@ -5,23 +5,29 @@ Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
value: true
|
6
6
|
});
|
7
7
|
exports.DateRangePickerDisplay = void 0;
|
8
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
8
9
|
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
10
|
+
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
11
|
+
var _react = require("react");
|
9
12
|
var _satellitePrefixer = _interopRequireDefault(require("../../../styles/helpers/satellitePrefixer"));
|
10
13
|
var _Display = require("../components/Display");
|
11
14
|
var _utils = require("../utils");
|
12
15
|
var _dateRangePickerTimeRange = require("./dateRangePickerTimeRange");
|
13
16
|
var _jsxRuntime = require("react/jsx-runtime");
|
14
17
|
var _templateObject;
|
15
|
-
var
|
18
|
+
var _excluded = ["id", "range", "buttonSize", "locale"];
|
19
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
20
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
21
|
+
var DateRangePickerDisplay = exports.DateRangePickerDisplay = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
|
16
22
|
var id = _ref.id,
|
17
|
-
onClick = _ref.onClick,
|
18
23
|
range = _ref.range,
|
19
24
|
buttonSize = _ref.buttonSize,
|
20
|
-
locale = _ref.locale
|
21
|
-
|
25
|
+
locale = _ref.locale,
|
26
|
+
props = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
|
27
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Display.DatePickerDisplay, _objectSpread(_objectSpread({}, props), {}, {
|
22
28
|
id: id,
|
23
|
-
onClick: onClick,
|
24
29
|
size: buttonSize,
|
30
|
+
ref: ref,
|
25
31
|
children: (0, _dateRangePickerTimeRange.isCompleteTimeRange)(range) ? /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
|
26
32
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("time", {
|
27
33
|
dateTime: range.start.toISOString(),
|
@@ -33,5 +39,6 @@ var DateRangePickerDisplay = exports.DateRangePickerDisplay = function DateRange
|
|
33
39
|
children: (0, _utils.formatDate)(range.end)
|
34
40
|
})]
|
35
41
|
}) : locale.openButton
|
36
|
-
});
|
37
|
-
};
|
42
|
+
}));
|
43
|
+
});
|
44
|
+
DateRangePickerDisplay.displayName = "DateRangePickerDisplay";
|
@@ -11,20 +11,18 @@ var _react = require("react");
|
|
11
11
|
var _Actions = require("../../../Actions");
|
12
12
|
var _Icons = require("../../../Icons");
|
13
13
|
var _jsxRuntime = require("react/jsx-runtime");
|
14
|
-
var _excluded = ["id", "size", "
|
14
|
+
var _excluded = ["id", "size", "children"];
|
15
15
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
16
16
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
17
17
|
var DatePickerDisplay = exports.DatePickerDisplay = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
|
18
18
|
var id = _ref.id,
|
19
19
|
size = _ref.size,
|
20
|
-
onClick = _ref.onClick,
|
21
20
|
children = _ref.children,
|
22
21
|
props = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
|
23
22
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Actions.Button, _objectSpread(_objectSpread({
|
24
23
|
id: id,
|
25
24
|
size: size,
|
26
25
|
startIcon: _Icons.CalendarIcon,
|
27
|
-
onClick: onClick,
|
28
26
|
ref: ref
|
29
27
|
}, props), {}, {
|
30
28
|
children: children
|
@@ -1,4 +1,4 @@
|
|
1
|
-
|
1
|
+
/// <reference types="react" />
|
2
2
|
import type { ButtonProps } from "../../../Actions";
|
3
3
|
import type { WithRequiredProperty } from "../../../types";
|
4
4
|
import type { DatePickerLocale } from "../types";
|
@@ -8,4 +8,4 @@ export interface DatePickerFooterActionsProps {
|
|
8
8
|
disableApply: boolean;
|
9
9
|
locale: WithRequiredProperty<DatePickerLocale, "cancel" | "apply">;
|
10
10
|
}
|
11
|
-
export declare const DatePickerFooterActions:
|
11
|
+
export declare const DatePickerFooterActions: import("react").ForwardRefExoticComponent<DatePickerFooterActionsProps & import("react").RefAttributes<HTMLButtonElement>>;
|
@@ -6,11 +6,12 @@ Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
});
|
7
7
|
exports.DatePickerFooterActions = void 0;
|
8
8
|
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
9
|
+
var _react = require("react");
|
9
10
|
var _Actions = require("../../../Actions");
|
10
11
|
var _satellitePrefixer = _interopRequireDefault(require("../../../styles/helpers/satellitePrefixer"));
|
11
12
|
var _jsxRuntime = require("react/jsx-runtime");
|
12
13
|
var _templateObject, _templateObject2;
|
13
|
-
var DatePickerFooterActions = exports.DatePickerFooterActions = function
|
14
|
+
var DatePickerFooterActions = exports.DatePickerFooterActions = /*#__PURE__*/(0, _react.forwardRef)(function (_ref, ref) {
|
14
15
|
var onCancel = _ref.onCancel,
|
15
16
|
onApply = _ref.onApply,
|
16
17
|
disableApply = _ref.disableApply,
|
@@ -20,6 +21,7 @@ var DatePickerFooterActions = exports.DatePickerFooterActions = function DatePic
|
|
20
21
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Actions.Button, {
|
21
22
|
onClick: onCancel,
|
22
23
|
className: (0, _satellitePrefixer["default"])(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["mr-2"]))),
|
24
|
+
ref: ref,
|
23
25
|
children: locale.cancel
|
24
26
|
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Actions.Button, {
|
25
27
|
disabled: disableApply,
|
@@ -28,4 +30,5 @@ var DatePickerFooterActions = exports.DatePickerFooterActions = function DatePic
|
|
28
30
|
children: locale.apply
|
29
31
|
})]
|
30
32
|
});
|
31
|
-
};
|
33
|
+
});
|
34
|
+
DatePickerFooterActions.displayName = "AccordionItem";
|
@@ -0,0 +1,13 @@
|
|
1
|
+
import * as Popover from "@radix-ui/react-popover";
|
2
|
+
import type { FC, ReactNode } from "react";
|
3
|
+
export interface DatePickerPopoverProps {
|
4
|
+
isOpen: boolean;
|
5
|
+
onOpenChange: (open: boolean) => void;
|
6
|
+
trigger: ReactNode;
|
7
|
+
children: ReactNode;
|
8
|
+
placement?: Popover.PopoverContentProps["side"] | `${Popover.PopoverContentProps["side"] & string}-${Popover.PopoverContentProps["align"] & string}`;
|
9
|
+
onOpenAutoFocus?: (event: Event) => void;
|
10
|
+
title?: string;
|
11
|
+
className?: string;
|
12
|
+
}
|
13
|
+
export declare const DatePickerPopover: FC<DatePickerPopoverProps>;
|
@@ -0,0 +1,51 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
4
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
6
|
+
value: true
|
7
|
+
});
|
8
|
+
exports.DatePickerPopover = void 0;
|
9
|
+
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
10
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
11
|
+
var Popover = _interopRequireWildcard(require("@radix-ui/react-popover"));
|
12
|
+
var _clsx = _interopRequireDefault(require("clsx"));
|
13
|
+
var _Satellite = require("../../../Satellite");
|
14
|
+
var _satellitePrefixer = _interopRequireDefault(require("../../../styles/helpers/satellitePrefixer"));
|
15
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
16
|
+
var _templateObject;
|
17
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
18
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
|
19
|
+
var DatePickerPopover = exports.DatePickerPopover = function DatePickerPopover(_ref) {
|
20
|
+
var isOpen = _ref.isOpen,
|
21
|
+
onOpenChange = _ref.onOpenChange,
|
22
|
+
trigger = _ref.trigger,
|
23
|
+
children = _ref.children,
|
24
|
+
_ref$placement = _ref.placement,
|
25
|
+
placement = _ref$placement === void 0 ? "bottom-start" : _ref$placement,
|
26
|
+
onOpenAutoFocus = _ref.onOpenAutoFocus,
|
27
|
+
title = _ref.title,
|
28
|
+
className = _ref.className;
|
29
|
+
var createPortal = (0, _Satellite.useCreatePortal)();
|
30
|
+
var _ref2 = placement.split("-"),
|
31
|
+
_ref3 = (0, _slicedToArray2["default"])(_ref2, 2),
|
32
|
+
side = _ref3[0],
|
33
|
+
align = _ref3[1];
|
34
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(Popover.Root, {
|
35
|
+
open: isOpen,
|
36
|
+
onOpenChange: onOpenChange,
|
37
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(Popover.Trigger, {
|
38
|
+
asChild: true,
|
39
|
+
children: trigger
|
40
|
+
}), createPortal( /*#__PURE__*/(0, _jsxRuntime.jsx)(Popover.Content, {
|
41
|
+
side: side,
|
42
|
+
sideOffset: 16,
|
43
|
+
align: align,
|
44
|
+
collisionPadding: 16,
|
45
|
+
className: (0, _clsx["default"])((0, _satellitePrefixer["default"])(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["flex bg-white shadow-z400 z-popover relative overflow-auto max-w-[var(--radix-popover-content-available-width)] max-h-[var(--radix-popover-content-available-height)]"]))), className),
|
46
|
+
onOpenAutoFocus: onOpenAutoFocus,
|
47
|
+
"aria-label": title,
|
48
|
+
children: children
|
49
|
+
}))]
|
50
|
+
});
|
51
|
+
};
|
@@ -49,15 +49,15 @@ Object.keys(_FooterActions).forEach(function (key) {
|
|
49
49
|
}
|
50
50
|
});
|
51
51
|
});
|
52
|
-
var
|
53
|
-
Object.keys(
|
52
|
+
var _Popover = require("./Popover");
|
53
|
+
Object.keys(_Popover).forEach(function (key) {
|
54
54
|
if (key === "default" || key === "__esModule") return;
|
55
55
|
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
56
|
-
if (key in exports && exports[key] ===
|
56
|
+
if (key in exports && exports[key] === _Popover[key]) return;
|
57
57
|
Object.defineProperty(exports, key, {
|
58
58
|
enumerable: true,
|
59
59
|
get: function get() {
|
60
|
-
return
|
60
|
+
return _Popover[key];
|
61
61
|
}
|
62
62
|
});
|
63
63
|
});
|
@@ -1,5 +1,5 @@
|
|
1
1
|
import type { Locale as DateFnsLocale } from "date-fns";
|
2
|
-
import type {
|
2
|
+
import type { DatePickerPopoverProps } from "./components";
|
3
3
|
export declare type DatePickerLocale = {
|
4
4
|
/** The date-fns locale object used to localize dates. Defaults to* `en-US`. */
|
5
5
|
formatter?: DateFnsLocale;
|
@@ -14,9 +14,10 @@ export declare type DatePickerLocale = {
|
|
14
14
|
apply?: string;
|
15
15
|
nextMonth?: string;
|
16
16
|
previousMonth?: string;
|
17
|
+
title?: string;
|
17
18
|
};
|
18
19
|
export declare type SharedDatePickerProps = {
|
19
|
-
modalPlacement?:
|
20
|
+
modalPlacement?: DatePickerPopoverProps["placement"];
|
20
21
|
locale?: DatePickerLocale;
|
21
22
|
} & ({
|
22
23
|
editableYear?: false;
|
@@ -22,6 +22,9 @@ export interface ClickAwayContainerProps {
|
|
22
22
|
* Most libraries handling "click outside" functionality assume that the dom tree matches the React tree,
|
23
23
|
* but it's not the case when using portals.
|
24
24
|
* This component allows click-away functionality even when portals are involved.
|
25
|
+
*
|
26
|
+
* @deprecated This component is deprecated and will be removed in a future version.
|
27
|
+
* Please use the Popover component, which provides built-in click-away behavior and is more accessible.
|
25
28
|
*/
|
26
29
|
export declare const ClickAwayContainer: VFC<ClickAwayContainerProps>;
|
27
30
|
export {};
|
@@ -23,6 +23,9 @@ var AWAY_EVENTS = ["mousedown", "touchstart", "focusin"];
|
|
23
23
|
* Most libraries handling "click outside" functionality assume that the dom tree matches the React tree,
|
24
24
|
* but it's not the case when using portals.
|
25
25
|
* This component allows click-away functionality even when portals are involved.
|
26
|
+
*
|
27
|
+
* @deprecated This component is deprecated and will be removed in a future version.
|
28
|
+
* Please use the Popover component, which provides built-in click-away behavior and is more accessible.
|
26
29
|
*/
|
27
30
|
var ClickAwayContainer = exports.ClickAwayContainer = function ClickAwayContainer(_ref) {
|
28
31
|
var element = _ref.element,
|
@@ -28,14 +28,11 @@ var Separator = exports.Separator = function Separator(_ref) {
|
|
28
28
|
_ref$orientation = _ref.orientation,
|
29
29
|
orientation = _ref$orientation === void 0 ? "horizontal" : _ref$orientation;
|
30
30
|
var interactiveProps = interactive ? {
|
31
|
-
decorative: false,
|
32
31
|
tabIndex: 0,
|
33
32
|
"aria-valuemax": 100,
|
34
33
|
"aria-valuemin": 0,
|
35
34
|
"aria-valuenow": 50
|
36
|
-
} : {
|
37
|
-
decorative: true
|
38
|
-
};
|
35
|
+
} : {};
|
39
36
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(RadixSeparator.Root, _objectSpread({
|
40
37
|
className: (0, _clsx["default"])((0, _satellitePrefixer["default"])(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["separator"]))), className, interactive && (0, _satellitePrefixer["default"])(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["interactive"])))),
|
41
38
|
orientation: orientation
|
@@ -17,4 +17,4 @@ export { QueryBreakdownIcon } from "./QueryBreakdownIcon";
|
|
17
17
|
export { BulbIcon } from "./BulbIcon";
|
18
18
|
export { TestingIcon } from "./TestingIcon";
|
19
19
|
export { RocketIcon } from "./RocketIcon";
|
20
|
-
export { ActivityIcon, AirplayIcon, AlertCircleIcon, AlertOctagonIcon, AlertTriangleIcon, AlignCenterIcon, AlignJustifyIcon, AlignLeftIcon, AlignRightIcon, AnchorIcon, ApertureIcon, ArchiveIcon, ArrowDownCircleIcon, ArrowDownIcon, ArrowDownLeftIcon, ArrowDownRightIcon, ArrowLeftCircleIcon, ArrowLeftIcon, ArrowRightCircleIcon, ArrowRightIcon, ArrowUpCircleIcon, ArrowUpIcon, ArrowUpLeftIcon, ArrowUpRightIcon, AtSignIcon, AwardIcon, BanIcon, BarChart2Icon, BarChartIcon, BatteryChargingIcon, BatteryIcon, BellIcon, BellOffIcon, BluetoothIcon, BoldIcon, BookIcon, BookmarkIcon, BookOpenIcon, BoxIcon, BriefcaseIcon, CalendarIcon, CameraIcon, CameraOffIcon, CastIcon, CheckCircleIcon, CheckIcon, CheckSquareIcon, ChevronDownIcon, ChevronLeftIcon, ChevronRightIcon, ChevronsDownIcon, ChevronsLeftIcon, ChevronsRightIcon, ChevronsUpIcon, ChevronUpIcon, ChromeIcon, CircleIcon, ClipboardIcon, ClockIcon, CloudDrizzleIcon, CloudIcon, CloudLightningIcon, CloudOffIcon, CloudRainIcon, CloudSnowIcon, CodeIcon, CodepenIcon, CodesandboxIcon, CoffeeIcon, ColumnsIcon, CommandIcon, CompassIcon, CopyIcon, CornerDownLeftIcon, CornerDownRightIcon, CornerLeftDownIcon, CornerLeftUpIcon, CornerRightDownIcon, CornerRightUpIcon, CornerUpLeftIcon, CornerUpRightIcon, CpuIcon, CreditCardIcon, CropIcon, CrosshairIcon, DatabaseIcon, DeleteIcon, DiscIcon, DivideCircleIcon, DivideIcon, DivideSquareIcon, DollarSignIcon, DownloadCloudIcon, DownloadIcon, DribbbleIcon, DropletIcon, Edit2Icon, Edit3Icon, EditIcon, ExternalLinkIcon, EyeIcon, EyeOffIcon, FacebookIcon, FastForwardIcon, FeatherIcon, FigmaIcon, FileIcon, FileMinusIcon, FilePlusIcon, FileSearchIcon, FileTextIcon, FilmIcon, FilterIcon, FlagIcon, FlaskConicalIcon, FolderIcon, FolderMinusIcon, FolderPlusIcon, FramerIcon, FrownIcon, GiftIcon, GitBranchIcon, GitCommitIcon, GithubIcon, GitlabIcon, GitMergeIcon, GitPullRequestIcon, GlobeIcon, HardDriveIcon, HashIcon, HeadphonesIcon, HeartIcon, HelpCircleIcon, HexagonIcon, HomeIcon, ImageIcon, ImageOffIcon, InboxIcon, InfoIcon, InstagramIcon, ItalicIcon, KeyIcon, Landmark, LayersIcon, LayoutGridIcon, LayoutIcon, LifeBuoyIcon, Link2Icon, LinkedinIcon, LinkIcon, ListIcon, LoaderIcon, LockIcon, LogInIcon, LogOutIcon, MailIcon, MapIcon, MapPinIcon, Maximize2Icon, MaximizeIcon, MehIcon, MenuIcon, MessageCircleIcon, MessageSquareIcon, MicIcon, MicOffIcon, Minimize2Icon, MinimizeIcon, MinusCircleIcon, MinusIcon, MinusSquareIcon, MonitorIcon, MoonIcon, MoreHorizontalIcon, MoreVerticalIcon, MousePointerIcon, MoveIcon, MusicIcon, Navigation2Icon, NavigationIcon, OctagonIcon, PackageIcon, PaperclipIcon, PauseCircleIcon, PauseIcon, PenToolIcon, PercentIcon, PhoneCallIcon, PhoneForwardedIcon, PhoneIcon, PhoneIncomingIcon, PhoneMissedIcon, PhoneOffIcon, PhoneOutgoingIcon, PieChartIcon, PlayCircleIcon, PlayIcon, PlusCircleIcon, PlusIcon, PlusSquareIcon, PocketIcon, PowerIcon, PrinterIcon, RadioIcon, RefreshCcwIcon, RefreshCwIcon, RepeatIcon, RewindIcon, RotateCcwIcon, RotateCwIcon, RssIcon, SaveIcon, ScissorsIcon, SearchIcon, SearchXIcon, SendIcon, ServerCogIcon, ServerCrashIcon, ServerIcon, SettingsIcon, Share2Icon, ShareIcon, ShieldIcon, ShieldOffIcon, ShoppingBagIcon, ShoppingCartIcon, ShuffleIcon, SidebarIcon, SkipBackIcon, SkipForwardIcon, SlackIcon, SlidersIcon, SmartphoneIcon, SmileIcon, SpeakerIcon, SquareIcon, StarIcon, StopCircleIcon, SunIcon, SunriseIcon, SunsetIcon, TableIcon, TabletIcon, TagIcon, TargetIcon, TerminalIcon, ThermometerIcon, ThumbsDownIcon, ThumbsUpIcon, ToggleLeftIcon, ToggleRightIcon, Trash2Icon, TrashIcon, TrelloIcon, TrendingDownIcon, TrendingUpIcon, TriangleIcon, TruckIcon, TvIcon, TwitchIcon, TwitterIcon, TypeIcon, UmbrellaIcon, UnderlineIcon, UnlockIcon, UploadCloudIcon, UploadIcon, UserCheckIcon, UserIcon, UserMinusIcon, UserPlusIcon, UsersIcon, UserXIcon, VideoIcon, VideoOffIcon, VoicemailIcon, Volume1Icon, Volume2Icon, VolumeIcon, VolumeXIcon, WatchIcon, WifiIcon, WifiOffIcon, WindIcon, WrenchIcon, XCircleIcon, XIcon, XOctagonIcon, XSquareIcon, YoutubeIcon, ZapIcon, ZapOffIcon, ZoomInIcon, ZoomOutIcon, } from "lucide-react";
|
20
|
+
export { ActivityIcon, AirplayIcon, AlertCircleIcon, AlertOctagonIcon, AlertTriangleIcon, AlignCenterIcon, AlignJustifyIcon, AlignLeftIcon, AlignRightIcon, AnchorIcon, ApertureIcon, ArchiveIcon, ArrowDownCircleIcon, ArrowDownIcon, ArrowDownLeftIcon, ArrowDownRightIcon, ArrowLeftCircleIcon, ArrowLeftIcon, ArrowRightCircleIcon, ArrowRightIcon, ArrowUpCircleIcon, ArrowUpIcon, ArrowUpLeftIcon, ArrowUpRightIcon, AtSignIcon, AwardIcon, BanIcon, BarChart2Icon, BarChartIcon, BatteryChargingIcon, BatteryIcon, BellIcon, BellOffIcon, BluetoothIcon, BoldIcon, BookIcon, BookmarkIcon, BookOpenIcon, BoxIcon, BriefcaseIcon, CalendarIcon, CameraIcon, CameraOffIcon, CastIcon, CheckCircleIcon, CheckIcon, CheckSquareIcon, ChevronDownIcon, ChevronLeftIcon, ChevronRightIcon, ChevronsDownIcon, ChevronsLeftIcon, ChevronsRightIcon, ChevronsUpIcon, ChevronUpIcon, ChromeIcon, CircleIcon, ClipboardIcon, ClockIcon, CloudDrizzleIcon, CloudIcon, CloudLightningIcon, CloudOffIcon, CloudRainIcon, CloudSnowIcon, CodeIcon, CodepenIcon, CodesandboxIcon, CoffeeIcon, ColumnsIcon, CommandIcon, CompassIcon, CopyIcon, CornerDownLeftIcon, CornerDownRightIcon, CornerLeftDownIcon, CornerLeftUpIcon, CornerRightDownIcon, CornerRightUpIcon, CornerUpLeftIcon, CornerUpRightIcon, CpuIcon, CreditCardIcon, CropIcon, CrosshairIcon, DatabaseIcon, DeleteIcon, DiscIcon, DivideCircleIcon, DivideIcon, DivideSquareIcon, DollarSignIcon, DownloadCloudIcon, DownloadIcon, DribbbleIcon, DropletIcon, Edit2Icon, Edit3Icon, EditIcon, ExternalLinkIcon, EyeIcon, EyeOffIcon, FacebookIcon, FastForwardIcon, FeatherIcon, FigmaIcon, FileIcon, FileMinusIcon, FilePlusIcon, FileSearchIcon, FileTextIcon, FilmIcon, FilterIcon, FlagIcon, FlaskConicalIcon, FolderIcon, FolderMinusIcon, FolderPlusIcon, FramerIcon, FrownIcon, GiftIcon, GitBranchIcon, GitCommitIcon, GithubIcon, GitlabIcon, GitMergeIcon, GitPullRequestIcon, GlobeIcon, HardDriveIcon, HashIcon, HeadphonesIcon, HeartIcon, HelpCircleIcon, HexagonIcon, HomeIcon, ImageIcon, ImageOffIcon, InboxIcon, InfoIcon, InstagramIcon, ItalicIcon, KeyIcon, Landmark, LayersIcon, LayoutGridIcon, LayoutIcon, LifeBuoyIcon, Link2Icon, LinkedinIcon, LinkIcon, ListIcon, LoaderIcon, LockIcon, LogInIcon, LogOutIcon, MailIcon, MapIcon, MapPinIcon, Maximize2Icon, MaximizeIcon, MehIcon, MenuIcon, MergeIcon, MessageCircleIcon, MessageSquareIcon, MicIcon, MicOffIcon, Minimize2Icon, MinimizeIcon, MinusCircleIcon, MinusIcon, MinusSquareIcon, MonitorIcon, MoonIcon, MoreHorizontalIcon, MoreVerticalIcon, MousePointerIcon, MoveIcon, MusicIcon, Navigation2Icon, NavigationIcon, OctagonIcon, PackageIcon, PaperclipIcon, PauseCircleIcon, PauseIcon, PenToolIcon, PercentIcon, PhoneCallIcon, PhoneForwardedIcon, PhoneIcon, PhoneIncomingIcon, PhoneMissedIcon, PhoneOffIcon, PhoneOutgoingIcon, PieChartIcon, PlayCircleIcon, PlayIcon, PlusCircleIcon, PlusIcon, PlusSquareIcon, PocketIcon, PowerIcon, PrinterIcon, RadioIcon, RefreshCcwIcon, RefreshCwIcon, RepeatIcon, RewindIcon, RotateCcwIcon, RotateCwIcon, RssIcon, SaveIcon, ScissorsIcon, SearchIcon, SearchXIcon, SendIcon, ServerCogIcon, ServerCrashIcon, ServerIcon, SettingsIcon, Share2Icon, ShareIcon, ShieldIcon, ShieldOffIcon, ShoppingBagIcon, ShoppingCartIcon, ShuffleIcon, SidebarIcon, SkipBackIcon, SkipForwardIcon, SlackIcon, SlidersIcon, SmartphoneIcon, SmileIcon, SpeakerIcon, SquareIcon, StarIcon, StopCircleIcon, SunIcon, SunriseIcon, SunsetIcon, TableIcon, TabletIcon, TagIcon, TargetIcon, TerminalIcon, ThermometerIcon, ThumbsDownIcon, ThumbsUpIcon, ToggleLeftIcon, ToggleRightIcon, Trash2Icon, TrashIcon, TrelloIcon, TrendingDownIcon, TrendingUpIcon, TriangleIcon, TruckIcon, TvIcon, TwitchIcon, TwitterIcon, TypeIcon, UmbrellaIcon, UnderlineIcon, UnlockIcon, UploadCloudIcon, UploadIcon, UserCheckIcon, UserIcon, UserMinusIcon, UserPlusIcon, UsersIcon, UserXIcon, VideoIcon, VideoOffIcon, VoicemailIcon, Volume1Icon, Volume2Icon, VolumeIcon, VolumeXIcon, WatchIcon, WifiIcon, WifiOffIcon, WindIcon, WrenchIcon, XCircleIcon, XIcon, XOctagonIcon, XSquareIcon, YoutubeIcon, ZapIcon, ZapOffIcon, ZoomInIcon, ZoomOutIcon, } from "lucide-react";
|
package/dist/cjs/Icons/index.js
CHANGED
@@ -1011,6 +1011,12 @@ Object.defineProperty(exports, "MenuIcon", {
|
|
1011
1011
|
return _lucideReact.MenuIcon;
|
1012
1012
|
}
|
1013
1013
|
});
|
1014
|
+
Object.defineProperty(exports, "MergeIcon", {
|
1015
|
+
enumerable: true,
|
1016
|
+
get: function get() {
|
1017
|
+
return _lucideReact.MergeIcon;
|
1018
|
+
}
|
1019
|
+
});
|
1014
1020
|
Object.defineProperty(exports, "MessageCircleIcon", {
|
1015
1021
|
enumerable: true,
|
1016
1022
|
get: function get() {
|
@@ -5,13 +5,12 @@ Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
value: true
|
6
6
|
});
|
7
7
|
exports.DataTable = void 0;
|
8
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
8
9
|
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
9
10
|
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
10
|
-
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
11
11
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
12
12
|
var _compact = _interopRequireDefault(require("lodash/compact"));
|
13
13
|
var _get = _interopRequireDefault(require("lodash/get"));
|
14
|
-
var _react = require("react");
|
15
14
|
var _Fields = require("../../../Fields");
|
16
15
|
var _Satellite = require("../../../Satellite");
|
17
16
|
var _satellitePrefixer = _interopRequireDefault(require("../../../styles/helpers/satellitePrefixer"));
|
@@ -83,14 +82,6 @@ var DataTable = exports.DataTable = function DataTable(_ref) {
|
|
83
82
|
console.warn("You can only have one selected item at a time in single `selectMode`.");
|
84
83
|
}
|
85
84
|
}
|
86
|
-
var _useState = (0, _react.useState)(),
|
87
|
-
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
88
|
-
hoveredRowId = _useState2[0],
|
89
|
-
setHoveredRowId = _useState2[1];
|
90
|
-
(0, _react.useEffect)(function () {
|
91
|
-
// Reset hovered row when data changes to avoid inconsistent state
|
92
|
-
setHoveredRowId(undefined);
|
93
|
-
}, [data]);
|
94
85
|
var computedColumns = (0, _compact["default"])([selectMode === "single" && {
|
95
86
|
id: "_internal_singleSelect",
|
96
87
|
accessor: "_internal_singleSelect",
|
@@ -107,7 +98,7 @@ var DataTable = exports.DataTable = function DataTable(_ref) {
|
|
107
98
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Fields.RadioButton, {
|
108
99
|
defaultChecked: row.selected,
|
109
100
|
disabled: !row.selectable,
|
110
|
-
className: (0, _satellitePrefixer["default"])(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["", ""])), row.
|
101
|
+
className: (0, _satellitePrefixer["default"])(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["", ""])), !row.selected && "select-none")
|
111
102
|
})
|
112
103
|
});
|
113
104
|
},
|
@@ -146,7 +137,7 @@ var DataTable = exports.DataTable = function DataTable(_ref) {
|
|
146
137
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Fields.Checkbox, {
|
147
138
|
checked: row.selected,
|
148
139
|
disabled: !row.selectable,
|
149
|
-
className: (0, _satellitePrefixer["default"])(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["", ""])), row.
|
140
|
+
className: (0, _satellitePrefixer["default"])(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["", ""])), !row.selected && "select-none")
|
150
141
|
})
|
151
142
|
});
|
152
143
|
},
|
@@ -165,14 +156,12 @@ var DataTable = exports.DataTable = function DataTable(_ref) {
|
|
165
156
|
var rows = data.map(function (item, index) {
|
166
157
|
var _ref4;
|
167
158
|
var id = typeof getItemIdInternal === "string" ? String((0, _get["default"])(item, getItemIdInternal, DEFAULT_GET_ITEM_ID(item, index))) : getItemIdInternal(item, index);
|
168
|
-
var hovered = hoveredRowId === id;
|
169
159
|
var sanitizedSelection = (_ref4 = selectMode === "single" ? selection === null || selection === void 0 ? void 0 : selection.slice(0, 1) : selectMode === "none" ? [] : selection) !== null && _ref4 !== void 0 ? _ref4 : [];
|
170
160
|
var selected = sanitizedSelection.includes(id);
|
171
161
|
var selectable = selectMode !== "none" && (!canSelectItem || canSelectItem(item, index));
|
172
162
|
return {
|
173
163
|
item: item,
|
174
164
|
id: id,
|
175
|
-
hovered: hovered,
|
176
165
|
selected: selected,
|
177
166
|
selectable: selectable
|
178
167
|
};
|
@@ -194,7 +183,6 @@ var DataTable = exports.DataTable = function DataTable(_ref) {
|
|
194
183
|
return false;
|
195
184
|
};
|
196
185
|
var onRowHoverChange = function onRowHoverChange(row) {
|
197
|
-
setHoveredRowId(row === null || row === void 0 ? void 0 : row.id);
|
198
186
|
onRowHoveredChanged === null || onRowHoveredChanged === void 0 || onRowHoveredChanged(row);
|
199
187
|
};
|
200
188
|
var onToggleSort = function onToggleSort(columnId, direction) {
|
@@ -44,7 +44,7 @@ export declare type ModalProps = XOR<ModalControlledProps, ModalUncontrolledProp
|
|
44
44
|
* The element that should receive focus once the `Modal` is opened.
|
45
45
|
* If unspecified, the first focusable element will be focused.
|
46
46
|
* If an element is passed, it will be focused.
|
47
|
-
* If '
|
47
|
+
* If 'skipContent' is passed, the close button will be focused if present, with a fallback on the dialog element itself.
|
48
48
|
*/
|
49
49
|
autoFocusOnOpenElement?: HTMLElement | null | "skipContent";
|
50
50
|
children: ReactNode;
|
@@ -9,6 +9,7 @@ exports.Modal = void 0;
|
|
9
9
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
10
10
|
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
11
11
|
var Dialog = _interopRequireWildcard(require("@radix-ui/react-dialog"));
|
12
|
+
var _reactVisuallyHidden = require("@radix-ui/react-visually-hidden");
|
12
13
|
var _clsx = _interopRequireDefault(require("clsx"));
|
13
14
|
var _react = require("react");
|
14
15
|
var _Actions = require("../../Actions");
|
@@ -83,6 +84,7 @@ var Modal = exports.Modal = function Modal(_ref) {
|
|
83
84
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(Dialog.Content, {
|
84
85
|
ref: dialogContentRef,
|
85
86
|
className: (0, _clsx["default"])((0, _satellitePrefixer["default"])(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["modal-content"]))), SIZE_CLASSNAMES[size], centerY && (0, _satellitePrefixer["default"])(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["flex m-auto"])))),
|
87
|
+
"aria-describedby": undefined,
|
86
88
|
onOpenAutoFocus: function onOpenAutoFocus(e) {
|
87
89
|
var _closeButtonRef$curre;
|
88
90
|
if (!autoFocusOnOpenElement) return;
|
@@ -98,8 +100,6 @@ var Modal = exports.Modal = function Modal(_ref) {
|
|
98
100
|
autoFocusOnCloseElement.focus();
|
99
101
|
}
|
100
102
|
},
|
101
|
-
"aria-label": !title ? locale.modalTitle : undefined,
|
102
|
-
"aria-describedby": undefined,
|
103
103
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
104
104
|
className: (0, _satellitePrefixer["default"])(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["modal-container"]))),
|
105
105
|
children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_Layout.Card, {
|
@@ -109,9 +109,14 @@ var Modal = exports.Modal = function Modal(_ref) {
|
|
109
109
|
fullBleed: true,
|
110
110
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("header", {
|
111
111
|
className: (0, _clsx["default"])((0, _satellitePrefixer["default"])(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2["default"])(["min-h-14 flex items-center justify-between space-x-2"]))), title ? (0, _satellitePrefixer["default"])(_templateObject10 || (_templateObject10 = (0, _taggedTemplateLiteral2["default"])(["border-b border-grey-100 pl-8 pr-16"]))) : (0, _satellitePrefixer["default"])(_templateObject11 || (_templateObject11 = (0, _taggedTemplateLiteral2["default"])(["justify-end px-8"]))), !title && hideCloseIcon && (0, _satellitePrefixer["default"])(_templateObject12 || (_templateObject12 = (0, _taggedTemplateLiteral2["default"])(["hidden"])))),
|
112
|
-
children:
|
113
|
-
|
114
|
-
children: title
|
112
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(Dialog.Title, {
|
113
|
+
asChild: true,
|
114
|
+
children: title ? /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
115
|
+
className: (0, _satellitePrefixer["default"])(_templateObject13 || (_templateObject13 = (0, _taggedTemplateLiteral2["default"])(["flex-1 display-heading truncate"]))),
|
116
|
+
children: title
|
117
|
+
}) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactVisuallyHidden.VisuallyHidden, {
|
118
|
+
children: locale.modalTitle
|
119
|
+
})
|
115
120
|
})
|
116
121
|
}), /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
117
122
|
className: (0, _clsx["default"])(!fullBleed && (0, _satellitePrefixer["default"])(_templateObject14 || (_templateObject14 = (0, _taggedTemplateLiteral2["default"])(["p-10"])))),
|
@@ -19,7 +19,7 @@ var _satellitePrefixer = _interopRequireDefault(require("../../styles/helpers/sa
|
|
19
19
|
var _utils = require("../../utils");
|
20
20
|
var _jsxRuntime = require("react/jsx-runtime");
|
21
21
|
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8;
|
22
|
-
var _excluded = ["children", "title", "subtitle", "content", "footer", "open", "onDismiss", "side", "sideOffset", "align", "alignOffset", "noArrow", "avoidCollisions", "autoFocusOnOpenElement", "locale"];
|
22
|
+
var _excluded = ["children", "title", "subtitle", "content", "footer", "open", "onDismiss", "side", "sideOffset", "align", "alignOffset", "noArrow", "noCloseButton", "avoidCollisions", "autoFocusOnOpenElement", "locale"];
|
23
23
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
24
24
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
|
25
25
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
@@ -52,6 +52,8 @@ var Popover = exports.Popover = function Popover(_ref) {
|
|
52
52
|
alignOffset = _ref$alignOffset === void 0 ? 0 : _ref$alignOffset,
|
53
53
|
_ref$noArrow = _ref.noArrow,
|
54
54
|
noArrow = _ref$noArrow === void 0 ? false : _ref$noArrow,
|
55
|
+
_ref$noCloseButton = _ref.noCloseButton,
|
56
|
+
noCloseButton = _ref$noCloseButton === void 0 ? false : _ref$noCloseButton,
|
55
57
|
_ref$avoidCollisions = _ref.avoidCollisions,
|
56
58
|
avoidCollisions = _ref$avoidCollisions === void 0 ? true : _ref$avoidCollisions,
|
57
59
|
autoFocusOnOpenElement = _ref.autoFocusOnOpenElement,
|
@@ -64,6 +66,7 @@ var Popover = exports.Popover = function Popover(_ref) {
|
|
64
66
|
}, []);
|
65
67
|
var isControlled = typeof open !== "undefined";
|
66
68
|
var triggerRef = (0, _react.useRef)(null);
|
69
|
+
var closeButtonRef = (0, _react.useRef)(null);
|
67
70
|
var createPortal = (0, _Satellite.useCreatePortal)();
|
68
71
|
if (children.type === _react.Fragment) {
|
69
72
|
throw new Error("Popover component doesn't accept a Fragment as a child.");
|
@@ -80,16 +83,21 @@ var Popover = exports.Popover = function Popover(_ref) {
|
|
80
83
|
asChild: true,
|
81
84
|
children: children
|
82
85
|
}), createPortal( /*#__PURE__*/(0, _jsxRuntime.jsxs)(PopoverPrimitive.Content, _objectSpread(_objectSpread({}, props), {}, {
|
83
|
-
"aria-labelledby": titleId,
|
86
|
+
"aria-labelledby": title ? titleId : undefined,
|
84
87
|
className: (0, _clsx["default"])((0, _satellitePrefixer["default"])(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["text-grey-900 bg-white z-popover shadow-z200 min-w-48 max-w-128 rounded typo-display-body animate-slide"]))), props.className),
|
85
88
|
side: side,
|
86
89
|
sideOffset: 8 + sideOffset,
|
87
90
|
align: align,
|
88
91
|
alignOffset: alignOffset,
|
89
92
|
avoidCollisions: avoidCollisions,
|
93
|
+
collisionPadding: 16,
|
90
94
|
onOpenAutoFocus: function onOpenAutoFocus(e) {
|
91
95
|
if (autoFocusOnOpenElement === false) {
|
92
96
|
e.preventDefault();
|
97
|
+
} else if (autoFocusOnOpenElement === "skipContent") {
|
98
|
+
var _closeButtonRef$curre;
|
99
|
+
e.preventDefault();
|
100
|
+
(_closeButtonRef$curre = closeButtonRef.current) === null || _closeButtonRef$curre === void 0 || _closeButtonRef$curre.focus();
|
93
101
|
} else if (autoFocusOnOpenElement instanceof HTMLElement) {
|
94
102
|
e.preventDefault();
|
95
103
|
autoFocusOnOpenElement.focus();
|
@@ -108,8 +116,8 @@ var Popover = exports.Popover = function Popover(_ref) {
|
|
108
116
|
}
|
109
117
|
},
|
110
118
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
111
|
-
className: (0, _satellitePrefixer["default"])(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["relative p-4 flex flex-col gap-2 overflow-auto min-h-20 max-
|
112
|
-
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
119
|
+
className: (0, _satellitePrefixer["default"])(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["relative p-4 flex flex-col gap-2 overflow-auto min-h-20 max-w-[var(--radix-popover-content-available-width)] max-h-[var(--radix-popover-content-available-height)]"]))),
|
120
|
+
children: [!!title && /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
113
121
|
id: titleId,
|
114
122
|
className: (0, _satellitePrefixer["default"])(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["font-semibold pr-8"]))),
|
115
123
|
children: title
|
@@ -122,7 +130,8 @@ var Popover = exports.Popover = function Popover(_ref) {
|
|
122
130
|
}), !!footer && /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
123
131
|
className: (0, _satellitePrefixer["default"])(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["mt-2"]))),
|
124
132
|
children: footer
|
125
|
-
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(PopoverPrimitive.Close, {
|
133
|
+
}), !noCloseButton && /*#__PURE__*/(0, _jsxRuntime.jsx)(PopoverPrimitive.Close, {
|
134
|
+
ref: closeButtonRef,
|
126
135
|
className: (0, _satellitePrefixer["default"])(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["absolute top-2 right-2"]))),
|
127
136
|
asChild: true,
|
128
137
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Actions.IconButton, {
|
@@ -3,16 +3,12 @@ import type { HTMLAttributes, ReactElement, ReactNode } from "react";
|
|
3
3
|
export declare type PopoverLocale = {
|
4
4
|
dismissText?: string;
|
5
5
|
};
|
6
|
-
|
6
|
+
interface PopoverPropsBase extends Omit<HTMLAttributes<HTMLDivElement>, "title" | "content" | "aria-label"> {
|
7
7
|
/**
|
8
8
|
* Defines the trigger element of the `Popover`.
|
9
9
|
* It should be a button element.
|
10
10
|
*/
|
11
11
|
children: ReactElement;
|
12
|
-
/**
|
13
|
-
* Defines the title of the `Popover`.
|
14
|
-
*/
|
15
|
-
title: ReactNode;
|
16
12
|
/**
|
17
13
|
* Defines the subtitle of the `Popover`.
|
18
14
|
*/
|
@@ -57,18 +53,46 @@ export interface PopoverProps extends Omit<HTMLAttributes<HTMLDivElement>, "titl
|
|
57
53
|
* Defines whether the `Popover` arrow should be hidden.
|
58
54
|
*/
|
59
55
|
noArrow?: boolean;
|
56
|
+
/**
|
57
|
+
* Defines whether the `Popover` close button should be hidden.
|
58
|
+
*/
|
59
|
+
noCloseButton?: boolean;
|
60
60
|
/**
|
61
61
|
* Defines whether the `Popover` should avoid collisions with the viewport.
|
62
62
|
*/
|
63
63
|
avoidCollisions?: boolean;
|
64
64
|
/**
|
65
65
|
* The element that should receive focus once the `Popover` is opened.
|
66
|
-
* If
|
67
|
-
* If
|
66
|
+
* If unspecified, the first focusable element will be focused.
|
67
|
+
* If an element is passed, it will be focused.
|
68
|
+
* If `false`, no element will be focused automatically for you. You should manage focus yourself.
|
69
|
+
* If 'skipContent' is passed, the close button will be focused.
|
68
70
|
*/
|
69
|
-
autoFocusOnOpenElement?: HTMLElement | null | false;
|
71
|
+
autoFocusOnOpenElement?: HTMLElement | null | false | "skipContent";
|
70
72
|
/**
|
71
73
|
* Defines the locale of the `Popover`.
|
72
74
|
*/
|
73
75
|
locale?: PopoverLocale;
|
74
76
|
}
|
77
|
+
declare type PopoverPropsWithTitle = {
|
78
|
+
/**
|
79
|
+
* Defines the title of the `Popover`.
|
80
|
+
*/
|
81
|
+
title: ReactNode;
|
82
|
+
/**
|
83
|
+
* Defines the aria-label of the `Popover`.
|
84
|
+
*/
|
85
|
+
"aria-label"?: string;
|
86
|
+
} & PopoverPropsBase;
|
87
|
+
declare type PopoverPropsWithAriaLabel = {
|
88
|
+
/**
|
89
|
+
* Defines the title of the `Popover`.
|
90
|
+
*/
|
91
|
+
title?: undefined;
|
92
|
+
/**
|
93
|
+
* Defines the aria-label of the `Popover`.
|
94
|
+
*/
|
95
|
+
"aria-label": string;
|
96
|
+
} & PopoverPropsBase;
|
97
|
+
export declare type PopoverProps = PopoverPropsWithTitle | PopoverPropsWithAriaLabel;
|
98
|
+
export {};
|
@@ -1,5 +1,4 @@
|
|
1
|
-
export
|
2
|
-
export { Accordion as ExperimentalAccordion } from "./Accordion/Accordion";
|
1
|
+
export * from "./Accordion/Accordion";
|
3
2
|
export * from "./Button/Button";
|
4
3
|
export * from "./ButtonGroup/ButtonGroup";
|
5
4
|
export * from "./ButtonLink/ButtonLink";
|