@algolia/satellite 1.6.0 → 1.8.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/dist/cjs/Actions/Accordion/Accordion.d.ts +142 -0
- package/dist/cjs/Actions/Accordion/Accordion.js +149 -0
- package/dist/cjs/Actions/Accordion/Accordion.tailwind.d.ts +5 -0
- package/dist/cjs/Actions/Accordion/Accordion.tailwind.js +44 -0
- package/dist/cjs/Actions/Button/PolymorphicButton.js +2 -2
- package/dist/cjs/Actions/Button/PolymorphicIconButton.js +2 -2
- package/dist/cjs/Actions/Button/types.d.ts +2 -2
- package/dist/cjs/Actions/ToggleGroup/ToggleGroup.d.ts +2 -2
- package/dist/cjs/Actions/index.d.ts +2 -0
- package/dist/cjs/Actions/index.js +18 -0
- package/dist/cjs/Fields/AutoComplete/AutoComplete.js +4 -4
- package/dist/cjs/Fields/DatePicker/components/Calendar.js +1 -4
- package/dist/cjs/Fields/Field/Field.js +12 -2
- package/dist/cjs/Fields/Field/FieldContext.d.ts +1 -0
- package/dist/cjs/Fields/Field/useField.d.ts +2 -1
- package/dist/cjs/Fields/Field/useField.js +7 -2
- package/dist/cjs/Fields/Form/Form.d.ts +12 -10
- package/dist/cjs/Fields/Form/Form.js +50 -38
- package/dist/cjs/Fields/Form/FormContext.d.ts +6 -6
- package/dist/cjs/Fields/Form/FormContext.js +2 -2
- package/dist/cjs/Fields/Form/index.d.ts +4 -3
- package/dist/cjs/Fields/Form/index.js +31 -21
- package/dist/cjs/Fields/Form/stories/AsynchronousValidation.js +142 -127
- package/dist/cjs/Fields/Form/stories/Complex.js +648 -642
- package/dist/cjs/Fields/Form/stories/DependentFieldsValidation.js +127 -121
- package/dist/cjs/Fields/Form/stories/DirtyFields.js +195 -189
- package/dist/cjs/Fields/Form/stories/DynamicFieldsValidation.js +251 -245
- package/dist/cjs/Fields/Form/stories/ExtraErrors.js +276 -0
- package/dist/cjs/Fields/Form/stories/FieldArrays.js +180 -174
- package/dist/cjs/Fields/Form/stories/JSONForms.js +58 -55
- package/dist/cjs/Fields/Form/stories/MultiStep.js +456 -472
- package/dist/cjs/Fields/Form/stories/ValidationStrategies.js +226 -237
- package/dist/cjs/Fields/Form/useForm.d.ts +1 -1
- package/dist/cjs/Fields/Form/useForm.js +3 -3
- package/dist/cjs/Fields/RangeSlider/RangeSlider.js +7 -8
- package/dist/cjs/Helpers/utilities/focusable.tailwind.js +1 -1
- package/dist/cjs/Indicators/ScrollIndicator/ScrollIndicator.js +1 -2
- package/dist/cjs/Indicators/Skeleton/Skeleton.d.ts +7 -0
- package/dist/cjs/Indicators/Skeleton/Skeleton.js +12 -5
- package/dist/cjs/Layout/Sidebar/SidebarButtonLink.js +1 -1
- package/dist/cjs/Layout/Sidebar/SidebarLink.js +2 -2
- package/dist/cjs/Layout/Sidebar/SidebarLinksGroup/SidebarGroupLink.js +1 -1
- package/dist/cjs/Layout/Sidebar/SidebarLinksGroup/SidebarLinksGroup.js +4 -5
- package/dist/cjs/Layout/Tables/DataTable/DataTable.d.ts +3 -1
- package/dist/cjs/Layout/Tables/DataTable/DataTable.js +3 -0
- package/dist/cjs/Layout/Tables/DataTable/components/Body.d.ts +1 -1
- package/dist/cjs/Layout/Tables/DataTable/components/Header.d.ts +1 -1
- package/dist/cjs/Layout/Tables/DataTable/components/HeaderCell.d.ts +1 -1
- package/dist/cjs/Layout/Tables/DataTable/utils.d.ts +1 -1
- package/dist/cjs/Layout/Tables/Table/Table.d.ts +2 -0
- package/dist/cjs/Layout/Tables/Table/Table.js +4 -2
- package/dist/cjs/Layout/Tables/Table/Table.tailwind.js +6 -1
- package/dist/cjs/Navigation/Stepper/Step.js +8 -7
- package/dist/cjs/Navigation/Stepper/Stepper.d.ts +6 -0
- package/dist/cjs/Navigation/Stepper/Stepper.js +9 -3
- package/dist/cjs/Navigation/Stepper/StepperContext.d.ts +2 -1
- package/dist/cjs/Overlay/Dropdown/DropdownContext.d.ts +1 -1
- package/dist/cjs/Overlay/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItemsGroupContext.d.ts +1 -1
- package/dist/cjs/Overlay/MenuButton/components/collapsible/CollapsibleItemsGroupContext.d.ts +1 -1
- package/dist/cjs/Overlay/MenuButton/components/items/LinkItem.d.ts +1 -1
- package/dist/cjs/Overlay/MenuButton/components/items/ToggleItem.d.ts +1 -1
- package/dist/cjs/styles/helpers/makePurgeCssExtractor.js +3 -3
- package/dist/cjs/styles/tailwind.config.js +1 -1
- package/dist/cjs/utils/isCssPropertySupported.d.ts +1 -1
- package/dist/cjs/utils/useTriggerInputChange.js +4 -3
- package/dist/esm/Actions/Accordion/Accordion.d.ts +142 -0
- package/dist/esm/Actions/Accordion/Accordion.js +139 -0
- package/dist/esm/Actions/Accordion/Accordion.tailwind.d.ts +5 -0
- package/dist/esm/Actions/Accordion/Accordion.tailwind.js +43 -0
- package/dist/esm/Actions/Button/PolymorphicButton.js +2 -2
- package/dist/esm/Actions/Button/PolymorphicIconButton.js +2 -2
- package/dist/esm/Actions/Button/types.d.ts +2 -2
- package/dist/esm/Actions/ToggleGroup/ToggleGroup.d.ts +2 -2
- package/dist/esm/Actions/index.d.ts +2 -0
- package/dist/esm/Actions/index.js +2 -2
- package/dist/esm/Fields/AutoComplete/AutoComplete.js +4 -4
- package/dist/esm/Fields/DatePicker/components/Calendar.js +1 -4
- package/dist/esm/Fields/Field/Field.js +13 -3
- package/dist/esm/Fields/Field/FieldContext.d.ts +1 -0
- package/dist/esm/Fields/Field/useField.d.ts +2 -1
- package/dist/esm/Fields/Field/useField.js +7 -2
- package/dist/esm/Fields/Form/Form.d.ts +12 -10
- package/dist/esm/Fields/Form/Form.js +52 -40
- package/dist/esm/Fields/Form/FormContext.d.ts +6 -6
- package/dist/esm/Fields/Form/FormContext.js +1 -1
- package/dist/esm/Fields/Form/index.d.ts +4 -3
- package/dist/esm/Fields/Form/index.js +2 -3
- package/dist/esm/Fields/Form/stories/AsynchronousValidation.js +143 -128
- package/dist/esm/Fields/Form/stories/Complex.js +649 -643
- package/dist/esm/Fields/Form/stories/DependentFieldsValidation.js +128 -122
- package/dist/esm/Fields/Form/stories/DirtyFields.js +196 -190
- package/dist/esm/Fields/Form/stories/DynamicFieldsValidation.js +252 -246
- package/dist/esm/Fields/Form/stories/ExtraErrors.js +266 -0
- package/dist/esm/Fields/Form/stories/FieldArrays.js +181 -175
- package/dist/esm/Fields/Form/stories/JSONForms.js +59 -56
- package/dist/esm/Fields/Form/stories/MultiStep.js +457 -473
- package/dist/esm/Fields/Form/stories/ValidationStrategies.js +227 -238
- package/dist/esm/Fields/Form/useForm.d.ts +1 -1
- package/dist/esm/Fields/Form/useForm.js +3 -3
- package/dist/esm/Fields/RangeSlider/RangeSlider.js +8 -9
- package/dist/esm/Helpers/utilities/focusable.tailwind.js +1 -1
- package/dist/esm/Indicators/ScrollIndicator/ScrollIndicator.js +1 -2
- package/dist/esm/Indicators/Skeleton/Skeleton.d.ts +7 -0
- package/dist/esm/Indicators/Skeleton/Skeleton.js +12 -5
- package/dist/esm/Layout/Sidebar/SidebarButtonLink.js +1 -1
- package/dist/esm/Layout/Sidebar/SidebarLink.js +2 -2
- package/dist/esm/Layout/Sidebar/SidebarLinksGroup/SidebarGroupLink.js +1 -1
- package/dist/esm/Layout/Sidebar/SidebarLinksGroup/SidebarLinksGroup.js +4 -5
- package/dist/esm/Layout/Tables/DataTable/DataTable.d.ts +3 -1
- package/dist/esm/Layout/Tables/DataTable/DataTable.js +3 -0
- package/dist/esm/Layout/Tables/DataTable/components/Body.d.ts +1 -1
- package/dist/esm/Layout/Tables/DataTable/components/Header.d.ts +1 -1
- package/dist/esm/Layout/Tables/DataTable/components/HeaderCell.d.ts +1 -1
- package/dist/esm/Layout/Tables/DataTable/utils.d.ts +1 -1
- package/dist/esm/Layout/Tables/Table/Table.d.ts +2 -0
- package/dist/esm/Layout/Tables/Table/Table.js +4 -2
- package/dist/esm/Layout/Tables/Table/Table.tailwind.js +6 -1
- package/dist/esm/Navigation/Stepper/Step.js +8 -7
- package/dist/esm/Navigation/Stepper/Stepper.d.ts +6 -0
- package/dist/esm/Navigation/Stepper/Stepper.js +9 -3
- package/dist/esm/Navigation/Stepper/StepperContext.d.ts +2 -1
- package/dist/esm/Overlay/Dropdown/DropdownContext.d.ts +1 -1
- package/dist/esm/Overlay/Dropdown/components/DropdownCollapsibleItem/DropdownCollapsibleItemsGroupContext.d.ts +1 -1
- package/dist/esm/Overlay/MenuButton/components/collapsible/CollapsibleItemsGroupContext.d.ts +1 -1
- package/dist/esm/Overlay/MenuButton/components/items/LinkItem.d.ts +1 -1
- package/dist/esm/Overlay/MenuButton/components/items/ToggleItem.d.ts +1 -1
- package/dist/esm/styles/helpers/makePurgeCssExtractor.js +3 -3
- package/dist/esm/styles/tailwind.config.js +1 -1
- package/dist/esm/utils/isCssPropertySupported.d.ts +1 -1
- package/dist/esm/utils/useTriggerInputChange.js +4 -3
- package/dist/satellite.min.css +1 -1
- package/package.json +20 -19
@@ -0,0 +1,142 @@
|
|
1
|
+
import * as RadixAccordion from "@radix-ui/react-accordion";
|
2
|
+
import type { ReactNode, VFC } from "react";
|
3
|
+
import type { IconComponentType } from "../../Icons";
|
4
|
+
declare type AccordionSharedProps = {
|
5
|
+
children: ReactNode;
|
6
|
+
/**
|
7
|
+
* Defines a class name for the `Accordion`.
|
8
|
+
*/
|
9
|
+
className?: string;
|
10
|
+
/**
|
11
|
+
* Defines whether the `Accordion` is disabled, preventing the user from interacting with the accordion and all its items.
|
12
|
+
*/
|
13
|
+
disabled?: boolean;
|
14
|
+
};
|
15
|
+
declare type AccordionSingleProps = {
|
16
|
+
/**
|
17
|
+
* Defines whether a single or multiple items can be expanded at a time.
|
18
|
+
* @default false
|
19
|
+
*/
|
20
|
+
multiple?: false;
|
21
|
+
/**
|
22
|
+
* Defines the controlled value of the item to expand when `multiple` is `false`.
|
23
|
+
* Must be used in conjunction with `onValueChange`.
|
24
|
+
*/
|
25
|
+
value?: RadixAccordion.AccordionSingleProps["value"];
|
26
|
+
/**
|
27
|
+
* Defines the value of the item to expand when initially rendered and `multiple` is `false`.
|
28
|
+
* Use when you do not need to control the state of the items.
|
29
|
+
*/
|
30
|
+
defaultValue?: RadixAccordion.AccordionSingleProps["defaultValue"];
|
31
|
+
/**
|
32
|
+
* Defines the event handler called when the expanded state of an item changes and `multiple` is `false`.
|
33
|
+
*/
|
34
|
+
onChange?: RadixAccordion.AccordionSingleProps["onValueChange"];
|
35
|
+
/**
|
36
|
+
* Allows closing content when clicking trigger for an open item when `multiple` is `false`.
|
37
|
+
* @default true
|
38
|
+
*/
|
39
|
+
collapsible?: boolean;
|
40
|
+
};
|
41
|
+
declare type AccordionMultipleProps = {
|
42
|
+
/**
|
43
|
+
* Defines whether a single or multiple items can be expanded at a time.
|
44
|
+
* @default false
|
45
|
+
*/
|
46
|
+
multiple: true;
|
47
|
+
/**
|
48
|
+
* Defines the controlled value of the item to expand when `multiple` is `true`.
|
49
|
+
* Must be used in conjunction with `onValueChange`.
|
50
|
+
*/
|
51
|
+
value?: RadixAccordion.AccordionMultipleProps["value"];
|
52
|
+
/**
|
53
|
+
* Defines the value of the item to expand when initially rendered when `multiple` is `true`.
|
54
|
+
* Use when you do not need to control the state of the items.
|
55
|
+
*/
|
56
|
+
defaultValue?: RadixAccordion.AccordionMultipleProps["defaultValue"];
|
57
|
+
/**
|
58
|
+
* Defines the event handler called when the expanded state of an item changes and `multiple` is `true`.
|
59
|
+
*/
|
60
|
+
onChange?: RadixAccordion.AccordionMultipleProps["onValueChange"];
|
61
|
+
/**
|
62
|
+
* Only available when `multiple` is `false`.
|
63
|
+
*/
|
64
|
+
collapsible?: never;
|
65
|
+
};
|
66
|
+
export declare type AccordionProps = AccordionSharedProps & (AccordionSingleProps | AccordionMultipleProps);
|
67
|
+
export declare type AccordionItemProps = {
|
68
|
+
children: ReactNode;
|
69
|
+
/**
|
70
|
+
* Defines a class name for the item.
|
71
|
+
*/
|
72
|
+
className?: string;
|
73
|
+
/**
|
74
|
+
* Defines a unique value for the item.
|
75
|
+
*/
|
76
|
+
value: string;
|
77
|
+
/**
|
78
|
+
* Defines whether the item is disabled, preventing the user from interacting with the item.
|
79
|
+
*/
|
80
|
+
disabled?: boolean;
|
81
|
+
};
|
82
|
+
export declare type AccordionHeaderProps = {
|
83
|
+
/**
|
84
|
+
* Defines the title of the header.
|
85
|
+
*/
|
86
|
+
children: ReactNode;
|
87
|
+
/**
|
88
|
+
* Defines a class name for the header.
|
89
|
+
*/
|
90
|
+
className?: string;
|
91
|
+
/**
|
92
|
+
* Defines an icon to display next to the title and description.
|
93
|
+
*/
|
94
|
+
icon?: IconComponentType;
|
95
|
+
/**
|
96
|
+
* Defines a class name for the icon.
|
97
|
+
*/
|
98
|
+
iconClassName?: string;
|
99
|
+
/**
|
100
|
+
* Defines a class name for the icon background.
|
101
|
+
*/
|
102
|
+
iconBgClassName?: string;
|
103
|
+
/**
|
104
|
+
* Defines a description for the header.
|
105
|
+
*/
|
106
|
+
description?: ReactNode;
|
107
|
+
/**
|
108
|
+
* Defines a meta value for the header.
|
109
|
+
*/
|
110
|
+
meta?: ReactNode;
|
111
|
+
/**
|
112
|
+
* Defines an icon to display as the trigger.
|
113
|
+
* Defaults to a chevron icon.
|
114
|
+
*/
|
115
|
+
triggerIcon?: IconComponentType;
|
116
|
+
/**
|
117
|
+
* Defines a class name for the trigger.
|
118
|
+
*/
|
119
|
+
triggerClassName?: string;
|
120
|
+
};
|
121
|
+
export declare type AccordionContentProps = {
|
122
|
+
children: ReactNode;
|
123
|
+
/**
|
124
|
+
* Defines a class name for the content.
|
125
|
+
*/
|
126
|
+
className?: string;
|
127
|
+
};
|
128
|
+
declare type AccordionComponent = VFC<AccordionProps> & {
|
129
|
+
Item: typeof AccordionItem;
|
130
|
+
Header: typeof AccordionHeader;
|
131
|
+
Content: typeof AccordionContent;
|
132
|
+
};
|
133
|
+
/**
|
134
|
+
* The `Accordion` component is a compact section for revealing and hiding content, ideal for keeping interfaces clean.
|
135
|
+
*
|
136
|
+
* See the [Accordion documentation page](https://satellite.algolia.com/components/actions/accordion) for more information.
|
137
|
+
*/
|
138
|
+
export declare const Accordion: AccordionComponent;
|
139
|
+
declare const AccordionItem: import("react").ForwardRefExoticComponent<AccordionItemProps & import("react").RefAttributes<HTMLDivElement>>;
|
140
|
+
declare const AccordionHeader: import("react").ForwardRefExoticComponent<AccordionHeaderProps & import("react").RefAttributes<HTMLButtonElement>>;
|
141
|
+
declare const AccordionContent: import("react").ForwardRefExoticComponent<AccordionContentProps & import("react").RefAttributes<HTMLDivElement>>;
|
142
|
+
export {};
|
@@ -0,0 +1,149 @@
|
|
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.Accordion = void 0;
|
9
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
10
|
+
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
11
|
+
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
12
|
+
var RadixAccordion = _interopRequireWildcard(require("@radix-ui/react-accordion"));
|
13
|
+
var _clsx = _interopRequireDefault(require("clsx"));
|
14
|
+
var _react = require("react");
|
15
|
+
var _Icons = require("../../Icons");
|
16
|
+
var _satellitePrefixer = _interopRequireDefault(require("../../styles/helpers/satellitePrefixer"));
|
17
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
18
|
+
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15, _templateObject16, _templateObject17;
|
19
|
+
var _excluded = ["children", "className"],
|
20
|
+
_excluded2 = ["onChange", "multiple"],
|
21
|
+
_excluded3 = ["onChange", "multiple", "collapsible"];
|
22
|
+
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); }
|
23
|
+
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; }
|
24
|
+
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; }
|
25
|
+
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; }
|
26
|
+
var ICON_SIZE = 16;
|
27
|
+
var TRIGGER_ICON_SIZE = 20;
|
28
|
+
|
29
|
+
/**
|
30
|
+
* The `Accordion` component is a compact section for revealing and hiding content, ideal for keeping interfaces clean.
|
31
|
+
*
|
32
|
+
* See the [Accordion documentation page](https://satellite.algolia.com/components/actions/accordion) for more information.
|
33
|
+
*/
|
34
|
+
var Accordion = exports.Accordion = function Accordion(_ref) {
|
35
|
+
var children = _ref.children,
|
36
|
+
className = _ref.className,
|
37
|
+
props = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
|
38
|
+
var sharedProps = {
|
39
|
+
className: (0, _clsx["default"])((0, _satellitePrefixer["default"])(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["flex flex-col"]))), className)
|
40
|
+
};
|
41
|
+
if (props.multiple) {
|
42
|
+
var _onChange = props.onChange,
|
43
|
+
_multiple = props.multiple,
|
44
|
+
_rest = (0, _objectWithoutProperties2["default"])(props, _excluded2);
|
45
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(RadixAccordion.Root, _objectSpread(_objectSpread(_objectSpread({}, _rest), sharedProps), {}, {
|
46
|
+
type: "multiple",
|
47
|
+
onValueChange: _onChange,
|
48
|
+
children: children
|
49
|
+
}));
|
50
|
+
}
|
51
|
+
var onChange = props.onChange,
|
52
|
+
multiple = props.multiple,
|
53
|
+
_props$collapsible = props.collapsible,
|
54
|
+
collapsible = _props$collapsible === void 0 ? true : _props$collapsible,
|
55
|
+
rest = (0, _objectWithoutProperties2["default"])(props, _excluded3);
|
56
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(RadixAccordion.Root, _objectSpread(_objectSpread(_objectSpread({}, rest), sharedProps), {}, {
|
57
|
+
type: "single",
|
58
|
+
onValueChange: onChange,
|
59
|
+
collapsible: collapsible,
|
60
|
+
children: children
|
61
|
+
}));
|
62
|
+
};
|
63
|
+
Accordion.displayName = "Accordion";
|
64
|
+
var AccordionItem = /*#__PURE__*/(0, _react.forwardRef)(function (_ref2, ref) {
|
65
|
+
var value = _ref2.value,
|
66
|
+
disabled = _ref2.disabled,
|
67
|
+
children = _ref2.children,
|
68
|
+
className = _ref2.className;
|
69
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(RadixAccordion.Item, {
|
70
|
+
value: value,
|
71
|
+
disabled: disabled,
|
72
|
+
ref: ref,
|
73
|
+
className: (0, _clsx["default"])((0, _satellitePrefixer["default"])(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["group/accordion-item flex flex-col"]))), className),
|
74
|
+
children: children
|
75
|
+
});
|
76
|
+
});
|
77
|
+
AccordionItem.displayName = "AccordionItem";
|
78
|
+
var AccordionHeader = /*#__PURE__*/(0, _react.forwardRef)(function (_ref3, ref) {
|
79
|
+
var children = _ref3.children,
|
80
|
+
description = _ref3.description,
|
81
|
+
Icon = _ref3.icon,
|
82
|
+
_ref3$iconClassName = _ref3.iconClassName,
|
83
|
+
iconClassName = _ref3$iconClassName === void 0 ? (0, _satellitePrefixer["default"])(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["typo-subdued"]))) : _ref3$iconClassName,
|
84
|
+
_ref3$iconBgClassName = _ref3.iconBgClassName,
|
85
|
+
iconBgClassName = _ref3$iconBgClassName === void 0 ? (0, _satellitePrefixer["default"])(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["bg-grey-100"]))) : _ref3$iconBgClassName,
|
86
|
+
meta = _ref3.meta,
|
87
|
+
triggerIcon = _ref3.triggerIcon,
|
88
|
+
triggerClassName = _ref3.triggerClassName,
|
89
|
+
className = _ref3.className;
|
90
|
+
var TriggerIcon = triggerIcon || _Icons.ChevronDownIcon;
|
91
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(RadixAccordion.Header, {
|
92
|
+
className: className,
|
93
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(RadixAccordion.Trigger, {
|
94
|
+
ref: ref,
|
95
|
+
className: (0, _clsx["default"])((0, _satellitePrefixer["default"])(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["group/accordion-trigger flex gap-x-3 items-center w-full justify-between px-3.5 py-2.5 group-first/accordion-item:rounded-t group-last/accordion-item:rounded-b bg-white border-2 border-transparent focus-visible:outline-none focus-visible:border-accent-600 enabled:hover:bg-grey-50 motion-safe:transition-colors"]))), triggerClassName),
|
96
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
97
|
+
className: (0, _satellitePrefixer["default"])(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["flex items-center gap-x-3 grow"]))),
|
98
|
+
children: [Icon && /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
|
99
|
+
className: (0, _clsx["default"])((0, _satellitePrefixer["default"])(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["rounded-full w-8 h-8 flex items-center justify-center shrink-0"]))), iconBgClassName),
|
100
|
+
"aria-hidden": true,
|
101
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(Icon, {
|
102
|
+
className: (0, _clsx["default"])(iconClassName, (0, _satellitePrefixer["default"])(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["group-disabled/accordion-trigger:text-grey-300"])))),
|
103
|
+
width: ICON_SIZE,
|
104
|
+
height: ICON_SIZE
|
105
|
+
})
|
106
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
107
|
+
className: (0, _satellitePrefixer["default"])(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2["default"])(["flex flex-col gap-y-1 text-left grow"]))),
|
108
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
109
|
+
className: (0, _satellitePrefixer["default"])(_templateObject10 || (_templateObject10 = (0, _taggedTemplateLiteral2["default"])(["typo-display-heading line-clamp-2 group-disabled/accordion-trigger:text-grey-300"]))),
|
110
|
+
children: children
|
111
|
+
}), typeof description !== "undefined" && /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
112
|
+
className: (0, _satellitePrefixer["default"])(_templateObject11 || (_templateObject11 = (0, _taggedTemplateLiteral2["default"])(["typo-display-body typo-subdued line-clamp-3 group-disabled/accordion-trigger:text-grey-300"]))),
|
113
|
+
children: description
|
114
|
+
})]
|
115
|
+
})]
|
116
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
117
|
+
className: (0, _satellitePrefixer["default"])(_templateObject12 || (_templateObject12 = (0, _taggedTemplateLiteral2["default"])(["flex items-center gap-x-2"]))),
|
118
|
+
children: [typeof meta !== "undefined" && /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
119
|
+
className: (0, _satellitePrefixer["default"])(_templateObject13 || (_templateObject13 = (0, _taggedTemplateLiteral2["default"])(["typo-display-caption group-disabled/accordion-trigger:text-grey-300"]))),
|
120
|
+
children: meta
|
121
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(TriggerIcon, {
|
122
|
+
className: (0, _clsx["default"])((0, _satellitePrefixer["default"])(_templateObject14 || (_templateObject14 = (0, _taggedTemplateLiteral2["default"])(["shrink-0 typo-subdued group-disabled/accordion-trigger:text-grey-300"]))),
|
123
|
+
// Don't rotate the trigger icon if it's a custom one.
|
124
|
+
!triggerIcon && (0, _satellitePrefixer["default"])(_templateObject15 || (_templateObject15 = (0, _taggedTemplateLiteral2["default"])([" group-data-[state=open]/accordion-trigger:rotate-180 motion-safe:transition-transform motion-safe:duration-300 motion-safe:ease-out"])))),
|
125
|
+
width: TRIGGER_ICON_SIZE,
|
126
|
+
height: TRIGGER_ICON_SIZE,
|
127
|
+
"aria-hidden": true
|
128
|
+
})]
|
129
|
+
})]
|
130
|
+
})
|
131
|
+
});
|
132
|
+
});
|
133
|
+
AccordionHeader.displayName = "AccordionHeader";
|
134
|
+
var AccordionContent = /*#__PURE__*/(0, _react.forwardRef)(function (_ref4, ref) {
|
135
|
+
var children = _ref4.children,
|
136
|
+
className = _ref4.className;
|
137
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(RadixAccordion.Content, {
|
138
|
+
ref: ref,
|
139
|
+
className: (0, _clsx["default"])((0, _satellitePrefixer["default"])(_templateObject16 || (_templateObject16 = (0, _taggedTemplateLiteral2["default"])(["typo-display-body typo-subdued overflow-hidden accordion-content"]))), className),
|
140
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
141
|
+
className: (0, _satellitePrefixer["default"])(_templateObject17 || (_templateObject17 = (0, _taggedTemplateLiteral2["default"])(["px-4 pt-2 pb-4"]))),
|
142
|
+
children: children
|
143
|
+
})
|
144
|
+
});
|
145
|
+
});
|
146
|
+
AccordionContent.displayName = "AccordionContent";
|
147
|
+
Accordion.Item = AccordionItem;
|
148
|
+
Accordion.Header = AccordionHeader;
|
149
|
+
Accordion.Content = AccordionContent;
|
@@ -0,0 +1,44 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
// @ts-check
|
4
|
+
var plugin = require("tailwindcss/plugin");
|
5
|
+
var accordionPlugin = plugin(function (_ref) {
|
6
|
+
var addComponents = _ref.addComponents;
|
7
|
+
var animationDuration = "300ms";
|
8
|
+
var animationEasing = "ease-out";
|
9
|
+
addComponents({
|
10
|
+
/* eslint-disable @algolia/stl/prefer-stl-helper */
|
11
|
+
"@media (prefers-reduced-motion: no-preference)": {
|
12
|
+
".accordion-content": {
|
13
|
+
"&[data-state='open']": {
|
14
|
+
animation: "stl-accordion-content-slide-down ".concat(animationDuration, " ").concat(animationEasing)
|
15
|
+
},
|
16
|
+
"&[data-state='closed']": {
|
17
|
+
animation: "stl-accordion-content-slide-up ".concat(animationDuration, " ").concat(animationEasing)
|
18
|
+
}
|
19
|
+
}
|
20
|
+
},
|
21
|
+
"@keyframes stl-accordion-content-slide-down": {
|
22
|
+
from: {
|
23
|
+
height: "0",
|
24
|
+
opacity: "0"
|
25
|
+
},
|
26
|
+
to: {
|
27
|
+
height: "var(--radix-accordion-content-height)",
|
28
|
+
opacity: "1"
|
29
|
+
}
|
30
|
+
},
|
31
|
+
"@keyframes stl-accordion-content-slide-up": {
|
32
|
+
from: {
|
33
|
+
height: "var(--radix-accordion-content-height)",
|
34
|
+
opacity: "1"
|
35
|
+
},
|
36
|
+
to: {
|
37
|
+
height: "0",
|
38
|
+
opacity: "0"
|
39
|
+
}
|
40
|
+
}
|
41
|
+
/* eslint-enable @algolia/stl/prefer-stl-helper */
|
42
|
+
});
|
43
|
+
});
|
44
|
+
module.exports = accordionPlugin;
|
@@ -43,7 +43,7 @@ var PolymorphicButton = exports.PolymorphicButton = /*#__PURE__*/(0, _react.forw
|
|
43
43
|
children = props.children,
|
44
44
|
cleanedProps = (0, _objectWithoutProperties2["default"])(props, _excluded);
|
45
45
|
if (loading) {
|
46
|
-
// @ts-expect-error
|
46
|
+
// @ts-expect-error disabled is not present in PolymorphicButtonProps
|
47
47
|
cleanedProps.disabled = true;
|
48
48
|
}
|
49
49
|
var buttonClassName = (0, _clsx["default"])(BASE_CLASSNAMES, _styles.BUTTON_SIZE_CLASSNAMES[size], _styles.BUTTON_VARIANT_CLASSNAMES[variant], cleanedProps.disabled && (0, _satellitePrefixer["default"])(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["btn-disabled"]))), className);
|
@@ -51,7 +51,7 @@ var PolymorphicButton = exports.PolymorphicButton = /*#__PURE__*/(0, _react.forw
|
|
51
51
|
var iconClassNames = (0, _clsx["default"])((0, _styles.getIconColorClassName)(props), loading && (0, _satellitePrefixer["default"])(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["invisible"]))));
|
52
52
|
var textClassNames = (0, _clsx["default"])(loading && (0, _satellitePrefixer["default"])(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["invisible"]))));
|
53
53
|
if ((0, _types.isButtonType)(props) && !Object.prototype.hasOwnProperty.call(cleanedProps, "type")) {
|
54
|
-
// @ts-expect-error
|
54
|
+
// @ts-expect-error type is not present in PolymorphicButtonProps
|
55
55
|
cleanedProps.type = "button";
|
56
56
|
}
|
57
57
|
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(Component, _objectSpread(_objectSpread({}, cleanedProps), {}, {
|
@@ -51,13 +51,13 @@ var PolymorphicIconButton = exports.PolymorphicIconButton = /*#__PURE__*/(0, _re
|
|
51
51
|
loading = _props$loading === void 0 ? false : _props$loading,
|
52
52
|
cleanedProps = (0, _objectWithoutProperties2["default"])(props, _excluded);
|
53
53
|
if (loading) {
|
54
|
-
// @ts-expect-error
|
54
|
+
// @ts-expect-error disabled prop is not present in PolymorphicIconButtonProps
|
55
55
|
cleanedProps.disabled = true;
|
56
56
|
}
|
57
57
|
var iconButtonClassName = (0, _clsx["default"])(BASE_CLASSNAMES, SIZE_CLASSNAMES[size], VARIANT_CLASSNAMES[variant], cleanedProps.disabled && (0, _satellitePrefixer["default"])(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["btn-disabled"]))), className);
|
58
58
|
var loaderClassNames = (0, _satellitePrefixer["default"])(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["absolute ", ""])), (variant === "destructive" || variant === "primary") && "text-white");
|
59
59
|
if ((0, _types.isButtonType)(props) && !Object.prototype.hasOwnProperty.call(cleanedProps, "type")) {
|
60
|
-
// @ts-
|
60
|
+
// @ts-expect-error type is not present in PolymorphicIconButtonProps
|
61
61
|
cleanedProps.type = "button";
|
62
62
|
}
|
63
63
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Overlay.TooltipWrapper, {
|
@@ -25,8 +25,8 @@ declare type AsProp<C extends React.ElementType> = {
|
|
25
25
|
as?: C;
|
26
26
|
};
|
27
27
|
declare type PropsToOmit<C extends React.ElementType, P> = keyof (AsProp<C> & P);
|
28
|
-
declare type PolymorphicComponentProp<C extends React.ElementType, Props =
|
29
|
-
export declare type PolymorphicComponentPropWithRef<C extends React.ElementType, Props =
|
28
|
+
declare type PolymorphicComponentProp<C extends React.ElementType, Props = object> = React.PropsWithChildren<Props & AsProp<C>> & Omit<React.ComponentPropsWithoutRef<C>, PropsToOmit<C, Props>>;
|
29
|
+
export declare type PolymorphicComponentPropWithRef<C extends React.ElementType, Props = object> = PolymorphicComponentProp<C, Props> & {
|
30
30
|
ref?: PolymorphicRef<C>;
|
31
31
|
};
|
32
32
|
export declare type PolymorphicRef<C extends React.ElementType> = React.ComponentPropsWithRef<C>["ref"];
|
@@ -15,7 +15,7 @@ declare type ToggleGroupSingleProps = {
|
|
15
15
|
type: "single";
|
16
16
|
/**
|
17
17
|
* Defines the controlled value of the pressed item.
|
18
|
-
* Must be used in conjunction with `
|
18
|
+
* Must be used in conjunction with `onChange`.
|
19
19
|
*/
|
20
20
|
value?: RadixToggleGroupSingleProps["value"];
|
21
21
|
/**
|
@@ -31,7 +31,7 @@ declare type ToggleGroupMultipleProps = {
|
|
31
31
|
type: "multiple";
|
32
32
|
/**
|
33
33
|
* Defines the controlled value of the pressed items.
|
34
|
-
* Must be used in conjunction with `
|
34
|
+
* Must be used in conjunction with `onChange`.
|
35
35
|
*/
|
36
36
|
value?: RadixToggleGroupMultipleProps["value"];
|
37
37
|
/**
|
@@ -1,3 +1,5 @@
|
|
1
|
+
export type { AccordionProps as ExperimentalAccordionProps, AccordionContentProps as ExperimentalAccordionContentProps, AccordionHeaderProps as ExperimentalAccordionHeaderProps, AccordionItemProps as ExperimentalAccordionItemProps, } from "./Accordion/Accordion";
|
2
|
+
export { Accordion as ExperimentalAccordion } from "./Accordion/Accordion";
|
1
3
|
export * from "./Button/Button";
|
2
4
|
export * from "./ButtonGroup/ButtonGroup";
|
3
5
|
export * from "./ButtonLink/ButtonLink";
|
@@ -3,9 +3,20 @@
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
4
4
|
value: true
|
5
5
|
});
|
6
|
+
var _exportNames = {
|
7
|
+
ExperimentalAccordion: true
|
8
|
+
};
|
9
|
+
Object.defineProperty(exports, "ExperimentalAccordion", {
|
10
|
+
enumerable: true,
|
11
|
+
get: function get() {
|
12
|
+
return _Accordion.Accordion;
|
13
|
+
}
|
14
|
+
});
|
15
|
+
var _Accordion = require("./Accordion/Accordion");
|
6
16
|
var _Button = require("./Button/Button");
|
7
17
|
Object.keys(_Button).forEach(function (key) {
|
8
18
|
if (key === "default" || key === "__esModule") return;
|
19
|
+
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
9
20
|
if (key in exports && exports[key] === _Button[key]) return;
|
10
21
|
Object.defineProperty(exports, key, {
|
11
22
|
enumerable: true,
|
@@ -17,6 +28,7 @@ Object.keys(_Button).forEach(function (key) {
|
|
17
28
|
var _ButtonGroup = require("./ButtonGroup/ButtonGroup");
|
18
29
|
Object.keys(_ButtonGroup).forEach(function (key) {
|
19
30
|
if (key === "default" || key === "__esModule") return;
|
31
|
+
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
20
32
|
if (key in exports && exports[key] === _ButtonGroup[key]) return;
|
21
33
|
Object.defineProperty(exports, key, {
|
22
34
|
enumerable: true,
|
@@ -28,6 +40,7 @@ Object.keys(_ButtonGroup).forEach(function (key) {
|
|
28
40
|
var _ButtonLink = require("./ButtonLink/ButtonLink");
|
29
41
|
Object.keys(_ButtonLink).forEach(function (key) {
|
30
42
|
if (key === "default" || key === "__esModule") return;
|
43
|
+
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
31
44
|
if (key in exports && exports[key] === _ButtonLink[key]) return;
|
32
45
|
Object.defineProperty(exports, key, {
|
33
46
|
enumerable: true,
|
@@ -39,6 +52,7 @@ Object.keys(_ButtonLink).forEach(function (key) {
|
|
39
52
|
var _IconButton = require("./IconButton/IconButton");
|
40
53
|
Object.keys(_IconButton).forEach(function (key) {
|
41
54
|
if (key === "default" || key === "__esModule") return;
|
55
|
+
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
42
56
|
if (key in exports && exports[key] === _IconButton[key]) return;
|
43
57
|
Object.defineProperty(exports, key, {
|
44
58
|
enumerable: true,
|
@@ -50,6 +64,7 @@ Object.keys(_IconButton).forEach(function (key) {
|
|
50
64
|
var _IconButtonLink = require("./IconButtonLink/IconButtonLink");
|
51
65
|
Object.keys(_IconButtonLink).forEach(function (key) {
|
52
66
|
if (key === "default" || key === "__esModule") return;
|
67
|
+
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
53
68
|
if (key in exports && exports[key] === _IconButtonLink[key]) return;
|
54
69
|
Object.defineProperty(exports, key, {
|
55
70
|
enumerable: true,
|
@@ -61,6 +76,7 @@ Object.keys(_IconButtonLink).forEach(function (key) {
|
|
61
76
|
var _Switch = require("./Switch");
|
62
77
|
Object.keys(_Switch).forEach(function (key) {
|
63
78
|
if (key === "default" || key === "__esModule") return;
|
79
|
+
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
64
80
|
if (key in exports && exports[key] === _Switch[key]) return;
|
65
81
|
Object.defineProperty(exports, key, {
|
66
82
|
enumerable: true,
|
@@ -72,6 +88,7 @@ Object.keys(_Switch).forEach(function (key) {
|
|
72
88
|
var _ToggleButton = require("./ToggleButton/ToggleButton");
|
73
89
|
Object.keys(_ToggleButton).forEach(function (key) {
|
74
90
|
if (key === "default" || key === "__esModule") return;
|
91
|
+
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
75
92
|
if (key in exports && exports[key] === _ToggleButton[key]) return;
|
76
93
|
Object.defineProperty(exports, key, {
|
77
94
|
enumerable: true,
|
@@ -83,6 +100,7 @@ Object.keys(_ToggleButton).forEach(function (key) {
|
|
83
100
|
var _ToggleGroup = require("./ToggleGroup/ToggleGroup");
|
84
101
|
Object.keys(_ToggleGroup).forEach(function (key) {
|
85
102
|
if (key === "default" || key === "__esModule") return;
|
103
|
+
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
86
104
|
if (key in exports && exports[key] === _ToggleGroup[key]) return;
|
87
105
|
Object.defineProperty(exports, key, {
|
88
106
|
enumerable: true,
|
@@ -276,7 +276,7 @@ var AutoComplete = exports.AutoComplete = /*#__PURE__*/(0, _react.forwardRef)(fu
|
|
276
276
|
if (!multiple && value && !newInputValue) {
|
277
277
|
multipleSelection.setSelectedItems([]);
|
278
278
|
}
|
279
|
-
(_menuPopper$update = menuPopper.update) === null || _menuPopper$update === void 0
|
279
|
+
void ((_menuPopper$update = menuPopper.update) === null || _menuPopper$update === void 0 ? void 0 : _menuPopper$update.call(menuPopper));
|
280
280
|
},
|
281
281
|
// We need to make sure to define event handlers here so that they can be composed properly
|
282
282
|
onFocus: function onFocus(evt) {
|
@@ -290,7 +290,7 @@ var AutoComplete = exports.AutoComplete = /*#__PURE__*/(0, _react.forwardRef)(fu
|
|
290
290
|
},
|
291
291
|
onKeyDown: function onKeyDown(evt) {
|
292
292
|
if (combobox.isOpen && ["ArrowLeft", "ArrowRight"].includes(evt.key)) {
|
293
|
-
// @ts-expect-error
|
293
|
+
// @ts-expect-error wrong type
|
294
294
|
evt.nativeEvent.preventDownshiftDefault = true;
|
295
295
|
}
|
296
296
|
if (multiple && creatable && inputValue.trim().length > 0 && separatorKeys !== null && separatorKeys !== void 0 && separatorKeys.includes(evt.key)) {
|
@@ -328,7 +328,7 @@ var AutoComplete = exports.AutoComplete = /*#__PURE__*/(0, _react.forwardRef)(fu
|
|
328
328
|
if (oldHideMenu.current !== hideMenu) {
|
329
329
|
var _menuPopper$update2;
|
330
330
|
oldHideMenu.current = hideMenu;
|
331
|
-
(_menuPopper$update2 = menuPopper.update) === null || _menuPopper$update2 === void 0
|
331
|
+
void ((_menuPopper$update2 = menuPopper.update) === null || _menuPopper$update2 === void 0 ? void 0 : _menuPopper$update2.call(menuPopper));
|
332
332
|
}
|
333
333
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_AutoCompleteContext.AutoCompleteProvider, {
|
334
334
|
locale: locale,
|
@@ -336,7 +336,7 @@ var AutoComplete = exports.AutoComplete = /*#__PURE__*/(0, _react.forwardRef)(fu
|
|
336
336
|
className: (0, _clsx["default"])((0, _satellitePrefixer["default"])(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["flex"]))), className),
|
337
337
|
ref: function ref(el) {
|
338
338
|
setContainerElement(el);
|
339
|
-
// @ts-expect-error
|
339
|
+
// @ts-expect-error - setContainerMeasureRef does accept HTMLDivElement | null
|
340
340
|
setContainerMeasureRef(el);
|
341
341
|
},
|
342
342
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
@@ -17,10 +17,7 @@ var DatePickerCalendar = exports.DatePickerCalendar = function DatePickerCalenda
|
|
17
17
|
var curatedProps = Object.fromEntries(Object.entries(props).filter(function (_ref) {
|
18
18
|
var _ref2 = (0, _slicedToArray2["default"])(_ref, 1),
|
19
19
|
key = _ref2[0];
|
20
|
-
return (
|
21
|
-
// @ts-expect-error
|
22
|
-
!excludedDayPickerPropsList.includes(key)
|
23
|
-
);
|
20
|
+
return !excludedDayPickerPropsList.includes(key);
|
24
21
|
}));
|
25
22
|
|
26
23
|
/**
|
@@ -57,12 +57,16 @@ var Field = exports.Field = function Field(_ref) {
|
|
57
57
|
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
58
58
|
requiredContext = _useState2[0],
|
59
59
|
setRequiredContext = _useState2[1];
|
60
|
+
var _useState3 = (0, _react.useState)(undefined),
|
61
|
+
_useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
|
62
|
+
elementToFocusContext = _useState4[0],
|
63
|
+
setElementToFocusContext = _useState4[1];
|
60
64
|
if (process.env.NODE_ENV !== "production") {
|
61
65
|
if (typeof requiredProp !== "undefined" && typeof requiredContext !== "undefined" && requiredProp !== requiredContext) {
|
62
66
|
console.warn("The `required` prop is set to different values on both the Field (`required=".concat(requiredProp, "`) and the underlying input component (`required=").concat(requiredContext, "`)."));
|
63
67
|
}
|
64
68
|
}
|
65
|
-
var form = (0, _useForm.
|
69
|
+
var form = (0, _useForm.useForm)();
|
66
70
|
var addField = form === null || form === void 0 ? void 0 : form.addField;
|
67
71
|
var removeField = form === null || form === void 0 ? void 0 : form.removeField;
|
68
72
|
(0, _react.useEffect)(function () {
|
@@ -85,13 +89,19 @@ var Field = exports.Field = function Field(_ref) {
|
|
85
89
|
labelId: labelId,
|
86
90
|
descriptionId: descriptionId,
|
87
91
|
inputId: labelFor,
|
88
|
-
setRequired: setRequiredContext
|
92
|
+
setRequired: setRequiredContext,
|
93
|
+
setElementToFocus: setElementToFocusContext
|
89
94
|
},
|
90
95
|
children: /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
91
96
|
className: className,
|
92
97
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)("label", {
|
93
98
|
className: (0, _satellitePrefixer["default"])(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["cursor-pointer flex ", ""])), inline ? "items-center" : "flex-col"),
|
94
99
|
htmlFor: labelFor,
|
100
|
+
onClick: function onClick() {
|
101
|
+
if (!(elementToFocusContext !== null && elementToFocusContext !== void 0 && elementToFocusContext.closest("[aria-disabled=true]")) && !(elementToFocusContext !== null && elementToFocusContext !== void 0 && elementToFocusContext.closest("[disabled=true]"))) {
|
102
|
+
elementToFocusContext === null || elementToFocusContext === void 0 || elementToFocusContext.focus();
|
103
|
+
}
|
104
|
+
},
|
95
105
|
children: [hasLabel && /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
96
106
|
id: labelId,
|
97
107
|
className: (0, _satellitePrefixer["default"])(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["truncate ", ""])), inline ? "mr-2" : "mb-1"),
|
@@ -13,6 +13,7 @@ export declare type FieldContextValue = {
|
|
13
13
|
descriptionId?: string;
|
14
14
|
inputId?: string;
|
15
15
|
setRequired?: (required?: boolean) => void;
|
16
|
+
setElementToFocus?: (elementToFocus?: HTMLElement) => void;
|
16
17
|
};
|
17
18
|
export declare const DEFAULT_FIELD_STATE: FieldState;
|
18
19
|
export declare const DEFAULT_CONTEXT_VALUE: FieldContextValue;
|
@@ -1,5 +1,6 @@
|
|
1
1
|
import type { FieldContextValue } from "./FieldContext";
|
2
2
|
export declare type UseFieldProps = {
|
3
3
|
required?: boolean;
|
4
|
+
elementToFocus?: HTMLElement;
|
4
5
|
};
|
5
|
-
export declare const useField: ({ required }?: UseFieldProps) => FieldContextValue;
|
6
|
+
export declare const useField: ({ required, elementToFocus }?: UseFieldProps) => FieldContextValue;
|
@@ -9,18 +9,23 @@ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/de
|
|
9
9
|
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
10
10
|
var _react = require("react");
|
11
11
|
var _FieldContext = require("./FieldContext");
|
12
|
-
var _excluded = ["setRequired"];
|
12
|
+
var _excluded = ["setRequired", "setElementToFocus"];
|
13
13
|
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; }
|
14
14
|
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; }
|
15
15
|
var useField = exports.useField = function useField() {
|
16
16
|
var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
|
17
|
-
required = _ref.required
|
17
|
+
required = _ref.required,
|
18
|
+
elementToFocus = _ref.elementToFocus;
|
18
19
|
var _useContext = (0, _react.useContext)(_FieldContext.FieldContext),
|
19
20
|
setRequired = _useContext.setRequired,
|
21
|
+
setElementToFocus = _useContext.setElementToFocus,
|
20
22
|
contextValue = (0, _objectWithoutProperties2["default"])(_useContext, _excluded);
|
21
23
|
(0, _react.useEffect)(function () {
|
22
24
|
return setRequired === null || setRequired === void 0 ? void 0 : setRequired(required);
|
23
25
|
}, [setRequired, required]);
|
26
|
+
(0, _react.useEffect)(function () {
|
27
|
+
return setElementToFocus === null || setElementToFocus === void 0 ? void 0 : setElementToFocus(elementToFocus);
|
28
|
+
}, [setElementToFocus, elementToFocus]);
|
24
29
|
return _objectSpread({
|
25
30
|
setRequired: setRequired
|
26
31
|
}, contextValue);
|