@basic-ui/core 0.0.38 → 0.0.41
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/build/cjs/index.js +1 -1
- package/build/cjs/index.js.map +1 -1
- package/build/esm/Accordion/Accordion.d.ts +7 -7
- package/build/esm/Accordion/Accordion.js +22 -17
- package/build/esm/Accordion/Accordion.js.map +1 -1
- package/build/esm/Accordion/AccordionBody.d.ts +5 -5
- package/build/esm/Accordion/AccordionBody.js +23 -15
- package/build/esm/Accordion/AccordionBody.js.map +1 -1
- package/build/esm/Accordion/AccordionHeader.d.ts +6 -6
- package/build/esm/Accordion/AccordionHeader.js +45 -31
- package/build/esm/Accordion/AccordionHeader.js.map +1 -1
- package/build/esm/Accordion/AccordionItem.d.ts +7 -7
- package/build/esm/Accordion/AccordionItem.js +16 -16
- package/build/esm/Accordion/AccordionItem.js.map +1 -1
- package/build/esm/Accordion/context.d.ts +4 -4
- package/build/esm/Accordion/context.js +12 -10
- package/build/esm/Accordion/context.js.map +1 -1
- package/build/esm/CheckBox/CheckBox.d.ts +6 -6
- package/build/esm/CheckBox/CheckBox.js +19 -12
- package/build/esm/CheckBox/CheckBox.js.map +1 -1
- package/build/esm/ComboBox/Combobox.d.ts +10 -10
- package/build/esm/ComboBox/Combobox.js +52 -46
- package/build/esm/ComboBox/Combobox.js.map +1 -1
- package/build/esm/ComboBox/ComboboxButton.d.ts +8 -8
- package/build/esm/ComboBox/ComboboxButton.js +19 -20
- package/build/esm/ComboBox/ComboboxButton.js.map +1 -1
- package/build/esm/ComboBox/ComboboxInput.d.ts +10 -10
- package/build/esm/ComboBox/ComboboxInput.js +52 -50
- package/build/esm/ComboBox/ComboboxInput.js.map +1 -1
- package/build/esm/ComboBox/ComboboxLabel.d.ts +5 -5
- package/build/esm/ComboBox/ComboboxLabel.js +11 -12
- package/build/esm/ComboBox/ComboboxLabel.js.map +1 -1
- package/build/esm/ComboBox/ComboboxList.d.ts +6 -6
- package/build/esm/ComboBox/ComboboxList.js +15 -17
- package/build/esm/ComboBox/ComboboxList.js.map +1 -1
- package/build/esm/ComboBox/ComboboxOption.d.ts +7 -7
- package/build/esm/ComboBox/ComboboxOption.js +31 -34
- package/build/esm/ComboBox/ComboboxOption.js.map +1 -1
- package/build/esm/ComboBox/ComboboxPopover.d.ts +8 -8
- package/build/esm/ComboBox/ComboboxPopover.js +15 -17
- package/build/esm/ComboBox/ComboboxPopover.js.map +1 -1
- package/build/esm/ComboBox/context.d.ts +13 -13
- package/build/esm/ComboBox/context.js +6 -5
- package/build/esm/ComboBox/context.js.map +1 -1
- package/build/esm/ComboBox/hooks.d.ts +4 -4
- package/build/esm/ComboBox/hooks.js +82 -115
- package/build/esm/ComboBox/hooks.js.map +1 -1
- package/build/esm/ComboBox/makeHash.js +3 -3
- package/build/esm/ComboBox/makeHash.js.map +1 -1
- package/build/esm/FocusLock/FocusLock.d.ts +7 -7
- package/build/esm/FocusLock/FocusLock.js +17 -16
- package/build/esm/FocusLock/FocusLock.js.map +1 -1
- package/build/esm/FocusLock/tabUtils.js +4 -4
- package/build/esm/FocusLock/tabUtils.js.map +1 -1
- package/build/esm/FocusLock/useFocusLock.d.ts +4 -4
- package/build/esm/FocusLock/useFocusLock.js +10 -11
- package/build/esm/FocusLock/useFocusLock.js.map +1 -1
- package/build/esm/List/List.d.ts +6 -6
- package/build/esm/List/List.js +5 -6
- package/build/esm/List/List.js.map +1 -1
- package/build/esm/List/ListItem.d.ts +6 -6
- package/build/esm/List/ListItem.js +5 -6
- package/build/esm/List/ListItem.js.map +1 -1
- package/build/esm/List/context.js +3 -3
- package/build/esm/List/context.js.map +1 -1
- package/build/esm/Menu/Menu.d.ts +6 -6
- package/build/esm/Menu/Menu.js +29 -21
- package/build/esm/Menu/Menu.js.map +1 -1
- package/build/esm/Menu/MenuButton.d.ts +10 -10
- package/build/esm/Menu/MenuButton.js +27 -24
- package/build/esm/Menu/MenuButton.js.map +1 -1
- package/build/esm/Menu/MenuItem.d.ts +6 -6
- package/build/esm/Menu/MenuItem.js +23 -24
- package/build/esm/Menu/MenuItem.js.map +1 -1
- package/build/esm/Menu/MenuList.d.ts +5 -5
- package/build/esm/Menu/MenuList.js +61 -45
- package/build/esm/Menu/MenuList.js.map +1 -1
- package/build/esm/Menu/MenuPopover.d.ts +6 -6
- package/build/esm/Menu/MenuPopover.js +8 -10
- package/build/esm/Menu/MenuPopover.js.map +1 -1
- package/build/esm/Menu/context.d.ts +2 -2
- package/build/esm/Menu/context.js +11 -8
- package/build/esm/Menu/context.js.map +1 -1
- package/build/esm/Modal/Modal.d.ts +6 -7
- package/build/esm/Modal/Modal.js +11 -10
- package/build/esm/Modal/Modal.js.map +1 -1
- package/build/esm/Modal/ModalBackdrop.d.ts +6 -6
- package/build/esm/Modal/ModalBackdrop.js +20 -19
- package/build/esm/Modal/ModalBackdrop.js.map +1 -1
- package/build/esm/Popper/Popper.d.ts +8 -8
- package/build/esm/Popper/Popper.js +46 -37
- package/build/esm/Popper/Popper.js.map +1 -1
- package/build/esm/Popper/PopperArrow.d.ts +5 -5
- package/build/esm/Popper/PopperArrow.js +8 -9
- package/build/esm/Popper/PopperArrow.js.map +1 -1
- package/build/esm/Popper/context.d.ts +1 -1
- package/build/esm/Popper/context.js +5 -3
- package/build/esm/Popper/context.js.map +1 -1
- package/build/esm/Portal/Portal.d.ts +1 -1
- package/build/esm/Portal/Portal.js +6 -5
- package/build/esm/Portal/Portal.js.map +1 -1
- package/build/esm/RadioButton/RadioButton.d.ts +7 -7
- package/build/esm/RadioButton/RadioButton.js +12 -13
- package/build/esm/RadioButton/RadioButton.js.map +1 -1
- package/build/esm/RadioButton/RadioGroup.d.ts +8 -8
- package/build/esm/RadioButton/RadioGroup.js +22 -16
- package/build/esm/RadioButton/RadioGroup.js.map +1 -1
- package/build/esm/RadioButton/context.d.ts +2 -2
- package/build/esm/RadioButton/context.js +6 -5
- package/build/esm/RadioButton/context.js.map +1 -1
- package/build/esm/SkipNav/SkipNav.d.ts +6 -6
- package/build/esm/SkipNav/SkipNav.js +5 -6
- package/build/esm/SkipNav/SkipNav.js.map +1 -1
- package/build/esm/Spinner/Spinner.d.ts +7 -7
- package/build/esm/Spinner/Spinner.js +41 -31
- package/build/esm/Spinner/Spinner.js.map +1 -1
- package/build/esm/Spinner/SpinnerButton.d.ts +6 -6
- package/build/esm/Spinner/SpinnerButton.js +11 -12
- package/build/esm/Spinner/SpinnerButton.js.map +1 -1
- package/build/esm/Spinner/context.d.ts +2 -2
- package/build/esm/Spinner/context.js +6 -5
- package/build/esm/Spinner/context.js.map +1 -1
- package/build/esm/Tabs/Tab.d.ts +6 -6
- package/build/esm/Tabs/Tab.js +29 -29
- package/build/esm/Tabs/Tab.js.map +1 -1
- package/build/esm/Tabs/TabList.d.ts +6 -6
- package/build/esm/Tabs/TabList.js +24 -21
- package/build/esm/Tabs/TabList.js.map +1 -1
- package/build/esm/Tabs/TabPanel.d.ts +6 -6
- package/build/esm/Tabs/TabPanel.js +12 -12
- package/build/esm/Tabs/TabPanel.js.map +1 -1
- package/build/esm/Tabs/TabPanels.d.ts +5 -5
- package/build/esm/Tabs/TabPanels.js +13 -12
- package/build/esm/Tabs/TabPanels.js.map +1 -1
- package/build/esm/Tabs/Tabs.d.ts +6 -6
- package/build/esm/Tabs/Tabs.js +27 -14
- package/build/esm/Tabs/Tabs.js.map +1 -1
- package/build/esm/Tabs/context.d.ts +3 -3
- package/build/esm/Tabs/context.js +12 -10
- package/build/esm/Tabs/context.js.map +1 -1
- package/build/esm/Tooltip/Tooltip.d.ts +7 -7
- package/build/esm/Tooltip/Tooltip.js +18 -16
- package/build/esm/Tooltip/Tooltip.js.map +1 -1
- package/build/esm/Tooltip/stateMachine.js +56 -80
- package/build/esm/Tooltip/stateMachine.js.map +1 -1
- package/build/esm/Tooltip/useTooltip.d.ts +7 -7
- package/build/esm/Tooltip/useTooltip.js +32 -30
- package/build/esm/Tooltip/useTooltip.js.map +1 -1
- package/build/esm/hooks/useAutoFocus.d.ts +2 -2
- package/build/esm/hooks/useAutoFocus.js +1 -1
- package/build/esm/hooks/useAutoFocus.js.map +1 -1
- package/build/esm/hooks/useChildrenCounter.d.ts +1 -1
- package/build/esm/hooks/useChildrenCounter.js +6 -4
- package/build/esm/hooks/useChildrenCounter.js.map +1 -1
- package/build/esm/hooks/useControlledState.d.ts +3 -7
- package/build/esm/hooks/useControlledState.js +7 -2
- package/build/esm/hooks/useControlledState.js.map +1 -1
- package/build/esm/hooks/useFocusReturn.d.ts +1 -1
- package/build/esm/hooks/useFocusReturn.js +6 -6
- package/build/esm/hooks/useFocusReturn.js.map +1 -1
- package/build/esm/hooks/useFocusState.d.ts +3 -3
- package/build/esm/hooks/useFocusState.js +13 -9
- package/build/esm/hooks/useFocusState.js.map +1 -1
- package/build/esm/hooks/useGestureHandlers.d.ts +5 -5
- package/build/esm/hooks/useGestureHandlers.js +59 -63
- package/build/esm/hooks/useGestureHandlers.js.map +1 -1
- package/build/esm/hooks/useMeasure.d.ts +2 -2
- package/build/esm/hooks/useMeasure.js +13 -7
- package/build/esm/hooks/useMeasure.js.map +1 -1
- package/build/esm/hooks/useOnClickOutside.d.ts +2 -2
- package/build/esm/hooks/useOnClickOutside.js +5 -4
- package/build/esm/hooks/useOnClickOutside.js.map +1 -1
- package/build/esm/hooks/useOnKeyDown.js +4 -3
- package/build/esm/hooks/useOnKeyDown.js.map +1 -1
- package/build/esm/hooks/useReducerMachine.d.ts +1 -1
- package/build/esm/hooks/useReducerMachine.js +13 -10
- package/build/esm/hooks/useReducerMachine.js.map +1 -1
- package/build/esm/hooks/useRemoveBodyScroll.js +4 -4
- package/build/esm/hooks/useRemoveBodyScroll.js.map +1 -1
- package/build/esm/hooks/useScope.d.ts +1 -1
- package/build/esm/hooks/useScope.js +10 -12
- package/build/esm/hooks/useScope.js.map +1 -1
- package/build/esm/hooks/useThrottle.js +10 -5
- package/build/esm/hooks/useThrottle.js.map +1 -1
- package/build/esm/utils/assignRef.d.ts +1 -1
- package/build/esm/utils/assignRef.js +7 -3
- package/build/esm/utils/assignRef.js.map +1 -1
- package/build/esm/utils/createSubscription.js +7 -5
- package/build/esm/utils/createSubscription.js.map +1 -1
- package/build/esm/utils/rubberBandClamp.js +5 -2
- package/build/esm/utils/rubberBandClamp.js.map +1 -1
- package/build/esm/utils/wrapEvent.d.ts +3 -3
- package/build/esm/utils/wrapEvent.js +7 -3
- package/build/esm/utils/wrapEvent.js.map +1 -1
- package/build/tsconfig-build.tsbuildinfo +1 -0
- package/build/tsconfig.tsbuildinfo +1 -1
- package/package.json +3 -3
- package/src/Accordion/Accordion.story.tsx +1 -0
- package/src/Accordion/Accordion.tsx +15 -7
- package/src/Accordion/AccordionBody.tsx +7 -8
- package/src/Accordion/AccordionHeader.tsx +35 -33
- package/src/Accordion/AccordionItem.tsx +15 -7
- package/src/Accordion/context.ts +5 -3
- package/src/CheckBox/CheckBox.tsx +6 -6
- package/src/ComboBox/ComboBox.story.tsx +5 -5
- package/src/ComboBox/Combobox.tsx +12 -17
- package/src/ComboBox/ComboboxButton.tsx +16 -15
- package/src/ComboBox/ComboboxInput.tsx +19 -10
- package/src/ComboBox/ComboboxLabel.tsx +5 -4
- package/src/ComboBox/ComboboxList.tsx +6 -6
- package/src/ComboBox/ComboboxOption.tsx +11 -7
- package/src/ComboBox/ComboboxPopover.tsx +14 -8
- package/src/ComboBox/context.ts +14 -12
- package/src/ComboBox/hooks.tsx +9 -11
- package/src/FocusLock/FocusLock.tsx +14 -7
- package/src/FocusLock/useFocusLock.ts +5 -3
- package/src/List/List.tsx +5 -5
- package/src/List/ListItem.tsx +5 -5
- package/src/Menu/Menu.story.tsx +7 -6
- package/src/Menu/Menu.tsx +16 -8
- package/src/Menu/MenuButton.tsx +15 -16
- package/src/Menu/MenuItem.tsx +15 -10
- package/src/Menu/MenuList.tsx +8 -12
- package/src/Menu/MenuPopover.tsx +7 -5
- package/src/Menu/context.ts +10 -4
- package/src/Modal/Modal.story.tsx +1 -0
- package/src/Modal/Modal.tsx +12 -6
- package/src/Modal/ModalBackdrop.tsx +15 -9
- package/src/Modal/NavDrawer.story.tsx +3 -3
- package/src/Popper/Popper.story.tsx +3 -4
- package/src/Popper/Popper.tsx +13 -12
- package/src/Popper/PopperArrow.tsx +5 -4
- package/src/Popper/context.ts +2 -1
- package/src/Portal/Portal.tsx +1 -1
- package/src/RadioButton/RadioButton.story.tsx +1 -0
- package/src/RadioButton/RadioButton.tsx +14 -7
- package/src/RadioButton/RadioGroup.tsx +14 -10
- package/src/RadioButton/context.ts +2 -4
- package/src/SkipNav/SkipNav.tsx +5 -5
- package/src/Spinner/Spinner.story.tsx +1 -0
- package/src/Spinner/Spinner.tsx +14 -9
- package/src/Spinner/SpinnerButton.tsx +12 -6
- package/src/Spinner/context.ts +2 -3
- package/src/Tabs/Tab.story.tsx +1 -0
- package/src/Tabs/Tab.tsx +16 -11
- package/src/Tabs/TabList.tsx +6 -5
- package/src/Tabs/TabPanel.tsx +6 -5
- package/src/Tabs/TabPanels.tsx +4 -4
- package/src/Tabs/Tabs.tsx +6 -7
- package/src/Tabs/context.ts +4 -4
- package/src/Tooltip/Tooltip.story.tsx +3 -2
- package/src/Tooltip/Tooltip.tsx +11 -9
- package/src/Tooltip/stateMachine.ts +1 -1
- package/src/Tooltip/useTooltip.ts +19 -10
- package/src/hooks/useAutoFocus.ts +3 -1
- package/src/hooks/useChildrenCounter.ts +2 -1
- package/src/hooks/useControlledState.ts +7 -8
- package/src/hooks/useFocusReturn.ts +2 -1
- package/src/hooks/useFocusState.ts +4 -2
- package/src/hooks/useGestureHandlers.ts +11 -7
- package/src/hooks/useMeasure.ts +2 -1
- package/src/hooks/useOnClickOutside.ts +2 -2
- package/src/hooks/useReducerMachine.ts +2 -1
- package/src/hooks/useScope.ts +2 -1
- package/src/utils/assignRef.ts +1 -1
- package/src/utils/wrapEvent.ts +4 -5
|
@@ -1,44 +1,53 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/extends";
|
|
2
|
-
import
|
|
2
|
+
import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
|
|
3
|
+
import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
|
|
3
4
|
import { forwardRef, useRef, useEffect, useLayoutEffect, useMemo, memo } from 'react';
|
|
5
|
+
import { createPopper } from '@popperjs/core';
|
|
4
6
|
import { assignMultipleRefs } from '../utils/assignRef';
|
|
5
7
|
import { PopperProvider } from './context';
|
|
6
8
|
import { Portal } from '../Portal';
|
|
7
|
-
import { createPopper } from '@popperjs/core';
|
|
8
9
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
export
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
10
|
+
var useEnhancedEffect = typeof window !== 'undefined' ? useLayoutEffect : useEffect;
|
|
11
|
+
var emptyModifiers = [];
|
|
12
|
+
export var Popper = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(function Popper(_ref, forwardedRef) {
|
|
13
|
+
var _ref$placement = _ref.placement,
|
|
14
|
+
placement = _ref$placement === void 0 ? 'bottom' : _ref$placement,
|
|
15
|
+
_ref$strategy = _ref.strategy,
|
|
16
|
+
strategy = _ref$strategy === void 0 ? 'absolute' : _ref$strategy,
|
|
17
|
+
_ref$as = _ref.as,
|
|
18
|
+
Comp = _ref$as === void 0 ? 'div' : _ref$as,
|
|
19
|
+
innerAs = _ref.innerAs,
|
|
20
|
+
anchorEl = _ref.anchorEl,
|
|
21
|
+
children = _ref.children,
|
|
22
|
+
_ref$modifiers = _ref.modifiers,
|
|
23
|
+
modifiers = _ref$modifiers === void 0 ? emptyModifiers : _ref$modifiers,
|
|
24
|
+
_ref$usePortal = _ref.usePortal,
|
|
25
|
+
usePortal = _ref$usePortal === void 0 ? false : _ref$usePortal,
|
|
26
|
+
_ref$style = _ref.style,
|
|
27
|
+
style = _ref$style === void 0 ? {} : _ref$style,
|
|
28
|
+
_ref$portalSelector = _ref.portalSelector,
|
|
29
|
+
portalSelector = _ref$portalSelector === void 0 ? 'body' : _ref$portalSelector,
|
|
30
|
+
_ref$distance = _ref.distance,
|
|
31
|
+
distance = _ref$distance === void 0 ? 0 : _ref$distance,
|
|
32
|
+
_ref$skidding = _ref.skidding,
|
|
33
|
+
skidding = _ref$skidding === void 0 ? 0 : _ref$skidding,
|
|
34
|
+
_ref$arrowPadding = _ref.arrowPadding,
|
|
35
|
+
arrowPadding = _ref$arrowPadding === void 0 ? 5 : _ref$arrowPadding,
|
|
36
|
+
offsetFn = _ref.offsetFn,
|
|
37
|
+
props = _objectWithoutProperties(_ref, ["placement", "strategy", "as", "innerAs", "anchorEl", "children", "modifiers", "usePortal", "style", "portalSelector", "distance", "skidding", "arrowPadding", "offsetFn"]);
|
|
29
38
|
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
39
|
+
var arrowRef = useRef(null);
|
|
40
|
+
var popperRef = useRef(null);
|
|
41
|
+
var popperEngineInstance = useRef(null);
|
|
42
|
+
var defaultModifiers = useMemo(function () {
|
|
43
|
+
var arrowModifier = {
|
|
35
44
|
name: 'arrow',
|
|
36
45
|
options: {
|
|
37
46
|
element: '[data-popper-arrow]',
|
|
38
47
|
padding: arrowPadding
|
|
39
48
|
}
|
|
40
49
|
};
|
|
41
|
-
|
|
50
|
+
var offsetModifier = {
|
|
42
51
|
name: 'offset',
|
|
43
52
|
options: {
|
|
44
53
|
offset: offsetFn != null ? offsetFn : [skidding, distance]
|
|
@@ -46,30 +55,30 @@ export const Popper = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(function Popper
|
|
|
46
55
|
};
|
|
47
56
|
return [arrowModifier, offsetModifier];
|
|
48
57
|
}, [arrowPadding, distance, skidding, offsetFn]);
|
|
49
|
-
useEnhancedEffect(()
|
|
58
|
+
useEnhancedEffect(function () {
|
|
50
59
|
if (anchorEl && anchorEl.current && popperRef.current) {
|
|
51
60
|
popperEngineInstance.current = createPopper(anchorEl.current, popperRef.current, {
|
|
52
|
-
placement,
|
|
53
|
-
strategy,
|
|
54
|
-
modifiers: [
|
|
61
|
+
placement: placement,
|
|
62
|
+
strategy: strategy,
|
|
63
|
+
modifiers: [].concat(_toConsumableArray(defaultModifiers), _toConsumableArray(modifiers))
|
|
55
64
|
});
|
|
56
65
|
}
|
|
57
66
|
|
|
58
|
-
return ()
|
|
67
|
+
return function () {
|
|
59
68
|
popperEngineInstance.current && popperEngineInstance.current.destroy();
|
|
60
69
|
popperEngineInstance.current = null;
|
|
61
70
|
};
|
|
62
71
|
}, [anchorEl, modifiers, placement, strategy, defaultModifiers]);
|
|
63
|
-
useEnhancedEffect(()
|
|
72
|
+
useEnhancedEffect(function () {
|
|
64
73
|
var _popperEngineInstance;
|
|
65
74
|
|
|
66
75
|
(_popperEngineInstance = popperEngineInstance.current) == null ? void 0 : _popperEngineInstance.forceUpdate();
|
|
67
76
|
}, [props.hidden || props['aria-hidden']]);
|
|
68
|
-
|
|
69
|
-
arrowRef
|
|
77
|
+
var contextValue = {
|
|
78
|
+
arrowRef: arrowRef
|
|
70
79
|
};
|
|
71
80
|
|
|
72
|
-
|
|
81
|
+
var ret = /*#__PURE__*/_jsx(PopperProvider, {
|
|
73
82
|
value: contextValue,
|
|
74
83
|
children: /*#__PURE__*/_jsx(Comp, _extends({}, props, {
|
|
75
84
|
as: innerAs,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/Popper/Popper.tsx"],"names":["forwardRef","useRef","useEffect","useLayoutEffect","useMemo","memo","assignMultipleRefs","PopperProvider","Portal","
|
|
1
|
+
{"version":3,"sources":["../../../src/Popper/Popper.tsx"],"names":["forwardRef","useRef","useEffect","useLayoutEffect","useMemo","memo","createPopper","assignMultipleRefs","PopperProvider","Portal","useEnhancedEffect","window","emptyModifiers","Popper","forwardedRef","placement","strategy","as","Comp","innerAs","anchorEl","children","modifiers","usePortal","style","portalSelector","distance","skidding","arrowPadding","offsetFn","props","arrowRef","popperRef","popperEngineInstance","defaultModifiers","arrowModifier","name","options","element","padding","offsetModifier","offset","current","destroy","forceUpdate","hidden","contextValue","ret","position","left","top"],"mappings":"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","sourcesContent":["import type { HTMLAttributes, ElementType, RefObject, ReactNode } from 'react';\nimport {\n forwardRef,\n useRef,\n useEffect,\n useLayoutEffect,\n useMemo,\n memo,\n} from 'react';\nimport type {\n Placement,\n Modifier,\n PositioningStrategy,\n Instance,\n Rect,\n} from '@popperjs/core';\nimport { createPopper } from '@popperjs/core';\nimport type { OffsetModifier } from '@popperjs/core/lib/modifiers/offset';\nimport type { ArrowModifier } from '@popperjs/core/lib/modifiers/arrow';\n\nimport { assignMultipleRefs } from '../utils/assignRef';\nimport type { PopperContextProps } from './context';\nimport { PopperProvider } from './context';\nimport { Portal } from '../Portal';\n\nconst useEnhancedEffect =\n typeof window !== 'undefined' ? useLayoutEffect : useEffect;\n\nexport type OffsetsFunction = (arg0: {\n popper: Rect;\n reference: Rect;\n placement: Placement;\n}) => [number | null | undefined, number | null | undefined];\n\nexport interface PopperProps extends HTMLAttributes<HTMLDivElement> {\n as?: ElementType<any>;\n innerAs?: ElementType<any>;\n anchorEl: RefObject<HTMLElement>;\n children?: ReactNode;\n placement?: Placement;\n strategy?: PositioningStrategy;\n modifiers?: Array<Partial<Modifier<any, any>>>;\n usePortal?: boolean;\n portalSelector?: string;\n /**\n * Displaces the popper along the reference element.\n */\n skidding?: number;\n /**\n * Displaces the popper away from, or toward, the reference element in the direction of its placement. A positive number displaces it further away, while a negative number lets it overlap the reference.\n */\n distance?: number;\n /**\n * An optional function that must return a pair of [skidding, padding]. Useful for doing things like, displace the popper by 100%.\n */\n offsetFn?: OffsetsFunction;\n /**\n * If you don't want the arrow to reach the very edge of the popper (this is common if your popper has rounded corners using border-radius), you can apply some padding to it.\n */\n arrowPadding?: number;\n}\n\nconst emptyModifiers: Array<Partial<Modifier<any, any>>> = [];\nexport const Popper = memo(\n forwardRef<HTMLDivElement, PopperProps>(function Popper(\n {\n placement = 'bottom',\n strategy = 'absolute',\n as: Comp = 'div',\n innerAs,\n anchorEl,\n children,\n modifiers = emptyModifiers,\n usePortal = false,\n style = {},\n portalSelector = 'body',\n distance = 0,\n skidding = 0,\n arrowPadding = 5,\n offsetFn,\n ...props\n },\n forwardedRef\n ) {\n const arrowRef = useRef<HTMLSpanElement>(null);\n\n const popperRef = useRef<HTMLDivElement | null>(null);\n const popperEngineInstance = useRef<null | Instance>(null);\n\n const defaultModifiers: Array<Partial<Modifier<any, any>>> = useMemo(() => {\n const arrowModifier: Omit<ArrowModifier, 'enabled' | 'fn' | 'phase'> = {\n name: 'arrow',\n options: {\n element: '[data-popper-arrow]',\n padding: arrowPadding,\n },\n };\n const offsetModifier: Omit<OffsetModifier, 'enabled' | 'fn' | 'phase'> = {\n name: 'offset',\n options: {\n offset: offsetFn ?? [skidding, distance],\n },\n };\n\n return [arrowModifier, offsetModifier];\n }, [arrowPadding, distance, skidding, offsetFn]);\n\n useEnhancedEffect(() => {\n if (anchorEl && anchorEl.current && popperRef.current) {\n popperEngineInstance.current = createPopper(\n anchorEl.current,\n popperRef.current,\n {\n placement,\n strategy,\n modifiers: [...defaultModifiers, ...modifiers],\n }\n );\n }\n\n return () => {\n popperEngineInstance.current && popperEngineInstance.current.destroy();\n popperEngineInstance.current = null;\n };\n }, [anchorEl, modifiers, placement, strategy, defaultModifiers]);\n\n useEnhancedEffect(() => {\n popperEngineInstance.current?.forceUpdate();\n }, [props.hidden || props['aria-hidden']]);\n\n const contextValue: PopperContextProps = {\n arrowRef,\n };\n\n const ret = (\n <PopperProvider value={contextValue}>\n <Comp\n {...props}\n as={innerAs}\n ref={assignMultipleRefs(popperRef, forwardedRef)}\n style={{ position: 'fixed', left: -5000, top: -5000, ...style }}\n >\n {children}\n </Comp>\n </PopperProvider>\n );\n\n if (usePortal) {\n return <Portal selector={portalSelector}>{ret}</Portal>;\n }\n\n return ret;\n })\n);\n"],"file":"Popper.js"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type
|
|
2
|
-
export interface PopperArrowProps extends
|
|
3
|
-
as?:
|
|
4
|
-
innerAs?:
|
|
1
|
+
import type { ElementType, HTMLAttributes } from 'react';
|
|
2
|
+
export interface PopperArrowProps extends HTMLAttributes<HTMLDivElement> {
|
|
3
|
+
as?: ElementType<any>;
|
|
4
|
+
innerAs?: ElementType<any>;
|
|
5
5
|
}
|
|
6
|
-
export declare const PopperArrow:
|
|
6
|
+
export declare const PopperArrow: import("react").ForwardRefExoticComponent<PopperArrowProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
@@ -1,28 +1,27 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/extends";
|
|
2
|
-
import
|
|
2
|
+
import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
|
|
3
3
|
import { forwardRef } from 'react';
|
|
4
4
|
import { usePopperContext } from './context';
|
|
5
5
|
import { assignRef } from '../utils/assignRef';
|
|
6
6
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
7
|
-
export
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
props = _objectWithoutPropertiesLoose(_ref, ["as"]);
|
|
7
|
+
export var PopperArrow = /*#__PURE__*/forwardRef(function PopperArrow(_ref, _ref2) {
|
|
8
|
+
var _ref$as = _ref.as,
|
|
9
|
+
Comp = _ref$as === void 0 ? 'div' : _ref$as,
|
|
10
|
+
props = _objectWithoutProperties(_ref, ["as"]);
|
|
12
11
|
|
|
13
|
-
|
|
12
|
+
var ctx = usePopperContext();
|
|
14
13
|
|
|
15
14
|
if (ctx === null) {
|
|
16
15
|
return null;
|
|
17
16
|
}
|
|
18
17
|
|
|
19
18
|
return /*#__PURE__*/_jsx(Comp, _extends({}, props, {
|
|
20
|
-
ref: node
|
|
19
|
+
ref: function ref(node) {
|
|
21
20
|
if (node && ctx.arrowRef.current && ctx.arrowRef.current !== node) {
|
|
22
21
|
throw new Error('You can only render one <PopperArrow /> per <Popper> component');
|
|
23
22
|
}
|
|
24
23
|
|
|
25
|
-
assignRef(
|
|
24
|
+
assignRef(_ref2, node);
|
|
26
25
|
assignRef(ctx.arrowRef, node);
|
|
27
26
|
},
|
|
28
27
|
"data-popper-arrow": ""
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/Popper/PopperArrow.tsx"],"names":["forwardRef","usePopperContext","assignRef","PopperArrow","ref","as","Comp","props","ctx","node","arrowRef","current","Error"],"mappings":";;
|
|
1
|
+
{"version":3,"sources":["../../../src/Popper/PopperArrow.tsx"],"names":["forwardRef","usePopperContext","assignRef","PopperArrow","ref","as","Comp","props","ctx","node","arrowRef","current","Error"],"mappings":";;AACA,SAASA,UAAT,QAA2B,OAA3B;AAEA,SAASC,gBAAT,QAAiC,WAAjC;AACA,SAASC,SAAT,QAA0B,oBAA1B;;AAOA,OAAO,IAAMC,WAAW,gBAAGH,UAAU,CACnC,SAASG,WAAT,OAAqDC,KAArD,EAA0D;AAAA,qBAAnCC,EAAmC;AAAA,MAA/BC,IAA+B,wBAAxB,KAAwB;AAAA,MAAdC,KAAc;;AACxD,MAAMC,GAAG,GAAGP,gBAAgB,EAA5B;;AAEA,MAAIO,GAAG,KAAK,IAAZ,EAAkB;AAChB,WAAO,IAAP;AACD;;AAED,sBACE,KAAC,IAAD,eACMD,KADN;AAEE,IAAA,GAAG,EAAE,aAACE,IAAD,EAAiC;AACpC,UAAIA,IAAI,IAAID,GAAG,CAACE,QAAJ,CAAaC,OAArB,IAAgCH,GAAG,CAACE,QAAJ,CAAaC,OAAb,KAAyBF,IAA7D,EAAmE;AACjE,cAAM,IAAIG,KAAJ,CACJ,gEADI,CAAN;AAGD;;AAEDV,MAAAA,SAAS,CAACE,KAAD,EAAMK,IAAN,CAAT;AACAP,MAAAA,SAAS,CAACM,GAAG,CAACE,QAAL,EAAeD,IAAf,CAAT;AACD,KAXH;AAYE,yBAAkB;AAZpB,KADF;AAgBD,CAxBkC,CAA9B","sourcesContent":["import type { ElementType, HTMLAttributes } from 'react';\nimport { forwardRef } from 'react';\n\nimport { usePopperContext } from './context';\nimport { assignRef } from '../utils/assignRef';\n\nexport interface PopperArrowProps extends HTMLAttributes<HTMLDivElement> {\n as?: ElementType<any>;\n innerAs?: ElementType<any>;\n}\n\nexport const PopperArrow = forwardRef<HTMLDivElement, PopperArrowProps>(\n function PopperArrow({ as: Comp = 'div', ...props }, ref) {\n const ctx = usePopperContext();\n\n if (ctx === null) {\n return null;\n }\n\n return (\n <Comp\n {...props}\n ref={(node: HTMLDivElement | null) => {\n if (node && ctx.arrowRef.current && ctx.arrowRef.current !== node) {\n throw new Error(\n 'You can only render one <PopperArrow /> per <Popper> component'\n );\n }\n\n assignRef(ref, node);\n assignRef(ctx.arrowRef, node);\n }}\n data-popper-arrow=\"\"\n />\n );\n }\n);\n"],"file":"PopperArrow.js"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { createContext, useContext } from 'react';
|
|
2
|
-
|
|
3
|
-
export
|
|
4
|
-
export
|
|
2
|
+
var context = /*#__PURE__*/createContext(null);
|
|
3
|
+
export var PopperProvider = context.Provider;
|
|
4
|
+
export var usePopperContext = function usePopperContext() {
|
|
5
|
+
return useContext(context);
|
|
6
|
+
};
|
|
5
7
|
//# sourceMappingURL=context.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/Popper/context.ts"],"names":["createContext","useContext","context","PopperProvider","Provider","usePopperContext"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../../../src/Popper/context.ts"],"names":["createContext","useContext","context","PopperProvider","Provider","usePopperContext"],"mappings":"AACA,SAASA,aAAT,EAAwBC,UAAxB,QAA0C,OAA1C;AAMA,IAAMC,OAAO,gBAAGF,aAAa,CAA4B,IAA5B,CAA7B;AACA,OAAO,IAAMG,cAAc,GAAGD,OAAO,CAACE,QAA/B;AACP,OAAO,IAAMC,gBAAgB,GAAG,SAAnBA,gBAAmB;AAAA,SAAMJ,UAAU,CAACC,OAAD,CAAhB;AAAA,CAAzB","sourcesContent":["import type { MutableRefObject } from 'react';\nimport { createContext, useContext } from 'react';\n\nexport interface PopperContextProps {\n arrowRef: MutableRefObject<HTMLSpanElement | null>;\n}\n\nconst context = createContext<PopperContextProps | null>(null);\nexport const PopperProvider = context.Provider;\nexport const usePopperContext = () => useContext(context);\n"],"file":"context.js"}
|
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
import { createPortal } from 'react-dom';
|
|
2
2
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
-
export
|
|
4
|
-
children,
|
|
5
|
-
|
|
6
|
-
|
|
3
|
+
export var Portal = function Portal(_ref) {
|
|
4
|
+
var children = _ref.children,
|
|
5
|
+
_ref$selector = _ref.selector,
|
|
6
|
+
selector = _ref$selector === void 0 ? 'body' : _ref$selector;
|
|
7
|
+
|
|
7
8
|
if (typeof window === 'undefined') {
|
|
8
9
|
return null;
|
|
9
10
|
}
|
|
10
11
|
|
|
11
|
-
|
|
12
|
+
var dom = document.querySelector(selector);
|
|
12
13
|
|
|
13
14
|
if (dom) {
|
|
14
15
|
return /*#__PURE__*/createPortal( /*#__PURE__*/_jsx("div", {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/Portal/Portal.tsx"],"names":["createPortal","Portal","children","selector","window","dom","document","querySelector"],"mappings":"AACA,SAASA,YAAT,QAA6B,WAA7B;;AAOA,OAAO,
|
|
1
|
+
{"version":3,"sources":["../../../src/Portal/Portal.tsx"],"names":["createPortal","Portal","children","selector","window","dom","document","querySelector"],"mappings":"AACA,SAASA,YAAT,QAA6B,WAA7B;;AAOA,OAAO,IAAMC,MAAuB,GAAG,SAA1BA,MAA0B,OAAqC;AAAA,MAAlCC,QAAkC,QAAlCA,QAAkC;AAAA,2BAAxBC,QAAwB;AAAA,MAAxBA,QAAwB,8BAAb,MAAa;;AAC1E,MAAI,OAAOC,MAAP,KAAkB,WAAtB,EAAmC;AACjC,WAAO,IAAP;AACD;;AAED,MAAMC,GAAG,GAAGC,QAAQ,CAACC,aAAT,CAAuBJ,QAAvB,CAAZ;;AACA,MAAIE,GAAJ,EAAS;AACP,wBAAOL,YAAY,eAAC;AAAK,qBAAY,EAAjB;AAAA,gBAAqBE;AAArB,MAAD,EAAuCG,GAAvC,CAAnB;AACD;;AAED,SAAO,IAAP;AACD,CAXM","sourcesContent":["import type { FC, ReactNode } from 'react';\nimport { createPortal } from 'react-dom';\n\nexport interface PortalProps {\n children?: ReactNode;\n selector?: string;\n}\n\nexport const Portal: FC<PortalProps> = ({ children, selector = 'body' }) => {\n if (typeof window === 'undefined') {\n return null;\n }\n\n const dom = document.querySelector(selector);\n if (dom) {\n return createPortal(<div data-portal=\"\">{children}</div>, dom);\n }\n\n return null;\n};\n"],"file":"Portal.js"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import type
|
|
2
|
-
import { RadioValue } from './context';
|
|
3
|
-
export interface RadioButtonProps extends Omit<
|
|
4
|
-
as?:
|
|
5
|
-
innerAs?:
|
|
6
|
-
children?:
|
|
1
|
+
import type { ElementType, InputHTMLAttributes, ReactNode } from 'react';
|
|
2
|
+
import type { RadioValue } from './context';
|
|
3
|
+
export interface RadioButtonProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'value'> {
|
|
4
|
+
as?: ElementType<any>;
|
|
5
|
+
innerAs?: ElementType<any>;
|
|
6
|
+
children?: ReactNode;
|
|
7
7
|
checked?: boolean;
|
|
8
8
|
value: RadioValue;
|
|
9
9
|
}
|
|
10
|
-
export declare const RadioButton:
|
|
10
|
+
export declare const RadioButton: import("react").ForwardRefExoticComponent<RadioButtonProps & import("react").RefAttributes<HTMLInputElement>>;
|
|
@@ -1,26 +1,25 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/extends";
|
|
2
|
-
import
|
|
2
|
+
import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
|
|
3
3
|
import { forwardRef } from 'react';
|
|
4
4
|
import { useRadioGroupContext } from './context';
|
|
5
5
|
import { wrapEvent } from '../utils';
|
|
6
6
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
7
|
-
export
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
otherProps = _objectWithoutPropertiesLoose(props, ["as", "value", "onChange", "checked", "name"]);
|
|
7
|
+
export var RadioButton = /*#__PURE__*/forwardRef(function RadioButton(props, forwardedRef) {
|
|
8
|
+
var _props$as = props.as,
|
|
9
|
+
Comp = _props$as === void 0 ? 'input' : _props$as,
|
|
10
|
+
valueProp = props.value,
|
|
11
|
+
onChangeProp = props.onChange,
|
|
12
|
+
checkedProp = props.checked,
|
|
13
|
+
nameProp = props.name,
|
|
14
|
+
otherProps = _objectWithoutProperties(props, ["as", "value", "onChange", "checked", "name"]);
|
|
16
15
|
|
|
17
|
-
|
|
16
|
+
var radioGroupContext = useRadioGroupContext();
|
|
18
17
|
|
|
19
|
-
|
|
18
|
+
var handleChange = function handleChange(e) {
|
|
20
19
|
radioGroupContext == null ? void 0 : radioGroupContext.onChange == null ? void 0 : radioGroupContext.onChange(e, valueProp);
|
|
21
20
|
};
|
|
22
21
|
|
|
23
|
-
|
|
22
|
+
var checked = radioGroupContext ? radioGroupContext.value === valueProp : checkedProp;
|
|
24
23
|
return /*#__PURE__*/_jsx(Comp, _extends({
|
|
25
24
|
ref: forwardedRef,
|
|
26
25
|
type: "radio",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/RadioButton/RadioButton.tsx"],"names":["forwardRef","useRadioGroupContext","wrapEvent","RadioButton","props","forwardedRef","as","Comp","value","
|
|
1
|
+
{"version":3,"sources":["../../../src/RadioButton/RadioButton.tsx"],"names":["forwardRef","useRadioGroupContext","wrapEvent","RadioButton","props","forwardedRef","as","Comp","valueProp","value","onChangeProp","onChange","checkedProp","checked","nameProp","name","otherProps","radioGroupContext","handleChange","e","String"],"mappings":";;AAMA,SAASA,UAAT,QAA2B,OAA3B;AAGA,SAASC,oBAAT,QAAqC,WAArC;AACA,SAASC,SAAT,QAA0B,UAA1B;;AAWA,OAAO,IAAMC,WAAW,gBAAGH,UAAU,CACnC,SAASG,WAAT,CAAqBC,KAArB,EAA4BC,YAA5B,EAA0C;AAAA,kBAQpCD,KARoC,CAEtCE,EAFsC;AAAA,MAElCC,IAFkC,0BAE3B,OAF2B;AAAA,MAG/BC,SAH+B,GAQpCJ,KARoC,CAGtCK,KAHsC;AAAA,MAI5BC,YAJ4B,GAQpCN,KARoC,CAItCO,QAJsC;AAAA,MAK7BC,WAL6B,GAQpCR,KARoC,CAKtCS,OALsC;AAAA,MAMhCC,QANgC,GAQpCV,KARoC,CAMtCW,IANsC;AAAA,MAOnCC,UAPmC,4BAQpCZ,KARoC;;AASxC,MAAMa,iBAAiB,GAAGhB,oBAAoB,EAA9C;;AAEA,MAAMiB,YAAY,GAAG,SAAfA,YAAe,CAACC,CAAD,EAAsC;AACzDF,IAAAA,iBAAiB,QAAjB,YAAAA,iBAAiB,CAAEN,QAAnB,oBAAAM,iBAAiB,CAAEN,QAAnB,CAA8BQ,CAA9B,EAAiCX,SAAjC;AACD,GAFD;;AAIA,MAAMK,OAAO,GAAGI,iBAAiB,GAC7BA,iBAAiB,CAACR,KAAlB,KAA4BD,SADC,GAE7BI,WAFJ;AAIA,sBACE,KAAC,IAAD;AACE,IAAA,GAAG,EAAEP,YADP;AAEE,IAAA,IAAI,EAAC,OAFP;AAGE,IAAA,OAAO,EAAEQ,OAHX;AAIE,oBAAcO,MAAM,CAACP,OAAD,CAJtB;AAKE,IAAA,IAAI,EAAEI,iBAAiB,GAAGA,iBAAiB,CAACF,IAArB,GAA4BD,QALrD;AAME,IAAA,QAAQ,EAAEZ,SAAS,CAACQ,YAAD,EAAeQ,YAAf,CANrB;AAOE,IAAA,KAAK,EAAEV;AAPT,KAQMQ,UARN,EADF;AAYD,CAhCkC,CAA9B","sourcesContent":["import type {\n ChangeEvent,\n ElementType,\n InputHTMLAttributes,\n ReactNode,\n} from 'react';\nimport { forwardRef } from 'react';\n\nimport type { RadioValue } from './context';\nimport { useRadioGroupContext } from './context';\nimport { wrapEvent } from '../utils';\n\nexport interface RadioButtonProps\n extends Omit<InputHTMLAttributes<HTMLInputElement>, 'value'> {\n as?: ElementType<any>;\n innerAs?: ElementType<any>;\n children?: ReactNode;\n checked?: boolean;\n value: RadioValue;\n}\n\nexport const RadioButton = forwardRef<HTMLInputElement, RadioButtonProps>(\n function RadioButton(props, forwardedRef) {\n const {\n as: Comp = 'input',\n value: valueProp,\n onChange: onChangeProp,\n checked: checkedProp,\n name: nameProp,\n ...otherProps\n } = props;\n const radioGroupContext = useRadioGroupContext();\n\n const handleChange = (e: ChangeEvent<HTMLInputElement>) => {\n radioGroupContext?.onChange?.(e, valueProp);\n };\n\n const checked = radioGroupContext\n ? radioGroupContext.value === valueProp\n : checkedProp;\n\n return (\n <Comp\n ref={forwardedRef}\n type=\"radio\"\n checked={checked}\n aria-checked={String(checked)}\n name={radioGroupContext ? radioGroupContext.name : nameProp}\n onChange={wrapEvent(onChangeProp, handleChange)}\n value={valueProp}\n {...otherProps}\n />\n );\n }\n);\n"],"file":"RadioButton.js"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import type
|
|
2
|
-
import { RadioValue } from './context';
|
|
3
|
-
export interface RadioGroupProps extends Omit<
|
|
4
|
-
as?:
|
|
5
|
-
innerAs?:
|
|
6
|
-
children?:
|
|
1
|
+
import type { ChangeEvent, ElementType, HTMLAttributes, ReactNode } from 'react';
|
|
2
|
+
import type { RadioValue } from './context';
|
|
3
|
+
export interface RadioGroupProps extends Omit<HTMLAttributes<HTMLDivElement>, 'onChange' | 'value' | 'defaultValue'> {
|
|
4
|
+
as?: ElementType<any>;
|
|
5
|
+
innerAs?: ElementType<any>;
|
|
6
|
+
children?: ReactNode;
|
|
7
7
|
value?: RadioValue;
|
|
8
8
|
defaultValue?: RadioValue;
|
|
9
9
|
name?: string;
|
|
10
|
-
onChange?: (e:
|
|
10
|
+
onChange?: (e: ChangeEvent<HTMLInputElement>, value: RadioValue) => void;
|
|
11
11
|
}
|
|
12
|
-
export declare const RadioGroup:
|
|
12
|
+
export declare const RadioGroup: import("react").ForwardRefExoticComponent<RadioGroupProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
@@ -1,27 +1,33 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/extends";
|
|
2
|
-
import
|
|
2
|
+
import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
|
3
|
+
import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
|
|
3
4
|
import { forwardRef, useId } from 'react';
|
|
4
5
|
import { RadioGroupProvider } from './context';
|
|
5
6
|
import { useControlledState } from '../hooks';
|
|
6
7
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
7
|
-
export
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
otherProps = _objectWithoutPropertiesLoose(props, ["as", "onChange", "value", "name", "defaultValue"]);
|
|
8
|
+
export var RadioGroup = /*#__PURE__*/forwardRef(function RadioGroup(props, forwardedRef) {
|
|
9
|
+
var _props$as = props.as,
|
|
10
|
+
Comp = _props$as === void 0 ? 'div' : _props$as,
|
|
11
|
+
onChangeProp = props.onChange,
|
|
12
|
+
valueProp = props.value,
|
|
13
|
+
nameProp = props.name,
|
|
14
|
+
defaultValue = props.defaultValue,
|
|
15
|
+
otherProps = _objectWithoutProperties(props, ["as", "onChange", "value", "name", "defaultValue"]);
|
|
16
16
|
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
17
|
+
var _useControlledState = useControlledState(valueProp, onChangeProp, defaultValue, function (setValue) {
|
|
18
|
+
return function (e, value) {
|
|
19
|
+
setValue(value);
|
|
20
|
+
};
|
|
21
|
+
}),
|
|
22
|
+
_useControlledState2 = _slicedToArray(_useControlledState, 2),
|
|
23
|
+
value = _useControlledState2[0],
|
|
24
|
+
onChange = _useControlledState2[1];
|
|
25
|
+
|
|
26
|
+
var fallbackId = useId();
|
|
21
27
|
return /*#__PURE__*/_jsx(RadioGroupProvider, {
|
|
22
28
|
value: {
|
|
23
|
-
value,
|
|
24
|
-
onChange,
|
|
29
|
+
value: value,
|
|
30
|
+
onChange: onChange,
|
|
25
31
|
name: nameProp || fallbackId
|
|
26
32
|
},
|
|
27
33
|
children: /*#__PURE__*/_jsx(Comp, _extends({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/RadioButton/RadioGroup.tsx"],"names":["forwardRef","useId","RadioGroupProvider","useControlledState","RadioGroup","props","forwardedRef","as","Comp","onChange","
|
|
1
|
+
{"version":3,"sources":["../../../src/RadioButton/RadioGroup.tsx"],"names":["forwardRef","useId","RadioGroupProvider","useControlledState","RadioGroup","props","forwardedRef","as","Comp","onChangeProp","onChange","valueProp","value","nameProp","name","defaultValue","otherProps","setValue","e","fallbackId"],"mappings":";;;AAMA,SAASA,UAAT,EAAqBC,KAArB,QAAkC,OAAlC;AAGA,SAASC,kBAAT,QAAmC,WAAnC;AACA,SAASC,kBAAT,QAAmC,UAAnC;;AAgBA,OAAO,IAAMC,UAAU,gBAAGJ,UAAU,CAClC,SAASI,UAAT,CAAoBC,KAApB,EAA2BC,YAA3B,EAAyC;AAAA,kBAQnCD,KARmC,CAErCE,EAFqC;AAAA,MAEjCC,IAFiC,0BAE1B,KAF0B;AAAA,MAG3BC,YAH2B,GAQnCJ,KARmC,CAGrCK,QAHqC;AAAA,MAI9BC,SAJ8B,GAQnCN,KARmC,CAIrCO,KAJqC;AAAA,MAK/BC,QAL+B,GAQnCR,KARmC,CAKrCS,IALqC;AAAA,MAMrCC,YANqC,GAQnCV,KARmC,CAMrCU,YANqC;AAAA,MAOlCC,UAPkC,4BAQnCX,KARmC;;AAAA,4BASbF,kBAAkB,CAC1CQ,SAD0C,EAE1CF,YAF0C,EAG1CM,YAH0C,EAI1C,UAACE,QAAD;AAAA,WAAc,UAACC,CAAD,EAAIN,KAAJ,EAAc;AAC1BK,MAAAA,QAAQ,CAACL,KAAD,CAAR;AACD,KAFD;AAAA,GAJ0C,CATL;AAAA;AAAA,MAShCA,KATgC;AAAA,MASzBF,QATyB;;AAkBvC,MAAMS,UAAU,GAAGlB,KAAK,EAAxB;AAEA,sBACE,KAAC,kBAAD;AACE,IAAA,KAAK,EAAE;AACLW,MAAAA,KAAK,EAALA,KADK;AAELF,MAAAA,QAAQ,EAARA,QAFK;AAGLI,MAAAA,IAAI,EAAED,QAAQ,IAAIM;AAHb,KADT;AAAA,2BAOE,KAAC,IAAD;AAAM,MAAA,GAAG,EAAEb,YAAX;AAAyB,MAAA,IAAI,EAAC;AAA9B,OAA+CU,UAA/C;AAPF,IADF;AAWD,CAhCiC,CAA7B","sourcesContent":["import type {\n ChangeEvent,\n ElementType,\n HTMLAttributes,\n ReactNode,\n} from 'react';\nimport { forwardRef, useId } from 'react';\n\nimport type { RadioValue } from './context';\nimport { RadioGroupProvider } from './context';\nimport { useControlledState } from '../hooks';\n\nexport interface RadioGroupProps\n extends Omit<\n HTMLAttributes<HTMLDivElement>,\n 'onChange' | 'value' | 'defaultValue'\n > {\n as?: ElementType<any>;\n innerAs?: ElementType<any>;\n children?: ReactNode;\n value?: RadioValue;\n defaultValue?: RadioValue;\n name?: string;\n onChange?: (e: ChangeEvent<HTMLInputElement>, value: RadioValue) => void;\n}\n\nexport const RadioGroup = forwardRef<HTMLDivElement, RadioGroupProps>(\n function RadioGroup(props, forwardedRef) {\n const {\n as: Comp = 'div',\n onChange: onChangeProp,\n value: valueProp,\n name: nameProp,\n defaultValue,\n ...otherProps\n } = props;\n const [value, onChange] = useControlledState(\n valueProp,\n onChangeProp,\n defaultValue,\n (setValue) => (e, value) => {\n setValue(value);\n }\n );\n\n const fallbackId = useId();\n\n return (\n <RadioGroupProvider\n value={{\n value,\n onChange,\n name: nameProp || fallbackId,\n }}\n >\n <Comp ref={forwardedRef} role=\"radiogroup\" {...otherProps} />\n </RadioGroupProvider>\n );\n }\n);\n"],"file":"RadioGroup.js"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
|
|
1
|
+
import type { ChangeEvent } from 'react';
|
|
2
2
|
export declare type RadioValue = string | number | boolean;
|
|
3
3
|
export interface RadioGroupContextProps {
|
|
4
4
|
value: RadioValue | undefined;
|
|
5
|
-
onChange?: (e:
|
|
5
|
+
onChange?: (e: ChangeEvent<HTMLInputElement>, value: RadioValue) => void;
|
|
6
6
|
name: string | undefined;
|
|
7
7
|
}
|
|
8
8
|
export declare const RadioGroupProvider: import("react").Provider<RadioGroupContextProps | undefined>;
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { createContext, useContext } from 'react';
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
2
|
+
var RadioGroupContext = /*#__PURE__*/createContext(undefined);
|
|
3
|
+
var RadioGroupProvider = RadioGroupContext.Provider;
|
|
4
|
+
export { RadioGroupProvider };
|
|
5
|
+
export var useRadioGroupContext = function useRadioGroupContext() {
|
|
6
|
+
return useContext(RadioGroupContext);
|
|
7
|
+
};
|
|
7
8
|
//# sourceMappingURL=context.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/RadioButton/context.ts"],"names":["createContext","useContext","RadioGroupContext","undefined","
|
|
1
|
+
{"version":3,"sources":["../../../src/RadioButton/context.ts"],"names":["createContext","useContext","RadioGroupContext","undefined","RadioGroupProvider","Provider","useRadioGroupContext"],"mappings":"AACA,SAASA,aAAT,EAAwBC,UAAxB,QAA0C,OAA1C;AAWA,IAAMC,iBAAiB,gBAAGF,aAAa,CACrCG,SADqC,CAAvC;IAGyBC,kB,GAAuBF,iB,CAAjCG,Q;;AACf,OAAO,IAAMC,oBAAoB,GAAG,SAAvBA,oBAAuB;AAAA,SAAML,UAAU,CAACC,iBAAD,CAAhB;AAAA,CAA7B","sourcesContent":["import type { ChangeEvent } from 'react';\nimport { createContext, useContext } from 'react';\n\nexport type RadioValue = string | number | boolean;\n\n// RadioGroup Component\nexport interface RadioGroupContextProps {\n value: RadioValue | undefined;\n onChange?: (e: ChangeEvent<HTMLInputElement>, value: RadioValue) => void;\n name: string | undefined;\n}\n\nconst RadioGroupContext = createContext<RadioGroupContextProps | undefined>(\n undefined\n);\nexport const { Provider: RadioGroupProvider } = RadioGroupContext;\nexport const useRadioGroupContext = () => useContext(RadioGroupContext);\n"],"file":"context.js"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import type
|
|
2
|
-
export interface SkipNavProps extends
|
|
3
|
-
as?:
|
|
4
|
-
innerAs?:
|
|
5
|
-
children?:
|
|
1
|
+
import type { ElementType, HTMLAttributes, ReactNode } from 'react';
|
|
2
|
+
export interface SkipNavProps extends HTMLAttributes<HTMLDivElement> {
|
|
3
|
+
as?: ElementType<any>;
|
|
4
|
+
innerAs?: ElementType<any>;
|
|
5
|
+
children?: ReactNode;
|
|
6
6
|
}
|
|
7
|
-
export declare const SkipNav:
|
|
7
|
+
export declare const SkipNav: import("react").ForwardRefExoticComponent<SkipNavProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/extends";
|
|
2
|
-
import
|
|
2
|
+
import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
|
|
3
3
|
import { forwardRef } from 'react';
|
|
4
4
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
5
|
-
export
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
otherProps = _objectWithoutPropertiesLoose(props, ["as"]);
|
|
5
|
+
export var SkipNav = /*#__PURE__*/forwardRef(function SkipNav(props, forwardedRef) {
|
|
6
|
+
var _props$as = props.as,
|
|
7
|
+
Comp = _props$as === void 0 ? 'div' : _props$as,
|
|
8
|
+
otherProps = _objectWithoutProperties(props, ["as"]);
|
|
10
9
|
|
|
11
10
|
return /*#__PURE__*/_jsx(Comp, _extends({
|
|
12
11
|
ref: forwardedRef
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/SkipNav/SkipNav.tsx"],"names":["forwardRef","SkipNav","props","forwardedRef","as","Comp","otherProps"],"mappings":";;
|
|
1
|
+
{"version":3,"sources":["../../../src/SkipNav/SkipNav.tsx"],"names":["forwardRef","SkipNav","props","forwardedRef","as","Comp","otherProps"],"mappings":";;AACA,SAASA,UAAT,QAA2B,OAA3B;;AAQA,OAAO,IAAMC,OAAO,gBAAGD,UAAU,CAC/B,SAASC,OAAT,CAAiBC,KAAjB,EAAwBC,YAAxB,EAAsC;AAAA,kBACQD,KADR,CAC5BE,EAD4B;AAAA,MACxBC,IADwB,0BACjB,KADiB;AAAA,MACPC,UADO,4BACQJ,KADR;;AAGpC,sBAAO,KAAC,IAAD;AAAM,IAAA,GAAG,EAAEC;AAAX,KAA6BG,UAA7B,EAAP;AACD,CAL8B,CAA1B","sourcesContent":["import type { ElementType, HTMLAttributes, ReactNode } from 'react';\nimport { forwardRef } from 'react';\n\nexport interface SkipNavProps extends HTMLAttributes<HTMLDivElement> {\n as?: ElementType<any>;\n innerAs?: ElementType<any>;\n children?: ReactNode;\n}\n\nexport const SkipNav = forwardRef<HTMLDivElement, SkipNavProps>(\n function SkipNav(props, forwardedRef) {\n const { as: Comp = 'div', ...otherProps } = props;\n\n return <Comp ref={forwardedRef} {...otherProps} />;\n }\n);\n"],"file":"SkipNav.js"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import type
|
|
2
|
-
export interface SpinnerProps extends Omit<
|
|
3
|
-
as?:
|
|
4
|
-
innerAs?:
|
|
5
|
-
children?:
|
|
1
|
+
import type { HTMLAttributes, ElementType, ReactNode, MouseEvent, KeyboardEvent } from 'react';
|
|
2
|
+
export interface SpinnerProps extends Omit<HTMLAttributes<HTMLDivElement>, 'onChange'> {
|
|
3
|
+
as?: ElementType<any>;
|
|
4
|
+
innerAs?: ElementType<any>;
|
|
5
|
+
children?: ReactNode;
|
|
6
6
|
value?: number;
|
|
7
7
|
minValue?: number;
|
|
8
8
|
maxValue?: number;
|
|
9
9
|
stepSize?: number;
|
|
10
|
-
onChange?: (e:
|
|
10
|
+
onChange?: (e: MouseEvent<HTMLButtonElement> | KeyboardEvent<HTMLDivElement>, value: number) => void;
|
|
11
11
|
}
|
|
12
|
-
export declare const Spinner:
|
|
12
|
+
export declare const Spinner: import("react").ForwardRefExoticComponent<SpinnerProps & import("react").RefAttributes<HTMLDivElement>>;
|