@channel.io/bezier-react 2.6.0 → 2.6.2
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/components/AlphaAvatar/Avatar.js.map +1 -1
- package/dist/cjs/components/AlphaAvatar/AvatarSizeContext.js.map +1 -1
- package/dist/cjs/components/AlphaAvatar/useProgressiveImage.js.map +1 -1
- package/dist/cjs/components/AlphaAvatarGroup/AvatarGroup.js.map +1 -1
- package/dist/cjs/components/AlphaButton/Button.js +5 -2
- package/dist/cjs/components/AlphaButton/Button.js.map +1 -1
- package/dist/cjs/components/AlphaDialogPrimitive/DialogPrimitive.js.map +1 -1
- package/dist/cjs/components/AlphaFloatingButton/FloatingButton.js +6 -3
- package/dist/cjs/components/AlphaFloatingButton/FloatingButton.js.map +1 -1
- package/dist/cjs/components/AlphaFloatingIconButton/FloatingIconButton.js +6 -3
- package/dist/cjs/components/AlphaFloatingIconButton/FloatingIconButton.js.map +1 -1
- package/dist/cjs/components/AlphaIconButton/IconButton.js +6 -3
- package/dist/cjs/components/AlphaIconButton/IconButton.js.map +1 -1
- package/dist/cjs/components/AlphaLoader/Loader.js.map +1 -1
- package/dist/cjs/components/AlphaStatusBadge/StatusBadge.js.map +1 -1
- package/dist/cjs/components/AlphaToggleButton/ToggleButton.js.map +1 -1
- package/dist/cjs/components/AlphaToggleButton/ToggleButtonContext.js.map +1 -1
- package/dist/cjs/components/AlphaToggleButtonGroup/ToggleButtonGroup.js.map +1 -1
- package/dist/cjs/components/AlphaToggleEmojiButtonGroup/ToggleEmojiButtonGroup.js.map +1 -1
- package/dist/cjs/components/AlphaToggleEmojiButtonGroup/useToggleEmojiButtonSize.js.map +1 -1
- package/dist/cjs/components/AlphaTooltipPrimitive/TooltipPrimitive.js.map +1 -1
- package/dist/cjs/components/AppProvider/AppProvider.js.map +1 -1
- package/dist/cjs/components/AutoFocus/AutoFocus.js.map +1 -1
- package/dist/cjs/components/Avatar/Avatar.js.map +1 -1
- package/dist/cjs/components/Avatar/useProgressiveImage.js.map +1 -1
- package/dist/cjs/components/AvatarGroup/AvatarGroup.js.map +1 -1
- package/dist/cjs/components/Badge/Badge.js.map +1 -1
- package/dist/cjs/components/Banner/Banner.js.map +1 -1
- package/dist/cjs/components/BaseButton/BaseButton.js.map +1 -1
- package/dist/cjs/components/BaseTagBadge/BaseTagBadge.js.map +1 -1
- package/dist/cjs/components/Box/Box.js.map +1 -1
- package/dist/cjs/components/Button/Button.js +2 -1
- package/dist/cjs/components/Button/Button.js.map +1 -1
- package/dist/cjs/components/ButtonGroup/ButtonGroup.js.map +1 -1
- package/dist/cjs/components/Center/Center.js.map +1 -1
- package/dist/cjs/components/CheckableAvatar/CheckableAvatar.js.map +1 -1
- package/dist/cjs/components/Checkbox/Checkbox.js.map +1 -1
- package/dist/cjs/components/ConfirmModal/ConfirmModal.js.map +1 -1
- package/dist/cjs/components/Divider/Divider.js.map +1 -1
- package/dist/cjs/components/Emoji/Emoji.js.map +1 -1
- package/dist/cjs/components/FeatureProvider/FeatureProvider.js.map +1 -1
- package/dist/cjs/components/FeatureProvider/FeatureProvider.types.js.map +1 -1
- package/dist/cjs/components/FeatureProvider/SmoothCornersFeature/SmoothCornersFeature.js.map +1 -1
- package/dist/cjs/components/FeatureProvider/SmoothCornersFeature/smoothCornersScript.js.map +1 -1
- package/dist/cjs/components/FormControl/FormControl.js.map +1 -1
- package/dist/cjs/components/FormGroup/FormGroup.js.map +1 -1
- package/dist/cjs/components/FormHelperText/FormHelperText.js.map +1 -1
- package/dist/cjs/components/FormLabel/FormLabel.js.map +1 -1
- package/dist/cjs/components/Help/Help.js.map +1 -1
- package/dist/cjs/components/Icon/Icon.js.map +1 -1
- package/dist/cjs/components/KeyValueItem/KeyValueItem.js.map +1 -1
- package/dist/cjs/components/LegacyIcon/LegacyIcon.js.map +1 -1
- package/dist/cjs/components/LegacyIcon/utils.js.map +1 -1
- package/dist/cjs/components/LegacyStack/LegacyHStack/LegacyHStack.js.map +1 -1
- package/dist/cjs/components/LegacyStack/LegacySpacer/LegacySpacer.js.map +1 -1
- package/dist/cjs/components/LegacyStack/LegacyStack/LegacyStack.js.map +1 -1
- package/dist/cjs/components/LegacyStack/LegacyStackItem/LegacyStackItem.js.map +1 -1
- package/dist/cjs/components/LegacyStack/LegacyVStack/LegacyVStack.js.map +1 -1
- package/dist/cjs/components/LegacyTooltip/LegacyTooltip.js.map +1 -1
- package/dist/cjs/components/LegacyTooltip/LegacyTooltipContent.js.map +1 -1
- package/dist/cjs/components/LegacyTooltip/utils.js.map +1 -1
- package/dist/cjs/components/ListItem/ListItem.js.map +1 -1
- package/dist/cjs/components/Modal/Modal.js.map +1 -1
- package/dist/cjs/components/NavGroup/NavGroup.js.map +1 -1
- package/dist/cjs/components/NavItem/NavItem.js.map +1 -1
- package/dist/cjs/components/OutlineItem/OutlineItem.js.map +1 -1
- package/dist/cjs/components/Overlay/Overlay.js.map +1 -1
- package/dist/cjs/components/Overlay/utils.js.map +1 -1
- package/dist/cjs/components/ProgressBar/ProgressBar.js.map +1 -1
- package/dist/cjs/components/RadioGroup/RadioGroup.js.map +1 -1
- package/dist/cjs/components/SectionLabel/SectionLabel.js.map +1 -1
- package/dist/cjs/components/SegmentedControl/SegmentedControl.js.map +1 -1
- package/dist/cjs/components/Select/Select.js.map +1 -1
- package/dist/cjs/components/Slider/Slider.js.map +1 -1
- package/dist/cjs/components/SmoothCornersBox/SmoothCornersBox.js.map +1 -1
- package/dist/cjs/components/Spinner/Spinner.js.map +1 -1
- package/dist/cjs/components/Stack/Stack.js.map +1 -1
- package/dist/cjs/components/Status/Status.js.map +1 -1
- package/dist/cjs/components/Switch/Switch.js.map +1 -1
- package/dist/cjs/components/Tabs/Tabs.js.map +1 -1
- package/dist/cjs/components/Tag/Tag.js.map +1 -1
- package/dist/cjs/components/Text/Text.js.map +1 -1
- package/dist/cjs/components/TextArea/TextArea.js.map +1 -1
- package/dist/cjs/components/TextField/TextField.js.map +1 -1
- package/dist/cjs/components/ThemeProvider/ThemeProvider.js.map +1 -1
- package/dist/cjs/components/Toast/Toast.js.map +1 -1
- package/dist/cjs/components/Toast/ToastService.js.map +1 -1
- package/dist/cjs/components/Toast/useToastContextValues.js.map +1 -1
- package/dist/cjs/components/TokenProvider/TokenProvider.js.map +1 -1
- package/dist/cjs/components/Tooltip/Tooltip.js.map +1 -1
- package/dist/cjs/components/VisuallyHidden/VisuallyHidden.js.map +1 -1
- package/dist/cjs/components/WindowProvider/WindowProvider.js.map +1 -1
- package/dist/cjs/hooks/useEventHandler.js.map +1 -1
- package/dist/cjs/hooks/useId.js.map +1 -1
- package/dist/cjs/hooks/useIsMounted.js.map +1 -1
- package/dist/cjs/hooks/useKeyboardActionLockerWhileComposing.js.map +1 -1
- package/dist/cjs/hooks/useMergeRefs.js.map +1 -1
- package/dist/cjs/node_modules/@babel/runtime/helpers/esm/extends.js.map +1 -1
- package/dist/cjs/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js.map +1 -1
- package/dist/cjs/node_modules/@floating-ui/core/dist/floating-ui.core.js.map +1 -1
- package/dist/cjs/node_modules/@floating-ui/dom/dist/floating-ui.dom.js.map +1 -1
- package/dist/cjs/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.js.map +1 -1
- package/dist/cjs/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.js.map +1 -1
- package/dist/cjs/node_modules/@floating-ui/utils/dist/floating-ui.utils.js.map +1 -1
- package/dist/cjs/node_modules/aria-hidden/dist/es2015/index.js.map +1 -1
- package/dist/cjs/node_modules/classnames/index.js.map +1 -1
- package/dist/cjs/node_modules/get-nonce/dist/es2015/index.js.map +1 -1
- package/dist/cjs/node_modules/react-remove-scroll/dist/es2015/Combination.js.map +1 -1
- package/dist/cjs/node_modules/react-remove-scroll/dist/es2015/SideEffect.js.map +1 -1
- package/dist/cjs/node_modules/react-remove-scroll/dist/es2015/UI.js.map +1 -1
- package/dist/cjs/node_modules/react-remove-scroll/dist/es2015/aggresiveCapture.js.map +1 -1
- package/dist/cjs/node_modules/react-remove-scroll/dist/es2015/handleScroll.js.map +1 -1
- package/dist/cjs/node_modules/react-remove-scroll-bar/dist/es2015/component.js.map +1 -1
- package/dist/cjs/node_modules/react-remove-scroll-bar/dist/es2015/constants.js.map +1 -1
- package/dist/cjs/node_modules/react-remove-scroll-bar/dist/es2015/utils.js.map +1 -1
- package/dist/cjs/node_modules/react-style-singleton/dist/es2015/component.js.map +1 -1
- package/dist/cjs/node_modules/react-style-singleton/dist/es2015/hook.js.map +1 -1
- package/dist/cjs/node_modules/react-style-singleton/dist/es2015/singleton.js.map +1 -1
- package/dist/cjs/node_modules/react-textarea-autosize/dist/react-textarea-autosize.esm.js.map +1 -1
- package/dist/cjs/node_modules/ssr-window/ssr-window.esm.js.map +1 -1
- package/dist/cjs/node_modules/tslib/tslib.es6.js.map +1 -1
- package/dist/cjs/node_modules/use-callback-ref/dist/es2015/assignRef.js.map +1 -1
- package/dist/cjs/node_modules/use-callback-ref/dist/es2015/useMergeRef.js.map +1 -1
- package/dist/cjs/node_modules/use-callback-ref/dist/es2015/useRef.js.map +1 -1
- package/dist/cjs/node_modules/use-composed-ref/dist/use-composed-ref.esm.js.map +1 -1
- package/dist/cjs/node_modules/use-latest/dist/use-latest.esm.js.map +1 -1
- package/dist/cjs/node_modules/use-sidecar/dist/es2015/exports.js.map +1 -1
- package/dist/cjs/node_modules/use-sidecar/dist/es2015/medium.js.map +1 -1
- package/dist/cjs/node_modules/uuid/dist/esm-browser/native.js.map +1 -1
- package/dist/cjs/node_modules/uuid/dist/esm-browser/rng.js.map +1 -1
- package/dist/cjs/node_modules/uuid/dist/esm-browser/stringify.js.map +1 -1
- package/dist/cjs/node_modules/uuid/dist/esm-browser/v4.js.map +1 -1
- package/dist/cjs/packages/bezier-tokens/dist/esm/darkTheme.js.map +1 -1
- package/dist/cjs/packages/bezier-tokens/dist/esm/global.js.map +1 -1
- package/dist/cjs/packages/bezier-tokens/dist/esm/index.js.map +1 -1
- package/dist/cjs/packages/bezier-tokens/dist/esm/lightTheme.js.map +1 -1
- package/dist/cjs/styles.css +1 -1
- package/dist/cjs/types/props-helpers.js.map +1 -1
- package/dist/cjs/utils/aria.js.map +1 -1
- package/dist/cjs/utils/array.js.map +1 -1
- package/dist/cjs/utils/assert.js.map +1 -1
- package/dist/cjs/utils/number.js.map +1 -1
- package/dist/cjs/utils/object.js.map +1 -1
- package/dist/cjs/utils/react.js.map +1 -1
- package/dist/cjs/utils/string.js.map +1 -1
- package/dist/cjs/utils/style.js.map +1 -1
- package/dist/cjs/utils/type.js.map +1 -1
- package/dist/esm/components/AlphaAvatar/Avatar.mjs.map +1 -1
- package/dist/esm/components/AlphaAvatar/AvatarSizeContext.mjs.map +1 -1
- package/dist/esm/components/AlphaAvatar/useProgressiveImage.mjs.map +1 -1
- package/dist/esm/components/AlphaAvatarGroup/AvatarGroup.mjs.map +1 -1
- package/dist/esm/components/AlphaButton/Button.mjs +5 -2
- package/dist/esm/components/AlphaButton/Button.mjs.map +1 -1
- package/dist/esm/components/AlphaDialogPrimitive/DialogPrimitive.mjs.map +1 -1
- package/dist/esm/components/AlphaFloatingButton/FloatingButton.mjs +6 -3
- package/dist/esm/components/AlphaFloatingButton/FloatingButton.mjs.map +1 -1
- package/dist/esm/components/AlphaFloatingIconButton/FloatingIconButton.mjs +6 -3
- package/dist/esm/components/AlphaFloatingIconButton/FloatingIconButton.mjs.map +1 -1
- package/dist/esm/components/AlphaIconButton/IconButton.mjs +6 -3
- package/dist/esm/components/AlphaIconButton/IconButton.mjs.map +1 -1
- package/dist/esm/components/AlphaLoader/Loader.mjs.map +1 -1
- package/dist/esm/components/AlphaStatusBadge/StatusBadge.mjs.map +1 -1
- package/dist/esm/components/AlphaToggleButton/ToggleButton.mjs.map +1 -1
- package/dist/esm/components/AlphaToggleButton/ToggleButtonContext.mjs.map +1 -1
- package/dist/esm/components/AlphaToggleButtonGroup/ToggleButtonGroup.mjs.map +1 -1
- package/dist/esm/components/AlphaToggleEmojiButtonGroup/ToggleEmojiButtonGroup.mjs.map +1 -1
- package/dist/esm/components/AlphaToggleEmojiButtonGroup/useToggleEmojiButtonSize.mjs.map +1 -1
- package/dist/esm/components/AlphaTooltipPrimitive/TooltipPrimitive.mjs.map +1 -1
- package/dist/esm/components/AppProvider/AppProvider.mjs.map +1 -1
- package/dist/esm/components/AutoFocus/AutoFocus.mjs.map +1 -1
- package/dist/esm/components/Avatar/Avatar.mjs.map +1 -1
- package/dist/esm/components/Avatar/useProgressiveImage.mjs.map +1 -1
- package/dist/esm/components/AvatarGroup/AvatarGroup.mjs.map +1 -1
- package/dist/esm/components/Badge/Badge.mjs.map +1 -1
- package/dist/esm/components/Banner/Banner.mjs.map +1 -1
- package/dist/esm/components/BaseButton/BaseButton.mjs.map +1 -1
- package/dist/esm/components/BaseTagBadge/BaseTagBadge.mjs.map +1 -1
- package/dist/esm/components/Box/Box.mjs.map +1 -1
- package/dist/esm/components/Button/Button.mjs +2 -1
- package/dist/esm/components/Button/Button.mjs.map +1 -1
- package/dist/esm/components/ButtonGroup/ButtonGroup.mjs.map +1 -1
- package/dist/esm/components/Center/Center.mjs.map +1 -1
- package/dist/esm/components/CheckableAvatar/CheckableAvatar.mjs.map +1 -1
- package/dist/esm/components/Checkbox/Checkbox.mjs.map +1 -1
- package/dist/esm/components/ConfirmModal/ConfirmModal.mjs.map +1 -1
- package/dist/esm/components/Divider/Divider.mjs.map +1 -1
- package/dist/esm/components/Emoji/Emoji.mjs.map +1 -1
- package/dist/esm/components/FeatureProvider/FeatureProvider.mjs.map +1 -1
- package/dist/esm/components/FeatureProvider/FeatureProvider.types.mjs.map +1 -1
- package/dist/esm/components/FeatureProvider/SmoothCornersFeature/SmoothCornersFeature.mjs.map +1 -1
- package/dist/esm/components/FeatureProvider/SmoothCornersFeature/smoothCornersScript.mjs.map +1 -1
- package/dist/esm/components/FormControl/FormControl.mjs.map +1 -1
- package/dist/esm/components/FormGroup/FormGroup.mjs.map +1 -1
- package/dist/esm/components/FormHelperText/FormHelperText.mjs.map +1 -1
- package/dist/esm/components/FormLabel/FormLabel.mjs.map +1 -1
- package/dist/esm/components/Help/Help.mjs.map +1 -1
- package/dist/esm/components/Icon/Icon.mjs.map +1 -1
- package/dist/esm/components/KeyValueItem/KeyValueItem.mjs.map +1 -1
- package/dist/esm/components/LegacyIcon/LegacyIcon.mjs.map +1 -1
- package/dist/esm/components/LegacyIcon/utils.mjs.map +1 -1
- package/dist/esm/components/LegacyStack/LegacyHStack/LegacyHStack.mjs.map +1 -1
- package/dist/esm/components/LegacyStack/LegacySpacer/LegacySpacer.mjs.map +1 -1
- package/dist/esm/components/LegacyStack/LegacyStack/LegacyStack.mjs.map +1 -1
- package/dist/esm/components/LegacyStack/LegacyStackItem/LegacyStackItem.mjs.map +1 -1
- package/dist/esm/components/LegacyStack/LegacyVStack/LegacyVStack.mjs.map +1 -1
- package/dist/esm/components/LegacyTooltip/LegacyTooltip.mjs.map +1 -1
- package/dist/esm/components/LegacyTooltip/LegacyTooltipContent.mjs.map +1 -1
- package/dist/esm/components/LegacyTooltip/utils.mjs.map +1 -1
- package/dist/esm/components/ListItem/ListItem.mjs.map +1 -1
- package/dist/esm/components/Modal/Modal.mjs.map +1 -1
- package/dist/esm/components/NavGroup/NavGroup.mjs.map +1 -1
- package/dist/esm/components/NavItem/NavItem.mjs.map +1 -1
- package/dist/esm/components/OutlineItem/OutlineItem.mjs.map +1 -1
- package/dist/esm/components/Overlay/Overlay.mjs.map +1 -1
- package/dist/esm/components/Overlay/utils.mjs.map +1 -1
- package/dist/esm/components/ProgressBar/ProgressBar.mjs.map +1 -1
- package/dist/esm/components/RadioGroup/RadioGroup.mjs.map +1 -1
- package/dist/esm/components/SectionLabel/SectionLabel.mjs.map +1 -1
- package/dist/esm/components/SegmentedControl/SegmentedControl.mjs.map +1 -1
- package/dist/esm/components/Select/Select.mjs.map +1 -1
- package/dist/esm/components/Slider/Slider.mjs.map +1 -1
- package/dist/esm/components/SmoothCornersBox/SmoothCornersBox.mjs.map +1 -1
- package/dist/esm/components/Spinner/Spinner.mjs.map +1 -1
- package/dist/esm/components/Stack/Stack.mjs.map +1 -1
- package/dist/esm/components/Status/Status.mjs.map +1 -1
- package/dist/esm/components/Switch/Switch.mjs.map +1 -1
- package/dist/esm/components/Tabs/Tabs.mjs.map +1 -1
- package/dist/esm/components/Tag/Tag.mjs.map +1 -1
- package/dist/esm/components/Text/Text.mjs.map +1 -1
- package/dist/esm/components/TextArea/TextArea.mjs.map +1 -1
- package/dist/esm/components/TextField/TextField.mjs.map +1 -1
- package/dist/esm/components/ThemeProvider/ThemeProvider.mjs.map +1 -1
- package/dist/esm/components/Toast/Toast.mjs.map +1 -1
- package/dist/esm/components/Toast/ToastService.mjs.map +1 -1
- package/dist/esm/components/Toast/useToastContextValues.mjs.map +1 -1
- package/dist/esm/components/TokenProvider/TokenProvider.mjs.map +1 -1
- package/dist/esm/components/Tooltip/Tooltip.mjs.map +1 -1
- package/dist/esm/components/VisuallyHidden/VisuallyHidden.mjs.map +1 -1
- package/dist/esm/components/WindowProvider/WindowProvider.mjs.map +1 -1
- package/dist/esm/hooks/useEventHandler.mjs.map +1 -1
- package/dist/esm/hooks/useId.mjs.map +1 -1
- package/dist/esm/hooks/useIsMounted.mjs.map +1 -1
- package/dist/esm/hooks/useKeyboardActionLockerWhileComposing.mjs.map +1 -1
- package/dist/esm/hooks/useMergeRefs.mjs.map +1 -1
- package/dist/esm/node_modules/@babel/runtime/helpers/esm/extends.mjs.map +1 -1
- package/dist/esm/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.mjs.map +1 -1
- package/dist/esm/node_modules/@floating-ui/core/dist/floating-ui.core.mjs.map +1 -1
- package/dist/esm/node_modules/@floating-ui/dom/dist/floating-ui.dom.mjs.map +1 -1
- package/dist/esm/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.mjs.map +1 -1
- package/dist/esm/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.mjs.map +1 -1
- package/dist/esm/node_modules/@floating-ui/utils/dist/floating-ui.utils.mjs.map +1 -1
- package/dist/esm/node_modules/aria-hidden/dist/es2015/index.mjs.map +1 -1
- package/dist/esm/node_modules/classnames/index.mjs.map +1 -1
- package/dist/esm/node_modules/get-nonce/dist/es2015/index.mjs.map +1 -1
- package/dist/esm/node_modules/react-remove-scroll/dist/es2015/Combination.mjs.map +1 -1
- package/dist/esm/node_modules/react-remove-scroll/dist/es2015/SideEffect.mjs.map +1 -1
- package/dist/esm/node_modules/react-remove-scroll/dist/es2015/UI.mjs.map +1 -1
- package/dist/esm/node_modules/react-remove-scroll/dist/es2015/aggresiveCapture.mjs.map +1 -1
- package/dist/esm/node_modules/react-remove-scroll/dist/es2015/handleScroll.mjs.map +1 -1
- package/dist/esm/node_modules/react-remove-scroll-bar/dist/es2015/component.mjs.map +1 -1
- package/dist/esm/node_modules/react-remove-scroll-bar/dist/es2015/constants.mjs.map +1 -1
- package/dist/esm/node_modules/react-remove-scroll-bar/dist/es2015/utils.mjs.map +1 -1
- package/dist/esm/node_modules/react-style-singleton/dist/es2015/component.mjs.map +1 -1
- package/dist/esm/node_modules/react-style-singleton/dist/es2015/hook.mjs.map +1 -1
- package/dist/esm/node_modules/react-style-singleton/dist/es2015/singleton.mjs.map +1 -1
- package/dist/esm/node_modules/react-textarea-autosize/dist/react-textarea-autosize.esm.mjs.map +1 -1
- package/dist/esm/node_modules/ssr-window/ssr-window.esm.mjs.map +1 -1
- package/dist/esm/node_modules/tslib/tslib.es6.mjs.map +1 -1
- package/dist/esm/node_modules/use-callback-ref/dist/es2015/assignRef.mjs.map +1 -1
- package/dist/esm/node_modules/use-callback-ref/dist/es2015/useMergeRef.mjs.map +1 -1
- package/dist/esm/node_modules/use-callback-ref/dist/es2015/useRef.mjs.map +1 -1
- package/dist/esm/node_modules/use-composed-ref/dist/use-composed-ref.esm.mjs.map +1 -1
- package/dist/esm/node_modules/use-latest/dist/use-latest.esm.mjs.map +1 -1
- package/dist/esm/node_modules/use-sidecar/dist/es2015/exports.mjs.map +1 -1
- package/dist/esm/node_modules/use-sidecar/dist/es2015/medium.mjs.map +1 -1
- package/dist/esm/node_modules/uuid/dist/esm-browser/native.mjs.map +1 -1
- package/dist/esm/node_modules/uuid/dist/esm-browser/rng.mjs.map +1 -1
- package/dist/esm/node_modules/uuid/dist/esm-browser/stringify.mjs.map +1 -1
- package/dist/esm/node_modules/uuid/dist/esm-browser/v4.mjs.map +1 -1
- package/dist/esm/packages/bezier-tokens/dist/esm/darkTheme.mjs.map +1 -1
- package/dist/esm/packages/bezier-tokens/dist/esm/global.mjs.map +1 -1
- package/dist/esm/packages/bezier-tokens/dist/esm/index.mjs.map +1 -1
- package/dist/esm/packages/bezier-tokens/dist/esm/lightTheme.mjs.map +1 -1
- package/dist/esm/styles.css +1 -1
- package/dist/esm/types/props-helpers.mjs.map +1 -1
- package/dist/esm/utils/aria.mjs.map +1 -1
- package/dist/esm/utils/array.mjs.map +1 -1
- package/dist/esm/utils/assert.mjs.map +1 -1
- package/dist/esm/utils/number.mjs.map +1 -1
- package/dist/esm/utils/object.mjs.map +1 -1
- package/dist/esm/utils/react.mjs.map +1 -1
- package/dist/esm/utils/string.mjs.map +1 -1
- package/dist/esm/utils/style.mjs.map +1 -1
- package/dist/esm/utils/type.mjs.map +1 -1
- package/dist/types/components/AlphaButton/Button.d.ts.map +1 -1
- package/dist/types/components/AlphaButton/Button.types.d.ts +1 -1
- package/dist/types/components/AlphaFloatingButton/FloatingButton.d.ts.map +1 -1
- package/dist/types/components/AlphaFloatingButton/FloatingButton.types.d.ts +1 -1
- package/dist/types/components/AlphaFloatingIconButton/FloatingIconButton.d.ts.map +1 -1
- package/dist/types/components/AlphaFloatingIconButton/FloatingIconButton.types.d.ts +1 -1
- package/dist/types/components/AlphaIconButton/IconButton.d.ts.map +1 -1
- package/dist/types/components/AlphaIconButton/IconButton.types.d.ts +1 -1
- package/dist/types/components/Button/Button.d.ts.map +1 -1
- package/dist/types/components/Button/Button.types.d.ts +1 -1
- package/package.json +3 -3
- package/src/components/AlphaButton/Button.module.scss +5 -5
- package/src/components/AlphaButton/Button.tsx +5 -1
- package/src/components/AlphaButton/Button.types.ts +1 -1
- package/src/components/AlphaFloatingButton/FloatingButton.tsx +5 -2
- package/src/components/AlphaFloatingButton/FloatingButton.types.ts +1 -1
- package/src/components/AlphaFloatingIconButton/FloatingIconButton.module.scss +1 -1
- package/src/components/AlphaFloatingIconButton/FloatingIconButton.tsx +5 -2
- package/src/components/AlphaFloatingIconButton/FloatingIconButton.types.ts +1 -1
- package/src/components/AlphaIconButton/IconButton.module.scss +6 -6
- package/src/components/AlphaIconButton/IconButton.tsx +6 -2
- package/src/components/AlphaIconButton/IconButton.types.ts +1 -1
- package/src/components/AlphaToggleButton/ToggleButton.module.scss +1 -1
- package/src/components/Button/Button.tsx +4 -2
- package/src/components/Button/Button.types.ts +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IconButton.mjs","sources":["../../../../src/components/AlphaIconButton/IconButton.tsx"],"sourcesContent":["'use client'\n\nimport React, { forwardRef } from 'react'\n\nimport { isBezierIcon } from '@channel.io/bezier-icons'\nimport classNames from 'classnames'\n\nimport { type AlphaIconButtonProps } from '~/src/components/AlphaIconButton'\nimport { AlphaLoader } from '~/src/components/AlphaLoader'\nimport { BaseButton } from '~/src/components/BaseButton'\nimport { type ButtonSize } from '~/src/components/Button'\nimport { Icon } from '~/src/components/Icon'\n\nimport styles from './IconButton.module.scss'\n\nfunction getIconSize(size: ButtonSize) {\n return (\n {\n xs: '
|
|
1
|
+
{"version":3,"file":"IconButton.mjs","sources":["../../../../src/components/AlphaIconButton/IconButton.tsx"],"sourcesContent":["'use client'\n\nimport React, { forwardRef } from 'react'\n\nimport { isBezierIcon } from '@channel.io/bezier-icons'\nimport classNames from 'classnames'\n\nimport { type AlphaIconButtonProps } from '~/src/components/AlphaIconButton'\nimport { AlphaLoader } from '~/src/components/AlphaLoader'\nimport { BaseButton } from '~/src/components/BaseButton'\nimport { type ButtonSize } from '~/src/components/Button'\nimport { Icon } from '~/src/components/Icon'\n\nimport styles from './IconButton.module.scss'\n\nfunction getIconSize(size: ButtonSize) {\n return (\n {\n xs: 'xs',\n s: 'xs',\n m: 's',\n l: 's',\n xl: 'm',\n } as const\n )[size]\n}\n\nexport const IconButton = forwardRef<HTMLButtonElement, AlphaIconButtonProps>(\n function IconButton(\n {\n as = BaseButton,\n color = 'blue',\n variant = 'primary',\n size = 'm',\n active,\n shape = 'rectangle',\n content,\n loading = false,\n disabled: disabledProp = false,\n className,\n ...rest\n },\n forwardedRef\n ) {\n const Comp = as as typeof BaseButton\n\n const disabled = loading || disabledProp\n\n return (\n <Comp\n ref={forwardedRef}\n className={classNames(\n styles.IconButton,\n styles[`size-${size}`],\n styles[`variant-${variant}`],\n styles[`color-${color}`],\n styles[`shape-${shape}`],\n active && styles.active,\n className\n )}\n disabled={disabled}\n {...rest}\n >\n <div\n className={classNames(\n styles.ButtonContent,\n loading && styles.loading\n )}\n >\n {isBezierIcon(content) ? (\n <Icon\n size={getIconSize(size)}\n source={content}\n className={styles.ButtonIcon}\n />\n ) : (\n content\n )}\n </div>\n\n {loading && (\n <div\n className={classNames(\n styles.ButtonLoader,\n // NOTE: Loader size is the same as icon size\n styles[`size-${getIconSize(size)}`]\n )}\n >\n <AlphaLoader\n size=\"s\"\n className={styles.Loader}\n variant={variant === 'primary' ? 'on-overlay' : 'secondary'}\n />\n </div>\n )}\n </Comp>\n )\n }\n)\n"],"names":["getIconSize","size","xs","s","m","l","xl","IconButton","forwardRef","as","BaseButton","color","variant","active","shape","content","loading","disabled","disabledProp","className","rest","forwardedRef","Comp","React","createElement","Object","assign","ref","classNames","styles","ButtonContent","isBezierIcon","Icon","source","ButtonIcon","ButtonLoader","AlphaLoader","Loader"],"mappings":";;;;;;;;AAeA,SAASA,WAAWA,CAACC,IAAgB,EAAE;EACrC,OACE;AACEC,IAAAA,EAAE,EAAE,IAAI;AACRC,IAAAA,CAAC,EAAE,IAAI;AACPC,IAAAA,CAAC,EAAE,GAAG;AACNC,IAAAA,CAAC,EAAE,GAAG;AACNC,IAAAA,EAAE,EAAE;GACL,CACDL,IAAI,CAAC;AACT;MAEaM,UAAU,gBAAGC,UAAU,CAClC,SAASD,UAAUA,CACjB;AACEE,EAAAA,EAAE,GAAGC,UAAU;AACfC,EAAAA,KAAK,GAAG,MAAM;AACdC,EAAAA,OAAO,GAAG,SAAS;AACnBX,EAAAA,IAAI,GAAG,GAAG;EACVY,MAAM;AACNC,EAAAA,KAAK,GAAG,WAAW;EACnBC,OAAO;AACPC,EAAAA,OAAO,GAAG,KAAK;EACfC,QAAQ,EAAEC,YAAY,GAAG,KAAK;EAC9BC,SAAS;EACT,GAAGC;AACL,CAAC,EACDC,YAAY,EACZ;EACA,MAAMC,IAAI,GAAGb,EAAuB;AAEpC,EAAA,MAAMQ,QAAQ,GAAGD,OAAO,IAAIE,YAAY;EAExC,oBACEK,cAAA,CAAAC,aAAA,CAACF,IAAI,EAAAG,MAAA,CAAAC,MAAA,CAAA;AACHC,IAAAA,GAAG,EAAEN,YAAa;AAClBF,IAAAA,SAAS,EAAES,UAAU,CACnBC,MAAM,CAACtB,UAAU,EACjBsB,MAAM,CAAC,QAAQ5B,IAAI,CAAA,CAAE,CAAC,EACtB4B,MAAM,CAAC,CAAWjB,QAAAA,EAAAA,OAAO,EAAE,CAAC,EAC5BiB,MAAM,CAAC,SAASlB,KAAK,CAAA,CAAE,CAAC,EACxBkB,MAAM,CAAC,CAASf,MAAAA,EAAAA,KAAK,EAAE,CAAC,EACxBD,MAAM,IAAIgB,MAAM,CAAChB,MAAM,EACvBM,SACF,CAAE;AACFF,IAAAA,QAAQ,EAAEA;AAAS,GAAA,EACfG,IAAI,CAAA,eAERG,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;IACEL,SAAS,EAAES,UAAU,CACnBC,MAAM,CAACC,aAAa,EACpBd,OAAO,IAAIa,MAAM,CAACb,OACpB;GAECe,EAAAA,YAAY,CAAChB,OAAO,CAAC,gBACpBQ,cAAA,CAAAC,aAAA,CAACQ,IAAI,EAAA;AACH/B,IAAAA,IAAI,EAAED,WAAW,CAACC,IAAI,CAAE;AACxBgC,IAAAA,MAAM,EAAElB,OAAQ;IAChBI,SAAS,EAAEU,MAAM,CAACK;GACnB,CAAC,GAEFnB,OAEC,CAAC,EAELC,OAAO,iBACNO,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACEL,IAAAA,SAAS,EAAES,UAAU,CACnBC,MAAM,CAACM,YAAY;AACnB;AACAN,IAAAA,MAAM,CAAC,CAAQ7B,KAAAA,EAAAA,WAAW,CAACC,IAAI,CAAC,EAAE,CACpC;AAAE,GAAA,eAEFsB,cAAA,CAAAC,aAAA,CAACY,MAAW,EAAA;AACVnC,IAAAA,IAAI,EAAC,GAAG;IACRkB,SAAS,EAAEU,MAAM,CAACQ,MAAO;AACzBzB,IAAAA,OAAO,EAAEA,OAAO,KAAK,SAAS,GAAG,YAAY,GAAG;GACjD,CACE,CAEH,CAAC;AAEX,CACF;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Loader.mjs","sources":["../../../../src/components/AlphaLoader/Loader.tsx"],"sourcesContent":["'use client'\n\nimport React, { forwardRef } from 'react'\n\nimport classNames from 'classnames'\n\nimport { type LoaderProps } from './Loader.types'\n\nimport styles from './Loader.module.scss'\n\nexport const LOADER_TEST_ID = 'bezier-loader'\n\nexport const Loader = forwardRef<HTMLSpanElement, LoaderProps>(function Loader(\n { className, size, variant = 'secondary', ...rest },\n forwardedRef\n) {\n return (\n <span\n className={classNames(\n styles.Loader,\n size && styles[`size-${size}`],\n styles[`variant-${variant}`],\n className\n )}\n ref={forwardedRef}\n data-testid={LOADER_TEST_ID}\n {...rest}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 16 16\"\n >\n <circle\n cx=\"8\"\n cy=\"8\"\n r=\"6.5\"\n className={styles.track}\n />\n\n <circle\n cx=\"8\"\n cy=\"8\"\n r=\"6.5\"\n className={styles.indicator}\n />\n </svg>\n </span>\n )\n})\n"],"names":["LOADER_TEST_ID","Loader","forwardRef","className","size","variant","rest","forwardedRef","React","createElement","Object","assign","classNames","styles","ref","xmlns","viewBox","cx","cy","r","track","indicator"],"mappings":";;;;AAUO,MAAMA,cAAc,GAAG
|
|
1
|
+
{"version":3,"file":"Loader.mjs","sources":["../../../../src/components/AlphaLoader/Loader.tsx"],"sourcesContent":["'use client'\n\nimport React, { forwardRef } from 'react'\n\nimport classNames from 'classnames'\n\nimport { type LoaderProps } from './Loader.types'\n\nimport styles from './Loader.module.scss'\n\nexport const LOADER_TEST_ID = 'bezier-loader'\n\nexport const Loader = forwardRef<HTMLSpanElement, LoaderProps>(function Loader(\n { className, size, variant = 'secondary', ...rest },\n forwardedRef\n) {\n return (\n <span\n className={classNames(\n styles.Loader,\n size && styles[`size-${size}`],\n styles[`variant-${variant}`],\n className\n )}\n ref={forwardedRef}\n data-testid={LOADER_TEST_ID}\n {...rest}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 16 16\"\n >\n <circle\n cx=\"8\"\n cy=\"8\"\n r=\"6.5\"\n className={styles.track}\n />\n\n <circle\n cx=\"8\"\n cy=\"8\"\n r=\"6.5\"\n className={styles.indicator}\n />\n </svg>\n </span>\n )\n})\n"],"names":["LOADER_TEST_ID","Loader","forwardRef","className","size","variant","rest","forwardedRef","React","createElement","Object","assign","classNames","styles","ref","xmlns","viewBox","cx","cy","r","track","indicator"],"mappings":";;;;AAUO,MAAMA,cAAc,GAAG;MAEjBC,MAAM,gBAAGC,UAAU,CAA+B,SAASD,MAAMA,CAC5E;EAAEE,SAAS;EAAEC,IAAI;AAAEC,EAAAA,OAAO,GAAG,WAAW;EAAE,GAAGC;AAAK,CAAC,EACnDC,YAAY,EACZ;AACA,EAAA,oBACEC,cAAA,CAAAC,aAAA,CAAAC,MAAAA,EAAAA,MAAA,CAAAC,MAAA,CAAA;IACER,SAAS,EAAES,UAAU,CACnBC,MAAM,CAACZ,MAAM,EACbG,IAAI,IAAIS,MAAM,CAAC,CAAA,KAAA,EAAQT,IAAI,CAAE,CAAA,CAAC,EAC9BS,MAAM,CAAC,CAAA,QAAA,EAAWR,OAAO,CAAE,CAAA,CAAC,EAC5BF,SACF,CAAE;AACFW,IAAAA,GAAG,EAAEP,YAAa;IAClB,aAAaP,EAAAA;AAAe,GAAA,EACxBM,IAAI,CAAA,eAERE,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACEM,IAAAA,KAAK,EAAC,4BAA4B;AAClCC,IAAAA,OAAO,EAAC;GAERR,eAAAA,cAAA,CAAAC,aAAA,CAAA,QAAA,EAAA;AACEQ,IAAAA,EAAE,EAAC,GAAG;AACNC,IAAAA,EAAE,EAAC,GAAG;AACNC,IAAAA,CAAC,EAAC,KAAK;IACPhB,SAAS,EAAEU,MAAM,CAACO;AAAM,GACzB,CAAC,eAEFZ,cAAA,CAAAC,aAAA,CAAA,QAAA,EAAA;AACEQ,IAAAA,EAAE,EAAC,GAAG;AACNC,IAAAA,EAAE,EAAC,GAAG;AACNC,IAAAA,CAAC,EAAC,KAAK;IACPhB,SAAS,EAAEU,MAAM,CAACQ;GACnB,CACE,CACD,CAAC;AAEX,CAAC;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StatusBadge.mjs","sources":["../../../../src/components/AlphaStatusBadge/StatusBadge.tsx"],"sourcesContent":["'use client'\n\nimport React, { type CSSProperties, forwardRef } from 'react'\n\nimport { MoonFilledIcon } from '@channel.io/bezier-icons'\nimport classNames from 'classnames'\n\nimport { type SemanticColor } from '~/src/types/tokens'\nimport { cssVar } from '~/src/utils/style'\n\nimport { Icon } from '~/src/components/Icon'\n\nimport { type StatusBadgeProps } from './StatusBadge.types'\n\nimport styles from './StatusBadge.module.scss'\n\n// TODO: Change to use AlphaIcon and alpha color tokens\n\n/**\n * `StatusBadge` is a component to indicate user status.\n * @example\n *\n * ```tsx\n * <StatusBadge\n * size=\"m\"\n * online\n * doNotDisturb\n * />\n * ```\n */\nexport const StatusBadge = forwardRef<HTMLDivElement, StatusBadgeProps>(\n function StatusBadge(\n {\n size = 'm',\n online = false,\n doNotDisturb = false,\n style,\n className,\n ...rest\n },\n forwardedRef\n ) {\n const iconColor: SemanticColor = online\n ? 'bgtxt-green-normal'\n : doNotDisturb\n ? 'bgtxt-yellow-normal'\n : 'bg-black-dark'\n const backgroundColor: SemanticColor = doNotDisturb\n ? 'bg-white-high'\n : iconColor\n\n return (\n <div\n ref={forwardedRef}\n style={\n {\n '--b-status-bg-color': cssVar(backgroundColor),\n ...style,\n } as CSSProperties\n }\n className={classNames(\n styles.StatusBadge,\n styles[`size-${size}`],\n className\n )}\n {...rest}\n >\n {doNotDisturb && (\n <Icon\n source={MoonFilledIcon}\n size={size === 'm' ? 'xxxs' : 'xs'}\n color={iconColor}\n className={styles.Icon}\n />\n )}\n </div>\n )\n }\n)\n"],"names":["StatusBadge","forwardRef","size","online","doNotDisturb","style","className","rest","forwardedRef","iconColor","backgroundColor","React","createElement","Object","assign","ref","cssVar","classNames","styles","Icon","source","MoonFilledIcon","color"],"mappings":";;;;;;;AAgBA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;MACaA,WAAW,gBAAGC,UAAU,CACnC,SAASD,WAAWA,CAClB;AACEE,EAAAA,IAAI,GAAG,GAAG;AACVC,EAAAA,MAAM,GAAG,KAAK;AACdC,EAAAA,YAAY,GAAG,KAAK;EACpBC,KAAK;EACLC,SAAS;EACT,GAAGC
|
|
1
|
+
{"version":3,"file":"StatusBadge.mjs","sources":["../../../../src/components/AlphaStatusBadge/StatusBadge.tsx"],"sourcesContent":["'use client'\n\nimport React, { type CSSProperties, forwardRef } from 'react'\n\nimport { MoonFilledIcon } from '@channel.io/bezier-icons'\nimport classNames from 'classnames'\n\nimport { type SemanticColor } from '~/src/types/tokens'\nimport { cssVar } from '~/src/utils/style'\n\nimport { Icon } from '~/src/components/Icon'\n\nimport { type StatusBadgeProps } from './StatusBadge.types'\n\nimport styles from './StatusBadge.module.scss'\n\n// TODO: Change to use AlphaIcon and alpha color tokens\n\n/**\n * `StatusBadge` is a component to indicate user status.\n * @example\n *\n * ```tsx\n * <StatusBadge\n * size=\"m\"\n * online\n * doNotDisturb\n * />\n * ```\n */\nexport const StatusBadge = forwardRef<HTMLDivElement, StatusBadgeProps>(\n function StatusBadge(\n {\n size = 'm',\n online = false,\n doNotDisturb = false,\n style,\n className,\n ...rest\n },\n forwardedRef\n ) {\n const iconColor: SemanticColor = online\n ? 'bgtxt-green-normal'\n : doNotDisturb\n ? 'bgtxt-yellow-normal'\n : 'bg-black-dark'\n const backgroundColor: SemanticColor = doNotDisturb\n ? 'bg-white-high'\n : iconColor\n\n return (\n <div\n ref={forwardedRef}\n style={\n {\n '--b-status-bg-color': cssVar(backgroundColor),\n ...style,\n } as CSSProperties\n }\n className={classNames(\n styles.StatusBadge,\n styles[`size-${size}`],\n className\n )}\n {...rest}\n >\n {doNotDisturb && (\n <Icon\n source={MoonFilledIcon}\n size={size === 'm' ? 'xxxs' : 'xs'}\n color={iconColor}\n className={styles.Icon}\n />\n )}\n </div>\n )\n }\n)\n"],"names":["StatusBadge","forwardRef","size","online","doNotDisturb","style","className","rest","forwardedRef","iconColor","backgroundColor","React","createElement","Object","assign","ref","cssVar","classNames","styles","Icon","source","MoonFilledIcon","color"],"mappings":";;;;;;;AAgBA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;MACaA,WAAW,gBAAGC,UAAU,CACnC,SAASD,WAAWA,CAClB;AACEE,EAAAA,IAAI,GAAG,GAAG;AACVC,EAAAA,MAAM,GAAG,KAAK;AACdC,EAAAA,YAAY,GAAG,KAAK;EACpBC,KAAK;EACLC,SAAS;EACT,GAAGC;AACL,CAAC,EACDC,YAAY,EACZ;EACA,MAAMC,SAAwB,GAAGN,MAAM,GACnC,oBAAoB,GACpBC,YAAY,GACV,qBAAqB,GACrB,eAAe;AACrB,EAAA,MAAMM,eAA8B,GAAGN,YAAY,GAC/C,eAAe,GACfK,SAAS;AAEb,EAAA,oBACEE,cAAA,CAAAC,aAAA,CAAAC,KAAAA,EAAAA,MAAA,CAAAC,MAAA,CAAA;AACEC,IAAAA,GAAG,EAAEP,YAAa;AAClBH,IAAAA,KAAK,EACH;AACE,MAAA,qBAAqB,EAAEW,MAAM,CAACN,eAAe,CAAC;MAC9C,GAAGL;KAEN;AACDC,IAAAA,SAAS,EAAEW,UAAU,CACnBC,MAAM,CAAClB,WAAW,EAClBkB,MAAM,CAAC,CAAQhB,KAAAA,EAAAA,IAAI,CAAE,CAAA,CAAC,EACtBI,SACF;GACIC,EAAAA,IAAI,GAEPH,YAAY,iBACXO,cAAA,CAAAC,aAAA,CAACO,IAAI,EAAA;AACHC,IAAAA,MAAM,EAAEC,cAAe;AACvBnB,IAAAA,IAAI,EAAEA,IAAI,KAAK,GAAG,GAAG,MAAM,GAAG,IAAK;AACnCoB,IAAAA,KAAK,EAAEb,SAAU;IACjBH,SAAS,EAAEY,MAAM,CAACC;AAAK,GACxB,CAEA,CAAC;AAEV,CACF;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToggleButton.mjs","sources":["../../../../src/components/AlphaToggleButton/ToggleButton.tsx"],"sourcesContent":["'use client'\n\nimport React, { forwardRef } from 'react'\n\nimport { isBezierIcon } from '@channel.io/bezier-icons'\nimport * as TogglePrimitive from '@radix-ui/react-toggle'\nimport classNames from 'classnames'\n\nimport { useToggleButtonContext } from '~/src/components/AlphaToggleButton/ToggleButtonContext'\nimport { BaseButton } from '~/src/components/BaseButton'\nimport { Icon, type IconSize } from '~/src/components/Icon'\nimport { Text } from '~/src/components/Text'\n\nimport { type ToggleButtonProps } from './ToggleButton.types'\n\nimport styles from './ToggleButton.module.scss'\n\nfunction SideContent({\n size,\n content,\n}: {\n size: IconSize\n content?: ToggleButtonProps['prefixContent']\n}) {\n return isBezierIcon(content) ? (\n <Icon\n source={content}\n size={size}\n className={styles.ButtonIcon}\n />\n ) : (\n content\n )\n}\n\nexport const ToggleButton = forwardRef<HTMLButtonElement, ToggleButtonProps>(\n function ToggleButton(\n {\n as = BaseButton,\n text,\n prefixContent,\n suffixContent,\n variant = 'primary',\n shape: shapeProps,\n size = 'm',\n className,\n onSelectedChange,\n ...rest\n },\n forwardedRef\n ) {\n const { shape: shapeContext } = useToggleButtonContext()\n const shape = shapeProps ?? shapeContext ?? 'capsule'\n const Comp = as as typeof BaseButton\n const ICON_SIZE = 's'\n\n return (\n <TogglePrimitive.Root\n asChild\n onPressedChange={onSelectedChange}\n {...rest}\n >\n <Comp\n ref={forwardedRef}\n className={classNames(\n styles.Button,\n styles[`size-${size}`],\n styles[`variant-${variant}`],\n shape && styles[`shape-${shape}`],\n className\n )}\n >\n <div className={classNames(styles.ButtonContent)}>\n <SideContent\n size={ICON_SIZE}\n content={prefixContent}\n />\n\n {/* TODO: use AlphaText later, add typo */}\n <Text\n className={styles.ButtonText}\n typo=\"14\"\n data-text={text}\n truncated\n >\n {text}\n </Text>\n\n <SideContent\n size={ICON_SIZE}\n content={suffixContent}\n />\n </div>\n </Comp>\n </TogglePrimitive.Root>\n )\n }\n)\n"],"names":["SideContent","size","content","isBezierIcon","React","createElement","Icon","source","className","styles","ButtonIcon","ToggleButton","forwardRef","as","BaseButton","text","prefixContent","suffixContent","variant","shape","shapeProps","onSelectedChange","rest","forwardedRef","_ref","shapeContext","useToggleButtonContext","Comp","ICON_SIZE","TogglePrimitive","Object","assign","asChild","onPressedChange","ref","classNames","Button","ButtonContent","Text","ButtonText","typo","truncated"],"mappings":";;;;;;;;;;AAiBA,SAASA,WAAWA,CAAC;EACnBC,IAAI;AACJC,EAAAA
|
|
1
|
+
{"version":3,"file":"ToggleButton.mjs","sources":["../../../../src/components/AlphaToggleButton/ToggleButton.tsx"],"sourcesContent":["'use client'\n\nimport React, { forwardRef } from 'react'\n\nimport { isBezierIcon } from '@channel.io/bezier-icons'\nimport * as TogglePrimitive from '@radix-ui/react-toggle'\nimport classNames from 'classnames'\n\nimport { useToggleButtonContext } from '~/src/components/AlphaToggleButton/ToggleButtonContext'\nimport { BaseButton } from '~/src/components/BaseButton'\nimport { Icon, type IconSize } from '~/src/components/Icon'\nimport { Text } from '~/src/components/Text'\n\nimport { type ToggleButtonProps } from './ToggleButton.types'\n\nimport styles from './ToggleButton.module.scss'\n\nfunction SideContent({\n size,\n content,\n}: {\n size: IconSize\n content?: ToggleButtonProps['prefixContent']\n}) {\n return isBezierIcon(content) ? (\n <Icon\n source={content}\n size={size}\n className={styles.ButtonIcon}\n />\n ) : (\n content\n )\n}\n\nexport const ToggleButton = forwardRef<HTMLButtonElement, ToggleButtonProps>(\n function ToggleButton(\n {\n as = BaseButton,\n text,\n prefixContent,\n suffixContent,\n variant = 'primary',\n shape: shapeProps,\n size = 'm',\n className,\n onSelectedChange,\n ...rest\n },\n forwardedRef\n ) {\n const { shape: shapeContext } = useToggleButtonContext()\n const shape = shapeProps ?? shapeContext ?? 'capsule'\n const Comp = as as typeof BaseButton\n const ICON_SIZE = 's'\n\n return (\n <TogglePrimitive.Root\n asChild\n onPressedChange={onSelectedChange}\n {...rest}\n >\n <Comp\n ref={forwardedRef}\n className={classNames(\n styles.Button,\n styles[`size-${size}`],\n styles[`variant-${variant}`],\n shape && styles[`shape-${shape}`],\n className\n )}\n >\n <div className={classNames(styles.ButtonContent)}>\n <SideContent\n size={ICON_SIZE}\n content={prefixContent}\n />\n\n {/* TODO: use AlphaText later, add typo */}\n <Text\n className={styles.ButtonText}\n typo=\"14\"\n data-text={text}\n truncated\n >\n {text}\n </Text>\n\n <SideContent\n size={ICON_SIZE}\n content={suffixContent}\n />\n </div>\n </Comp>\n </TogglePrimitive.Root>\n )\n }\n)\n"],"names":["SideContent","size","content","isBezierIcon","React","createElement","Icon","source","className","styles","ButtonIcon","ToggleButton","forwardRef","as","BaseButton","text","prefixContent","suffixContent","variant","shape","shapeProps","onSelectedChange","rest","forwardedRef","_ref","shapeContext","useToggleButtonContext","Comp","ICON_SIZE","TogglePrimitive","Object","assign","asChild","onPressedChange","ref","classNames","Button","ButtonContent","Text","ButtonText","typo","truncated"],"mappings":";;;;;;;;;;AAiBA,SAASA,WAAWA,CAAC;EACnBC,IAAI;AACJC,EAAAA;AAIF,CAAC,EAAE;EACD,OAAOC,YAAY,CAACD,OAAO,CAAC,gBAC1BE,cAAA,CAAAC,aAAA,CAACC,IAAI,EAAA;AACHC,IAAAA,MAAM,EAAEL,OAAQ;AAChBD,IAAAA,IAAI,EAAEA,IAAK;IACXO,SAAS,EAAEC,MAAM,CAACC;GACnB,CAAC,GAEFR,OACD;AACH;MAEaS,YAAY,gBAAGC,UAAU,CACpC,SAASD,YAAYA,CACnB;AACEE,EAAAA,EAAE,GAAGC,UAAU;EACfC,IAAI;EACJC,aAAa;EACbC,aAAa;AACbC,EAAAA,OAAO,GAAG,SAAS;AACnBC,EAAAA,KAAK,EAAEC,UAAU;AACjBnB,EAAAA,IAAI,GAAG,GAAG;EACVO,SAAS;EACTa,gBAAgB;EAChB,GAAGC;AACL,CAAC,EACDC,YAAY,EACZ;AAAA,EAAA,IAAAC,IAAA;EACA,MAAM;AAAEL,IAAAA,KAAK,EAAEM;GAAc,GAAGC,sBAAsB,EAAE;AACxD,EAAA,MAAMP,KAAK,GAAAK,CAAAA,IAAA,GAAGJ,UAAU,aAAVA,UAAU,KAAA,KAAA,CAAA,GAAVA,UAAU,GAAIK,YAAY,MAAAD,IAAAA,IAAAA,IAAA,KAAAA,KAAAA,CAAAA,GAAAA,IAAA,GAAI,SAAS;EACrD,MAAMG,IAAI,GAAGd,EAAuB;EACpC,MAAMe,SAAS,GAAG,GAAG;EAErB,oBACExB,cAAA,CAAAC,aAAA,CAACwB,yCAAoB,EAAAC,MAAA,CAAAC,MAAA,CAAA;IACnBC,OAAO,EAAA,IAAA;AACPC,IAAAA,eAAe,EAAEZ;AAAiB,GAAA,EAC9BC,IAAI,CAERlB,eAAAA,cAAA,CAAAC,aAAA,CAACsB,IAAI,EAAA;AACHO,IAAAA,GAAG,EAAEX,YAAa;AAClBf,IAAAA,SAAS,EAAE2B,UAAU,CACnB1B,MAAM,CAAC2B,MAAM,EACb3B,MAAM,CAAC,CAAA,KAAA,EAAQR,IAAI,CAAA,CAAE,CAAC,EACtBQ,MAAM,CAAC,CAAA,QAAA,EAAWS,OAAO,CAAA,CAAE,CAAC,EAC5BC,KAAK,IAAIV,MAAM,CAAC,CAASU,MAAAA,EAAAA,KAAK,CAAE,CAAA,CAAC,EACjCX,SACF;GAEAJ,eAAAA,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAKG,IAAAA,SAAS,EAAE2B,UAAU,CAAC1B,MAAM,CAAC4B,aAAa;AAAE,GAAA,eAC/CjC,cAAA,CAAAC,aAAA,CAACL,WAAW,EAAA;AACVC,IAAAA,IAAI,EAAE2B,SAAU;AAChB1B,IAAAA,OAAO,EAAEc;AAAc,GACxB,CAAC,eAGFZ,cAAA,CAAAC,aAAA,CAACiC,IAAI,EAAA;IACH9B,SAAS,EAAEC,MAAM,CAAC8B,UAAW;AAC7BC,IAAAA,IAAI,EAAC,IAAI;AACT,IAAA,WAAA,EAAWzB,IAAK;IAChB0B,SAAS,EAAA;AAAA,GAAA,EAER1B,IACG,CAAC,eAEPX,cAAA,CAAAC,aAAA,CAACL,WAAW,EAAA;AACVC,IAAAA,IAAI,EAAE2B,SAAU;AAChB1B,IAAAA,OAAO,EAAEe;GACV,CACE,CACD,CACc,CAAC;AAE3B,CACF;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToggleButtonContext.mjs","sources":["../../../../src/components/AlphaToggleButton/ToggleButtonContext.ts"],"sourcesContent":["import { createContext } from '~/src/utils/react'\n\nimport { type ToggleButtonProps } from '~/src/components/AlphaToggleButton/ToggleButton.types'\n\nconst [ToggleButtonProvider, useToggleButtonContext] = createContext<\n Pick<ToggleButtonProps, 'shape'>\n>({ shape: undefined })\n\nexport { ToggleButtonProvider, useToggleButtonContext }\n"],"names":["ToggleButtonProvider","useToggleButtonContext","createContext","shape","undefined"],"mappings":";;AAIA,MAAM,CAACA,oBAAoB,EAAEC,sBAAsB,CAAC,GAAGC,aAAa,CAElE;AAAEC,EAAAA,KAAK,EAAEC
|
|
1
|
+
{"version":3,"file":"ToggleButtonContext.mjs","sources":["../../../../src/components/AlphaToggleButton/ToggleButtonContext.ts"],"sourcesContent":["import { createContext } from '~/src/utils/react'\n\nimport { type ToggleButtonProps } from '~/src/components/AlphaToggleButton/ToggleButton.types'\n\nconst [ToggleButtonProvider, useToggleButtonContext] = createContext<\n Pick<ToggleButtonProps, 'shape'>\n>({ shape: undefined })\n\nexport { ToggleButtonProvider, useToggleButtonContext }\n"],"names":["ToggleButtonProvider","useToggleButtonContext","createContext","shape","undefined"],"mappings":";;AAIA,MAAM,CAACA,oBAAoB,EAAEC,sBAAsB,CAAC,GAAGC,aAAa,CAElE;AAAEC,EAAAA,KAAK,EAAEC;AAAU,CAAC;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToggleButtonGroup.mjs","sources":["../../../../src/components/AlphaToggleButtonGroup/ToggleButtonGroup.tsx"],"sourcesContent":["'use client'\n\nimport React, { forwardRef, useMemo } from 'react'\n\nimport * as ToggleGroupPrimitive from '@radix-ui/react-toggle-group'\nimport classNames from 'classnames'\n\nimport { type ToggleButtonProps } from '~/src/components/AlphaToggleButton/ToggleButton.types'\nimport { ToggleButtonProvider } from '~/src/components/AlphaToggleButton/ToggleButtonContext'\nimport {\n type ToggleButtonMultipleGroupProps,\n type ToggleButtonSingleGroupProps,\n} from '~/src/components/AlphaToggleButtonGroup/ToggleButtonGroup.types'\n\nimport styles from './ToggleButtonGroup.module.scss'\n\n/**\n * `ToggleButtonGroup` is a group of two-state buttons that can be toggled.\n * Notice that it keeps at least one button selected.\n * @example\n *\n * ```tsx\n * <ToggleButtonGroup\n * shape=\"rectangle\"\n * value=\"two\"\n * >\n * <ToggleButton\n * value=\"one\"\n * text=\"left\"\n * />\n * <ToggleButton\n * value=\"two\"\n * text=\"center\"\n * />\n * <ToggleButton\n * value=\"three\"\n * text=\"right\"\n * />\n * </ToggleButtonGroup>\n * ```\n */\nexport const ToggleButtonGroup = forwardRef<\n HTMLDivElement,\n ToggleButtonMultipleGroupProps | ToggleButtonSingleGroupProps\n>(function ToggleButtonGroup(props, forwardedRef) {\n const { children, shape, className, fullWidth, onValueChange, ...rest } =\n props\n\n const handleValueChange = (value: string | string[]) => {\n if (!props.onValueChange || !value.length) {\n return\n }\n\n if (props.type === 'single' && typeof value === 'string') {\n props.onValueChange(value)\n } else if (props.type === 'multiple' && Array.isArray(value)) {\n props.onValueChange(value)\n }\n }\n\n const ToggleButtons = React.Children.map(children, (toggleButton) => {\n if (!React.isValidElement<ToggleButtonProps>(toggleButton)) {\n return null\n }\n\n return (\n <ToggleGroupPrimitive.Item\n asChild\n value={toggleButton.props.value}\n key={toggleButton.props.value}\n className={styles.item}\n >\n {toggleButton}\n </ToggleGroupPrimitive.Item>\n )\n })\n\n return (\n <ToggleGroupPrimitive.Root\n ref={forwardedRef}\n className={classNames(\n styles.ToggleButtonGroup,\n fullWidth && styles.fullWidth,\n className\n )}\n onValueChange={handleValueChange}\n {...rest}\n >\n <ToggleButtonProvider value={useMemo(() => ({ shape }), [shape])}>\n {ToggleButtons}\n </ToggleButtonProvider>\n </ToggleGroupPrimitive.Root>\n )\n})\n"],"names":["ToggleButtonGroup","forwardRef","props","forwardedRef","children","shape","className","fullWidth","onValueChange","rest","handleValueChange","value","length","type","Array","isArray","ToggleButtons","React","Children","map","toggleButton","isValidElement","createElement","ToggleGroupPrimitive","asChild","key","styles","item","Object","assign","ref","classNames","ToggleButtonProvider","useMemo"],"mappings":";;;;;;AAgBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMA,iBAAiB,gBAAGC,UAAU,CAGzC,SAASD,iBAAiBA,CAACE,KAAK,EAAEC,YAAY,EAAE;EAChD,MAAM;IAAEC,QAAQ;IAAEC,KAAK;IAAEC,SAAS;IAAEC,SAAS;IAAEC,aAAa;IAAE,GAAGC
|
|
1
|
+
{"version":3,"file":"ToggleButtonGroup.mjs","sources":["../../../../src/components/AlphaToggleButtonGroup/ToggleButtonGroup.tsx"],"sourcesContent":["'use client'\n\nimport React, { forwardRef, useMemo } from 'react'\n\nimport * as ToggleGroupPrimitive from '@radix-ui/react-toggle-group'\nimport classNames from 'classnames'\n\nimport { type ToggleButtonProps } from '~/src/components/AlphaToggleButton/ToggleButton.types'\nimport { ToggleButtonProvider } from '~/src/components/AlphaToggleButton/ToggleButtonContext'\nimport {\n type ToggleButtonMultipleGroupProps,\n type ToggleButtonSingleGroupProps,\n} from '~/src/components/AlphaToggleButtonGroup/ToggleButtonGroup.types'\n\nimport styles from './ToggleButtonGroup.module.scss'\n\n/**\n * `ToggleButtonGroup` is a group of two-state buttons that can be toggled.\n * Notice that it keeps at least one button selected.\n * @example\n *\n * ```tsx\n * <ToggleButtonGroup\n * shape=\"rectangle\"\n * value=\"two\"\n * >\n * <ToggleButton\n * value=\"one\"\n * text=\"left\"\n * />\n * <ToggleButton\n * value=\"two\"\n * text=\"center\"\n * />\n * <ToggleButton\n * value=\"three\"\n * text=\"right\"\n * />\n * </ToggleButtonGroup>\n * ```\n */\nexport const ToggleButtonGroup = forwardRef<\n HTMLDivElement,\n ToggleButtonMultipleGroupProps | ToggleButtonSingleGroupProps\n>(function ToggleButtonGroup(props, forwardedRef) {\n const { children, shape, className, fullWidth, onValueChange, ...rest } =\n props\n\n const handleValueChange = (value: string | string[]) => {\n if (!props.onValueChange || !value.length) {\n return\n }\n\n if (props.type === 'single' && typeof value === 'string') {\n props.onValueChange(value)\n } else if (props.type === 'multiple' && Array.isArray(value)) {\n props.onValueChange(value)\n }\n }\n\n const ToggleButtons = React.Children.map(children, (toggleButton) => {\n if (!React.isValidElement<ToggleButtonProps>(toggleButton)) {\n return null\n }\n\n return (\n <ToggleGroupPrimitive.Item\n asChild\n value={toggleButton.props.value}\n key={toggleButton.props.value}\n className={styles.item}\n >\n {toggleButton}\n </ToggleGroupPrimitive.Item>\n )\n })\n\n return (\n <ToggleGroupPrimitive.Root\n ref={forwardedRef}\n className={classNames(\n styles.ToggleButtonGroup,\n fullWidth && styles.fullWidth,\n className\n )}\n onValueChange={handleValueChange}\n {...rest}\n >\n <ToggleButtonProvider value={useMemo(() => ({ shape }), [shape])}>\n {ToggleButtons}\n </ToggleButtonProvider>\n </ToggleGroupPrimitive.Root>\n )\n})\n"],"names":["ToggleButtonGroup","forwardRef","props","forwardedRef","children","shape","className","fullWidth","onValueChange","rest","handleValueChange","value","length","type","Array","isArray","ToggleButtons","React","Children","map","toggleButton","isValidElement","createElement","ToggleGroupPrimitive","asChild","key","styles","item","Object","assign","ref","classNames","ToggleButtonProvider","useMemo"],"mappings":";;;;;;AAgBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMA,iBAAiB,gBAAGC,UAAU,CAGzC,SAASD,iBAAiBA,CAACE,KAAK,EAAEC,YAAY,EAAE;EAChD,MAAM;IAAEC,QAAQ;IAAEC,KAAK;IAAEC,SAAS;IAAEC,SAAS;IAAEC,aAAa;IAAE,GAAGC;AAAK,GAAC,GACrEP,KAAK;EAEP,MAAMQ,iBAAiB,GAAIC,KAAwB,IAAK;IACtD,IAAI,CAACT,KAAK,CAACM,aAAa,IAAI,CAACG,KAAK,CAACC,MAAM,EAAE;AACzC,MAAA;AACF;IAEA,IAAIV,KAAK,CAACW,IAAI,KAAK,QAAQ,IAAI,OAAOF,KAAK,KAAK,QAAQ,EAAE;AACxDT,MAAAA,KAAK,CAACM,aAAa,CAACG,KAAK,CAAC;AAC5B,KAAC,MAAM,IAAIT,KAAK,CAACW,IAAI,KAAK,UAAU,IAAIC,KAAK,CAACC,OAAO,CAACJ,KAAK,CAAC,EAAE;AAC5DT,MAAAA,KAAK,CAACM,aAAa,CAACG,KAAK,CAAC;AAC5B;GACD;EAED,MAAMK,aAAa,GAAGC,cAAK,CAACC,QAAQ,CAACC,GAAG,CAACf,QAAQ,EAAGgB,YAAY,IAAK;AACnE,IAAA,IAAI,eAACH,cAAK,CAACI,cAAc,CAAoBD,YAAY,CAAC,EAAE;AAC1D,MAAA,OAAO,IAAI;AACb;AAEA,IAAA,oBACEH,cAAA,CAAAK,aAAA,CAACC,yCAAyB,EAAA;MACxBC,OAAO,EAAA,IAAA;AACPb,MAAAA,KAAK,EAAES,YAAY,CAAClB,KAAK,CAACS,KAAM;AAChCc,MAAAA,GAAG,EAAEL,YAAY,CAAClB,KAAK,CAACS,KAAM;MAC9BL,SAAS,EAAEoB,MAAM,CAACC;AAAK,KAAA,EAEtBP,YACwB,CAAC;AAEhC,GAAC,CAAC;EAEF,oBACEH,cAAA,CAAAK,aAAA,CAACC,yCAAyB,EAAAK,MAAA,CAAAC,MAAA,CAAA;AACxBC,IAAAA,GAAG,EAAE3B,YAAa;AAClBG,IAAAA,SAAS,EAAEyB,UAAU,CACnBL,MAAM,CAAC1B,iBAAiB,EACxBO,SAAS,IAAImB,MAAM,CAACnB,SAAS,EAC7BD,SACF,CAAE;AACFE,IAAAA,aAAa,EAAEE;AAAkB,GAAA,EAC7BD,IAAI,CAERQ,eAAAA,cAAA,CAAAK,aAAA,CAACU,oBAAoB,EAAA;IAACrB,KAAK,EAAEsB,OAAO,CAAC,OAAO;AAAE5B,MAAAA;AAAM,KAAC,CAAC,EAAE,CAACA,KAAK,CAAC;GAC5DW,EAAAA,aACmB,CACG,CAAC;AAEhC,CAAC;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToggleEmojiButtonGroup.mjs","sources":["../../../../src/components/AlphaToggleEmojiButtonGroup/ToggleEmojiButtonGroup.tsx"],"sourcesContent":["import React, { type CSSProperties, forwardRef, useState } from 'react'\n\nimport * as ToggleGroup from '@radix-ui/react-toggle-group'\nimport classNames from 'classnames'\n\nimport useMergeRefs from '~/src/hooks/useMergeRefs'\nimport { cssDimension } from '~/src/utils/style'\n\nimport {\n EMOJI_BUTTON_GROUP_GAP,\n EMOJI_BUTTON_SIZE,\n useToggleEmojiButtonSize,\n} from '~/src/components/AlphaToggleEmojiButtonGroup/useToggleEmojiButtonSize'\nimport { BaseButton } from '~/src/components/BaseButton'\nimport { Emoji } from '~/src/components/Emoji'\n\nimport {\n type ToggleEmojiButtonGroupProps,\n type ToggleEmojiButtonSourceProps,\n} from './ToggleEmojiButtonGroup.types'\n\nimport styles from './ToggleEmojiButtonGroup.module.scss'\n\nconst EMOJI_SIZE = 30\n\n/**\n * Toggle Button that contains `Emoji` component with size fixed to 30.\n * It should be used with `ToggleEmojiButtonGroup` component.\n * @example\n * ```tsx\n * <ToggleEmojiButtonSource\n * content={\n * <Emoji\n * imageUrl=\"https://cf.exp.channel.io/asset/emoji/images/80/a.png\"\n * name=\"A\"\n * />\n * }\n * />\n * ```\n */\nexport const ToggleEmojiButtonSource = forwardRef<\n HTMLButtonElement,\n ToggleEmojiButtonSourceProps\n>(function ToggleEmojiButtonSource(\n { name, variant, className, selected, size = 'm', value, onResize, ...rest },\n forwardedRef\n) {\n return (\n <ToggleGroup.Item\n value={value}\n asChild\n >\n <BaseButton\n ref={forwardedRef}\n className={classNames(\n styles.ToggleEmojiButtonSource,\n styles[`size-${size}`],\n styles[`variant-${variant}`],\n className\n )}\n {...rest}\n >\n <div className={classNames(styles.ButtonContent)}>\n <Emoji\n name={name}\n size={`${EMOJI_SIZE}`}\n />\n </div>\n </BaseButton>\n </ToggleGroup.Item>\n )\n})\n\n/**\n * Component for grouping `ToggleEmojiButtonSource`.\n * @example\n * ```tsx\n * <ToggleEmojiButtonGroup\n * fillDirection=\"horizontal\"\n * >\n * <ToggleEmojiButtonSource content={<Emoji />} />\n * <ToggleEmojiButtonSource content={<Emoji />} />\n * </ToggleEmojiButtonGroup>\n * ```\n */\nexport const ToggleEmojiButtonGroup = forwardRef<\n HTMLDivElement,\n ToggleEmojiButtonGroupProps\n>(function ToggleEmojiButtonGroup(\n {\n fillDirection,\n value,\n className,\n defaultValue,\n children,\n style,\n dir = 'ltr',\n onValueChange,\n ...rest\n },\n forwardedRef\n) {\n const [container, setContainer] = useState<null | HTMLDivElement>(null)\n const mergedRefs = useMergeRefs(setContainer, forwardedRef)\n const shouldResizeButton = fillDirection === 'all'\n const resizedButtonSize = useToggleEmojiButtonSize({\n container,\n enabled: shouldResizeButton,\n buttonCount: React.Children.count(children),\n })\n\n return (\n <ToggleGroup.Root\n type=\"single\"\n defaultValue={defaultValue}\n onValueChange={onValueChange}\n value={value}\n ref={mergedRefs}\n style={\n {\n '--b-toggle-emoji-button-emoji-size': cssDimension(EMOJI_SIZE),\n '--b-toggle-emoji-button-size': cssDimension(\n shouldResizeButton ? resizedButtonSize : EMOJI_BUTTON_SIZE\n ),\n '--b-toggle-emoji-button-group-gap': cssDimension(\n EMOJI_BUTTON_GROUP_GAP\n ),\n ...style,\n } as CSSProperties\n }\n className={classNames(\n styles.ToggleEmojiButtonGroup,\n fillDirection && styles[`fillDirection-${fillDirection}`],\n className\n )}\n {...rest}\n >\n {children}\n </ToggleGroup.Root>\n )\n})\n"],"names":["EMOJI_SIZE","ToggleEmojiButtonSource","forwardRef","name","variant","className","selected","size","value","onResize","rest","forwardedRef","React","createElement","ToggleGroup","asChild","BaseButton","Object","assign","ref","classNames","styles","ButtonContent","Emoji","ToggleEmojiButtonGroup","fillDirection","defaultValue","children","style","dir","onValueChange","container","setContainer","useState","mergedRefs","useMergeRefs","shouldResizeButton","resizedButtonSize","useToggleEmojiButtonSize","enabled","buttonCount","Children","count","type","cssDimension","EMOJI_BUTTON_SIZE","EMOJI_BUTTON_GROUP_GAP"],"mappings":";;;;;;;;;;AAuBA,MAAMA,UAAU,GAAG,EAAE
|
|
1
|
+
{"version":3,"file":"ToggleEmojiButtonGroup.mjs","sources":["../../../../src/components/AlphaToggleEmojiButtonGroup/ToggleEmojiButtonGroup.tsx"],"sourcesContent":["import React, { type CSSProperties, forwardRef, useState } from 'react'\n\nimport * as ToggleGroup from '@radix-ui/react-toggle-group'\nimport classNames from 'classnames'\n\nimport useMergeRefs from '~/src/hooks/useMergeRefs'\nimport { cssDimension } from '~/src/utils/style'\n\nimport {\n EMOJI_BUTTON_GROUP_GAP,\n EMOJI_BUTTON_SIZE,\n useToggleEmojiButtonSize,\n} from '~/src/components/AlphaToggleEmojiButtonGroup/useToggleEmojiButtonSize'\nimport { BaseButton } from '~/src/components/BaseButton'\nimport { Emoji } from '~/src/components/Emoji'\n\nimport {\n type ToggleEmojiButtonGroupProps,\n type ToggleEmojiButtonSourceProps,\n} from './ToggleEmojiButtonGroup.types'\n\nimport styles from './ToggleEmojiButtonGroup.module.scss'\n\nconst EMOJI_SIZE = 30\n\n/**\n * Toggle Button that contains `Emoji` component with size fixed to 30.\n * It should be used with `ToggleEmojiButtonGroup` component.\n * @example\n * ```tsx\n * <ToggleEmojiButtonSource\n * content={\n * <Emoji\n * imageUrl=\"https://cf.exp.channel.io/asset/emoji/images/80/a.png\"\n * name=\"A\"\n * />\n * }\n * />\n * ```\n */\nexport const ToggleEmojiButtonSource = forwardRef<\n HTMLButtonElement,\n ToggleEmojiButtonSourceProps\n>(function ToggleEmojiButtonSource(\n { name, variant, className, selected, size = 'm', value, onResize, ...rest },\n forwardedRef\n) {\n return (\n <ToggleGroup.Item\n value={value}\n asChild\n >\n <BaseButton\n ref={forwardedRef}\n className={classNames(\n styles.ToggleEmojiButtonSource,\n styles[`size-${size}`],\n styles[`variant-${variant}`],\n className\n )}\n {...rest}\n >\n <div className={classNames(styles.ButtonContent)}>\n <Emoji\n name={name}\n size={`${EMOJI_SIZE}`}\n />\n </div>\n </BaseButton>\n </ToggleGroup.Item>\n )\n})\n\n/**\n * Component for grouping `ToggleEmojiButtonSource`.\n * @example\n * ```tsx\n * <ToggleEmojiButtonGroup\n * fillDirection=\"horizontal\"\n * >\n * <ToggleEmojiButtonSource content={<Emoji />} />\n * <ToggleEmojiButtonSource content={<Emoji />} />\n * </ToggleEmojiButtonGroup>\n * ```\n */\nexport const ToggleEmojiButtonGroup = forwardRef<\n HTMLDivElement,\n ToggleEmojiButtonGroupProps\n>(function ToggleEmojiButtonGroup(\n {\n fillDirection,\n value,\n className,\n defaultValue,\n children,\n style,\n dir = 'ltr',\n onValueChange,\n ...rest\n },\n forwardedRef\n) {\n const [container, setContainer] = useState<null | HTMLDivElement>(null)\n const mergedRefs = useMergeRefs(setContainer, forwardedRef)\n const shouldResizeButton = fillDirection === 'all'\n const resizedButtonSize = useToggleEmojiButtonSize({\n container,\n enabled: shouldResizeButton,\n buttonCount: React.Children.count(children),\n })\n\n return (\n <ToggleGroup.Root\n type=\"single\"\n defaultValue={defaultValue}\n onValueChange={onValueChange}\n value={value}\n ref={mergedRefs}\n style={\n {\n '--b-toggle-emoji-button-emoji-size': cssDimension(EMOJI_SIZE),\n '--b-toggle-emoji-button-size': cssDimension(\n shouldResizeButton ? resizedButtonSize : EMOJI_BUTTON_SIZE\n ),\n '--b-toggle-emoji-button-group-gap': cssDimension(\n EMOJI_BUTTON_GROUP_GAP\n ),\n ...style,\n } as CSSProperties\n }\n className={classNames(\n styles.ToggleEmojiButtonGroup,\n fillDirection && styles[`fillDirection-${fillDirection}`],\n className\n )}\n {...rest}\n >\n {children}\n </ToggleGroup.Root>\n )\n})\n"],"names":["EMOJI_SIZE","ToggleEmojiButtonSource","forwardRef","name","variant","className","selected","size","value","onResize","rest","forwardedRef","React","createElement","ToggleGroup","asChild","BaseButton","Object","assign","ref","classNames","styles","ButtonContent","Emoji","ToggleEmojiButtonGroup","fillDirection","defaultValue","children","style","dir","onValueChange","container","setContainer","useState","mergedRefs","useMergeRefs","shouldResizeButton","resizedButtonSize","useToggleEmojiButtonSize","enabled","buttonCount","Children","count","type","cssDimension","EMOJI_BUTTON_SIZE","EMOJI_BUTTON_GROUP_GAP"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useToggleEmojiButtonSize.mjs","sources":["../../../../src/components/AlphaToggleEmojiButtonGroup/useToggleEmojiButtonSize.ts"],"sourcesContent":["import { useCallback, useEffect, useState } from 'react'\n\nexport const EMOJI_BUTTON_GROUP_GAP = 6\nexport const EMOJI_BUTTON_SIZE = 54\n\ninterface UseToggleEmojiButtonSizeProps {\n container: HTMLDivElement | null\n enabled: boolean\n buttonCount: number\n}\n\nexport function useToggleEmojiButtonSize({\n container,\n enabled,\n buttonCount,\n}: UseToggleEmojiButtonSizeProps) {\n const [buttonSize, setButtonSize] = useState(EMOJI_BUTTON_SIZE)\n\n const adjustButtonSize = useCallback(() => {\n if (!container || !enabled) {\n return\n }\n\n const containerWidth = container.clientWidth\n const containerHeight = container.clientHeight\n const size = Math.max(\n Math.min(\n (containerWidth - EMOJI_BUTTON_GROUP_GAP * (buttonCount - 1)) /\n buttonCount,\n containerHeight - EMOJI_BUTTON_GROUP_GAP\n ),\n EMOJI_BUTTON_SIZE\n )\n\n setButtonSize(size)\n }, [buttonCount, container, enabled])\n\n useEffect(\n function setResizeObserver() {\n let resizeObserver: ResizeObserver | null = null\n\n if (enabled && container) {\n resizeObserver = new ResizeObserver(() => {\n adjustButtonSize()\n })\n\n resizeObserver.observe(container)\n container.addEventListener('resize', adjustButtonSize)\n }\n\n return () => {\n if (container) {\n resizeObserver?.unobserve(container)\n container?.removeEventListener('resize', adjustButtonSize)\n }\n }\n },\n [adjustButtonSize, container, enabled]\n )\n\n return buttonSize\n}\n"],"names":["EMOJI_BUTTON_GROUP_GAP","EMOJI_BUTTON_SIZE","useToggleEmojiButtonSize","container","enabled","buttonCount","buttonSize","setButtonSize","useState","adjustButtonSize","useCallback","containerWidth","clientWidth","containerHeight","clientHeight","size","Math","max","min","useEffect","setResizeObserver","resizeObserver","ResizeObserver","observe","addEventListener","_resizeObserver","unobserve","removeEventListener"],"mappings":";;AAEO,MAAMA,sBAAsB,GAAG
|
|
1
|
+
{"version":3,"file":"useToggleEmojiButtonSize.mjs","sources":["../../../../src/components/AlphaToggleEmojiButtonGroup/useToggleEmojiButtonSize.ts"],"sourcesContent":["import { useCallback, useEffect, useState } from 'react'\n\nexport const EMOJI_BUTTON_GROUP_GAP = 6\nexport const EMOJI_BUTTON_SIZE = 54\n\ninterface UseToggleEmojiButtonSizeProps {\n container: HTMLDivElement | null\n enabled: boolean\n buttonCount: number\n}\n\nexport function useToggleEmojiButtonSize({\n container,\n enabled,\n buttonCount,\n}: UseToggleEmojiButtonSizeProps) {\n const [buttonSize, setButtonSize] = useState(EMOJI_BUTTON_SIZE)\n\n const adjustButtonSize = useCallback(() => {\n if (!container || !enabled) {\n return\n }\n\n const containerWidth = container.clientWidth\n const containerHeight = container.clientHeight\n const size = Math.max(\n Math.min(\n (containerWidth - EMOJI_BUTTON_GROUP_GAP * (buttonCount - 1)) /\n buttonCount,\n containerHeight - EMOJI_BUTTON_GROUP_GAP\n ),\n EMOJI_BUTTON_SIZE\n )\n\n setButtonSize(size)\n }, [buttonCount, container, enabled])\n\n useEffect(\n function setResizeObserver() {\n let resizeObserver: ResizeObserver | null = null\n\n if (enabled && container) {\n resizeObserver = new ResizeObserver(() => {\n adjustButtonSize()\n })\n\n resizeObserver.observe(container)\n container.addEventListener('resize', adjustButtonSize)\n }\n\n return () => {\n if (container) {\n resizeObserver?.unobserve(container)\n container?.removeEventListener('resize', adjustButtonSize)\n }\n }\n },\n [adjustButtonSize, container, enabled]\n )\n\n return buttonSize\n}\n"],"names":["EMOJI_BUTTON_GROUP_GAP","EMOJI_BUTTON_SIZE","useToggleEmojiButtonSize","container","enabled","buttonCount","buttonSize","setButtonSize","useState","adjustButtonSize","useCallback","containerWidth","clientWidth","containerHeight","clientHeight","size","Math","max","min","useEffect","setResizeObserver","resizeObserver","ResizeObserver","observe","addEventListener","_resizeObserver","unobserve","removeEventListener"],"mappings":";;AAEO,MAAMA,sBAAsB,GAAG;AAC/B,MAAMC,iBAAiB,GAAG;AAQ1B,SAASC,wBAAwBA,CAAC;EACvCC,SAAS;EACTC,OAAO;AACPC,EAAAA;AAC6B,CAAC,EAAE;EAChC,MAAM,CAACC,UAAU,EAAEC,aAAa,CAAC,GAAGC,QAAQ,CAACP,iBAAiB,CAAC;AAE/D,EAAA,MAAMQ,gBAAgB,GAAGC,WAAW,CAAC,MAAM;AACzC,IAAA,IAAI,CAACP,SAAS,IAAI,CAACC,OAAO,EAAE;AAC1B,MAAA;AACF;AAEA,IAAA,MAAMO,cAAc,GAAGR,SAAS,CAACS,WAAW;AAC5C,IAAA,MAAMC,eAAe,GAAGV,SAAS,CAACW,YAAY;AAC9C,IAAA,MAAMC,IAAI,GAAGC,IAAI,CAACC,GAAG,CACnBD,IAAI,CAACE,GAAG,CACN,CAACP,cAAc,GAAGX,sBAAsB,IAAIK,WAAW,GAAG,CAAC,CAAC,IAC1DA,WAAW,EACbQ,eAAe,GAAGb,sBACpB,CAAC,EACDC,iBACF,CAAC;IAEDM,aAAa,CAACQ,IAAI,CAAC;GACpB,EAAE,CAACV,WAAW,EAAEF,SAAS,EAAEC,OAAO,CAAC,CAAC;AAErCe,EAAAA,SAAS,CACP,SAASC,iBAAiBA,GAAG;IAC3B,IAAIC,cAAqC,GAAG,IAAI;IAEhD,IAAIjB,OAAO,IAAID,SAAS,EAAE;AACxBkB,MAAAA,cAAc,GAAG,IAAIC,cAAc,CAAC,MAAM;AACxCb,QAAAA,gBAAgB,EAAE;AACpB,OAAC,CAAC;AAEFY,MAAAA,cAAc,CAACE,OAAO,CAACpB,SAAS,CAAC;AACjCA,MAAAA,SAAS,CAACqB,gBAAgB,CAAC,QAAQ,EAAEf,gBAAgB,CAAC;AACxD;AAEA,IAAA,OAAO,MAAM;AACX,MAAA,IAAIN,SAAS,EAAE;AAAA,QAAA,IAAAsB,eAAA;QACb,CAAAA,eAAA,GAAAJ,cAAc,MAAAI,IAAAA,IAAAA,eAAA,KAAdA,KAAAA,CAAAA,IAAAA,eAAA,CAAgBC,SAAS,CAACvB,SAAS,CAAC;QACpCA,SAAS,KAAA,IAAA,IAATA,SAAS,KAAA,KAAA,CAAA,IAATA,SAAS,CAAEwB,mBAAmB,CAAC,QAAQ,EAAElB,gBAAgB,CAAC;AAC5D;KACD;GACF,EACD,CAACA,gBAAgB,EAAEN,SAAS,EAAEC,OAAO,CACvC,CAAC;AAED,EAAA,OAAOE,UAAU;AACnB;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TooltipPrimitive.mjs","sources":["../../../../src/components/AlphaTooltipPrimitive/TooltipPrimitive.tsx"],"sourcesContent":["'use client'\n\nimport {\n Tooltip,\n TooltipArrow,\n TooltipContent,\n TooltipPortal,\n TooltipProvider,\n TooltipTrigger,\n} from '@radix-ui/react-tooltip'\n\n/**\n * @see {@link https://www.radix-ui.com/primitives/docs/components/tooltip#provider}\n */\nexport const TooltipPrimitiveProvider = TooltipProvider\n\n/**\n * @see {@link https://www.radix-ui.com/primitives/docs/components/tooltip#root}\n */\nexport const TooltipPrimitive = Tooltip\n\n/**\n * @see {@link https://www.radix-ui.com/primitives/docs/components/tooltip#trigger}\n */\nexport const TooltipPrimitiveTrigger = TooltipTrigger\n\n/**\n * @see {@link https://www.radix-ui.com/primitives/docs/components/tooltip#portal}\n */\nexport const TooltipPrimitivePortal = TooltipPortal\n\n/**\n * @see {@link https://www.radix-ui.com/primitives/docs/components/tooltip#content}\n */\nexport const TooltipPrimitiveContent = TooltipContent\n\n/**\n * @see {@link https://www.radix-ui.com/primitives/docs/components/tooltip#arrow}\n */\nexport const TooltipPrimitiveArrow = TooltipArrow\n"],"names":["TooltipPrimitiveProvider","TooltipProvider","TooltipPrimitive","Tooltip","TooltipPrimitiveTrigger","TooltipTrigger","TooltipPrimitivePortal","TooltipPortal","TooltipPrimitiveContent","TooltipContent","TooltipPrimitiveArrow","TooltipArrow"],"mappings":";;AAWA;AACA;AACA;AACO,MAAMA,wBAAwB,GAAGC
|
|
1
|
+
{"version":3,"file":"TooltipPrimitive.mjs","sources":["../../../../src/components/AlphaTooltipPrimitive/TooltipPrimitive.tsx"],"sourcesContent":["'use client'\n\nimport {\n Tooltip,\n TooltipArrow,\n TooltipContent,\n TooltipPortal,\n TooltipProvider,\n TooltipTrigger,\n} from '@radix-ui/react-tooltip'\n\n/**\n * @see {@link https://www.radix-ui.com/primitives/docs/components/tooltip#provider}\n */\nexport const TooltipPrimitiveProvider = TooltipProvider\n\n/**\n * @see {@link https://www.radix-ui.com/primitives/docs/components/tooltip#root}\n */\nexport const TooltipPrimitive = Tooltip\n\n/**\n * @see {@link https://www.radix-ui.com/primitives/docs/components/tooltip#trigger}\n */\nexport const TooltipPrimitiveTrigger = TooltipTrigger\n\n/**\n * @see {@link https://www.radix-ui.com/primitives/docs/components/tooltip#portal}\n */\nexport const TooltipPrimitivePortal = TooltipPortal\n\n/**\n * @see {@link https://www.radix-ui.com/primitives/docs/components/tooltip#content}\n */\nexport const TooltipPrimitiveContent = TooltipContent\n\n/**\n * @see {@link https://www.radix-ui.com/primitives/docs/components/tooltip#arrow}\n */\nexport const TooltipPrimitiveArrow = TooltipArrow\n"],"names":["TooltipPrimitiveProvider","TooltipProvider","TooltipPrimitive","Tooltip","TooltipPrimitiveTrigger","TooltipTrigger","TooltipPrimitivePortal","TooltipPortal","TooltipPrimitiveContent","TooltipContent","TooltipPrimitiveArrow","TooltipArrow"],"mappings":";;AAWA;AACA;AACA;AACO,MAAMA,wBAAwB,GAAGC;;AAExC;AACA;AACA;AACO,MAAMC,gBAAgB,GAAGC;;AAEhC;AACA;AACA;AACO,MAAMC,uBAAuB,GAAGC;;AAEvC;AACA;AACA;AACO,MAAMC,sBAAsB,GAAGC;;AAEtC;AACA;AACA;AACO,MAAMC,uBAAuB,GAAGC;;AAEvC;AACA;AACA;AACO,MAAMC,qBAAqB,GAAGC;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AppProvider.mjs","sources":["../../../../src/components/AppProvider/AppProvider.tsx"],"sourcesContent":["'use client'\n\nimport React, { useEffect } from 'react'\n\nimport { getWindow } from 'ssr-window'\n\nimport { FeatureProvider } from '~/src/components/FeatureProvider'\nimport { TokenProvider } from '~/src/components/TokenProvider'\nimport { WindowProvider } from '~/src/components/WindowProvider'\n\nimport { type AppProviderProps } from './AppProvider.types'\n\nconst defaultWindow = getWindow()\n\n/**\n * `AppProvider` is a required wrapper component that provides context for the app.\n * @example\n *\n * ```tsx\n * import React from 'react'\n * import { createRoot } from 'react-dom/client'\n * import { AppProvider } from '@channel.io/bezier-react'\n *\n * const container = document.getElementById('root')\n * const root = createRoot(container)\n *\n * root.render(\n * <AppProvider themeName=\"light\">\n * <App />\n * </AppProvider>,\n * )\n * ```\n */\nexport function AppProvider({\n children,\n themeName = 'light',\n features = [],\n window = defaultWindow,\n}: AppProviderProps) {\n useEffect(\n function updateRootThemeDataAttribute() {\n const rootElement = window.document.documentElement\n // TODO: Change data attribute constant to import from bezier-tokens\n rootElement.setAttribute('data-bezier-theme', themeName)\n return function cleanup() {\n rootElement.removeAttribute('data-bezier-theme')\n }\n },\n [window, themeName]\n )\n\n return (\n <WindowProvider window={window}>\n <FeatureProvider features={features}>\n <TokenProvider themeName={themeName}>{children}</TokenProvider>\n </FeatureProvider>\n </WindowProvider>\n )\n}\n"],"names":["defaultWindow","getWindow","AppProvider","children","themeName","features","window","useEffect","updateRootThemeDataAttribute","rootElement","document","documentElement","setAttribute","cleanup","removeAttribute","React","createElement","WindowProvider","FeatureProvider","TokenProvider"],"mappings":";;;;;;AAYA,MAAMA,aAAa,GAAGC,SAAS,EAAE
|
|
1
|
+
{"version":3,"file":"AppProvider.mjs","sources":["../../../../src/components/AppProvider/AppProvider.tsx"],"sourcesContent":["'use client'\n\nimport React, { useEffect } from 'react'\n\nimport { getWindow } from 'ssr-window'\n\nimport { FeatureProvider } from '~/src/components/FeatureProvider'\nimport { TokenProvider } from '~/src/components/TokenProvider'\nimport { WindowProvider } from '~/src/components/WindowProvider'\n\nimport { type AppProviderProps } from './AppProvider.types'\n\nconst defaultWindow = getWindow()\n\n/**\n * `AppProvider` is a required wrapper component that provides context for the app.\n * @example\n *\n * ```tsx\n * import React from 'react'\n * import { createRoot } from 'react-dom/client'\n * import { AppProvider } from '@channel.io/bezier-react'\n *\n * const container = document.getElementById('root')\n * const root = createRoot(container)\n *\n * root.render(\n * <AppProvider themeName=\"light\">\n * <App />\n * </AppProvider>,\n * )\n * ```\n */\nexport function AppProvider({\n children,\n themeName = 'light',\n features = [],\n window = defaultWindow,\n}: AppProviderProps) {\n useEffect(\n function updateRootThemeDataAttribute() {\n const rootElement = window.document.documentElement\n // TODO: Change data attribute constant to import from bezier-tokens\n rootElement.setAttribute('data-bezier-theme', themeName)\n return function cleanup() {\n rootElement.removeAttribute('data-bezier-theme')\n }\n },\n [window, themeName]\n )\n\n return (\n <WindowProvider window={window}>\n <FeatureProvider features={features}>\n <TokenProvider themeName={themeName}>{children}</TokenProvider>\n </FeatureProvider>\n </WindowProvider>\n )\n}\n"],"names":["defaultWindow","getWindow","AppProvider","children","themeName","features","window","useEffect","updateRootThemeDataAttribute","rootElement","document","documentElement","setAttribute","cleanup","removeAttribute","React","createElement","WindowProvider","FeatureProvider","TokenProvider"],"mappings":";;;;;;AAYA,MAAMA,aAAa,GAAGC,SAAS,EAAE;;AAEjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASC,WAAWA,CAAC;EAC1BC,QAAQ;AACRC,EAAAA,SAAS,GAAG,OAAO;AACnBC,EAAAA,QAAQ,GAAG,EAAE;AACbC,EAAAA,MAAM,GAAGN;AACO,CAAC,EAAE;AACnBO,EAAAA,SAAS,CACP,SAASC,4BAA4BA,GAAG;AACtC,IAAA,MAAMC,WAAW,GAAGH,MAAM,CAACI,QAAQ,CAACC,eAAe;AACnD;AACAF,IAAAA,WAAW,CAACG,YAAY,CAAC,mBAAmB,EAAER,SAAS,CAAC;IACxD,OAAO,SAASS,OAAOA,GAAG;AACxBJ,MAAAA,WAAW,CAACK,eAAe,CAAC,mBAAmB,CAAC;KACjD;AACH,GAAC,EACD,CAACR,MAAM,EAAEF,SAAS,CACpB,CAAC;AAED,EAAA,oBACEW,cAAA,CAAAC,aAAA,CAACC,cAAc,EAAA;AAACX,IAAAA,MAAM,EAAEA;AAAO,GAAA,eAC7BS,cAAA,CAAAC,aAAA,CAACE,eAAe,EAAA;AAACb,IAAAA,QAAQ,EAAEA;AAAS,GAAA,eAClCU,cAAA,CAAAC,aAAA,CAACG,aAAa,EAAA;AAACf,IAAAA,SAAS,EAAEA;GAAYD,EAAAA,QAAwB,CAC/C,CACH,CAAC;AAErB;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AutoFocus.mjs","sources":["../../../../src/components/AutoFocus/AutoFocus.tsx"],"sourcesContent":["'use client'\n\nimport React, { forwardRef, useState } from 'react'\n\nimport { Slot } from '@radix-ui/react-slot'\n\nimport { useIsomorphicLayoutEffect } from '~/src/hooks/useIsomorphicLayoutEffect'\nimport useMergeRefs from '~/src/hooks/useMergeRefs'\n\nimport { type AutoFocusProps } from './AutoFocus.types'\n\n/**\n * `AutoFocus` is a component that automatically focuses its child element when they are added to the document.\n * It is useful when you want to focus on a specific element when the component is mounted.\n * It doesn't render any DOM node.\n * @example\n *\n * ```tsx\n * <AutoFocus>\n * <button>Close</button>\n * </AutoFocus>\n *\n * // You can also use it with the additional condition\n * <AutoFocus when={condition}>\n * <button>Close</button>\n * </AutoFocus>\n * ```\n */\nexport const AutoFocus = forwardRef<HTMLElement, AutoFocusProps>(\n function AutoFocus({ children, when = true, ...rest }, forwardedRef) {\n const [target, setTarget] = useState<HTMLElement | null>(null)\n\n useIsomorphicLayoutEffect(\n function focus() {\n if (target && when) {\n target.focus()\n }\n },\n [target, when]\n )\n\n const ref = useMergeRefs(setTarget, forwardedRef)\n\n return (\n <Slot\n ref={ref}\n {...rest}\n >\n {children}\n </Slot>\n )\n }\n)\n"],"names":["AutoFocus","forwardRef","children","when","rest","forwardedRef","target","setTarget","useState","useIsomorphicLayoutEffect","focus","ref","useMergeRefs","React","createElement","Slot","Object","assign"],"mappings":";;;;;AAWA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;MACaA,SAAS,gBAAGC,UAAU,CACjC,SAASD,SAASA,CAAC;EAAEE,QAAQ;AAAEC,EAAAA,IAAI,GAAG,IAAI;EAAE,GAAGC
|
|
1
|
+
{"version":3,"file":"AutoFocus.mjs","sources":["../../../../src/components/AutoFocus/AutoFocus.tsx"],"sourcesContent":["'use client'\n\nimport React, { forwardRef, useState } from 'react'\n\nimport { Slot } from '@radix-ui/react-slot'\n\nimport { useIsomorphicLayoutEffect } from '~/src/hooks/useIsomorphicLayoutEffect'\nimport useMergeRefs from '~/src/hooks/useMergeRefs'\n\nimport { type AutoFocusProps } from './AutoFocus.types'\n\n/**\n * `AutoFocus` is a component that automatically focuses its child element when they are added to the document.\n * It is useful when you want to focus on a specific element when the component is mounted.\n * It doesn't render any DOM node.\n * @example\n *\n * ```tsx\n * <AutoFocus>\n * <button>Close</button>\n * </AutoFocus>\n *\n * // You can also use it with the additional condition\n * <AutoFocus when={condition}>\n * <button>Close</button>\n * </AutoFocus>\n * ```\n */\nexport const AutoFocus = forwardRef<HTMLElement, AutoFocusProps>(\n function AutoFocus({ children, when = true, ...rest }, forwardedRef) {\n const [target, setTarget] = useState<HTMLElement | null>(null)\n\n useIsomorphicLayoutEffect(\n function focus() {\n if (target && when) {\n target.focus()\n }\n },\n [target, when]\n )\n\n const ref = useMergeRefs(setTarget, forwardedRef)\n\n return (\n <Slot\n ref={ref}\n {...rest}\n >\n {children}\n </Slot>\n )\n }\n)\n"],"names":["AutoFocus","forwardRef","children","when","rest","forwardedRef","target","setTarget","useState","useIsomorphicLayoutEffect","focus","ref","useMergeRefs","React","createElement","Slot","Object","assign"],"mappings":";;;;;AAWA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;MACaA,SAAS,gBAAGC,UAAU,CACjC,SAASD,SAASA,CAAC;EAAEE,QAAQ;AAAEC,EAAAA,IAAI,GAAG,IAAI;EAAE,GAAGC;AAAK,CAAC,EAAEC,YAAY,EAAE;EACnE,MAAM,CAACC,MAAM,EAAEC,SAAS,CAAC,GAAGC,QAAQ,CAAqB,IAAI,CAAC;AAE9DC,EAAAA,yBAAyB,CACvB,SAASC,KAAKA,GAAG;IACf,IAAIJ,MAAM,IAAIH,IAAI,EAAE;MAClBG,MAAM,CAACI,KAAK,EAAE;AAChB;AACF,GAAC,EACD,CAACJ,MAAM,EAAEH,IAAI,CACf,CAAC;AAED,EAAA,MAAMQ,GAAG,GAAGC,YAAY,CAACL,SAAS,EAAEF,YAAY,CAAC;EAEjD,oBACEQ,cAAA,CAAAC,aAAA,CAACC,yCAAI,EAAAC,MAAA,CAAAC,MAAA,CAAA;AACHN,IAAAA,GAAG,EAAEA;GACDP,EAAAA,IAAI,CAEPF,EAAAA,QACG,CAAC;AAEX,CACF;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Avatar.mjs","sources":["../../../../src/components/Avatar/Avatar.tsx"],"sourcesContent":["'use client'\n\nimport React, { forwardRef, useMemo } from 'react'\n\nimport classNames from 'classnames'\n\nimport { isEmpty } from '~/src/utils/type'\n\nimport {\n SmoothCornersBox,\n type SmoothCornersBoxProps,\n} from '~/src/components/SmoothCornersBox'\nimport { Status, type StatusSize } from '~/src/components/Status'\nimport { useTokens } from '~/src/components/ThemeProvider'\n\nimport type { AvatarProps } from './Avatar.types'\nimport defaultAvatarUrl from './assets/default-avatar.svg'\nimport useProgressiveImage from './useProgressiveImage'\n\nimport styles from './Avatar.module.scss'\n\nconst shadow: SmoothCornersBoxProps['shadow'] = {\n spreadRadius: 2,\n color: 'bg-white-high',\n}\n\nexport function useAvatarRadiusToken() {\n return useTokens().global.radius['radius-42-p']\n}\n\nexport const AVATAR_WRAPPER_TEST_ID = 'bezier-avatar-wrapper'\nexport const AVATAR_TEST_ID = 'bezier-avatar'\nexport const STATUS_WRAPPER_TEST_ID = 'bezier-status-wrapper'\n\n/**\n * `Avatar` is a component for representing some profile image.\n * @example\n *\n * ```tsx\n * <Avatar\n * avatarUrl=\"https://...\"\n * name=\"channel\"\n * size=\"48\"\n * showBorder\n * disabled\n * />\n * ```\n */\nexport const Avatar = forwardRef<HTMLDivElement, AvatarProps>(function Avatar(\n {\n avatarUrl = '',\n fallbackUrl = defaultAvatarUrl,\n size = '24',\n name,\n disabled = false,\n showBorder = false,\n smoothCorners = true,\n status,\n className,\n children,\n ...rest\n },\n forwardedRef\n) {\n const loadedAvatarUrl = useProgressiveImage(avatarUrl, fallbackUrl)\n const AVATAR_BORDER_RADIUS = useAvatarRadiusToken()\n\n const StatusComponent = useMemo(() => {\n if (\n (isEmpty(children) && !status) ||\n (children && !React.isValidElement(children))\n ) {\n return null\n }\n\n const statusSize: StatusSize = (() => {\n switch (size) {\n case '90':\n case '120':\n return 'l'\n default:\n return 'm'\n }\n })()\n\n const Contents = (() => {\n if (children) {\n return children\n }\n if (status) {\n return (\n <Status\n type={status}\n size={statusSize}\n />\n )\n }\n return null\n })()\n\n return (\n Contents && (\n <div\n className={styles.StatusWrapper}\n data-testid={STATUS_WRAPPER_TEST_ID}\n >\n {Contents}\n </div>\n )\n )\n }, [status, size, children])\n\n return (\n <div\n className={classNames(\n styles.Avatar,\n styles[`size-${size}`],\n disabled && styles.disabled,\n className\n )}\n data-disabled={disabled}\n data-testid={AVATAR_WRAPPER_TEST_ID}\n {...rest}\n >\n <SmoothCornersBox\n ref={forwardedRef}\n aria-description={name}\n className={classNames(\n styles.AvatarImage,\n Number(size) >= 72 && styles['big-size'],\n showBorder && styles.bordered\n )}\n disabled={!smoothCorners}\n borderRadius={AVATAR_BORDER_RADIUS}\n shadow={showBorder ? shadow : undefined}\n backgroundColor=\"bg-white-normal\"\n backgroundImage={loadedAvatarUrl}\n data-testid={AVATAR_TEST_ID}\n >\n {StatusComponent}\n </SmoothCornersBox>\n </div>\n )\n})\n"],"names":["shadow","spreadRadius","color","useAvatarRadiusToken","useTokens","global","radius","AVATAR_WRAPPER_TEST_ID","AVATAR_TEST_ID","STATUS_WRAPPER_TEST_ID","Avatar","forwardRef","avatarUrl","fallbackUrl","defaultAvatarUrl","size","name","disabled","showBorder","smoothCorners","status","className","children","rest","forwardedRef","loadedAvatarUrl","useProgressiveImage","AVATAR_BORDER_RADIUS","StatusComponent","useMemo","isEmpty","React","isValidElement","statusSize","Contents","createElement","Status","type","styles","StatusWrapper","Object","assign","classNames","SmoothCornersBox","ref","AvatarImage","Number","bordered","borderRadius","undefined","backgroundColor","backgroundImage"],"mappings":";;;;;;;;;;AAqBA,MAAMA,MAAuC,GAAG;AAC9CC,EAAAA,YAAY,EAAE,CAAC;AACfC,EAAAA,KAAK,EAAE
|
|
1
|
+
{"version":3,"file":"Avatar.mjs","sources":["../../../../src/components/Avatar/Avatar.tsx"],"sourcesContent":["'use client'\n\nimport React, { forwardRef, useMemo } from 'react'\n\nimport classNames from 'classnames'\n\nimport { isEmpty } from '~/src/utils/type'\n\nimport {\n SmoothCornersBox,\n type SmoothCornersBoxProps,\n} from '~/src/components/SmoothCornersBox'\nimport { Status, type StatusSize } from '~/src/components/Status'\nimport { useTokens } from '~/src/components/ThemeProvider'\n\nimport type { AvatarProps } from './Avatar.types'\nimport defaultAvatarUrl from './assets/default-avatar.svg'\nimport useProgressiveImage from './useProgressiveImage'\n\nimport styles from './Avatar.module.scss'\n\nconst shadow: SmoothCornersBoxProps['shadow'] = {\n spreadRadius: 2,\n color: 'bg-white-high',\n}\n\nexport function useAvatarRadiusToken() {\n return useTokens().global.radius['radius-42-p']\n}\n\nexport const AVATAR_WRAPPER_TEST_ID = 'bezier-avatar-wrapper'\nexport const AVATAR_TEST_ID = 'bezier-avatar'\nexport const STATUS_WRAPPER_TEST_ID = 'bezier-status-wrapper'\n\n/**\n * `Avatar` is a component for representing some profile image.\n * @example\n *\n * ```tsx\n * <Avatar\n * avatarUrl=\"https://...\"\n * name=\"channel\"\n * size=\"48\"\n * showBorder\n * disabled\n * />\n * ```\n */\nexport const Avatar = forwardRef<HTMLDivElement, AvatarProps>(function Avatar(\n {\n avatarUrl = '',\n fallbackUrl = defaultAvatarUrl,\n size = '24',\n name,\n disabled = false,\n showBorder = false,\n smoothCorners = true,\n status,\n className,\n children,\n ...rest\n },\n forwardedRef\n) {\n const loadedAvatarUrl = useProgressiveImage(avatarUrl, fallbackUrl)\n const AVATAR_BORDER_RADIUS = useAvatarRadiusToken()\n\n const StatusComponent = useMemo(() => {\n if (\n (isEmpty(children) && !status) ||\n (children && !React.isValidElement(children))\n ) {\n return null\n }\n\n const statusSize: StatusSize = (() => {\n switch (size) {\n case '90':\n case '120':\n return 'l'\n default:\n return 'm'\n }\n })()\n\n const Contents = (() => {\n if (children) {\n return children\n }\n if (status) {\n return (\n <Status\n type={status}\n size={statusSize}\n />\n )\n }\n return null\n })()\n\n return (\n Contents && (\n <div\n className={styles.StatusWrapper}\n data-testid={STATUS_WRAPPER_TEST_ID}\n >\n {Contents}\n </div>\n )\n )\n }, [status, size, children])\n\n return (\n <div\n className={classNames(\n styles.Avatar,\n styles[`size-${size}`],\n disabled && styles.disabled,\n className\n )}\n data-disabled={disabled}\n data-testid={AVATAR_WRAPPER_TEST_ID}\n {...rest}\n >\n <SmoothCornersBox\n ref={forwardedRef}\n aria-description={name}\n className={classNames(\n styles.AvatarImage,\n Number(size) >= 72 && styles['big-size'],\n showBorder && styles.bordered\n )}\n disabled={!smoothCorners}\n borderRadius={AVATAR_BORDER_RADIUS}\n shadow={showBorder ? shadow : undefined}\n backgroundColor=\"bg-white-normal\"\n backgroundImage={loadedAvatarUrl}\n data-testid={AVATAR_TEST_ID}\n >\n {StatusComponent}\n </SmoothCornersBox>\n </div>\n )\n})\n"],"names":["shadow","spreadRadius","color","useAvatarRadiusToken","useTokens","global","radius","AVATAR_WRAPPER_TEST_ID","AVATAR_TEST_ID","STATUS_WRAPPER_TEST_ID","Avatar","forwardRef","avatarUrl","fallbackUrl","defaultAvatarUrl","size","name","disabled","showBorder","smoothCorners","status","className","children","rest","forwardedRef","loadedAvatarUrl","useProgressiveImage","AVATAR_BORDER_RADIUS","StatusComponent","useMemo","isEmpty","React","isValidElement","statusSize","Contents","createElement","Status","type","styles","StatusWrapper","Object","assign","classNames","SmoothCornersBox","ref","AvatarImage","Number","bordered","borderRadius","undefined","backgroundColor","backgroundImage"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useProgressiveImage.mjs","sources":["../../../../src/components/Avatar/useProgressiveImage.ts"],"sourcesContent":["import { useEffect, useState } from 'react'\n\nenum ImageEventType {\n Load = 'load',\n Error = 'error',\n}\n\nexport interface CachedImage {\n src: string\n isLoaded: boolean\n}\n\ntype ImageCacheMap = Map<string, CachedImage>\n\nconst defaultImageCache = new Map<string, CachedImage>()\n\nfunction getCachedImage(src: string, imageCache: ImageCacheMap) {\n const cachedImage = imageCache.get(src)\n if (!cachedImage) {\n return null\n }\n return cachedImage\n}\n\nexport default function useProgressiveImage(\n src: string,\n defaultSrc: string,\n imageCache: ImageCacheMap = defaultImageCache\n) {\n const [source, setSource] = useState<CachedImage | null>(() =>\n getCachedImage(src, imageCache)\n )\n\n useEffect(\n function updateSource() {\n if (source?.src === src) {\n return undefined\n }\n\n const cachedImage = getCachedImage(src, imageCache)\n\n if (cachedImage?.isLoaded) {\n setSource(cachedImage)\n return undefined\n }\n\n const image = new Image()\n image.src = src\n\n function loadImage(event: Event) {\n const loadedImage = {\n src,\n isLoaded: event.type === ImageEventType.Load,\n }\n setSource(loadedImage)\n imageCache.set(src, loadedImage)\n }\n\n image.addEventListener(ImageEventType.Load, loadImage)\n image.addEventListener(ImageEventType.Error, loadImage)\n\n return function cleanup() {\n image.removeEventListener(ImageEventType.Load, loadImage)\n image.removeEventListener(ImageEventType.Error, loadImage)\n }\n },\n [src, source, imageCache]\n )\n\n if (!source || !source.isLoaded) {\n return defaultSrc\n }\n\n return source.src\n}\n"],"names":["ImageEventType","defaultImageCache","Map","getCachedImage","src","imageCache","cachedImage","get","useProgressiveImage","defaultSrc","source","setSource","useState","useEffect","updateSource","undefined","isLoaded","image","Image","loadImage","event","loadedImage","type","Load","set","addEventListener","Error","cleanup","removeEventListener"],"mappings":";;AAA2C,IAEtCA,cAAc,0BAAdA,cAAc,EAAA;EAAdA,cAAc,CAAA,MAAA,CAAA,GAAA,MAAA
|
|
1
|
+
{"version":3,"file":"useProgressiveImage.mjs","sources":["../../../../src/components/Avatar/useProgressiveImage.ts"],"sourcesContent":["import { useEffect, useState } from 'react'\n\nenum ImageEventType {\n Load = 'load',\n Error = 'error',\n}\n\nexport interface CachedImage {\n src: string\n isLoaded: boolean\n}\n\ntype ImageCacheMap = Map<string, CachedImage>\n\nconst defaultImageCache = new Map<string, CachedImage>()\n\nfunction getCachedImage(src: string, imageCache: ImageCacheMap) {\n const cachedImage = imageCache.get(src)\n if (!cachedImage) {\n return null\n }\n return cachedImage\n}\n\nexport default function useProgressiveImage(\n src: string,\n defaultSrc: string,\n imageCache: ImageCacheMap = defaultImageCache\n) {\n const [source, setSource] = useState<CachedImage | null>(() =>\n getCachedImage(src, imageCache)\n )\n\n useEffect(\n function updateSource() {\n if (source?.src === src) {\n return undefined\n }\n\n const cachedImage = getCachedImage(src, imageCache)\n\n if (cachedImage?.isLoaded) {\n setSource(cachedImage)\n return undefined\n }\n\n const image = new Image()\n image.src = src\n\n function loadImage(event: Event) {\n const loadedImage = {\n src,\n isLoaded: event.type === ImageEventType.Load,\n }\n setSource(loadedImage)\n imageCache.set(src, loadedImage)\n }\n\n image.addEventListener(ImageEventType.Load, loadImage)\n image.addEventListener(ImageEventType.Error, loadImage)\n\n return function cleanup() {\n image.removeEventListener(ImageEventType.Load, loadImage)\n image.removeEventListener(ImageEventType.Error, loadImage)\n }\n },\n [src, source, imageCache]\n )\n\n if (!source || !source.isLoaded) {\n return defaultSrc\n }\n\n return source.src\n}\n"],"names":["ImageEventType","defaultImageCache","Map","getCachedImage","src","imageCache","cachedImage","get","useProgressiveImage","defaultSrc","source","setSource","useState","useEffect","updateSource","undefined","isLoaded","image","Image","loadImage","event","loadedImage","type","Load","set","addEventListener","Error","cleanup","removeEventListener"],"mappings":";;AAA2C,IAEtCA,cAAc,0BAAdA,cAAc,EAAA;EAAdA,cAAc,CAAA,MAAA,CAAA,GAAA,MAAA;EAAdA,cAAc,CAAA,OAAA,CAAA,GAAA,OAAA;AAAA,EAAA,OAAdA,cAAc;AAAA,CAAA,CAAdA,cAAc,IAAA,EAAA,CAAA;AAYnB,MAAMC,iBAAiB,GAAG,IAAIC,GAAG,EAAuB;AAExD,SAASC,cAAcA,CAACC,GAAW,EAAEC,UAAyB,EAAE;AAC9D,EAAA,MAAMC,WAAW,GAAGD,UAAU,CAACE,GAAG,CAACH,GAAG,CAAC;EACvC,IAAI,CAACE,WAAW,EAAE;AAChB,IAAA,OAAO,IAAI;AACb;AACA,EAAA,OAAOA,WAAW;AACpB;AAEe,SAASE,mBAAmBA,CACzCJ,GAAW,EACXK,UAAkB,EAClBJ,UAAyB,GAAGJ,iBAAiB,EAC7C;AACA,EAAA,MAAM,CAACS,MAAM,EAAEC,SAAS,CAAC,GAAGC,QAAQ,CAAqB,MACvDT,cAAc,CAACC,GAAG,EAAEC,UAAU,CAChC,CAAC;AAEDQ,EAAAA,SAAS,CACP,SAASC,YAAYA,GAAG;IACtB,IAAI,CAAAJ,MAAM,KAAA,IAAA,IAANA,MAAM,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAANA,MAAM,CAAEN,GAAG,MAAKA,GAAG,EAAE;AACvB,MAAA,OAAOW,SAAS;AAClB;AAEA,IAAA,MAAMT,WAAW,GAAGH,cAAc,CAACC,GAAG,EAAEC,UAAU,CAAC;AAEnD,IAAA,IAAIC,WAAW,KAAXA,IAAAA,IAAAA,WAAW,eAAXA,WAAW,CAAEU,QAAQ,EAAE;MACzBL,SAAS,CAACL,WAAW,CAAC;AACtB,MAAA,OAAOS,SAAS;AAClB;AAEA,IAAA,MAAME,KAAK,GAAG,IAAIC,KAAK,EAAE;IACzBD,KAAK,CAACb,GAAG,GAAGA,GAAG;IAEf,SAASe,SAASA,CAACC,KAAY,EAAE;AAC/B,MAAA,MAAMC,WAAW,GAAG;QAClBjB,GAAG;AACHY,QAAAA,QAAQ,EAAEI,KAAK,CAACE,IAAI,KAAKtB,cAAc,CAACuB;OACzC;MACDZ,SAAS,CAACU,WAAW,CAAC;AACtBhB,MAAAA,UAAU,CAACmB,GAAG,CAACpB,GAAG,EAAEiB,WAAW,CAAC;AAClC;IAEAJ,KAAK,CAACQ,gBAAgB,CAACzB,cAAc,CAACuB,IAAI,EAAEJ,SAAS,CAAC;IACtDF,KAAK,CAACQ,gBAAgB,CAACzB,cAAc,CAAC0B,KAAK,EAAEP,SAAS,CAAC;IAEvD,OAAO,SAASQ,OAAOA,GAAG;MACxBV,KAAK,CAACW,mBAAmB,CAAC5B,cAAc,CAACuB,IAAI,EAAEJ,SAAS,CAAC;MACzDF,KAAK,CAACW,mBAAmB,CAAC5B,cAAc,CAAC0B,KAAK,EAAEP,SAAS,CAAC;KAC3D;GACF,EACD,CAACf,GAAG,EAAEM,MAAM,EAAEL,UAAU,CAC1B,CAAC;AAED,EAAA,IAAI,CAACK,MAAM,IAAI,CAACA,MAAM,CAACM,QAAQ,EAAE;AAC/B,IAAA,OAAOP,UAAU;AACnB;EAEA,OAAOC,MAAM,CAACN,GAAG;AACnB;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AvatarGroup.mjs","sources":["../../../../src/components/AvatarGroup/AvatarGroup.tsx"],"sourcesContent":["'use client' \n\nimport React, { forwardRef, useCallback, useMemo } from 'react'\n\nimport { MoreIcon } from '@channel.io/bezier-icons'\nimport classNames from 'classnames'\n\nimport { isLastIndex } from '~/src/utils/array'\nimport { px } from '~/src/utils/style'\n\nimport {\n type AvatarProps,\n type AvatarSize,\n useAvatarRadiusToken,\n} from '~/src/components/Avatar'\nimport { Icon } from '~/src/components/Icon'\nimport { SmoothCornersBox } from '~/src/components/SmoothCornersBox'\nimport { Text } from '~/src/components/Text'\n\nimport { type AvatarGroupProps } from './AvatarGroup.types'\n\nimport styles from './AvatarGroup.module.scss'\n\nconst MAX_AVATAR_LIST_COUNT = 99\nconst AVATAR_GROUP_DEFAULT_SPACING = 4\nexport const AVATAR_GROUP_ELLIPSIS_ICON_TEST_ID =\n 'bezier-avatar-group-ellipsis-icon'\n\nfunction getRestAvatarListCountText(count: number, max: number) {\n const restCount = count - max\n return `+${restCount > MAX_AVATAR_LIST_COUNT ? MAX_AVATAR_LIST_COUNT : restCount}`\n}\n\n// TODO: Not specified\nfunction getProperIconSize(avatarSize: AvatarSize) {\n return (\n {\n 20: 'xxs',\n 24: 'xs',\n 30: 's',\n 36: 'm',\n 42: 'm',\n 48: 'l',\n 72: 'l',\n 90: 'l',\n 120: 'l',\n } as const\n )[avatarSize]\n}\n\n// TODO: Not specified\nfunction getProperTypoSize(avatarSize: AvatarSize) {\n return (\n {\n 20: '12',\n 24: '13',\n 30: '15',\n 36: '16',\n 42: '18',\n 48: '24',\n 72: '24',\n 90: '24',\n 120: '24',\n } as const\n )[avatarSize]\n}\n\n/**\n * `AvatarGroup` is a component for grouping `Avatar` components\n * @example\n *\n * ```tsx\n * <AvatarGroup\n * max={2}\n * spacing={4}\n * ellipsisType=\"icon\"\n * >\n * <Avatar />\n * <Avatar />\n * <Avatar />\n * </AvatarGroup>\n * ```\n */\nexport const AvatarGroup = forwardRef<HTMLDivElement, AvatarGroupProps>(\n function AvatarGroup(\n {\n max,\n size = '24',\n spacing = AVATAR_GROUP_DEFAULT_SPACING,\n ellipsisType = 'icon',\n onMouseEnterEllipsis,\n onMouseLeaveEllipsis,\n style,\n className,\n children,\n ...rest\n },\n forwardedRef\n ) {\n const AVATAR_BORDER_RADIUS = useAvatarRadiusToken()\n\n const renderAvatarElement = useCallback(\n (avatar: React.ReactElement<AvatarProps>, avatarListCount: number) => {\n const key =\n avatar.key ?? `${avatar.props.name}-${avatar.props.avatarUrl}`\n const shouldShowBorder = avatarListCount > 1 && spacing < 0\n const showBorder = avatar.props.showBorder || shouldShowBorder\n return React.cloneElement(avatar, { key, size, showBorder })\n },\n [size, spacing]\n )\n\n const avatarListCount = useMemo(\n () => React.Children.count(children),\n [children]\n )\n\n const AvatarListComponent = useMemo(() => {\n if (avatarListCount <= max) {\n return React.Children.map(\n children,\n (avatar) =>\n React.isValidElement<AvatarProps>(avatar) &&\n renderAvatarElement(avatar, avatarListCount)\n )\n }\n\n const sliceEndIndex = max - avatarListCount\n const slicedAvatarList = React.Children.toArray(children).slice(\n 0,\n sliceEndIndex\n )\n\n return slicedAvatarList.map((avatar, index, arr) => {\n if (!React.isValidElement<AvatarProps>(avatar)) {\n return null\n }\n\n const AvatarElement = renderAvatarElement(\n avatar,\n slicedAvatarList.length\n )\n\n if (!isLastIndex(arr, index)) {\n return AvatarElement\n }\n\n if (ellipsisType === 'icon') {\n return (\n <div\n key=\"ellipsis\"\n className={styles.AvatarEllipsisIconWrapper}\n onMouseEnter={onMouseEnterEllipsis}\n onMouseLeave={onMouseLeaveEllipsis}\n data-testid={AVATAR_GROUP_ELLIPSIS_ICON_TEST_ID}\n >\n <SmoothCornersBox\n borderRadius={AVATAR_BORDER_RADIUS}\n backgroundColor=\"bgtxt-absolute-black-lightest\"\n className={styles.AvatarEllipsisIcon}\n >\n <Icon\n source={MoreIcon}\n size={getProperIconSize(size)}\n color=\"bgtxt-absolute-white-dark\"\n />\n </SmoothCornersBox>\n {AvatarElement}\n </div>\n )\n }\n\n if (ellipsisType === 'count') {\n return (\n <React.Fragment key=\"ellipsis\">\n {AvatarElement}\n <div\n style={\n {\n '--b-avatar-group-ellipsis-ml': px(\n Math.max(spacing, AVATAR_GROUP_DEFAULT_SPACING)\n ),\n } as React.CSSProperties\n }\n className={classNames(\n styles.AvatarEllipsisCountWrapper,\n styles[`size-${size}`]\n )}\n onMouseEnter={onMouseEnterEllipsis}\n onMouseLeave={onMouseLeaveEllipsis}\n >\n <Text\n typo={getProperTypoSize(size)}\n color=\"txt-black-dark\"\n className={styles.AvatarEllipsisCount}\n >\n {getRestAvatarListCountText(avatarListCount, max)}\n </Text>\n </div>\n </React.Fragment>\n )\n }\n\n return null\n })\n }, [\n avatarListCount,\n max,\n children,\n renderAvatarElement,\n ellipsisType,\n onMouseEnterEllipsis,\n onMouseLeaveEllipsis,\n AVATAR_BORDER_RADIUS,\n size,\n spacing,\n ])\n\n return (\n <div\n role=\"group\"\n ref={forwardedRef}\n className={classNames(\n styles.AvatarGroup,\n styles[`size-${size}`],\n className\n )}\n style={\n {\n '--b-avatar-group-spacing': px(spacing),\n ...style,\n } as React.CSSProperties\n }\n {...rest}\n >\n {AvatarListComponent}\n </div>\n )\n }\n)\n"],"names":["MAX_AVATAR_LIST_COUNT","AVATAR_GROUP_DEFAULT_SPACING","AVATAR_GROUP_ELLIPSIS_ICON_TEST_ID","getRestAvatarListCountText","count","max","restCount","getProperIconSize","avatarSize","getProperTypoSize","AvatarGroup","forwardRef","size","spacing","ellipsisType","onMouseEnterEllipsis","onMouseLeaveEllipsis","style","className","children","rest","forwardedRef","AVATAR_BORDER_RADIUS","useAvatarRadiusToken","renderAvatarElement","useCallback","avatar","avatarListCount","_avatar$key","key","props","name","avatarUrl","shouldShowBorder","showBorder","React","cloneElement","useMemo","Children","AvatarListComponent","map","isValidElement","sliceEndIndex","slicedAvatarList","toArray","slice","index","arr","AvatarElement","length","isLastIndex","createElement","styles","AvatarEllipsisIconWrapper","onMouseEnter","onMouseLeave","SmoothCornersBox","borderRadius","backgroundColor","AvatarEllipsisIcon","Icon","source","MoreIcon","color","Fragment","px","Math","classNames","AvatarEllipsisCountWrapper","Text","typo","AvatarEllipsisCount","Object","assign","role","ref"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AvatarGroup.mjs","sources":["../../../../src/components/AvatarGroup/AvatarGroup.tsx"],"sourcesContent":["'use client' \n\nimport React, { forwardRef, useCallback, useMemo } from 'react'\n\nimport { MoreIcon } from '@channel.io/bezier-icons'\nimport classNames from 'classnames'\n\nimport { isLastIndex } from '~/src/utils/array'\nimport { px } from '~/src/utils/style'\n\nimport {\n type AvatarProps,\n type AvatarSize,\n useAvatarRadiusToken,\n} from '~/src/components/Avatar'\nimport { Icon } from '~/src/components/Icon'\nimport { SmoothCornersBox } from '~/src/components/SmoothCornersBox'\nimport { Text } from '~/src/components/Text'\n\nimport { type AvatarGroupProps } from './AvatarGroup.types'\n\nimport styles from './AvatarGroup.module.scss'\n\nconst MAX_AVATAR_LIST_COUNT = 99\nconst AVATAR_GROUP_DEFAULT_SPACING = 4\nexport const AVATAR_GROUP_ELLIPSIS_ICON_TEST_ID =\n 'bezier-avatar-group-ellipsis-icon'\n\nfunction getRestAvatarListCountText(count: number, max: number) {\n const restCount = count - max\n return `+${restCount > MAX_AVATAR_LIST_COUNT ? MAX_AVATAR_LIST_COUNT : restCount}`\n}\n\n// TODO: Not specified\nfunction getProperIconSize(avatarSize: AvatarSize) {\n return (\n {\n 20: 'xxs',\n 24: 'xs',\n 30: 's',\n 36: 'm',\n 42: 'm',\n 48: 'l',\n 72: 'l',\n 90: 'l',\n 120: 'l',\n } as const\n )[avatarSize]\n}\n\n// TODO: Not specified\nfunction getProperTypoSize(avatarSize: AvatarSize) {\n return (\n {\n 20: '12',\n 24: '13',\n 30: '15',\n 36: '16',\n 42: '18',\n 48: '24',\n 72: '24',\n 90: '24',\n 120: '24',\n } as const\n )[avatarSize]\n}\n\n/**\n * `AvatarGroup` is a component for grouping `Avatar` components\n * @example\n *\n * ```tsx\n * <AvatarGroup\n * max={2}\n * spacing={4}\n * ellipsisType=\"icon\"\n * >\n * <Avatar />\n * <Avatar />\n * <Avatar />\n * </AvatarGroup>\n * ```\n */\nexport const AvatarGroup = forwardRef<HTMLDivElement, AvatarGroupProps>(\n function AvatarGroup(\n {\n max,\n size = '24',\n spacing = AVATAR_GROUP_DEFAULT_SPACING,\n ellipsisType = 'icon',\n onMouseEnterEllipsis,\n onMouseLeaveEllipsis,\n style,\n className,\n children,\n ...rest\n },\n forwardedRef\n ) {\n const AVATAR_BORDER_RADIUS = useAvatarRadiusToken()\n\n const renderAvatarElement = useCallback(\n (avatar: React.ReactElement<AvatarProps>, avatarListCount: number) => {\n const key =\n avatar.key ?? `${avatar.props.name}-${avatar.props.avatarUrl}`\n const shouldShowBorder = avatarListCount > 1 && spacing < 0\n const showBorder = avatar.props.showBorder || shouldShowBorder\n return React.cloneElement(avatar, { key, size, showBorder })\n },\n [size, spacing]\n )\n\n const avatarListCount = useMemo(\n () => React.Children.count(children),\n [children]\n )\n\n const AvatarListComponent = useMemo(() => {\n if (avatarListCount <= max) {\n return React.Children.map(\n children,\n (avatar) =>\n React.isValidElement<AvatarProps>(avatar) &&\n renderAvatarElement(avatar, avatarListCount)\n )\n }\n\n const sliceEndIndex = max - avatarListCount\n const slicedAvatarList = React.Children.toArray(children).slice(\n 0,\n sliceEndIndex\n )\n\n return slicedAvatarList.map((avatar, index, arr) => {\n if (!React.isValidElement<AvatarProps>(avatar)) {\n return null\n }\n\n const AvatarElement = renderAvatarElement(\n avatar,\n slicedAvatarList.length\n )\n\n if (!isLastIndex(arr, index)) {\n return AvatarElement\n }\n\n if (ellipsisType === 'icon') {\n return (\n <div\n key=\"ellipsis\"\n className={styles.AvatarEllipsisIconWrapper}\n onMouseEnter={onMouseEnterEllipsis}\n onMouseLeave={onMouseLeaveEllipsis}\n data-testid={AVATAR_GROUP_ELLIPSIS_ICON_TEST_ID}\n >\n <SmoothCornersBox\n borderRadius={AVATAR_BORDER_RADIUS}\n backgroundColor=\"bgtxt-absolute-black-lightest\"\n className={styles.AvatarEllipsisIcon}\n >\n <Icon\n source={MoreIcon}\n size={getProperIconSize(size)}\n color=\"bgtxt-absolute-white-dark\"\n />\n </SmoothCornersBox>\n {AvatarElement}\n </div>\n )\n }\n\n if (ellipsisType === 'count') {\n return (\n <React.Fragment key=\"ellipsis\">\n {AvatarElement}\n <div\n style={\n {\n '--b-avatar-group-ellipsis-ml': px(\n Math.max(spacing, AVATAR_GROUP_DEFAULT_SPACING)\n ),\n } as React.CSSProperties\n }\n className={classNames(\n styles.AvatarEllipsisCountWrapper,\n styles[`size-${size}`]\n )}\n onMouseEnter={onMouseEnterEllipsis}\n onMouseLeave={onMouseLeaveEllipsis}\n >\n <Text\n typo={getProperTypoSize(size)}\n color=\"txt-black-dark\"\n className={styles.AvatarEllipsisCount}\n >\n {getRestAvatarListCountText(avatarListCount, max)}\n </Text>\n </div>\n </React.Fragment>\n )\n }\n\n return null\n })\n }, [\n avatarListCount,\n max,\n children,\n renderAvatarElement,\n ellipsisType,\n onMouseEnterEllipsis,\n onMouseLeaveEllipsis,\n AVATAR_BORDER_RADIUS,\n size,\n spacing,\n ])\n\n return (\n <div\n role=\"group\"\n ref={forwardedRef}\n className={classNames(\n styles.AvatarGroup,\n styles[`size-${size}`],\n className\n )}\n style={\n {\n '--b-avatar-group-spacing': px(spacing),\n ...style,\n } as React.CSSProperties\n }\n {...rest}\n >\n {AvatarListComponent}\n </div>\n )\n }\n)\n"],"names":["MAX_AVATAR_LIST_COUNT","AVATAR_GROUP_DEFAULT_SPACING","AVATAR_GROUP_ELLIPSIS_ICON_TEST_ID","getRestAvatarListCountText","count","max","restCount","getProperIconSize","avatarSize","getProperTypoSize","AvatarGroup","forwardRef","size","spacing","ellipsisType","onMouseEnterEllipsis","onMouseLeaveEllipsis","style","className","children","rest","forwardedRef","AVATAR_BORDER_RADIUS","useAvatarRadiusToken","renderAvatarElement","useCallback","avatar","avatarListCount","_avatar$key","key","props","name","avatarUrl","shouldShowBorder","showBorder","React","cloneElement","useMemo","Children","AvatarListComponent","map","isValidElement","sliceEndIndex","slicedAvatarList","toArray","slice","index","arr","AvatarElement","length","isLastIndex","createElement","styles","AvatarEllipsisIconWrapper","onMouseEnter","onMouseLeave","SmoothCornersBox","borderRadius","backgroundColor","AvatarEllipsisIcon","Icon","source","MoreIcon","color","Fragment","px","Math","classNames","AvatarEllipsisCountWrapper","Text","typo","AvatarEllipsisCount","Object","assign","role","ref"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Badge.mjs","sources":["../../../../src/components/Badge/Badge.tsx"],"sourcesContent":["'use client' \n\nimport React, { forwardRef, memo } from 'react'\n\nimport { isEmpty } from '~/src/utils/type'\n\nimport { BaseTagBadge, BaseTagBadgeText } from '~/src/components/BaseTagBadge'\nimport { Icon } from '~/src/components/Icon'\n\nimport { type BadgeProps } from './Badge.types'\n\nexport const BADGE_TEST_ID = 'bezier-badge'\n\n/**\n * `Badge` is a component for representing badge, which consists of text and icon.\n * @example\n * ```tsx\n * <Badge\n * size=\"xs\"\n * variant=\"blue\"\n * icon={AppleIcon}\n * >\n * Beta\n * </Badge>\n * ```\n */\nexport const Badge = memo(\n forwardRef<HTMLDivElement, BadgeProps>(function Badge(\n { size = 'm', variant = 'default', icon, children, ...rest },\n forwardedRef\n ) {\n return (\n <BaseTagBadge\n ref={forwardedRef}\n size={size}\n variant={variant}\n data-testid={BADGE_TEST_ID}\n {...rest}\n >\n {icon && (\n <Icon\n source={icon}\n size=\"xs\"\n />\n )}\n\n {!isEmpty(children) && (\n <BaseTagBadgeText\n size={size}\n marginHorizontal={3}\n >\n {children}\n </BaseTagBadgeText>\n )}\n </BaseTagBadge>\n )\n })\n)\n"],"names":["BADGE_TEST_ID","Badge","memo","forwardRef","size","variant","icon","children","rest","forwardedRef","React","createElement","BaseTagBadge","Object","assign","ref","Icon","source","isEmpty","BaseTagBadgeText","marginHorizontal"],"mappings":";;;;;AAWO,MAAMA,aAAa,GAAG
|
|
1
|
+
{"version":3,"file":"Badge.mjs","sources":["../../../../src/components/Badge/Badge.tsx"],"sourcesContent":["'use client' \n\nimport React, { forwardRef, memo } from 'react'\n\nimport { isEmpty } from '~/src/utils/type'\n\nimport { BaseTagBadge, BaseTagBadgeText } from '~/src/components/BaseTagBadge'\nimport { Icon } from '~/src/components/Icon'\n\nimport { type BadgeProps } from './Badge.types'\n\nexport const BADGE_TEST_ID = 'bezier-badge'\n\n/**\n * `Badge` is a component for representing badge, which consists of text and icon.\n * @example\n * ```tsx\n * <Badge\n * size=\"xs\"\n * variant=\"blue\"\n * icon={AppleIcon}\n * >\n * Beta\n * </Badge>\n * ```\n */\nexport const Badge = memo(\n forwardRef<HTMLDivElement, BadgeProps>(function Badge(\n { size = 'm', variant = 'default', icon, children, ...rest },\n forwardedRef\n ) {\n return (\n <BaseTagBadge\n ref={forwardedRef}\n size={size}\n variant={variant}\n data-testid={BADGE_TEST_ID}\n {...rest}\n >\n {icon && (\n <Icon\n source={icon}\n size=\"xs\"\n />\n )}\n\n {!isEmpty(children) && (\n <BaseTagBadgeText\n size={size}\n marginHorizontal={3}\n >\n {children}\n </BaseTagBadgeText>\n )}\n </BaseTagBadge>\n )\n })\n)\n"],"names":["BADGE_TEST_ID","Badge","memo","forwardRef","size","variant","icon","children","rest","forwardedRef","React","createElement","BaseTagBadge","Object","assign","ref","Icon","source","isEmpty","BaseTagBadgeText","marginHorizontal"],"mappings":";;;;;AAWO,MAAMA,aAAa,GAAG;;AAE7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMC,KAAK,gBAAGC,IAAI,cACvBC,UAAU,CAA6B,SAASF,KAAKA,CACnD;AAAEG,EAAAA,IAAI,GAAG,GAAG;AAAEC,EAAAA,OAAO,GAAG,SAAS;EAAEC,IAAI;EAAEC,QAAQ;EAAE,GAAGC;AAAK,CAAC,EAC5DC,YAAY,EACZ;EACA,oBACEC,cAAA,CAAAC,aAAA,CAACC,YAAY,EAAAC,MAAA,CAAAC,MAAA,CAAA;AACXC,IAAAA,GAAG,EAAEN,YAAa;AAClBL,IAAAA,IAAI,EAAEA,IAAK;AACXC,IAAAA,OAAO,EAAEA,OAAQ;IACjB,aAAaL,EAAAA;GACTQ,EAAAA,IAAI,GAEPF,IAAI,iBACHI,cAAA,CAAAC,aAAA,CAACK,IAAI,EAAA;AACHC,IAAAA,MAAM,EAAEX,IAAK;AACbF,IAAAA,IAAI,EAAC;AAAI,GACV,CACF,EAEA,CAACc,OAAO,CAACX,QAAQ,CAAC,iBACjBG,cAAA,CAAAC,aAAA,CAACQ,gBAAgB,EAAA;AACff,IAAAA,IAAI,EAAEA,IAAK;AACXgB,IAAAA,gBAAgB,EAAE;GAEjBb,EAAAA,QACe,CAER,CAAC;AAEnB,CAAC,CACH;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Banner.mjs","sources":["../../../../src/components/Banner/Banner.tsx"],"sourcesContent":["'use client'\n\nimport React, { forwardRef } from 'react'\n\nimport { isBezierIcon } from '@channel.io/bezier-icons'\nimport classNames from 'classnames'\n\nimport { warn } from '~/src/utils/assert'\nimport { isNil } from '~/src/utils/type'\n\nimport { Button } from '~/src/components/Button'\nimport { Icon } from '~/src/components/Icon'\nimport { LegacyIcon, isIconName } from '~/src/components/LegacyIcon'\nimport { Text } from '~/src/components/Text'\n\nimport {\n type BannerProps,\n type BannerVariant,\n type RenderLinkFunc,\n} from './Banner.types'\n\nimport styles from './Banner.module.scss'\n\nconst BANNER_TEST_ID = 'bezier-banner'\n\nfunction getActionButtonColorVariant(variant: BannerVariant) {\n return (\n {\n default: 'monochrome-dark',\n blue: 'blue',\n cobalt: 'cobalt',\n green: 'green',\n orange: 'orange',\n red: 'red',\n alt: 'monochrome-dark',\n } as const\n )[variant]\n}\n\nconst externalLinkRenderer: RenderLinkFunc = ({ content, linkTo }) => (\n <a\n href={linkTo}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n >\n {content}\n </a>\n)\n\n/**\n * `Banner` is a component you use when you want to communicate instructions, warnings, recommendations, and other information well.\n * @example\n * ```tsx\n * <Banner\n * variant=\"blue\"\n * icon={LightbulbIcon}\n * content=\"Information here.\"\n * />\n * ```\n */\nexport const Banner = forwardRef<HTMLDivElement, BannerProps>(function Banner(\n {\n className,\n variant = 'default',\n icon,\n iconColor,\n content,\n hasLink = false,\n linkText,\n linkTo,\n renderLink = externalLinkRenderer,\n actionIcon,\n onClickAction,\n ...rest\n },\n forwardedRef\n) {\n if (isIconName(icon)) {\n warn(\n 'Deprecation: IconName as a value for the icon property of Banner has been deprecated. Use the Icon of bezier-icons instead.'\n )\n }\n\n return (\n <div\n ref={forwardedRef}\n className={classNames(\n styles.Banner,\n styles[`variant-${variant}`],\n className\n )}\n data-testid={BANNER_TEST_ID}\n {...rest}\n >\n {!isNil(icon) && (\n <div className={styles.Center}>\n {isBezierIcon(icon) ? (\n <Icon\n className={styles.Icon}\n source={icon}\n color={iconColor}\n size=\"s\"\n />\n ) : (\n <LegacyIcon\n className={styles.Icon}\n name={icon}\n color={iconColor}\n size=\"s\"\n />\n )}\n </div>\n )}\n\n <div className={styles.Content}>\n <Text typo=\"14\">\n {content}\n\n {hasLink &&\n renderLink({\n content: (\n <Text\n className={styles.Link}\n typo=\"14\"\n bold\n >\n {linkText}\n </Text>\n ),\n linkTo,\n })}\n </Text>\n </div>\n\n {!isNil(actionIcon) && (\n <div className={styles.Center}>\n <Button\n size=\"xs\"\n colorVariant={getActionButtonColorVariant(variant)}\n styleVariant=\"tertiary\"\n leftContent={actionIcon}\n onClick={onClickAction}\n />\n </div>\n )}\n </div>\n )\n})\n"],"names":["BANNER_TEST_ID","getActionButtonColorVariant","variant","default","blue","cobalt","green","orange","red","alt","externalLinkRenderer","content","linkTo","React","createElement","href","target","rel","Banner","forwardRef","className","icon","iconColor","hasLink","linkText","renderLink","actionIcon","onClickAction","rest","forwardedRef","isIconName","warn","Object","assign","ref","classNames","styles","isNil","Center","isBezierIcon","Icon","source","color","size","LegacyIcon","name","Content","Text","typo","Link","bold","Button","colorVariant","styleVariant","leftContent","onClick"],"mappings":";;;;;;;;;;;;AAuBA,MAAMA,cAAc,GAAG,eAAe
|
|
1
|
+
{"version":3,"file":"Banner.mjs","sources":["../../../../src/components/Banner/Banner.tsx"],"sourcesContent":["'use client'\n\nimport React, { forwardRef } from 'react'\n\nimport { isBezierIcon } from '@channel.io/bezier-icons'\nimport classNames from 'classnames'\n\nimport { warn } from '~/src/utils/assert'\nimport { isNil } from '~/src/utils/type'\n\nimport { Button } from '~/src/components/Button'\nimport { Icon } from '~/src/components/Icon'\nimport { LegacyIcon, isIconName } from '~/src/components/LegacyIcon'\nimport { Text } from '~/src/components/Text'\n\nimport {\n type BannerProps,\n type BannerVariant,\n type RenderLinkFunc,\n} from './Banner.types'\n\nimport styles from './Banner.module.scss'\n\nconst BANNER_TEST_ID = 'bezier-banner'\n\nfunction getActionButtonColorVariant(variant: BannerVariant) {\n return (\n {\n default: 'monochrome-dark',\n blue: 'blue',\n cobalt: 'cobalt',\n green: 'green',\n orange: 'orange',\n red: 'red',\n alt: 'monochrome-dark',\n } as const\n )[variant]\n}\n\nconst externalLinkRenderer: RenderLinkFunc = ({ content, linkTo }) => (\n <a\n href={linkTo}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n >\n {content}\n </a>\n)\n\n/**\n * `Banner` is a component you use when you want to communicate instructions, warnings, recommendations, and other information well.\n * @example\n * ```tsx\n * <Banner\n * variant=\"blue\"\n * icon={LightbulbIcon}\n * content=\"Information here.\"\n * />\n * ```\n */\nexport const Banner = forwardRef<HTMLDivElement, BannerProps>(function Banner(\n {\n className,\n variant = 'default',\n icon,\n iconColor,\n content,\n hasLink = false,\n linkText,\n linkTo,\n renderLink = externalLinkRenderer,\n actionIcon,\n onClickAction,\n ...rest\n },\n forwardedRef\n) {\n if (isIconName(icon)) {\n warn(\n 'Deprecation: IconName as a value for the icon property of Banner has been deprecated. Use the Icon of bezier-icons instead.'\n )\n }\n\n return (\n <div\n ref={forwardedRef}\n className={classNames(\n styles.Banner,\n styles[`variant-${variant}`],\n className\n )}\n data-testid={BANNER_TEST_ID}\n {...rest}\n >\n {!isNil(icon) && (\n <div className={styles.Center}>\n {isBezierIcon(icon) ? (\n <Icon\n className={styles.Icon}\n source={icon}\n color={iconColor}\n size=\"s\"\n />\n ) : (\n <LegacyIcon\n className={styles.Icon}\n name={icon}\n color={iconColor}\n size=\"s\"\n />\n )}\n </div>\n )}\n\n <div className={styles.Content}>\n <Text typo=\"14\">\n {content}\n\n {hasLink &&\n renderLink({\n content: (\n <Text\n className={styles.Link}\n typo=\"14\"\n bold\n >\n {linkText}\n </Text>\n ),\n linkTo,\n })}\n </Text>\n </div>\n\n {!isNil(actionIcon) && (\n <div className={styles.Center}>\n <Button\n size=\"xs\"\n colorVariant={getActionButtonColorVariant(variant)}\n styleVariant=\"tertiary\"\n leftContent={actionIcon}\n onClick={onClickAction}\n />\n </div>\n )}\n </div>\n )\n})\n"],"names":["BANNER_TEST_ID","getActionButtonColorVariant","variant","default","blue","cobalt","green","orange","red","alt","externalLinkRenderer","content","linkTo","React","createElement","href","target","rel","Banner","forwardRef","className","icon","iconColor","hasLink","linkText","renderLink","actionIcon","onClickAction","rest","forwardedRef","isIconName","warn","Object","assign","ref","classNames","styles","isNil","Center","isBezierIcon","Icon","source","color","size","LegacyIcon","name","Content","Text","typo","Link","bold","Button","colorVariant","styleVariant","leftContent","onClick"],"mappings":";;;;;;;;;;;;AAuBA,MAAMA,cAAc,GAAG,eAAe;AAEtC,SAASC,2BAA2BA,CAACC,OAAsB,EAAE;EAC3D,OACE;AACEC,IAAAA,OAAO,EAAE,iBAAiB;AAC1BC,IAAAA,IAAI,EAAE,MAAM;AACZC,IAAAA,MAAM,EAAE,QAAQ;AAChBC,IAAAA,KAAK,EAAE,OAAO;AACdC,IAAAA,MAAM,EAAE,QAAQ;AAChBC,IAAAA,GAAG,EAAE,KAAK;AACVC,IAAAA,GAAG,EAAE;GACN,CACDP,OAAO,CAAC;AACZ;AAEA,MAAMQ,oBAAoC,GAAGA,CAAC;EAAEC,OAAO;AAAEC,EAAAA;AAAO,CAAC,kBAC/DC,cAAA,CAAAC,aAAA,CAAA,GAAA,EAAA;AACEC,EAAAA,IAAI,EAAEH,MAAO;AACbI,EAAAA,MAAM,EAAC,QAAQ;AACfC,EAAAA,GAAG,EAAC;AAAqB,CAAA,EAExBN,OACA,CACJ;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;MACaO,MAAM,gBAAGC,UAAU,CAA8B,SAASD,MAAMA,CAC3E;EACEE,SAAS;AACTlB,EAAAA,OAAO,GAAG,SAAS;EACnBmB,IAAI;EACJC,SAAS;EACTX,OAAO;AACPY,EAAAA,OAAO,GAAG,KAAK;EACfC,QAAQ;EACRZ,MAAM;AACNa,EAAAA,UAAU,GAAGf,oBAAoB;EACjCgB,UAAU;EACVC,aAAa;EACb,GAAGC;AACL,CAAC,EACDC,YAAY,EACZ;AACA,EAAA,IAAIC,UAAU,CAACT,IAAI,CAAC,EAAE;IACpBU,IAAI,CACF,6HACF,CAAC;AACH;AAEA,EAAA,oBACElB,cAAA,CAAAC,aAAA,CAAAkB,KAAAA,EAAAA,MAAA,CAAAC,MAAA,CAAA;AACEC,IAAAA,GAAG,EAAEL,YAAa;AAClBT,IAAAA,SAAS,EAAEe,UAAU,CACnBC,MAAM,CAAClB,MAAM,EACbkB,MAAM,CAAC,WAAWlC,OAAO,CAAA,CAAE,CAAC,EAC5BkB,SACF,CAAE;IACF,aAAapB,EAAAA;GACT4B,EAAAA,IAAI,CAEP,EAAA,CAACS,KAAK,CAAChB,IAAI,CAAC,iBACXR,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;IAAKM,SAAS,EAAEgB,MAAM,CAACE;GACpBC,EAAAA,YAAY,CAAClB,IAAI,CAAC,gBACjBR,cAAA,CAAAC,aAAA,CAAC0B,IAAI,EAAA;IACHpB,SAAS,EAAEgB,MAAM,CAACI,IAAK;AACvBC,IAAAA,MAAM,EAAEpB,IAAK;AACbqB,IAAAA,KAAK,EAAEpB,SAAU;AACjBqB,IAAAA,IAAI,EAAC;AAAG,GACT,CAAC,gBAEF9B,cAAA,CAAAC,aAAA,CAAC8B,UAAU,EAAA;IACTxB,SAAS,EAAEgB,MAAM,CAACI,IAAK;AACvBK,IAAAA,IAAI,EAAExB,IAAK;AACXqB,IAAAA,KAAK,EAAEpB,SAAU;AACjBqB,IAAAA,IAAI,EAAC;AAAG,GACT,CAEA,CACN,eAED9B,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;IAAKM,SAAS,EAAEgB,MAAM,CAACU;AAAQ,GAAA,eAC7BjC,cAAA,CAAAC,aAAA,CAACiC,IAAI,EAAA;AAACC,IAAAA,IAAI,EAAC;AAAI,GAAA,EACZrC,OAAO,EAEPY,OAAO,IACNE,UAAU,CAAC;AACTd,IAAAA,OAAO,eACLE,cAAA,CAAAC,aAAA,CAACiC,IAAI,EAAA;MACH3B,SAAS,EAAEgB,MAAM,CAACa,IAAK;AACvBD,MAAAA,IAAI,EAAC,IAAI;MACTE,IAAI,EAAA;AAAA,KAAA,EAEH1B,QACG,CACP;AACDZ,IAAAA;AACF,GAAC,CACC,CACH,CAAC,EAEL,CAACyB,KAAK,CAACX,UAAU,CAAC,iBACjBb,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;IAAKM,SAAS,EAAEgB,MAAM,CAACE;AAAO,GAAA,eAC5BzB,cAAA,CAAAC,aAAA,CAACqC,MAAM,EAAA;AACLR,IAAAA,IAAI,EAAC,IAAI;AACTS,IAAAA,YAAY,EAAEnD,2BAA2B,CAACC,OAAO,CAAE;AACnDmD,IAAAA,YAAY,EAAC,UAAU;AACvBC,IAAAA,WAAW,EAAE5B,UAAW;AACxB6B,IAAAA,OAAO,EAAE5B;GACV,CACE,CAEJ,CAAC;AAEV,CAAC;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseButton.mjs","sources":["../../../../src/components/BaseButton/BaseButton.tsx"],"sourcesContent":["'use client'\n\nimport React, { forwardRef } from 'react'\n\nimport classNames from 'classnames'\n\nimport { type BaseButtonProps } from './BaseButton.types'\n\nimport styles from './BaseButton.module.scss'\n\n/**\n * `BaseButton` is a reset-style button component with a focus ring, intended for internal use only.\n */\nexport const BaseButton = forwardRef<HTMLButtonElement, BaseButtonProps>(\n function BaseButton(\n { className, children, type = 'button', ...rest },\n forwardedRef\n ) {\n return (\n <button\n className={classNames(styles.BaseButton, className)}\n ref={forwardedRef}\n type={type}\n {...rest}\n >\n {children}\n </button>\n )\n }\n)\n"],"names":["BaseButton","forwardRef","className","children","type","rest","forwardedRef","React","createElement","Object","assign","classNames","styles","ref"],"mappings":";;;;AAUA;AACA;AACA;MACaA,UAAU,gBAAGC,UAAU,CAClC,SAASD,UAAUA,CACjB;EAAEE,SAAS;EAAEC,QAAQ;AAAEC,EAAAA,IAAI,GAAG,QAAQ;EAAE,GAAGC
|
|
1
|
+
{"version":3,"file":"BaseButton.mjs","sources":["../../../../src/components/BaseButton/BaseButton.tsx"],"sourcesContent":["'use client'\n\nimport React, { forwardRef } from 'react'\n\nimport classNames from 'classnames'\n\nimport { type BaseButtonProps } from './BaseButton.types'\n\nimport styles from './BaseButton.module.scss'\n\n/**\n * `BaseButton` is a reset-style button component with a focus ring, intended for internal use only.\n */\nexport const BaseButton = forwardRef<HTMLButtonElement, BaseButtonProps>(\n function BaseButton(\n { className, children, type = 'button', ...rest },\n forwardedRef\n ) {\n return (\n <button\n className={classNames(styles.BaseButton, className)}\n ref={forwardedRef}\n type={type}\n {...rest}\n >\n {children}\n </button>\n )\n }\n)\n"],"names":["BaseButton","forwardRef","className","children","type","rest","forwardedRef","React","createElement","Object","assign","classNames","styles","ref"],"mappings":";;;;AAUA;AACA;AACA;MACaA,UAAU,gBAAGC,UAAU,CAClC,SAASD,UAAUA,CACjB;EAAEE,SAAS;EAAEC,QAAQ;AAAEC,EAAAA,IAAI,GAAG,QAAQ;EAAE,GAAGC;AAAK,CAAC,EACjDC,YAAY,EACZ;AACA,EAAA,oBACEC,cAAA,CAAAC,aAAA,CAAAC,QAAAA,EAAAA,MAAA,CAAAC,MAAA,CAAA;IACER,SAAS,EAAES,UAAU,CAACC,MAAM,CAACZ,UAAU,EAAEE,SAAS,CAAE;AACpDW,IAAAA,GAAG,EAAEP,YAAa;AAClBF,IAAAA,IAAI,EAAEA;GACFC,EAAAA,IAAI,CAEPF,EAAAA,QACK,CAAC;AAEb,CACF;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseTagBadge.mjs","sources":["../../../../src/components/BaseTagBadge/BaseTagBadge.tsx"],"sourcesContent":["'use client'\n\nimport React, { forwardRef } from 'react'\n\nimport classNames from 'classnames'\n\nimport { Text } from '~/src/components/Text'\n\nimport {\n type BaseTagBadgeProps,\n type BaseTagBadgeSize,\n type BaseTagBadgeTextProps,\n} from './BaseTagBadge.types'\n\nimport styles from './BaseTagBadge.module.scss'\n\nfunction getProperTypo(size: BaseTagBadgeSize) {\n return (\n {\n xs: '11',\n s: '13',\n m: '14',\n l: '15',\n } as const\n )[size]\n}\n\n/**\n * `BaseTagBadge` is the component on which `Tag` and `Badge` components are based.\n */\nexport const BaseTagBadge = forwardRef<HTMLDivElement, BaseTagBadgeProps>(\n function Tag({ size, variant, children, className, ...rest }, forwardedRef) {\n return (\n <div\n ref={forwardedRef}\n className={classNames(\n styles.BaseTagBadge,\n styles[`size-${size}`],\n styles[`variant-${variant}`],\n className\n )}\n {...rest}\n >\n {children}\n </div>\n )\n }\n)\n\n/**\n * `BaseTagBadgeText` is the component on which `Tag` and `Badge` components are based.\n */\nexport const BaseTagBadgeText = forwardRef<\n HTMLDivElement,\n BaseTagBadgeTextProps\n>(function BaseTagBadgeText({ size, children, ...rest }, forwardedRef) {\n return (\n <Text\n typo={getProperTypo(size)}\n ref={forwardedRef}\n {...rest}\n >\n {children}\n </Text>\n )\n})\n"],"names":["getProperTypo","size","xs","s","m","l","BaseTagBadge","forwardRef","Tag","variant","children","className","rest","forwardedRef","React","createElement","Object","assign","ref","classNames","styles","BaseTagBadgeText","Text","typo"],"mappings":";;;;;AAgBA,SAASA,aAAaA,CAACC,IAAsB,EAAE;EAC7C,OACE;AACEC,IAAAA,EAAE,EAAE,IAAI;AACRC,IAAAA,CAAC,EAAE,IAAI;AACPC,IAAAA,CAAC,EAAE,IAAI;AACPC,IAAAA,CAAC,EAAE
|
|
1
|
+
{"version":3,"file":"BaseTagBadge.mjs","sources":["../../../../src/components/BaseTagBadge/BaseTagBadge.tsx"],"sourcesContent":["'use client'\n\nimport React, { forwardRef } from 'react'\n\nimport classNames from 'classnames'\n\nimport { Text } from '~/src/components/Text'\n\nimport {\n type BaseTagBadgeProps,\n type BaseTagBadgeSize,\n type BaseTagBadgeTextProps,\n} from './BaseTagBadge.types'\n\nimport styles from './BaseTagBadge.module.scss'\n\nfunction getProperTypo(size: BaseTagBadgeSize) {\n return (\n {\n xs: '11',\n s: '13',\n m: '14',\n l: '15',\n } as const\n )[size]\n}\n\n/**\n * `BaseTagBadge` is the component on which `Tag` and `Badge` components are based.\n */\nexport const BaseTagBadge = forwardRef<HTMLDivElement, BaseTagBadgeProps>(\n function Tag({ size, variant, children, className, ...rest }, forwardedRef) {\n return (\n <div\n ref={forwardedRef}\n className={classNames(\n styles.BaseTagBadge,\n styles[`size-${size}`],\n styles[`variant-${variant}`],\n className\n )}\n {...rest}\n >\n {children}\n </div>\n )\n }\n)\n\n/**\n * `BaseTagBadgeText` is the component on which `Tag` and `Badge` components are based.\n */\nexport const BaseTagBadgeText = forwardRef<\n HTMLDivElement,\n BaseTagBadgeTextProps\n>(function BaseTagBadgeText({ size, children, ...rest }, forwardedRef) {\n return (\n <Text\n typo={getProperTypo(size)}\n ref={forwardedRef}\n {...rest}\n >\n {children}\n </Text>\n )\n})\n"],"names":["getProperTypo","size","xs","s","m","l","BaseTagBadge","forwardRef","Tag","variant","children","className","rest","forwardedRef","React","createElement","Object","assign","ref","classNames","styles","BaseTagBadgeText","Text","typo"],"mappings":";;;;;AAgBA,SAASA,aAAaA,CAACC,IAAsB,EAAE;EAC7C,OACE;AACEC,IAAAA,EAAE,EAAE,IAAI;AACRC,IAAAA,CAAC,EAAE,IAAI;AACPC,IAAAA,CAAC,EAAE,IAAI;AACPC,IAAAA,CAAC,EAAE;GACJ,CACDJ,IAAI,CAAC;AACT;;AAEA;AACA;AACA;MACaK,YAAY,gBAAGC,UAAU,CACpC,SAASC,GAAGA,CAAC;EAAEP,IAAI;EAAEQ,OAAO;EAAEC,QAAQ;EAAEC,SAAS;EAAE,GAAGC;AAAK,CAAC,EAAEC,YAAY,EAAE;AAC1E,EAAA,oBACEC,cAAA,CAAAC,aAAA,CAAAC,KAAAA,EAAAA,MAAA,CAAAC,MAAA,CAAA;AACEC,IAAAA,GAAG,EAAEL,YAAa;IAClBF,SAAS,EAAEQ,UAAU,CACnBC,MAAM,CAACd,YAAY,EACnBc,MAAM,CAAC,CAAA,KAAA,EAAQnB,IAAI,CAAE,CAAA,CAAC,EACtBmB,MAAM,CAAC,WAAWX,OAAO,CAAA,CAAE,CAAC,EAC5BE,SACF;GACIC,EAAAA,IAAI,CAEPF,EAAAA,QACE,CAAC;AAEV,CACF;;AAEA;AACA;AACA;MACaW,gBAAgB,gBAAGd,UAAU,CAGxC,SAASc,gBAAgBA,CAAC;EAAEpB,IAAI;EAAES,QAAQ;EAAE,GAAGE;AAAK,CAAC,EAAEC,YAAY,EAAE;EACrE,oBACEC,cAAA,CAAAC,aAAA,CAACO,IAAI,EAAAN,MAAA,CAAAC,MAAA,CAAA;AACHM,IAAAA,IAAI,EAAEvB,aAAa,CAACC,IAAI,CAAE;AAC1BiB,IAAAA,GAAG,EAAEL;GACDD,EAAAA,IAAI,CAEPF,EAAAA,QACG,CAAC;AAEX,CAAC;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Box.mjs","sources":["../../../../src/components/Box/Box.tsx"],"sourcesContent":["'use client'\n\nimport { createElement, forwardRef } from 'react'\n\nimport classNames from 'classnames'\n\nimport {\n getLayoutStyles,\n getMarginStyles,\n splitByLayoutProps,\n splitByMarginProps,\n} from '~/src/types/props-helpers'\n\nimport { type BoxProps } from './Box.types'\n\nimport styles from './Box.module.scss'\n\n/**\n * `Box` is a primitive layout component. It provides an easy way to access design tokens.\n * @example\n *\n * ```tsx\n * <Box\n * width=\"100px\"\n * height=\"100px\"\n * p=\"6px\"\n * m=\"6px\"\n * bgColor=\"bg-black-light\"\n * >\n * <div>{ ... }</div>\n * </Box>\n * ```\n */\nexport const Box = forwardRef<HTMLElement, BoxProps>(\n function Box(props, forwardedRef) {\n const [marginProps, marginRest] = splitByMarginProps(props)\n const [layoutProps, layoutRest] = splitByLayoutProps(marginRest)\n const marginStyles = getMarginStyles(marginProps)\n const layoutStyles = getLayoutStyles(layoutProps)\n\n const {\n children,\n style,\n className,\n as = 'div',\n display,\n ...rest\n } = layoutRest\n\n /**\n * NOTE: Using the createElement function directly because of a ref type related error.\n * TODO: Fix type error.\n */\n return createElement(\n as,\n {\n ref: forwardedRef,\n style: {\n ...marginStyles.style,\n ...layoutStyles.style,\n ...style,\n },\n className: classNames(\n styles.Box,\n display && styles[`display-${display}`],\n marginStyles.className,\n layoutStyles.className,\n className\n ),\n 'data-testid': 'bezier-box',\n ...rest,\n },\n children\n )\n }\n)\n"],"names":["Box","forwardRef","props","forwardedRef","marginProps","marginRest","splitByMarginProps","layoutProps","layoutRest","splitByLayoutProps","marginStyles","getMarginStyles","layoutStyles","getLayoutStyles","children","style","className","as","display","rest","createElement","ref","classNames","styles"],"mappings":";;;;;AAiBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMA,GAAG,gBAAGC,UAAU,CAC3B,SAASD,GAAGA,CAACE,KAAK,EAAEC,YAAY,EAAE;EAChC,MAAM,CAACC,WAAW,EAAEC,UAAU,CAAC,GAAGC,kBAAkB,CAACJ,KAAK,CAAC
|
|
1
|
+
{"version":3,"file":"Box.mjs","sources":["../../../../src/components/Box/Box.tsx"],"sourcesContent":["'use client'\n\nimport { createElement, forwardRef } from 'react'\n\nimport classNames from 'classnames'\n\nimport {\n getLayoutStyles,\n getMarginStyles,\n splitByLayoutProps,\n splitByMarginProps,\n} from '~/src/types/props-helpers'\n\nimport { type BoxProps } from './Box.types'\n\nimport styles from './Box.module.scss'\n\n/**\n * `Box` is a primitive layout component. It provides an easy way to access design tokens.\n * @example\n *\n * ```tsx\n * <Box\n * width=\"100px\"\n * height=\"100px\"\n * p=\"6px\"\n * m=\"6px\"\n * bgColor=\"bg-black-light\"\n * >\n * <div>{ ... }</div>\n * </Box>\n * ```\n */\nexport const Box = forwardRef<HTMLElement, BoxProps>(\n function Box(props, forwardedRef) {\n const [marginProps, marginRest] = splitByMarginProps(props)\n const [layoutProps, layoutRest] = splitByLayoutProps(marginRest)\n const marginStyles = getMarginStyles(marginProps)\n const layoutStyles = getLayoutStyles(layoutProps)\n\n const {\n children,\n style,\n className,\n as = 'div',\n display,\n ...rest\n } = layoutRest\n\n /**\n * NOTE: Using the createElement function directly because of a ref type related error.\n * TODO: Fix type error.\n */\n return createElement(\n as,\n {\n ref: forwardedRef,\n style: {\n ...marginStyles.style,\n ...layoutStyles.style,\n ...style,\n },\n className: classNames(\n styles.Box,\n display && styles[`display-${display}`],\n marginStyles.className,\n layoutStyles.className,\n className\n ),\n 'data-testid': 'bezier-box',\n ...rest,\n },\n children\n )\n }\n)\n"],"names":["Box","forwardRef","props","forwardedRef","marginProps","marginRest","splitByMarginProps","layoutProps","layoutRest","splitByLayoutProps","marginStyles","getMarginStyles","layoutStyles","getLayoutStyles","children","style","className","as","display","rest","createElement","ref","classNames","styles"],"mappings":";;;;;AAiBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMA,GAAG,gBAAGC,UAAU,CAC3B,SAASD,GAAGA,CAACE,KAAK,EAAEC,YAAY,EAAE;EAChC,MAAM,CAACC,WAAW,EAAEC,UAAU,CAAC,GAAGC,kBAAkB,CAACJ,KAAK,CAAC;EAC3D,MAAM,CAACK,WAAW,EAAEC,UAAU,CAAC,GAAGC,kBAAkB,CAACJ,UAAU,CAAC;AAChE,EAAA,MAAMK,YAAY,GAAGC,eAAe,CAACP,WAAW,CAAC;AACjD,EAAA,MAAMQ,YAAY,GAAGC,eAAe,CAACN,WAAW,CAAC;EAEjD,MAAM;IACJO,QAAQ;IACRC,KAAK;IACLC,SAAS;AACTC,IAAAA,EAAE,GAAG,KAAK;IACVC,OAAO;IACP,GAAGC;AACL,GAAC,GAAGX,UAAU;;AAEd;AACJ;AACA;AACA;EACI,oBAAOY,aAAa,CAClBH,EAAE,EACF;AACEI,IAAAA,GAAG,EAAElB,YAAY;AACjBY,IAAAA,KAAK,EAAE;MACL,GAAGL,YAAY,CAACK,KAAK;MACrB,GAAGH,YAAY,CAACG,KAAK;MACrB,GAAGA;KACJ;IACDC,SAAS,EAAEM,UAAU,CACnBC,MAAM,CAACvB,GAAG,EACVkB,OAAO,IAAIK,MAAM,CAAC,CAAA,QAAA,EAAWL,OAAO,CAAE,CAAA,CAAC,EACvCR,YAAY,CAACM,SAAS,EACtBJ,YAAY,CAACI,SAAS,EACtBA,SACF,CAAC;AACD,IAAA,aAAa,EAAE,YAAY;IAC3B,GAAGG;GACJ,EACDL,QACF,CAAC;AACH,CACF;;;;"}
|
|
@@ -63,8 +63,8 @@ const Button = /*#__PURE__*/forwardRef(function Button({
|
|
|
63
63
|
as = BaseButton,
|
|
64
64
|
className,
|
|
65
65
|
text,
|
|
66
|
-
disabled = false,
|
|
67
66
|
loading = false,
|
|
67
|
+
disabled: disabledProp = false,
|
|
68
68
|
active = false,
|
|
69
69
|
size = 'm',
|
|
70
70
|
styleVariant = 'primary',
|
|
@@ -75,6 +75,7 @@ const Button = /*#__PURE__*/forwardRef(function Button({
|
|
|
75
75
|
...rest
|
|
76
76
|
}, forwardedRef) {
|
|
77
77
|
const Comp = as;
|
|
78
|
+
const disabled = loading || disabledProp;
|
|
78
79
|
const handleClick = useCallback(event => {
|
|
79
80
|
if (!disabled) {
|
|
80
81
|
onClick === null || onClick === void 0 || onClick(event);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Button.mjs","sources":["../../../../src/components/Button/Button.tsx"],"sourcesContent":["'use client'
|
|
1
|
+
{"version":3,"file":"Button.mjs","sources":["../../../../src/components/Button/Button.tsx"],"sourcesContent":["'use client'\n\nimport React, { forwardRef, useCallback } from 'react'\n\nimport { isBezierIcon } from '@channel.io/bezier-icons'\nimport classNames from 'classnames'\n\nimport { warn } from '~/src/utils/assert'\n\nimport { BaseButton } from '~/src/components/BaseButton'\nimport { Icon } from '~/src/components/Icon'\nimport { LegacyIcon, isIconName } from '~/src/components/LegacyIcon'\nimport { Spinner } from '~/src/components/Spinner'\nimport { Text } from '~/src/components/Text'\n\nimport type { ButtonProps, ButtonSize, SideContent } from './Button.types'\n\nimport styles from './Button.module.scss'\n\nexport const BUTTON_TEST_ID = 'bezier-button'\n\nfunction getTypography(size: ButtonSize) {\n return (\n {\n xs: '13',\n s: '13',\n m: '14',\n l: '15',\n xl: '18',\n } as const\n )[size]\n}\n\nfunction getIconSize(size: ButtonSize) {\n return (\n {\n xs: 'xs',\n s: 'xs',\n m: 's',\n l: 's',\n xl: 'm',\n } as const\n )[size]\n}\n\nfunction getSpinnerSize(size: ButtonSize) {\n return (\n {\n xs: 'xs',\n s: 'xs',\n m: 's',\n l: 's',\n xl: 's',\n } as const\n )[size]\n}\n\nfunction ButtonSideContent({\n size,\n children,\n}: {\n size: ButtonSize\n children: SideContent\n}) {\n if (isIconName(children)) {\n warn(\n 'Deprecation: IconName as a value for the leftContent property of a Button has been deprecated. Use the Icon of bezier-icons instead.'\n )\n return (\n <LegacyIcon\n className={styles.ButtonIcon}\n name={children}\n size={getIconSize(size)}\n />\n )\n }\n\n if (isBezierIcon(children)) {\n return (\n <Icon\n className={styles.ButtonIcon}\n source={children}\n size={getIconSize(size)}\n />\n )\n }\n\n return <>{children}</>\n}\n\nexport const Button = forwardRef<HTMLButtonElement, ButtonProps>(\n function Button(\n {\n as = BaseButton,\n className,\n text,\n loading = false,\n disabled: disabledProp = false,\n active = false,\n size = 'm',\n styleVariant = 'primary',\n colorVariant = 'blue',\n leftContent,\n rightContent,\n onClick,\n ...rest\n },\n forwardedRef\n ) {\n const Comp = as as typeof BaseButton\n\n const disabled = loading || disabledProp\n\n const handleClick = useCallback<React.MouseEventHandler<HTMLButtonElement>>(\n (event) => {\n if (!disabled) {\n onClick?.(event)\n }\n },\n [onClick, disabled]\n )\n\n return (\n <Comp\n ref={forwardedRef}\n className={classNames(\n styles.Button,\n styles[`size-${size}`],\n styles[`style-${styleVariant}`],\n styles[`color-${colorVariant}`],\n active && styles.active,\n className\n )}\n disabled={disabled}\n onClick={handleClick}\n data-testid={BUTTON_TEST_ID}\n data-bezier-component=\"Button\"\n {...rest}\n >\n <div\n className={classNames(\n styles.ButtonContent,\n loading && styles.loading\n )}\n >\n <ButtonSideContent size={size}>{leftContent}</ButtonSideContent>\n\n {text && (\n <Text\n className={styles.ButtonText}\n typo={getTypography(size)}\n bold\n >\n {text}\n </Text>\n )}\n\n <ButtonSideContent size={size}>{rightContent}</ButtonSideContent>\n </div>\n\n {loading && (\n <div className={styles.ButtonLoader}>\n <Spinner size={getSpinnerSize(size)} />\n </div>\n )}\n </Comp>\n )\n }\n)\n"],"names":["BUTTON_TEST_ID","getTypography","size","xs","s","m","l","xl","getIconSize","getSpinnerSize","ButtonSideContent","children","isIconName","warn","React","createElement","LegacyIcon","className","styles","ButtonIcon","name","isBezierIcon","Icon","source","Fragment","Button","forwardRef","as","BaseButton","text","loading","disabled","disabledProp","active","styleVariant","colorVariant","leftContent","rightContent","onClick","rest","forwardedRef","Comp","handleClick","useCallback","event","Object","assign","ref","classNames","ButtonContent","Text","ButtonText","typo","bold","ButtonLoader","Spinner"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ButtonGroup.mjs","sources":["../../../../src/components/ButtonGroup/ButtonGroup.tsx"],"sourcesContent":["'use client'\n\nimport React, { forwardRef } from 'react'\n\nimport { Stack } from '~/src/components/Stack'\n\nimport type { ButtonGroupProps } from './ButtonGroup.types'\n\n/**\n * `ButtonGroup` is a component that groups buttons together.\n * @example\n * ```tsx\n * <ButtonGroup>\n * <Button text=\"Close\" />\n * <Button text=\"Submit\" />\n * </ButtonGroup>\n * ```\n */\nexport const ButtonGroup = forwardRef<HTMLDivElement, ButtonGroupProps>(\n function ButtonGroup(\n { children, justify = 'center', withoutSpacing = false, ...props },\n forwardedRef\n ) {\n return (\n <Stack\n {...props}\n role=\"group\"\n ref={forwardedRef}\n direction=\"horizontal\"\n spacing={withoutSpacing ? 0 : 6}\n justify={justify}\n >\n {children}\n </Stack>\n )\n }\n)\n"],"names":["ButtonGroup","forwardRef","children","justify","withoutSpacing","props","forwardedRef","React","createElement","Stack","Object","assign","role","ref","direction","spacing"],"mappings":";;;AAQA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;MACaA,WAAW,gBAAGC,UAAU,CACnC,SAASD,WAAWA,CAClB;EAAEE,QAAQ;AAAEC,EAAAA,OAAO,GAAG,QAAQ;AAAEC,EAAAA,cAAc,GAAG,KAAK;EAAE,GAAGC
|
|
1
|
+
{"version":3,"file":"ButtonGroup.mjs","sources":["../../../../src/components/ButtonGroup/ButtonGroup.tsx"],"sourcesContent":["'use client'\n\nimport React, { forwardRef } from 'react'\n\nimport { Stack } from '~/src/components/Stack'\n\nimport type { ButtonGroupProps } from './ButtonGroup.types'\n\n/**\n * `ButtonGroup` is a component that groups buttons together.\n * @example\n * ```tsx\n * <ButtonGroup>\n * <Button text=\"Close\" />\n * <Button text=\"Submit\" />\n * </ButtonGroup>\n * ```\n */\nexport const ButtonGroup = forwardRef<HTMLDivElement, ButtonGroupProps>(\n function ButtonGroup(\n { children, justify = 'center', withoutSpacing = false, ...props },\n forwardedRef\n ) {\n return (\n <Stack\n {...props}\n role=\"group\"\n ref={forwardedRef}\n direction=\"horizontal\"\n spacing={withoutSpacing ? 0 : 6}\n justify={justify}\n >\n {children}\n </Stack>\n )\n }\n)\n"],"names":["ButtonGroup","forwardRef","children","justify","withoutSpacing","props","forwardedRef","React","createElement","Stack","Object","assign","role","ref","direction","spacing"],"mappings":";;;AAQA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;MACaA,WAAW,gBAAGC,UAAU,CACnC,SAASD,WAAWA,CAClB;EAAEE,QAAQ;AAAEC,EAAAA,OAAO,GAAG,QAAQ;AAAEC,EAAAA,cAAc,GAAG,KAAK;EAAE,GAAGC;AAAM,CAAC,EAClEC,YAAY,EACZ;EACA,oBACEC,cAAA,CAAAC,aAAA,CAACC,KAAK,EAAAC,MAAA,CAAAC,MAAA,CAAA,EAAA,EACAN,KAAK,EAAA;AACTO,IAAAA,IAAI,EAAC,OAAO;AACZC,IAAAA,GAAG,EAAEP,YAAa;AAClBQ,IAAAA,SAAS,EAAC,YAAY;AACtBC,IAAAA,OAAO,EAAEX,cAAc,GAAG,CAAC,GAAG,CAAE;AAChCD,IAAAA,OAAO,EAAEA;AAAQ,GAAA,CAAA,EAEhBD,QACI,CAAC;AAEZ,CACF;;;;"}
|