@tap-payments/os-micro-frontend-shared 0.1.31 → 0.1.32

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (29) hide show
  1. package/build/components/RadioButton/RadioButton.d.ts +5 -0
  2. package/build/components/RadioButton/RadioButton.js +19 -0
  3. package/build/components/RadioButton/index.d.ts +2 -0
  4. package/build/components/RadioButton/index.js +1 -0
  5. package/build/components/RadioButton/style.d.ts +27 -0
  6. package/build/components/RadioButton/style.js +64 -0
  7. package/build/components/RadioButton/type.d.ts +12 -0
  8. package/build/components/RadioButton/type.js +1 -0
  9. package/build/components/RadioGroup/RadioGroup.d.ts +5 -0
  10. package/build/components/RadioGroup/RadioGroup.js +31 -0
  11. package/build/components/RadioGroup/index.d.ts +2 -0
  12. package/build/components/RadioGroup/index.js +1 -0
  13. package/build/components/RadioGroup/style.d.ts +6 -0
  14. package/build/components/RadioGroup/style.js +15 -0
  15. package/build/components/RadioGroup/type.d.ts +33 -0
  16. package/build/components/RadioGroup/type.js +1 -0
  17. package/build/components/RightLeftExpandingCenterChip/RightLeftExpandingCenterChip.d.ts +3 -0
  18. package/build/components/RightLeftExpandingCenterChip/RightLeftExpandingCenterChip.js +43 -0
  19. package/build/components/RightLeftExpandingCenterChip/index.d.ts +2 -0
  20. package/build/components/RightLeftExpandingCenterChip/index.js +2 -0
  21. package/build/components/RightLeftExpandingCenterChip/style.d.ts +3415 -0
  22. package/build/components/RightLeftExpandingCenterChip/style.js +104 -0
  23. package/build/components/RightLeftExpandingCenterChip/type.d.ts +10 -0
  24. package/build/components/RightLeftExpandingCenterChip/type.js +1 -0
  25. package/build/components/RightLeftExpandingCenterChip/useRightLeftExpandingCenterChip.d.ts +31 -0
  26. package/build/components/RightLeftExpandingCenterChip/useRightLeftExpandingCenterChip.js +156 -0
  27. package/build/components/index.d.ts +3 -0
  28. package/build/components/index.js +3 -0
  29. package/package.json +2 -2
@@ -0,0 +1,5 @@
1
+ /// <reference types="react" />
2
+ import { RadioButtonProps } from './type';
3
+ declare function RadioButton({ size, customCheckedIcon, checkedColor, disabledColor, hoverColor, iconSize, showRipple, sx, ...props }: RadioButtonProps): import("react/jsx-runtime").JSX.Element;
4
+ declare const _default: import("react").MemoExoticComponent<typeof RadioButton>;
5
+ export default _default;
@@ -0,0 +1,19 @@
1
+ var __rest = (this && this.__rest) || function (s, e) {
2
+ var t = {};
3
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
4
+ t[p] = s[p];
5
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
6
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
7
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
8
+ t[p[i]] = s[p[i]];
9
+ }
10
+ return t;
11
+ };
12
+ import { jsx as _jsx } from "react/jsx-runtime";
13
+ import { memo } from 'react';
14
+ import { StyledRadio, StyledRadioCheckedIcon } from './style';
15
+ function RadioButton(_a) {
16
+ var { size = 'small', customCheckedIcon, checkedColor, disabledColor, hoverColor, iconSize, showRipple = false, sx } = _a, props = __rest(_a, ["size", "customCheckedIcon", "checkedColor", "disabledColor", "hoverColor", "iconSize", "showRipple", "sx"]);
17
+ return (_jsx(StyledRadio, Object.assign({ size: size === 'large' ? 'medium' : size, disableRipple: !showRipple, checkedIcon: customCheckedIcon || _jsx(StyledRadioCheckedIcon, {}), iconSize: iconSize, checkedColor: checkedColor, disabledColor: disabledColor, hoverColor: hoverColor, sx: sx }, props)));
18
+ }
19
+ export default memo(RadioButton);
@@ -0,0 +1,2 @@
1
+ export { default as RadioButton } from './RadioButton';
2
+ export type { RadioButtonProps } from './type';
@@ -0,0 +1 @@
1
+ export { default as RadioButton } from './RadioButton';
@@ -0,0 +1,27 @@
1
+ /// <reference types="react" />
2
+ export declare const DEFAULT_COLORS: {
3
+ readonly color: "#8C9196";
4
+ readonly checkedColor: "#1F88D0";
5
+ readonly disabledColor: "#C7C7CC";
6
+ };
7
+ export declare const SIZE_CONFIG: {
8
+ readonly small: {
9
+ readonly iconSize: 15;
10
+ readonly maxWidth: "24px";
11
+ };
12
+ readonly medium: {
13
+ readonly iconSize: 18;
14
+ readonly maxWidth: "28px";
15
+ };
16
+ readonly large: {
17
+ readonly iconSize: 20;
18
+ readonly maxWidth: "32px";
19
+ };
20
+ };
21
+ export declare const StyledRadioCheckedIcon: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material/styles").Theme> & import("react").ClassAttributes<HTMLSpanElement> & import("react").HTMLAttributes<HTMLSpanElement>, {}, {}>;
22
+ export declare const StyledRadio: import("@emotion/styled").StyledComponent<import("@mui/material/Radio").RadioProps & import("@mui/system").MUIStyledCommonProps<import("@mui/material/styles").Theme> & {
23
+ iconSize?: number | undefined;
24
+ checkedColor?: string | undefined;
25
+ disabledColor?: string | undefined;
26
+ hoverColor?: string | undefined;
27
+ }, {}, {}>;
@@ -0,0 +1,64 @@
1
+ import { styled } from '@mui/material/styles';
2
+ import Radio from '@mui/material/Radio';
3
+ export const DEFAULT_COLORS = {
4
+ color: '#8C9196',
5
+ checkedColor: '#1F88D0',
6
+ disabledColor: '#C7C7CC',
7
+ };
8
+ export const SIZE_CONFIG = {
9
+ small: {
10
+ iconSize: 15,
11
+ maxWidth: '24px',
12
+ },
13
+ medium: {
14
+ iconSize: 18,
15
+ maxWidth: '28px',
16
+ },
17
+ large: {
18
+ iconSize: 20,
19
+ maxWidth: '32px',
20
+ },
21
+ };
22
+ const StyledRadioIcon = styled('span')(() => ({
23
+ borderRadius: '50%',
24
+ width: '12px',
25
+ height: '12px',
26
+ boxSizing: 'border-box',
27
+ boxShadow: 'inset 0 0 0 1px rgba(16,22,26,.2), inset 0 -1px 0 rgba(16,22,26,.1)',
28
+ }));
29
+ export const StyledRadioCheckedIcon = styled(StyledRadioIcon)({
30
+ backgroundColor: DEFAULT_COLORS.checkedColor,
31
+ '&::before': {
32
+ display: 'block',
33
+ width: '12px',
34
+ height: '12px',
35
+ backgroundColor: DEFAULT_COLORS.checkedColor,
36
+ borderRadius: '50%',
37
+ backgroundImage: 'radial-gradient(#fff,#fff 28%,transparent 32%)',
38
+ content: '""',
39
+ },
40
+ });
41
+ export const StyledRadio = styled(Radio, {
42
+ shouldForwardProp: (prop) => !['iconSize', 'checkedColor', 'disabledColor', 'hoverColor'].includes(prop),
43
+ })(({ iconSize, checkedColor, disabledColor, hoverColor }) => {
44
+ return {
45
+ '& .MuiSvgIcon-root': {
46
+ fontSize: iconSize || SIZE_CONFIG.small.iconSize,
47
+ },
48
+ maxWidth: SIZE_CONFIG.small.maxWidth,
49
+ cursor: 'pointer',
50
+ color: DEFAULT_COLORS.color,
51
+ '&.Mui-checked': {
52
+ color: checkedColor || DEFAULT_COLORS.checkedColor,
53
+ },
54
+ '&:hover': hoverColor
55
+ ? {
56
+ backgroundColor: 'transparent',
57
+ color: hoverColor,
58
+ }
59
+ : undefined,
60
+ '&.Mui-disabled': {
61
+ color: disabledColor || DEFAULT_COLORS.disabledColor,
62
+ },
63
+ };
64
+ });
@@ -0,0 +1,12 @@
1
+ /// <reference types="react" />
2
+ import { RadioProps, SxProps, Theme } from '@mui/material';
3
+ export interface RadioButtonProps extends Omit<RadioProps, 'checkedIcon' | 'icon' | 'color' | 'size'> {
4
+ size?: 'small' | 'medium' | 'large';
5
+ customCheckedIcon?: React.ReactNode;
6
+ checkedColor?: string;
7
+ disabledColor?: string;
8
+ hoverColor?: string;
9
+ iconSize?: number;
10
+ showRipple?: boolean;
11
+ sx?: SxProps<Theme>;
12
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,5 @@
1
+ /// <reference types="react" />
2
+ import { CustomRadioGroupProps } from './type';
3
+ declare function RadioGroup({ options, onOptionChange, size, customLabelRenderer, layout, spacing, labelPosition, showHoverEffects, customRadioProps, labelSx, onChange, sx, ...props }: CustomRadioGroupProps): import("react/jsx-runtime").JSX.Element;
4
+ declare const _default: import("react").MemoExoticComponent<typeof RadioGroup>;
5
+ export default _default;
@@ -0,0 +1,31 @@
1
+ var __rest = (this && this.__rest) || function (s, e) {
2
+ var t = {};
3
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
4
+ t[p] = s[p];
5
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
6
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
7
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
8
+ t[p[i]] = s[p[i]];
9
+ }
10
+ return t;
11
+ };
12
+ import { jsx as _jsx } from "react/jsx-runtime";
13
+ import { memo } from 'react';
14
+ import MuiRadioGroup from '@mui/material/RadioGroup';
15
+ import { StyledFormControlLabel } from './style';
16
+ import { RadioButton } from '../RadioButton';
17
+ function RadioItem(_a) {
18
+ var { option, size = 'small', customLabelRenderer, labelPosition = 'end', showHoverEffects = true, customRadioProps, labelSx } = _a, props = __rest(_a, ["option", "size", "customLabelRenderer", "labelPosition", "showHoverEffects", "customRadioProps", "labelSx"]);
19
+ const label = customLabelRenderer ? customLabelRenderer(option) : option.label;
20
+ return (_jsx(StyledFormControlLabel, Object.assign({ value: option.value, control: _jsx(RadioButton, Object.assign({ size: size }, customRadioProps, option.customProps)), label: label, disabled: option.disabled, size: size, labelPlacement: labelPosition, showHoverEffects: showHoverEffects, labelSx: labelSx }, props)));
21
+ }
22
+ function RadioGroup(_a) {
23
+ var { options, onOptionChange, size = 'small', customLabelRenderer, layout = 'vertical', spacing = 0, labelPosition = 'end', showHoverEffects = true, customRadioProps, labelSx, onChange, sx } = _a, props = __rest(_a, ["options", "onOptionChange", "size", "customLabelRenderer", "layout", "spacing", "labelPosition", "showHoverEffects", "customRadioProps", "labelSx", "onChange", "sx"]);
24
+ const handleChange = (event) => {
25
+ const value = event.target.value;
26
+ onOptionChange === null || onOptionChange === void 0 ? void 0 : onOptionChange(value);
27
+ onChange === null || onChange === void 0 ? void 0 : onChange(event, value);
28
+ };
29
+ return (_jsx(MuiRadioGroup, Object.assign({ onChange: handleChange, sx: Object.assign({ display: 'flex', flexDirection: layout === 'horizontal' ? 'row' : 'column', gap: spacing }, sx) }, props, { children: options.map((option) => (_jsx(RadioItem, { option: option, size: size, customLabelRenderer: customLabelRenderer, labelPosition: labelPosition, showHoverEffects: showHoverEffects, customRadioProps: customRadioProps, labelSx: labelSx }, option.value))) })));
30
+ }
31
+ export default memo(RadioGroup);
@@ -0,0 +1,2 @@
1
+ export { default as RadioGroup } from './RadioGroup';
2
+ export type { CustomRadioGroupProps, RadioOption } from './type';
@@ -0,0 +1 @@
1
+ export { default as RadioGroup } from './RadioGroup';
@@ -0,0 +1,6 @@
1
+ /// <reference types="react" />
2
+ export declare const StyledFormControlLabel: import("@emotion/styled").StyledComponent<import("@mui/material/FormControlLabel").FormControlLabelProps & import("@mui/system").MUIStyledCommonProps<import("@mui/material/styles").Theme> & {
3
+ size?: "medium" | "small" | "large" | undefined;
4
+ showHoverEffects?: boolean | undefined;
5
+ labelSx?: import("react").CSSProperties | undefined;
6
+ }, {}, {}>;
@@ -0,0 +1,15 @@
1
+ import { styled } from '@mui/material/styles';
2
+ import FormControlLabel from '@mui/material/FormControlLabel';
3
+ export const StyledFormControlLabel = styled(FormControlLabel, {
4
+ shouldForwardProp: (prop) => !['size', 'showHoverEffects', 'labelSx'].includes(prop),
5
+ })(({ size = 'small', showHoverEffects = true, labelSx }) => (Object.assign(Object.assign({ margin: '0', width: '100%', cursor: 'pointer', padding: size === 'small' ? '7.5px 16px 7.5px 8px' : size === 'medium' ? '9px 16px 9px 10px' : '11px 16px 11px 12px', maxHeight: size === 'small' ? '35px' : size === 'medium' ? '40px' : '45px' }, (showHoverEffects && {
6
+ '&:hover': {
7
+ boxShadow: '0px 0px 16px 0px #00000021',
8
+ },
9
+ })), { '& .MuiFormControlLabel-label': Object.assign({ fontSize: size === 'small' ? '11px' : size === 'medium' ? '13px' : '15px', fontWeight: '500', color: '#20232B', width: '100%', cursor: 'pointer' }, labelSx), '& .MuiRadio-root': {
10
+ cursor: 'pointer',
11
+ color: '#8C9196',
12
+ '&.Mui-checked': {
13
+ color: '#1F88D0',
14
+ },
15
+ } })));
@@ -0,0 +1,33 @@
1
+ import { ReactNode } from 'react';
2
+ import { RadioGroupProps } from '@mui/material/RadioGroup';
3
+ import { FormControlLabelProps } from '@mui/material/FormControlLabel';
4
+ import { RadioButtonProps } from '../RadioButton/type';
5
+ export interface RadioOption {
6
+ value: string;
7
+ label: string;
8
+ disabled?: boolean;
9
+ description?: string;
10
+ icon?: ReactNode;
11
+ customProps?: Partial<RadioButtonProps>;
12
+ }
13
+ export interface CustomRadioGroupProps extends Omit<RadioGroupProps, 'children'> {
14
+ options: RadioOption[];
15
+ onOptionChange?: (value: string) => void;
16
+ size?: 'small' | 'medium' | 'large';
17
+ customLabelRenderer?: (option: RadioOption) => ReactNode;
18
+ layout?: 'vertical' | 'horizontal';
19
+ spacing?: number;
20
+ labelPosition?: 'start' | 'end' | 'top' | 'bottom';
21
+ showHoverEffects?: boolean;
22
+ customRadioProps?: Partial<RadioButtonProps>;
23
+ labelSx?: React.CSSProperties;
24
+ }
25
+ export interface RadioItemProps extends Omit<FormControlLabelProps, 'control' | 'label'> {
26
+ option: RadioOption;
27
+ size?: 'small' | 'medium' | 'large';
28
+ customLabelRenderer?: (option: RadioOption) => ReactNode;
29
+ labelPosition?: 'start' | 'end' | 'top' | 'bottom';
30
+ showHoverEffects?: boolean;
31
+ customRadioProps?: Partial<RadioButtonProps>;
32
+ labelSx?: React.CSSProperties;
33
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,3 @@
1
+ import { RightLeftExpandingCenterChipProps } from './type';
2
+ declare function RightLeftExpandingCenterChip({ leftIcons, rightIcons, centerIcon, expandableCenter, expandedZIndex, ...props }: Readonly<RightLeftExpandingCenterChipProps>): import("react/jsx-runtime").JSX.Element;
3
+ export default RightLeftExpandingCenterChip;
@@ -0,0 +1,43 @@
1
+ var __rest = (this && this.__rest) || function (s, e) {
2
+ var t = {};
3
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
4
+ t[p] = s[p];
5
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
6
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
7
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
8
+ t[p[i]] = s[p[i]];
9
+ }
10
+ return t;
11
+ };
12
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
13
+ import Box from '@mui/material/Box';
14
+ import { AnimatePresence } from 'framer-motion';
15
+ import { CenterIconWrapper, ExpandedSection, PeekContainer, CenterChip, LeftPeekChip, RightPeekChip, LeftExpandIcon, RightExpandIcon, ExpandChip, CenterShiftWrapper, CenterContent, ExpandableContainer, ExpandableInner, tableCellSx, CHIP_GAP, HoverBridge, } from './style';
16
+ import { useRightLeftExpandingCenterChip, DEFAULT_CHIP_MIN_WIDTH } from './useRightLeftExpandingCenterChip';
17
+ function RightLeftExpandingCenterChip(_a) {
18
+ var { leftIcons = [], rightIcons = [], centerIcon, expandableCenter, expandedZIndex = 1000 } = _a, props = __rest(_a, ["leftIcons", "rightIcons", "centerIcon", "expandableCenter", "expandedZIndex"]);
19
+ const { isHovering, handleMouseEnter, handleMouseLeave, centerWrapRef, centerContentRef, centerChipRef, anchors, leftChipRefs, rightChipRefs, leftOffsets, rightOffsets, expandableInnerRef, expandedMV, shiftX, rightShift, leftHoverWidth, rightHoverWidth, } = useRightLeftExpandingCenterChip({ leftIcons, rightIcons, centerIcon, expandableCenter });
20
+ return (_jsx(Box, Object.assign({}, props, { "data-testid": "RightLeftExpandingCenterChipBox", sx: tableCellSx }, { children: _jsx(CenterShiftWrapper, Object.assign({ "data-testid": "CenterShiftWrapper", initial: false, style: { x: shiftX } }, { children: _jsxs(CenterIconWrapper, Object.assign({ "data-testid": "CenterIconWrapper", ref: centerWrapRef, onMouseLeave: handleMouseLeave }, { children: [_jsxs(PeekContainer, Object.assign({ "data-testid": "PeekContainer" }, { children: [_jsx(AnimatePresence, Object.assign({ initial: false }, { children: leftIcons.length > 0 && (_jsx(LeftPeekChip, { "data-testid": "LeftPeekChip", initial: { opacity: 0, scale: 0.95, x: -4 }, animate: isHovering ? { opacity: 0, scale: 0.9, x: -6 } : { opacity: 1, scale: 1, x: -5 }, exit: { opacity: 0, scale: 0.95, x: -4 }, transition: { duration: 0.18, ease: 'easeOut' } }, "left-peek")) })), _jsxs(CenterChip, Object.assign({ "data-testid": "CenterChip", ref: centerChipRef, layout: true, onMouseEnter: handleMouseEnter }, { children: [_jsx(CenterContent, Object.assign({ "data-testid": "CenterContent", ref: centerContentRef, layout: true }, { children: centerIcon })), _jsx(AnimatePresence, Object.assign({ initial: false }, { children: expandableCenter && (_jsx(ExpandableContainer, Object.assign({ "data-testid": "ExpandableContainer", style: { width: expandedMV }, initial: { opacity: 0 }, animate: { opacity: 1 }, exit: { opacity: 0 }, transition: { duration: 0.2, ease: 'easeOut' } }, { children: _jsx(ExpandableInner, Object.assign({ "data-testid": "ExpandableInner", ref: expandableInnerRef, layout: true }, { children: expandableCenter })) }), "expandable-center")) }))] })), _jsx(AnimatePresence, Object.assign({ initial: false }, { children: rightIcons.length > 0 && (_jsx(RightPeekChip, { "data-testid": "RightPeekChip", initial: { opacity: 0, scale: 0.95, x: 4 }, animate: isHovering ? { opacity: 0, scale: 0.9, x: 6 } : { opacity: 1, scale: 1, x: 5 }, exit: { opacity: 0, scale: 0.95, x: 4 }, transition: { duration: 0.18, ease: 'easeOut' } }, "right-peek")) }))] })), isHovering && leftIcons.length > 0 && (_jsx(HoverBridge, { "data-testid": "LeftHoverBridge", side: "left", style: { width: leftHoverWidth, right: `calc(100% - ${anchors.left}px)`, zIndex: expandedZIndex, pointerEvents: 'auto' } })), isHovering && rightIcons.length > 0 && (_jsx(HoverBridge, { "data-testid": "RightHoverBridge", side: "right", style: { width: rightHoverWidth, left: `${anchors.right}px`, zIndex: expandedZIndex, pointerEvents: 'auto' } })), _jsx(AnimatePresence, Object.assign({ initial: false }, { children: leftIcons.length > 0 && (_jsx(ExpandedSection, Object.assign({ "data-testid": "LeftExpandedSection", side: "left", style: {
21
+ right: `calc(100% - ${anchors.left}px)`,
22
+ top: '50%',
23
+ position: 'absolute',
24
+ pointerEvents: isHovering ? 'auto' : 'none',
25
+ zIndex: expandedZIndex,
26
+ }, initial: { opacity: 0, x: 0, y: '-50%' }, animate: isHovering ? { opacity: 1, x: 0, y: '-50%' } : { opacity: 0, x: 0, y: '-50%' }, exit: { opacity: 0, x: 0, y: '-50%' }, transition: { duration: 0.25, ease: 'easeOut' } }, { children: leftIcons.map((icon, index) => {
27
+ var _a;
28
+ const leftOffset = (_a = leftOffsets[index]) !== null && _a !== void 0 ? _a : (DEFAULT_CHIP_MIN_WIDTH + CHIP_GAP) * (index + 1);
29
+ return (_jsx(LeftExpandIcon, Object.assign({ "data-testid": `LeftExpandIcon-${index}`, initial: { opacity: 0, x: 0 }, animate: isHovering ? { opacity: 1, x: -leftOffset } : { opacity: 0, x: 0 }, exit: { opacity: 0, x: 0 }, transition: { duration: 0.25 + index * 0.04, ease: 'easeOut' }, style: { zIndex: expandedZIndex + (leftIcons.length - index) } }, { children: _jsx(ExpandChip, Object.assign({ "data-testid": `LeftExpandChip-${index}`, ref: (el) => (leftChipRefs.current[index] = el) }, { children: icon })) }), `left-${index}`));
30
+ }) }), "left-expanded")) })), _jsx(AnimatePresence, Object.assign({ initial: false }, { children: rightIcons.length > 0 && (_jsx(ExpandedSection, Object.assign({ "data-testid": "RightExpandedSection", side: "right", style: {
31
+ left: `${anchors.right}px`,
32
+ top: '50%',
33
+ position: 'absolute',
34
+ pointerEvents: isHovering ? 'auto' : 'none',
35
+ zIndex: expandedZIndex,
36
+ }, initial: { opacity: 0, x: 0, y: '-50%' }, animate: isHovering ? { opacity: 1, x: 0, y: '-50%' } : { opacity: 0, x: 0, y: '-50%' }, exit: { opacity: 0, x: 0, y: '-50%' }, transition: { duration: 0.25, ease: 'easeOut' } }, { children: rightIcons.map((icon, index) => {
37
+ var _a;
38
+ const base = (_a = rightOffsets[index]) !== null && _a !== void 0 ? _a : (DEFAULT_CHIP_MIN_WIDTH + CHIP_GAP) * (index + 1);
39
+ const shift = rightShift;
40
+ return (_jsx(RightExpandIcon, Object.assign({ "data-testid": `RightExpandIcon-${index}`, initial: { opacity: 0, x: 0 }, animate: isHovering ? { opacity: 1, x: shift + base } : { opacity: 0, x: 0 }, exit: { opacity: 0, x: 0 }, transition: { duration: 0.25 + index * 0.04, ease: 'easeOut' }, style: { zIndex: expandedZIndex + (rightIcons.length - index) } }, { children: _jsx(ExpandChip, Object.assign({ "data-testid": `RightExpandChip-${index}`, ref: (el) => (rightChipRefs.current[index] = el) }, { children: icon })) }), `right-${index}`));
41
+ }) }), "right-expanded")) }))] })) })) })));
42
+ }
43
+ export default RightLeftExpandingCenterChip;
@@ -0,0 +1,2 @@
1
+ export { default as RightLeftExpandingCenterChip } from './RightLeftExpandingCenterChip';
2
+ export * from './type';
@@ -0,0 +1,2 @@
1
+ export { default as RightLeftExpandingCenterChip } from './RightLeftExpandingCenterChip';
2
+ export * from './type';