@infomaximum/ui-kit 0.9.1
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/LICENSE +201 -0
- package/README.md +169 -0
- package/dist/components/Alert/Alert.d.ts +3 -0
- package/dist/components/Alert/Alert.js +67 -0
- package/dist/components/Alert/Alert.styles.d.ts +885 -0
- package/dist/components/Alert/Alert.styles.js +124 -0
- package/dist/components/Alert/Alert.tokens.d.ts +8 -0
- package/dist/components/Alert/Alert.tokens.js +10 -0
- package/dist/components/Alert/Alert.types.d.ts +26 -0
- package/dist/components/Alert/Alert.utils.d.ts +7 -0
- package/dist/components/Alert/Alert.utils.js +38 -0
- package/dist/components/Alert/index.d.ts +2 -0
- package/dist/components/Avatar/Avatar.d.ts +3 -0
- package/dist/components/Avatar/Avatar.js +23 -0
- package/dist/components/Avatar/Avatar.styles.d.ts +29 -0
- package/dist/components/Avatar/Avatar.styles.js +40 -0
- package/dist/components/Avatar/Avatar.tokens.d.ts +7 -0
- package/dist/components/Avatar/Avatar.tokens.js +8 -0
- package/dist/components/Avatar/Avatar.types.d.ts +11 -0
- package/dist/components/Avatar/index.d.ts +2 -0
- package/dist/components/BaseTooltip/BaseTooltip.d.ts +3 -0
- package/dist/components/BaseTooltip/BaseTooltip.js +87 -0
- package/dist/components/BaseTooltip/BaseTooltip.styles.d.ts +6 -0
- package/dist/components/BaseTooltip/BaseTooltip.styles.js +36 -0
- package/dist/components/BaseTooltip/BaseTooltip.types.d.ts +19 -0
- package/dist/components/BaseTooltip/BaseTooltip.utils.d.ts +12 -0
- package/dist/components/BaseTooltip/BaseTooltip.utils.js +101 -0
- package/dist/components/BaseTooltip/hooks/useShowTooltipController.d.ts +22 -0
- package/dist/components/BaseTooltip/hooks/useShowTooltipController.js +143 -0
- package/dist/components/Button/Button.d.ts +3 -0
- package/dist/components/Button/Button.js +56 -0
- package/dist/components/Button/Button.styles.d.ts +958 -0
- package/dist/components/Button/Button.styles.js +230 -0
- package/dist/components/Button/Button.tokens.d.ts +27 -0
- package/dist/components/Button/Button.tokens.js +29 -0
- package/dist/components/Button/Button.types.d.ts +31 -0
- package/dist/components/Button/Button.utils.d.ts +8 -0
- package/dist/components/Button/Button.utils.js +38 -0
- package/dist/components/Button/index.d.ts +2 -0
- package/dist/components/Checkbox/Checkbox.d.ts +3 -0
- package/dist/components/Checkbox/Checkbox.js +72 -0
- package/dist/components/Checkbox/Checkbox.styles.d.ts +46 -0
- package/dist/components/Checkbox/Checkbox.styles.js +85 -0
- package/dist/components/Checkbox/Checkbox.tokens.d.ts +13 -0
- package/dist/components/Checkbox/Checkbox.tokens.js +15 -0
- package/dist/components/Checkbox/Checkbox.types.d.ts +27 -0
- package/dist/components/Checkbox/components/Group/Group.d.ts +3 -0
- package/dist/components/Checkbox/components/Group/Group.js +67 -0
- package/dist/components/Checkbox/components/Group/Group.style.d.ts +6 -0
- package/dist/components/Checkbox/components/Group/Group.style.js +8 -0
- package/dist/components/Checkbox/components/Group/Group.type.d.ts +18 -0
- package/dist/components/Checkbox/components/Group/Group.utils.d.ts +6 -0
- package/dist/components/Checkbox/components/Group/Group.utils.js +6 -0
- package/dist/components/Checkbox/forStories/CheckAll/CheckAll.d.ts +2 -0
- package/dist/components/Checkbox/index.d.ts +4 -0
- package/dist/components/Checkbox/index.js +8 -0
- package/dist/components/ConfigProvider/ConfigProvider.d.ts +3 -0
- package/dist/components/ConfigProvider/ConfigProvider.js +17 -0
- package/dist/components/ConfigProvider/ConfigProvider.types.d.ts +5 -0
- package/dist/components/ConfigProvider/contexts/ConfigContext.d.ts +2 -0
- package/dist/components/ConfigProvider/contexts/ConfigContext.js +5 -0
- package/dist/components/ConfigProvider/contexts/ConfigContext.types.d.ts +6 -0
- package/dist/components/ConfigProvider/contexts/index.d.ts +1 -0
- package/dist/components/ConfigProvider/hooks/useConfig/index.d.ts +1 -0
- package/dist/components/ConfigProvider/hooks/useConfig/useConfig.d.ts +9 -0
- package/dist/components/ConfigProvider/hooks/useConfig/useConfig.js +17 -0
- package/dist/components/ConfigProvider/index.d.ts +3 -0
- package/dist/components/DatePicker/DatePicker.d.ts +4 -0
- package/dist/components/DatePicker/DatePicker.js +13 -0
- package/dist/components/DatePicker/DatePicker.types.d.ts +8 -0
- package/dist/components/DatePicker/DatePicker.utils.d.ts +8 -0
- package/dist/components/DatePicker/DatePicker.utils.js +13 -0
- package/dist/components/DatePicker/components/RangePicker/RangePicker.d.ts +4 -0
- package/dist/components/DatePicker/components/RangePicker/RangePicker.js +11 -0
- package/dist/components/DatePicker/components/RangePicker/RangePicker.types.d.ts +3 -0
- package/dist/components/DatePicker/index.d.ts +2 -0
- package/dist/components/Dropdown/Dropdown.d.ts +3 -0
- package/dist/components/Dropdown/Dropdown.js +78 -0
- package/dist/components/Dropdown/Dropdown.tokens.d.ts +13 -0
- package/dist/components/Dropdown/Dropdown.tokens.js +14 -0
- package/dist/components/Dropdown/Dropdown.types.d.ts +98 -0
- package/dist/components/Dropdown/Dropdown.types.js +30 -0
- package/dist/components/Dropdown/Dropdown.utils.d.ts +4 -0
- package/dist/components/Dropdown/Dropdown.utils.js +40 -0
- package/dist/components/Dropdown/components/Divider/Divider.d.ts +2 -0
- package/dist/components/Dropdown/components/Divider/Divider.js +11 -0
- package/dist/components/Dropdown/components/Divider/Divider.styles.d.ts +7 -0
- package/dist/components/Dropdown/components/Divider/Divider.styles.js +13 -0
- package/dist/components/Dropdown/components/Group/Group.d.ts +3 -0
- package/dist/components/Dropdown/components/Group/Group.js +37 -0
- package/dist/components/Dropdown/components/Group/Group.styles.d.ts +29 -0
- package/dist/components/Dropdown/components/Group/Group.styles.js +39 -0
- package/dist/components/Dropdown/components/Group/Group.types.d.ts +7 -0
- package/dist/components/Dropdown/components/Item/Item.d.ts +3 -0
- package/dist/components/Dropdown/components/Item/Item.js +55 -0
- package/dist/components/Dropdown/components/Item/Item.style.d.ts +51 -0
- package/dist/components/Dropdown/components/Item/Item.style.js +74 -0
- package/dist/components/Dropdown/components/Item/Item.types.d.ts +7 -0
- package/dist/components/Dropdown/components/Menu/Menu.d.ts +3 -0
- package/dist/components/Dropdown/components/Menu/Menu.js +78 -0
- package/dist/components/Dropdown/components/Menu/Menu.styles.d.ts +55 -0
- package/dist/components/Dropdown/components/Menu/Menu.styles.js +69 -0
- package/dist/components/Dropdown/components/Menu/Menu.types.d.ts +7 -0
- package/dist/components/Dropdown/components/SubMenu/SubMenu.d.ts +3 -0
- package/dist/components/Dropdown/components/SubMenu/SubMenu.js +131 -0
- package/dist/components/Dropdown/components/SubMenu/SubMenu.types.d.ts +6 -0
- package/dist/components/Dropdown/components/SubMenu/SubMenu.utils.d.ts +2 -0
- package/dist/components/Dropdown/components/SubMenu/SubMenu.utils.js +15 -0
- package/dist/components/Dropdown/contexts/dropdownContext.d.ts +22 -0
- package/dist/components/Dropdown/contexts/dropdownContext.js +5 -0
- package/dist/components/Dropdown/forStories/menusData.d.ts +9 -0
- package/dist/components/Dropdown/hooks/useFilter.d.ts +8 -0
- package/dist/components/Dropdown/hooks/useFilter.js +45 -0
- package/dist/components/Dropdown/hooks/useSelectedKeysController.d.ts +30 -0
- package/dist/components/Dropdown/hooks/useSelectedKeysController.js +58 -0
- package/dist/components/Dropdown/hooks/useStepSubMenus.d.ts +7 -0
- package/dist/components/Dropdown/hooks/useStepSubMenus.js +34 -0
- package/dist/components/Dropdown/hooks/useSubMenusController.d.ts +7 -0
- package/dist/components/Dropdown/hooks/useSubMenusController.js +30 -0
- package/dist/components/Dropdown/index.d.ts +2 -0
- package/dist/components/Input/Input.d.ts +3 -0
- package/dist/components/Input/Input.js +163 -0
- package/dist/components/Input/Input.styles.d.ts +184 -0
- package/dist/components/Input/Input.styles.js +138 -0
- package/dist/components/Input/Input.tokens.d.ts +18 -0
- package/dist/components/Input/Input.tokens.js +19 -0
- package/dist/components/Input/Input.types.d.ts +19 -0
- package/dist/components/Input/components/InputPassword/InputPassword.d.ts +2 -0
- package/dist/components/Input/components/InputPassword/InputPassword.js +51 -0
- package/dist/components/Input/components/InputPassword/InputPassword.styles.d.ts +10 -0
- package/dist/components/Input/components/InputPassword/InputPassword.styles.js +11 -0
- package/dist/components/Input/components/InputPassword/InputPassword.types.d.ts +11 -0
- package/dist/components/Input/components/InputTextArea/InputTextArea.d.ts +2 -0
- package/dist/components/Input/components/InputTextArea/InputTextArea.js +89 -0
- package/dist/components/Input/components/InputTextArea/InputTextArea.styles.d.ts +33 -0
- package/dist/components/Input/components/InputTextArea/InputTextArea.styles.js +13 -0
- package/dist/components/Input/components/InputTextArea/InputTextArea.types.d.ts +10 -0
- package/dist/components/Input/components/InputTextArea/InputTextArea.utils.d.ts +9 -0
- package/dist/components/Input/components/InputTextArea/InputTextArea.utils.js +105 -0
- package/dist/components/Input/hooks/useKeyboardEvents/index.d.ts +1 -0
- package/dist/components/Input/hooks/useKeyboardEvents/useKeyboardEvents.d.ts +7 -0
- package/dist/components/Input/hooks/useKeyboardEvents/useKeyboardEvents.js +43 -0
- package/dist/components/Input/hooks/useKeyboardEvents/useKeyboardEvents.types.d.ts +3 -0
- package/dist/components/Input/hooks/useMergeState/index.d.ts +1 -0
- package/dist/components/Input/hooks/useMergeState/useMergeState.d.ts +21 -0
- package/dist/components/Input/hooks/useMergeState/useMergeState.js +94 -0
- package/dist/components/Input/hooks/useRemovePasswordTimeout/index.d.ts +1 -0
- package/dist/components/Input/hooks/useRemovePasswordTimeout/useRemovePasswordTimeout.d.ts +4 -0
- package/dist/components/Input/hooks/useRemovePasswordTimeout/useRemovePasswordTimeout.js +49 -0
- package/dist/components/Input/hooks/useRemovePasswordTimeout/useRemovePasswordTimeout.types.d.ts +8 -0
- package/dist/components/Input/index.d.ts +2 -0
- package/dist/components/Input/utils/resolveOnChange/index.d.ts +1 -0
- package/dist/components/Input/utils/resolveOnChange/resolveOnChange.d.ts +3 -0
- package/dist/components/Input/utils/resolveOnChange/resolveOnChange.js +41 -0
- package/dist/components/InputNumber/InputNumber.d.ts +2 -0
- package/dist/components/InputNumber/InputNumber.js +189 -0
- package/dist/components/InputNumber/InputNumber.styles.d.ts +107 -0
- package/dist/components/InputNumber/InputNumber.styles.js +115 -0
- package/dist/components/InputNumber/InputNumber.tokens.d.ts +18 -0
- package/dist/components/InputNumber/InputNumber.tokens.js +19 -0
- package/dist/components/InputNumber/InputNumber.types.d.ts +41 -0
- package/dist/components/InputNumber/InputNumber.utils.d.ts +2 -0
- package/dist/components/InputNumber/InputNumber.utils.js +9 -0
- package/dist/components/InputNumber/components/StepController/StepController.d.ts +3 -0
- package/dist/components/InputNumber/components/StepController/StepController.js +26 -0
- package/dist/components/InputNumber/components/StepController/StepController.styles.d.ts +51 -0
- package/dist/components/InputNumber/components/StepController/StepController.styles.js +51 -0
- package/dist/components/InputNumber/components/StepController/StepController.types.d.ts +5 -0
- package/dist/components/InputNumber/hooks/useChangeValue/index.d.ts +1 -0
- package/dist/components/InputNumber/hooks/useChangeValue/useChangeValue.d.ts +9 -0
- package/dist/components/InputNumber/hooks/useChangeValue/useChangeValue.js +103 -0
- package/dist/components/InputNumber/hooks/useChangeValue/useChangeValue.types.d.ts +11 -0
- package/dist/components/InputNumber/hooks/useDecimalTools/index.d.ts +1 -0
- package/dist/components/InputNumber/hooks/useDecimalTools/useDecimalTools.d.ts +6 -0
- package/dist/components/InputNumber/hooks/useDecimalTools/useDecimalTools.js +59 -0
- package/dist/components/InputNumber/hooks/useDecimalTools/useDecimalTools.types.d.ts +6 -0
- package/dist/components/InputNumber/hooks/useFocusBlurEvents/index.d.ts +1 -0
- package/dist/components/InputNumber/hooks/useFocusBlurEvents/useFocusBlurEvents.d.ts +9 -0
- package/dist/components/InputNumber/hooks/useFocusBlurEvents/useFocusBlurEvents.js +35 -0
- package/dist/components/InputNumber/hooks/useFocusBlurEvents/useFocusBlurEvents.types.d.ts +7 -0
- package/dist/components/InputNumber/hooks/useKeyboardEvents/index.d.ts +1 -0
- package/dist/components/InputNumber/hooks/useKeyboardEvents/useKeyboardEvents.d.ts +6 -0
- package/dist/components/InputNumber/hooks/useKeyboardEvents/useKeyboardEvents.js +37 -0
- package/dist/components/InputNumber/hooks/useKeyboardEvents/useKeyboardEvents.types.d.ts +10 -0
- package/dist/components/InputNumber/hooks/useRange/index.d.ts +1 -0
- package/dist/components/InputNumber/hooks/useRange/useRange.d.ts +9 -0
- package/dist/components/InputNumber/hooks/useRange/useRange.js +36 -0
- package/dist/components/InputNumber/hooks/useRange/useRange.types.d.ts +7 -0
- package/dist/components/InputNumber/hooks/useStep/index.d.ts +1 -0
- package/dist/components/InputNumber/hooks/useStep/useStep.d.ts +6 -0
- package/dist/components/InputNumber/hooks/useStep/useStep.js +55 -0
- package/dist/components/InputNumber/hooks/useStep/useStep.types.d.ts +14 -0
- package/dist/components/InputNumber/hooks/useWheelEvents/index.d.ts +1 -0
- package/dist/components/InputNumber/hooks/useWheelEvents/useWheelEvents.d.ts +2 -0
- package/dist/components/InputNumber/hooks/useWheelEvents/useWheelEvents.js +27 -0
- package/dist/components/InputNumber/hooks/useWheelEvents/useWheelEvents.types.d.ts +9 -0
- package/dist/components/InputNumber/index.d.ts +2 -0
- package/dist/components/InputNumber/utils/BigIntDecimal.d.ts +27 -0
- package/dist/components/InputNumber/utils/BigIntDecimal.js +124 -0
- package/dist/components/InputNumber/utils/MiniDecimal.d.ts +3 -0
- package/dist/components/InputNumber/utils/MiniDecimal.js +42 -0
- package/dist/components/InputNumber/utils/NumberDecimal.d.ts +17 -0
- package/dist/components/InputNumber/utils/NumberDecimal.js +83 -0
- package/dist/components/InputNumber/utils/index.d.ts +4 -0
- package/dist/components/InputNumber/utils/interface.d.ts +13 -0
- package/dist/components/InputNumber/utils/numberUtil.d.ts +15 -0
- package/dist/components/InputNumber/utils/numberUtil.js +91 -0
- package/dist/components/InputNumber/utils/supportUtil.d.ts +1 -0
- package/dist/components/InputNumber/utils/supportUtil.js +6 -0
- package/dist/components/InternalPicker/config/docsStoriesLocale.d.ts +2 -0
- package/dist/components/InternalPicker/config/index.d.ts +2 -0
- package/dist/components/InternalPicker/config/types.d.ts +25 -0
- package/dist/components/InternalPicker/index.d.ts +4 -0
- package/dist/components/InternalPicker/pickers/RangePicker/RangePicker.d.ts +4 -0
- package/dist/components/InternalPicker/pickers/RangePicker/RangePicker.js +49 -0
- package/dist/components/InternalPicker/pickers/RangePicker/RangePicker.types.d.ts +8 -0
- package/dist/components/InternalPicker/pickers/RangePicker/RangePicker.utils.d.ts +3 -0
- package/dist/components/InternalPicker/pickers/RangePicker/RangePicker.utils.js +13 -0
- package/dist/components/InternalPicker/pickers/RangePicker/index.d.ts +2 -0
- package/dist/components/InternalPicker/pickers/SinglePicker/SinglePicker.d.ts +4 -0
- package/dist/components/InternalPicker/pickers/SinglePicker/SinglePicker.js +48 -0
- package/dist/components/InternalPicker/pickers/SinglePicker/SinglePicker.types.d.ts +9 -0
- package/dist/components/InternalPicker/pickers/SinglePicker/SinglePicker.utils.d.ts +21 -0
- package/dist/components/InternalPicker/pickers/SinglePicker/SinglePicker.utils.js +102 -0
- package/dist/components/InternalPicker/pickers/SinglePicker/index.d.ts +3 -0
- package/dist/components/InternalPicker/pickers/hooks/useComponents/index.d.ts +1 -0
- package/dist/components/InternalPicker/pickers/hooks/useComponents/useComponents.d.ts +8 -0
- package/dist/components/InternalPicker/pickers/hooks/useComponents/useComponents.js +18 -0
- package/dist/components/InternalPicker/pickers/hooks/useComponents/useComponents.types.d.ts +5 -0
- package/dist/components/InternalPicker/pickers/index.d.ts +2 -0
- package/dist/components/InternalPicker/styles/DatePanel.styles.d.ts +963 -0
- package/dist/components/InternalPicker/styles/DatePanel.styles.js +234 -0
- package/dist/components/InternalPicker/styles/Popup.styles.d.ts +1042 -0
- package/dist/components/InternalPicker/styles/Popup.styles.js +73 -0
- package/dist/components/InternalPicker/styles/RangeSelector.styles.d.ts +130 -0
- package/dist/components/InternalPicker/styles/RangeSelector.styles.js +45 -0
- package/dist/components/InternalPicker/styles/SingleSelector.styles.d.ts +102 -0
- package/dist/components/InternalPicker/styles/SingleSelector.styles.js +117 -0
- package/dist/components/InternalPicker/styles/TimePanel.styles.d.ts +49 -0
- package/dist/components/InternalPicker/styles/TimePanel.styles.js +64 -0
- package/dist/components/InternalPicker/styles/common.styles.d.ts +1 -0
- package/dist/components/InternalPicker/styles/common.styles.js +4 -0
- package/dist/components/InternalPicker/styles/index.d.ts +4 -0
- package/dist/components/InternalPicker/tokens.d.ts +29 -0
- package/dist/components/InternalPicker/tokens.js +30 -0
- package/dist/components/Message/components/Message/Message.d.ts +3 -0
- package/dist/components/Message/components/Message/Message.js +49 -0
- package/dist/components/Message/components/Message/Message.styles.d.ts +47 -0
- package/dist/components/Message/components/Message/Message.styles.js +93 -0
- package/dist/components/Message/components/Message/Message.tokens.d.ts +8 -0
- package/dist/components/Message/components/Message/Message.tokens.js +10 -0
- package/dist/components/Message/components/Message/Message.types.d.ts +22 -0
- package/dist/components/Message/components/Message/Message.utils.d.ts +6 -0
- package/dist/components/Message/components/Message/Message.utils.js +22 -0
- package/dist/components/Message/components/MessageList/MessageList.d.ts +3 -0
- package/dist/components/Message/components/MessageList/MessageList.js +13 -0
- package/dist/components/Message/components/MessageList/MessageList.styles.d.ts +70 -0
- package/dist/components/Message/components/MessageList/MessageList.styles.js +63 -0
- package/dist/components/Message/components/MessageList/MessageList.types.d.ts +6 -0
- package/dist/components/Message/components/MessagesHolder/MessagesHolder.d.ts +3 -0
- package/dist/components/Message/components/MessagesHolder/MessagesHolder.js +23 -0
- package/dist/components/Message/components/MessagesHolder/MessagesHolder.types.d.ts +9 -0
- package/dist/components/Message/forStories/utils.d.ts +12 -0
- package/dist/components/Message/index.d.ts +2 -0
- package/dist/components/Message/message.d.ts +9 -0
- package/dist/components/Message/message.js +105 -0
- package/dist/components/Message/message.types.d.ts +32 -0
- package/dist/components/Message/message.utils.d.ts +3 -0
- package/dist/components/Message/message.utils.js +15 -0
- package/dist/components/Popconfirm/Popconfirm.d.ts +3 -0
- package/dist/components/Popconfirm/Popconfirm.tokens.d.ts +10 -0
- package/dist/components/Popconfirm/Popconfirm.types.d.ts +28 -0
- package/dist/components/Popconfirm/components/PopconfirmFloatingElement/PopconfirmFloatingElement.d.ts +3 -0
- package/dist/components/Popconfirm/components/PopconfirmFloatingElement/PopconfirmFloatingElement.styles.d.ts +55 -0
- package/dist/components/Popover/Popover.d.ts +3 -0
- package/dist/components/Popover/Popover.js +22 -0
- package/dist/components/Popover/Popover.tokens.d.ts +9 -0
- package/dist/components/Popover/Popover.tokens.js +11 -0
- package/dist/components/Popover/Popover.types.d.ts +13 -0
- package/dist/components/Popover/component/PopoverFloatingElement/PopoverFloatingElement.d.ts +3 -0
- package/dist/components/Popover/component/PopoverFloatingElement/PopoverFloatingElement.js +21 -0
- package/dist/components/Popover/component/PopoverFloatingElement/PopoverFloatingElement.styles.d.ts +32 -0
- package/dist/components/Popover/component/PopoverFloatingElement/PopoverFloatingElement.styles.js +38 -0
- package/dist/components/Popover/forStories/utils.d.ts +1 -0
- package/dist/components/Popover/index.d.ts +2 -0
- package/dist/components/Progress/Progress.d.ts +3 -0
- package/dist/components/Progress/Progress.js +28 -0
- package/dist/components/Progress/Progress.styles.d.ts +18 -0
- package/dist/components/Progress/Progress.styles.js +39 -0
- package/dist/components/Progress/Progress.tokens.d.ts +11 -0
- package/dist/components/Progress/Progress.tokens.js +12 -0
- package/dist/components/Progress/Progress.types.d.ts +8 -0
- package/dist/components/Progress/index.d.ts +2 -0
- package/dist/components/Radio/Radio.d.ts +3 -0
- package/dist/components/Radio/Radio.js +53 -0
- package/dist/components/Radio/Radio.styles.d.ts +66 -0
- package/dist/components/Radio/Radio.styles.js +72 -0
- package/dist/components/Radio/Radio.tokens.d.ts +16 -0
- package/dist/components/Radio/Radio.tokens.js +17 -0
- package/dist/components/Radio/Radio.types.d.ts +9 -0
- package/dist/components/Radio/components/RadioGroup/RadioGroup.d.ts +3 -0
- package/dist/components/Radio/components/RadioGroup/RadioGroup.js +58 -0
- package/dist/components/Radio/components/RadioGroup/RadioGroup.styles.d.ts +5 -0
- package/dist/components/Radio/components/RadioGroup/RadioGroup.styles.js +7 -0
- package/dist/components/Radio/components/RadioGroup/RadioGroup.types.d.ts +11 -0
- package/dist/components/Radio/components/RadioInternal/RadioInternal.d.ts +2 -0
- package/dist/components/Radio/components/RadioInternal/RadioInternal.js +52 -0
- package/dist/components/Radio/components/RadioInternal/RadioInternal.styles.d.ts +61 -0
- package/dist/components/Radio/components/RadioInternal/RadioInternal.styles.js +70 -0
- package/dist/components/Radio/components/RadioInternal/RadioInternal.types.d.ts +14 -0
- package/dist/components/Radio/contexts/RadioGroupContext.d.ts +4 -0
- package/dist/components/Radio/contexts/RadioGroupContext.js +5 -0
- package/dist/components/Radio/hooks/useMergeState/index.d.ts +1 -0
- package/dist/components/Radio/hooks/useMergeState/useMergeState.d.ts +21 -0
- package/dist/components/Radio/hooks/useMergeState/useMergeState.js +94 -0
- package/dist/components/Radio/index.d.ts +2 -0
- package/dist/components/Select/Select.d.ts +3 -0
- package/dist/components/Select/Select.js +305 -0
- package/dist/components/Select/Select.styles.d.ts +135 -0
- package/dist/components/Select/Select.styles.js +210 -0
- package/dist/components/Select/Select.tokens.d.ts +27 -0
- package/dist/components/Select/Select.tokens.js +28 -0
- package/dist/components/Select/Select.types.d.ts +89 -0
- package/dist/components/Select/Select.utils.d.ts +10 -0
- package/dist/components/Select/Select.utils.js +59 -0
- package/dist/components/Select/components/SelectOption/SelectOption.d.ts +3 -0
- package/dist/components/Select/components/SelectOption/SelectOption.js +55 -0
- package/dist/components/Select/components/SelectOption/SelectOption.styles.d.ts +41 -0
- package/dist/components/Select/components/SelectOption/SelectOption.styles.js +54 -0
- package/dist/components/Select/components/SelectOption/SelectOption.types.d.ts +22 -0
- package/dist/components/Select/components/SelectOptionList/SelectOptionList.d.ts +3 -0
- package/dist/components/Select/components/SelectOptionList/SelectOptionList.js +139 -0
- package/dist/components/Select/components/SelectOptionList/SelectOptionList.styles.d.ts +66 -0
- package/dist/components/Select/components/SelectOptionList/SelectOptionList.styles.js +85 -0
- package/dist/components/Select/components/SelectOptionList/SelectOptionList.types.d.ts +42 -0
- package/dist/components/Select/components/SelectOptionList/SelectOptionList.utils.d.ts +1 -0
- package/dist/components/Select/components/SelectOptionList/SelectOptionList.utils.js +4 -0
- package/dist/components/Select/components/SelectTag/SelectTag.d.ts +3 -0
- package/dist/components/Select/components/SelectTag/SelectTag.js +24 -0
- package/dist/components/Select/components/SelectTag/SelectTag.styles.d.ts +8 -0
- package/dist/components/Select/components/SelectTag/SelectTag.styles.js +23 -0
- package/dist/components/Select/components/SelectTag/SelectTag.types.d.ts +10 -0
- package/dist/components/Select/components/TagPlaceholder/TagPlaceholder.d.ts +4 -0
- package/dist/components/Select/components/TagPlaceholder/TagPlaceholder.js +13 -0
- package/dist/components/Select/components/TagPlaceholder/TagPlaceholder.styles.d.ts +5 -0
- package/dist/components/Select/components/TagPlaceholder/TagPlaceholder.styles.js +8 -0
- package/dist/components/Select/components/TagPlaceholder/TagPlaceholder.types.d.ts +3 -0
- package/dist/components/Select/forStories/dataForExamples.d.ts +20 -0
- package/dist/components/Select/hooks/useCurrentValue.d.ts +8 -0
- package/dist/components/Select/hooks/useCurrentValue.js +31 -0
- package/dist/components/Select/hooks/useDefaultCurrentValue.d.ts +3 -0
- package/dist/components/Select/hooks/useDefaultCurrentValue.js +14 -0
- package/dist/components/Select/hooks/useDefaultSelectIndex.d.ts +2 -0
- package/dist/components/Select/hooks/useDefaultSelectIndex.js +17 -0
- package/dist/components/Select/hooks/useHideElements.d.ts +5 -0
- package/dist/components/Select/hooks/useHideElements.js +60 -0
- package/dist/components/Select/hooks/useKeyControl.d.ts +7 -0
- package/dist/components/Select/hooks/useKeyControl.js +37 -0
- package/dist/components/Select/hooks/useSearch.d.ts +11 -0
- package/dist/components/Select/hooks/useSearch.js +55 -0
- package/dist/components/Select/index.d.ts +2 -0
- package/dist/components/Switch/Switch.d.ts +3 -0
- package/dist/components/Switch/Switch.js +68 -0
- package/dist/components/Switch/Switch.styles.d.ts +7 -0
- package/dist/components/Switch/Switch.styles.js +62 -0
- package/dist/components/Switch/Switch.tokens.d.ts +20 -0
- package/dist/components/Switch/Switch.tokens.js +22 -0
- package/dist/components/Switch/Switch.types.d.ts +24 -0
- package/dist/components/Switch/Switch.utils.d.ts +4 -0
- package/dist/components/Switch/Switch.utils.js +10 -0
- package/dist/components/Switch/index.d.ts +2 -0
- package/dist/components/Tag/Tag.d.ts +4 -0
- package/dist/components/Tag/Tag.js +42 -0
- package/dist/components/Tag/Tag.styles.d.ts +303 -0
- package/dist/components/Tag/Tag.styles.js +52 -0
- package/dist/components/Tag/Tag.types.d.ts +23 -0
- package/dist/components/Tag/Tag.utils.d.ts +86 -0
- package/dist/components/Tag/Tag.utils.js +90 -0
- package/dist/components/Tag/components/AddTagController/AddTagController.d.ts +3 -0
- package/dist/components/Tag/components/AddTagController/AddTagController.styles.d.ts +15 -0
- package/dist/components/Tag/components/AddTagController/AddTagController.types.d.ts +13 -0
- package/dist/components/Tag/components/AddTagController/forStories/utilsForStories.d.ts +3 -0
- package/dist/components/Tag/components/Checkable/Checkable.d.ts +4 -0
- package/dist/components/Tag/components/Checkable/Checkable.js +34 -0
- package/dist/components/Tag/components/Checkable/Checkable.styles.d.ts +30 -0
- package/dist/components/Tag/components/Checkable/Checkable.styles.js +35 -0
- package/dist/components/Tag/components/Checkable/Checkable.tokens.d.ts +10 -0
- package/dist/components/Tag/components/Checkable/Checkable.tokens.js +12 -0
- package/dist/components/Tag/components/Checkable/Checkable.types.d.ts +12 -0
- package/dist/components/Tag/index.d.ts +3 -0
- package/dist/components/TimePicker/TimePicker.d.ts +4 -0
- package/dist/components/TimePicker/TimePicker.js +13 -0
- package/dist/components/TimePicker/TimePicker.types.d.ts +8 -0
- package/dist/components/TimePicker/TimePicker.utils.d.ts +4 -0
- package/dist/components/TimePicker/TimePicker.utils.js +9 -0
- package/dist/components/TimePicker/components/RangePicker/RangePicker.d.ts +4 -0
- package/dist/components/TimePicker/components/RangePicker/RangePicker.js +11 -0
- package/dist/components/TimePicker/components/RangePicker/RangePicker.types.d.ts +3 -0
- package/dist/components/TimePicker/index.d.ts +2 -0
- package/dist/components/Tooltip/Tooltip.d.ts +3 -0
- package/dist/components/Tooltip/Tooltip.js +22 -0
- package/dist/components/Tooltip/Tooltip.tokens.d.ts +10 -0
- package/dist/components/Tooltip/Tooltip.tokens.js +12 -0
- package/dist/components/Tooltip/Tooltip.types.d.ts +12 -0
- package/dist/components/Tooltip/components/TooltipFloatingElement/TooltipFloatingElement.d.ts +3 -0
- package/dist/components/Tooltip/components/TooltipFloatingElement/TooltipFloatingElement.js +15 -0
- package/dist/components/Tooltip/components/TooltipFloatingElement/TooltipFloatingElement.styles.d.ts +15 -0
- package/dist/components/Tooltip/components/TooltipFloatingElement/TooltipFloatingElement.styles.js +19 -0
- package/dist/components/Tooltip/components/TooltipFloatingElement/TooltipFloatingElement.type.d.ts +6 -0
- package/dist/components/Tooltip/index.d.ts +2 -0
- package/dist/components/Upload/Upload.d.ts +3 -0
- package/dist/components/Upload/Upload.js +125 -0
- package/dist/components/Upload/Upload.styles.d.ts +31 -0
- package/dist/components/Upload/Upload.styles.js +32 -0
- package/dist/components/Upload/Upload.tokens.d.ts +16 -0
- package/dist/components/Upload/Upload.tokens.js +17 -0
- package/dist/components/Upload/Upload.types.d.ts +34 -0
- package/dist/components/Upload/components/Dragger/Dragger.d.ts +3 -0
- package/dist/components/Upload/components/Dragger/Dragger.js +29 -0
- package/dist/components/Upload/components/Dragger/Dragger.styles.d.ts +22 -0
- package/dist/components/Upload/components/Dragger/Dragger.styles.js +24 -0
- package/dist/components/Upload/components/Dragger/Dragger.types.d.ts +6 -0
- package/dist/components/Upload/components/InternalUpload/InternalUpload.d.ts +3 -0
- package/dist/components/Upload/components/InternalUpload/InternalUpload.js +91 -0
- package/dist/components/Upload/components/InternalUpload/InternalUpload.types.d.ts +9 -0
- package/dist/components/Upload/components/UploadList/UploadList.d.ts +3 -0
- package/dist/components/Upload/components/UploadList/UploadList.js +19 -0
- package/dist/components/Upload/components/UploadList/UploadList.styles.d.ts +9 -0
- package/dist/components/Upload/components/UploadList/UploadList.styles.js +11 -0
- package/dist/components/Upload/components/UploadList/UploadList.types.d.ts +8 -0
- package/dist/components/Upload/components/UploadListItem/UploadListItem.d.ts +3 -0
- package/dist/components/Upload/components/UploadListItem/UploadListItem.js +51 -0
- package/dist/components/Upload/components/UploadListItem/UploadListItem.styles.d.ts +70 -0
- package/dist/components/Upload/components/UploadListItem/UploadListItem.styles.js +73 -0
- package/dist/components/Upload/components/UploadListItem/UploadListItem.types.d.ts +4 -0
- package/dist/components/Upload/hooks/useDnd/useDnd.d.ts +8 -0
- package/dist/components/Upload/hooks/useDnd/useDnd.js +22 -0
- package/dist/components/Upload/hooks/useDnd/useDnd.types.d.ts +3 -0
- package/dist/components/Upload/index.d.ts +2 -0
- package/dist/components/Upload/utils/attrAccept.d.ts +1 -0
- package/dist/components/Upload/utils/attrAccept.js +38 -0
- package/dist/components/Upload/utils/file2obj.d.ts +6 -0
- package/dist/components/Upload/utils/file2obj.js +13 -0
- package/dist/components/Upload/utils/modifyFileList.d.ts +3 -0
- package/dist/components/Upload/utils/modifyFileList.js +24 -0
- package/dist/components/Upload/utils/uidGenerator.d.ts +1 -0
- package/dist/components/Upload/utils/uidGenerator.js +33 -0
- package/dist/configure/dayjs.d.ts +0 -0
- package/dist/configure/dayjs.js +4 -0
- package/dist/configure/index.d.ts +0 -0
- package/dist/contexts/themeContext.d.ts +354 -0
- package/dist/contexts/themeContext.js +6 -0
- package/dist/docComponents/Demonstration/Demonstration.d.ts +4 -0
- package/dist/docComponents/Demonstration/Demonstration.styles.d.ts +9 -0
- package/dist/docComponents/Demonstration/Demonstration.types.d.ts +5 -0
- package/dist/docComponents/Description/Description.d.ts +5 -0
- package/dist/docComponents/Description/Description.style.d.ts +26 -0
- package/dist/docComponents/Doc/Doc.d.ts +4 -0
- package/dist/docComponents/Doc/Doc.style.d.ts +13 -0
- package/dist/docComponents/Example/Example.d.ts +4 -0
- package/dist/docComponents/Example/Example.styles.d.ts +9 -0
- package/dist/hocs/withThemeProvider.d.ts +2 -0
- package/dist/hocs/withThemeProvider.js +11 -0
- package/dist/hooks/useDebounce.d.ts +3 -0
- package/dist/hooks/useDebounce.js +27 -0
- package/dist/hooks/useForceUpdate.d.ts +1 -0
- package/dist/hooks/useForceUpdate.js +9 -0
- package/dist/hooks/useLoadingDelay.d.ts +6 -0
- package/dist/hooks/useLoadingDelay.js +34 -0
- package/dist/hooks/usePrevious.d.ts +1 -0
- package/dist/hooks/usePrevious.js +11 -0
- package/dist/hooks/useResizeObserver.d.ts +1 -0
- package/dist/hooks/useResizeObserver.js +25 -0
- package/dist/hooks/useTheme/index.d.ts +1 -0
- package/dist/hooks/useTheme/useTheme.d.ts +354 -0
- package/dist/hooks/useTheme/useTheme.js +8 -0
- package/dist/icons/icons/LoadingOutlined.d.ts +3 -0
- package/dist/icons/icons/LoadingOutlined.js +9 -0
- package/dist/icons/icons/index.d.ts +1 -0
- package/dist/index.d.ts +40 -0
- package/dist/index.js +53 -0
- package/dist/providers/ThemeProvider/ThemeProvider.d.ts +3 -0
- package/dist/providers/ThemeProvider/ThemeProvider.js +11 -0
- package/dist/providers/ThemeProvider/ThemeProvider.types.d.ts +4 -0
- package/dist/providers/ThemeProvider/index.d.ts +2 -0
- package/dist/themes/baseTokens/baseColorTokens/baseColorTokens.d.ts +158 -0
- package/dist/themes/baseTokens/baseColorTokens/baseColorTokens.js +35 -0
- package/dist/themes/baseTokens/baseColorTokens/colorGroups/blueColors.d.ts +12 -0
- package/dist/themes/baseTokens/baseColorTokens/colorGroups/blueColors.js +15 -0
- package/dist/themes/baseTokens/baseColorTokens/colorGroups/cyanColors.d.ts +12 -0
- package/dist/themes/baseTokens/baseColorTokens/colorGroups/cyanColors.js +15 -0
- package/dist/themes/baseTokens/baseColorTokens/colorGroups/goldColors.d.ts +12 -0
- package/dist/themes/baseTokens/baseColorTokens/colorGroups/goldColors.js +15 -0
- package/dist/themes/baseTokens/baseColorTokens/colorGroups/greenColors.d.ts +12 -0
- package/dist/themes/baseTokens/baseColorTokens/colorGroups/greenColors.js +15 -0
- package/dist/themes/baseTokens/baseColorTokens/colorGroups/limeColors.d.ts +12 -0
- package/dist/themes/baseTokens/baseColorTokens/colorGroups/limeColors.js +15 -0
- package/dist/themes/baseTokens/baseColorTokens/colorGroups/magentaColors.d.ts +12 -0
- package/dist/themes/baseTokens/baseColorTokens/colorGroups/magentaColors.js +15 -0
- package/dist/themes/baseTokens/baseColorTokens/colorGroups/neutralColors.d.ts +18 -0
- package/dist/themes/baseTokens/baseColorTokens/colorGroups/neutralColors.js +21 -0
- package/dist/themes/baseTokens/baseColorTokens/colorGroups/orangeColors.d.ts +12 -0
- package/dist/themes/baseTokens/baseColorTokens/colorGroups/orangeColors.js +15 -0
- package/dist/themes/baseTokens/baseColorTokens/colorGroups/purpleColors.d.ts +12 -0
- package/dist/themes/baseTokens/baseColorTokens/colorGroups/purpleColors.js +15 -0
- package/dist/themes/baseTokens/baseColorTokens/colorGroups/redColors.d.ts +12 -0
- package/dist/themes/baseTokens/baseColorTokens/colorGroups/redColors.js +15 -0
- package/dist/themes/baseTokens/baseColorTokens/colorGroups/thrushColor.d.ts +12 -0
- package/dist/themes/baseTokens/baseColorTokens/colorGroups/thrushColor.js +15 -0
- package/dist/themes/baseTokens/baseColorTokens/colorGroups/transparentBlackColors.d.ts +12 -0
- package/dist/themes/baseTokens/baseColorTokens/colorGroups/transparentBlackColors.js +16 -0
- package/dist/themes/baseTokens/baseColorTokens/colorGroups/transparentWhiteColors.d.ts +12 -0
- package/dist/themes/baseTokens/baseColorTokens/colorGroups/transparentWhiteColors.js +16 -0
- package/dist/themes/baseTokens/baseColorTokens/colorGroups/volcanoColors.d.ts +12 -0
- package/dist/themes/baseTokens/baseColorTokens/colorGroups/volcanoColors.js +15 -0
- package/dist/themes/baseTokens/baseColorTokens/colorGroups/yellowColors.d.ts +12 -0
- package/dist/themes/baseTokens/baseColorTokens/colorGroups/yellowColors.js +15 -0
- package/dist/themes/baseTokens/baseShadowTokens/baseShadowTokens.d.ts +5 -0
- package/dist/themes/baseTokens/baseShadowTokens/baseShadowTokens.js +9 -0
- package/dist/themes/baseTokens/baseSizeTokens/baseSizeTokens.d.ts +17 -0
- package/dist/themes/baseTokens/baseSizeTokens/baseSizeTokens.js +21 -0
- package/dist/themes/baseTokens/baseTypographyTokens/baseTypographyTokens.d.ts +42 -0
- package/dist/themes/baseTokens/baseTypographyTokens/baseTypographyTokens.js +49 -0
- package/dist/themes/baseTokens/const.d.ts +2 -0
- package/dist/themes/baseTokens/const.js +7 -0
- package/dist/themes/index.d.ts +4 -0
- package/dist/themes/semanticTokens/colorSemanticTokens/semanticBlocks/PositiveColorTokens.d.ts +11 -0
- package/dist/themes/semanticTokens/colorSemanticTokens/semanticBlocks/PositiveColorTokens.js +15 -0
- package/dist/themes/semanticTokens/colorSemanticTokens/semanticBlocks/backgroundColorTokens.d.ts +25 -0
- package/dist/themes/semanticTokens/colorSemanticTokens/semanticBlocks/backgroundColorTokens.js +29 -0
- package/dist/themes/semanticTokens/colorSemanticTokens/semanticBlocks/controlShadowsTokens.d.ts +6 -0
- package/dist/themes/semanticTokens/colorSemanticTokens/semanticBlocks/controlShadowsTokens.js +12 -0
- package/dist/themes/semanticTokens/colorSemanticTokens/semanticBlocks/dangerColorTokens.d.ts +11 -0
- package/dist/themes/semanticTokens/colorSemanticTokens/semanticBlocks/dangerColorTokens.js +15 -0
- package/dist/themes/semanticTokens/colorSemanticTokens/semanticBlocks/infoColorTokens.d.ts +11 -0
- package/dist/themes/semanticTokens/colorSemanticTokens/semanticBlocks/infoColorTokens.js +15 -0
- package/dist/themes/semanticTokens/colorSemanticTokens/semanticBlocks/lineColorTokens.d.ts +8 -0
- package/dist/themes/semanticTokens/colorSemanticTokens/semanticBlocks/lineColorTokens.js +12 -0
- package/dist/themes/semanticTokens/colorSemanticTokens/semanticBlocks/primaryColorTokens.d.ts +11 -0
- package/dist/themes/semanticTokens/colorSemanticTokens/semanticBlocks/primaryColorTokens.js +15 -0
- package/dist/themes/semanticTokens/colorSemanticTokens/semanticBlocks/tagColorTokens.d.ts +40 -0
- package/dist/themes/semanticTokens/colorSemanticTokens/semanticBlocks/tagColorTokens.js +44 -0
- package/dist/themes/semanticTokens/colorSemanticTokens/semanticBlocks/textColorTokens.d.ts +19 -0
- package/dist/themes/semanticTokens/colorSemanticTokens/semanticBlocks/textColorTokens.js +24 -0
- package/dist/themes/semanticTokens/colorSemanticTokens/semanticBlocks/warningColorTokens.d.ts +11 -0
- package/dist/themes/semanticTokens/colorSemanticTokens/semanticBlocks/warningColorTokens.js +15 -0
- package/dist/themes/semanticTokens/colorSemanticTokens/semanticColorTokens.d.ts +116 -0
- package/dist/themes/semanticTokens/colorSemanticTokens/semanticColorTokens.js +25 -0
- package/dist/themes/semanticTokens/otherSemanticTokens/otherSemanticTokens.d.ts +4 -0
- package/dist/themes/semanticTokens/otherSemanticTokens/otherSemanticTokens.js +7 -0
- package/dist/themes/semanticTokens/otherSemanticTokens/semanticBlocks/opacityTokens.d.ts +5 -0
- package/dist/themes/semanticTokens/otherSemanticTokens/semanticBlocks/opacityTokens.js +8 -0
- package/dist/themes/semanticTokens/sizeSemanticTokens/semanticBlocks/borderRadiusSizeTokens.d.ts +6 -0
- package/dist/themes/semanticTokens/sizeSemanticTokens/semanticBlocks/borderRadiusSizeTokens.js +10 -0
- package/dist/themes/semanticTokens/sizeSemanticTokens/semanticBlocks/controlSizeTokens.d.ts +6 -0
- package/dist/themes/semanticTokens/sizeSemanticTokens/semanticBlocks/controlSizeTokens.js +10 -0
- package/dist/themes/semanticTokens/sizeSemanticTokens/semanticBlocks/iconSizeTokens.d.ts +9 -0
- package/dist/themes/semanticTokens/sizeSemanticTokens/semanticBlocks/iconSizeTokens.js +13 -0
- package/dist/themes/semanticTokens/sizeSemanticTokens/semanticBlocks/marginSizeTokens.d.ts +8 -0
- package/dist/themes/semanticTokens/sizeSemanticTokens/semanticBlocks/marginSizeTokens.js +12 -0
- package/dist/themes/semanticTokens/sizeSemanticTokens/semanticBlocks/paddingSizeTokens.d.ts +9 -0
- package/dist/themes/semanticTokens/sizeSemanticTokens/semanticBlocks/paddingSizeTokens.js +13 -0
- package/dist/themes/semanticTokens/sizeSemanticTokens/semanticBlocks/spaceSizeTokens.d.ts +8 -0
- package/dist/themes/semanticTokens/sizeSemanticTokens/semanticBlocks/spaceSizeTokens.js +12 -0
- package/dist/themes/semanticTokens/sizeSemanticTokens/semanticSizeTokens.d.ts +25 -0
- package/dist/themes/semanticTokens/sizeSemanticTokens/semanticSizeTokens.js +17 -0
- package/dist/themes/themes.d.ts +354 -0
- package/dist/themes/themes.js +9 -0
- package/dist/themes/themes.types.d.ts +4 -0
- package/dist/themes/themes.utils.d.ts +710 -0
- package/dist/themes/themes.utils.js +21 -0
- package/dist/types.d.ts +4 -0
- package/dist/utils/color/index.d.ts +5 -0
- package/dist/utils/color/index.js +47 -0
- package/dist/utils/color/types.d.ts +11 -0
- package/dist/utils/const/index.d.ts +1 -0
- package/dist/utils/const/index.js +4 -0
- package/dist/utils/consts.d.ts +2 -0
- package/dist/utils/consts.js +6 -0
- package/dist/utils/converters.d.ts +1 -0
- package/dist/utils/converters.js +5 -0
- package/dist/utils/index.d.ts +2 -0
- package/package.json +89 -0
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { jsxs, jsx } from "@emotion/react/jsx-runtime";
|
|
2
|
+
import { useState, useCallback, useEffect } from "react";
|
|
3
|
+
import { CLOSE_MESSAGE_DURATION, convertSecondsToMilliseconds, getIconByType } from "./Message.utils.js";
|
|
4
|
+
import { CloseOutlined } from "@infomaximum/icons";
|
|
5
|
+
import { getMessageStyle } from "./Message.styles.js";
|
|
6
|
+
import { useTheme } from "../../../../hooks/useTheme/useTheme.js";
|
|
7
|
+
const Message = ({
|
|
8
|
+
content,
|
|
9
|
+
icon,
|
|
10
|
+
type,
|
|
11
|
+
placement = "bottomRight",
|
|
12
|
+
closable,
|
|
13
|
+
duration = 3,
|
|
14
|
+
rtl,
|
|
15
|
+
className,
|
|
16
|
+
styles,
|
|
17
|
+
onClick,
|
|
18
|
+
onClose
|
|
19
|
+
}) => {
|
|
20
|
+
var _a, _b, _c, _d;
|
|
21
|
+
const theme = useTheme();
|
|
22
|
+
const [isCloseAnimation, setIsCloseAnimation] = useState(false);
|
|
23
|
+
const closeMessage = useCallback(() => {
|
|
24
|
+
setTimeout(() => {
|
|
25
|
+
setIsCloseAnimation(true);
|
|
26
|
+
setTimeout(() => {
|
|
27
|
+
onClose == null ? void 0 : onClose();
|
|
28
|
+
}, CLOSE_MESSAGE_DURATION);
|
|
29
|
+
});
|
|
30
|
+
}, [onClose]);
|
|
31
|
+
useEffect(() => {
|
|
32
|
+
const timerId = setTimeout(closeMessage, convertSecondsToMilliseconds(duration));
|
|
33
|
+
return () => clearTimeout(timerId);
|
|
34
|
+
}, [closeMessage, duration]);
|
|
35
|
+
const closeHandle = useCallback(() => {
|
|
36
|
+
closeMessage();
|
|
37
|
+
}, [closeMessage]);
|
|
38
|
+
const currentIcon = icon ?? getIconByType(type);
|
|
39
|
+
const messageStyle = getMessageStyle(type, isCloseAnimation, placement);
|
|
40
|
+
const dir = rtl ? "rtl" : void 0;
|
|
41
|
+
return /* @__PURE__ */ jsxs("span", { css: [messageStyle.wrapper(theme), (_a = styles == null ? void 0 : styles.wrapper) == null ? void 0 : _a.call(styles, theme), process.env.NODE_ENV === "production" ? "" : ";label:Message;", process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9idWlsZHMvZnJvbnRlbmQvbGlicy91aS1raXQvc3JjL2NvbXBvbmVudHMvTWVzc2FnZS9jb21wb25lbnRzL01lc3NhZ2UvTWVzc2FnZS50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBd0RNIiwiZmlsZSI6Ii9idWlsZHMvZnJvbnRlbmQvbGlicy91aS1raXQvc3JjL2NvbXBvbmVudHMvTWVzc2FnZS9jb21wb25lbnRzL01lc3NhZ2UvTWVzc2FnZS50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB0eXBlIEZDLCB1c2VDYWxsYmFjaywgdXNlRWZmZWN0LCB1c2VTdGF0ZSB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHR5cGUgeyBNZXNzYWdlUHJvcHMgfSBmcm9tIFwiLi9NZXNzYWdlLnR5cGVzXCI7XG5pbXBvcnQge1xuICBDTE9TRV9NRVNTQUdFX0RVUkFUSU9OLFxuICBjb252ZXJ0U2Vjb25kc1RvTWlsbGlzZWNvbmRzLFxuICBnZXRJY29uQnlUeXBlLFxufSBmcm9tIFwiLi9NZXNzYWdlLnV0aWxzXCI7XG5pbXBvcnQgeyBDbG9zZU91dGxpbmVkIH0gZnJvbSBcIkBpbmZvbWF4aW11bS9pY29uc1wiO1xuaW1wb3J0IHsgZ2V0TWVzc2FnZVN0eWxlIH0gZnJvbSBcIi4vTWVzc2FnZS5zdHlsZXNcIjtcbmltcG9ydCB7IHVzZVRoZW1lIH0gZnJvbSBcImhvb2tzL3VzZVRoZW1lXCI7XG5cbmV4cG9ydCBjb25zdCBNZXNzYWdlOiBGQzxNZXNzYWdlUHJvcHM+ID0gKHtcbiAgY29udGVudCxcbiAgaWNvbixcbiAgdHlwZSxcbiAgcGxhY2VtZW50ID0gXCJib3R0b21SaWdodFwiLFxuICBjbG9zYWJsZSxcbiAgZHVyYXRpb24gPSAzLFxuICBydGwsXG4gIGNsYXNzTmFtZSxcbiAgc3R5bGVzLFxuICBvbkNsaWNrLFxuICBvbkNsb3NlLFxufSkgPT4ge1xuICBjb25zdCB0aGVtZSA9IHVzZVRoZW1lKCk7XG5cbiAgY29uc3QgW2lzQ2xvc2VBbmltYXRpb24sIHNldElzQ2xvc2VBbmltYXRpb25dID0gdXNlU3RhdGUoZmFsc2UpO1xuXG4gIGNvbnN0IGNsb3NlTWVzc2FnZSA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHNldElzQ2xvc2VBbmltYXRpb24odHJ1ZSk7XG5cbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICBvbkNsb3NlPy4oKTtcbiAgICAgIH0sIENMT1NFX01FU1NBR0VfRFVSQVRJT04pO1xuICAgIH0pO1xuICB9LCBbb25DbG9zZV0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgY29uc3QgdGltZXJJZCA9IHNldFRpbWVvdXQoY2xvc2VNZXNzYWdlLCBjb252ZXJ0U2Vjb25kc1RvTWlsbGlzZWNvbmRzKGR1cmF0aW9uKSk7XG5cbiAgICByZXR1cm4gKCkgPT4gY2xlYXJUaW1lb3V0KHRpbWVySWQpO1xuICB9LCBbY2xvc2VNZXNzYWdlLCBkdXJhdGlvbl0pO1xuXG4gIGNvbnN0IGNsb3NlSGFuZGxlID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIGNsb3NlTWVzc2FnZSgpO1xuICB9LCBbY2xvc2VNZXNzYWdlXSk7XG5cbiAgY29uc3QgY3VycmVudEljb24gPSBpY29uID8/IGdldEljb25CeVR5cGUodHlwZSk7XG5cbiAgY29uc3QgbWVzc2FnZVN0eWxlID0gZ2V0TWVzc2FnZVN0eWxlKHR5cGUsIGlzQ2xvc2VBbmltYXRpb24sIHBsYWNlbWVudCk7XG5cbiAgY29uc3QgZGlyID0gcnRsID8gXCJydGxcIiA6IHVuZGVmaW5lZDtcblxuICByZXR1cm4gKFxuICAgIDxzcGFuXG4gICAgICBjc3M9e1ttZXNzYWdlU3R5bGUud3JhcHBlcih0aGVtZSksIHN0eWxlcz8ud3JhcHBlcj8uKHRoZW1lKV19XG4gICAgICBjbGFzc05hbWU9e2NsYXNzTmFtZX1cbiAgICAgIG9uQ2xpY2s9e29uQ2xpY2t9XG4gICAgICBkaXI9e2Rpcn1cbiAgICA+XG4gICAgICA8c3BhbiBjc3M9e1ttZXNzYWdlU3R5bGUuaWNvbldyYXBwZXIodGhlbWUpLCBzdHlsZXM/Lmljb25XcmFwcGVyPy4odGhlbWUpXX0+XG4gICAgICAgIHtjdXJyZW50SWNvbn1cbiAgICAgIDwvc3Bhbj5cbiAgICAgIDxzcGFuIGNzcz17W21lc3NhZ2VTdHlsZS5jb250ZW50V3JhcHBlcih0aGVtZSksIHN0eWxlcz8uY29udGVudFdyYXBwZXI/Lih0aGVtZSldfSBkaXI9e2Rpcn0+XG4gICAgICAgIHtjb250ZW50fVxuICAgICAgPC9zcGFuPlxuICAgICAge2Nsb3NhYmxlICYmIChcbiAgICAgICAgPHNwYW5cbiAgICAgICAgICBjc3M9e1ttZXNzYWdlU3R5bGUuY2xvc2VJY29uV3JhcHBlcih0aGVtZSksIHN0eWxlcz8uY2xvc2VJY29uV3JhcHBlcj8uKHRoZW1lKV19XG4gICAgICAgICAgb25DbGljaz17Y2xvc2VIYW5kbGV9XG4gICAgICAgID5cbiAgICAgICAgICA8Q2xvc2VPdXRsaW5lZCAvPlxuICAgICAgICA8L3NwYW4+XG4gICAgICApfVxuICAgIDwvc3Bhbj5cbiAgKTtcbn07XG4iXX0= */"], className, onClick, dir, children: [
|
|
42
|
+
/* @__PURE__ */ jsx("span", { css: [messageStyle.iconWrapper(theme), (_b = styles == null ? void 0 : styles.iconWrapper) == null ? void 0 : _b.call(styles, theme), process.env.NODE_ENV === "production" ? "" : ";label:Message;", process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9idWlsZHMvZnJvbnRlbmQvbGlicy91aS1raXQvc3JjL2NvbXBvbmVudHMvTWVzc2FnZS9jb21wb25lbnRzL01lc3NhZ2UvTWVzc2FnZS50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBNkRZIiwiZmlsZSI6Ii9idWlsZHMvZnJvbnRlbmQvbGlicy91aS1raXQvc3JjL2NvbXBvbmVudHMvTWVzc2FnZS9jb21wb25lbnRzL01lc3NhZ2UvTWVzc2FnZS50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB0eXBlIEZDLCB1c2VDYWxsYmFjaywgdXNlRWZmZWN0LCB1c2VTdGF0ZSB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHR5cGUgeyBNZXNzYWdlUHJvcHMgfSBmcm9tIFwiLi9NZXNzYWdlLnR5cGVzXCI7XG5pbXBvcnQge1xuICBDTE9TRV9NRVNTQUdFX0RVUkFUSU9OLFxuICBjb252ZXJ0U2Vjb25kc1RvTWlsbGlzZWNvbmRzLFxuICBnZXRJY29uQnlUeXBlLFxufSBmcm9tIFwiLi9NZXNzYWdlLnV0aWxzXCI7XG5pbXBvcnQgeyBDbG9zZU91dGxpbmVkIH0gZnJvbSBcIkBpbmZvbWF4aW11bS9pY29uc1wiO1xuaW1wb3J0IHsgZ2V0TWVzc2FnZVN0eWxlIH0gZnJvbSBcIi4vTWVzc2FnZS5zdHlsZXNcIjtcbmltcG9ydCB7IHVzZVRoZW1lIH0gZnJvbSBcImhvb2tzL3VzZVRoZW1lXCI7XG5cbmV4cG9ydCBjb25zdCBNZXNzYWdlOiBGQzxNZXNzYWdlUHJvcHM+ID0gKHtcbiAgY29udGVudCxcbiAgaWNvbixcbiAgdHlwZSxcbiAgcGxhY2VtZW50ID0gXCJib3R0b21SaWdodFwiLFxuICBjbG9zYWJsZSxcbiAgZHVyYXRpb24gPSAzLFxuICBydGwsXG4gIGNsYXNzTmFtZSxcbiAgc3R5bGVzLFxuICBvbkNsaWNrLFxuICBvbkNsb3NlLFxufSkgPT4ge1xuICBjb25zdCB0aGVtZSA9IHVzZVRoZW1lKCk7XG5cbiAgY29uc3QgW2lzQ2xvc2VBbmltYXRpb24sIHNldElzQ2xvc2VBbmltYXRpb25dID0gdXNlU3RhdGUoZmFsc2UpO1xuXG4gIGNvbnN0IGNsb3NlTWVzc2FnZSA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHNldElzQ2xvc2VBbmltYXRpb24odHJ1ZSk7XG5cbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICBvbkNsb3NlPy4oKTtcbiAgICAgIH0sIENMT1NFX01FU1NBR0VfRFVSQVRJT04pO1xuICAgIH0pO1xuICB9LCBbb25DbG9zZV0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgY29uc3QgdGltZXJJZCA9IHNldFRpbWVvdXQoY2xvc2VNZXNzYWdlLCBjb252ZXJ0U2Vjb25kc1RvTWlsbGlzZWNvbmRzKGR1cmF0aW9uKSk7XG5cbiAgICByZXR1cm4gKCkgPT4gY2xlYXJUaW1lb3V0KHRpbWVySWQpO1xuICB9LCBbY2xvc2VNZXNzYWdlLCBkdXJhdGlvbl0pO1xuXG4gIGNvbnN0IGNsb3NlSGFuZGxlID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIGNsb3NlTWVzc2FnZSgpO1xuICB9LCBbY2xvc2VNZXNzYWdlXSk7XG5cbiAgY29uc3QgY3VycmVudEljb24gPSBpY29uID8/IGdldEljb25CeVR5cGUodHlwZSk7XG5cbiAgY29uc3QgbWVzc2FnZVN0eWxlID0gZ2V0TWVzc2FnZVN0eWxlKHR5cGUsIGlzQ2xvc2VBbmltYXRpb24sIHBsYWNlbWVudCk7XG5cbiAgY29uc3QgZGlyID0gcnRsID8gXCJydGxcIiA6IHVuZGVmaW5lZDtcblxuICByZXR1cm4gKFxuICAgIDxzcGFuXG4gICAgICBjc3M9e1ttZXNzYWdlU3R5bGUud3JhcHBlcih0aGVtZSksIHN0eWxlcz8ud3JhcHBlcj8uKHRoZW1lKV19XG4gICAgICBjbGFzc05hbWU9e2NsYXNzTmFtZX1cbiAgICAgIG9uQ2xpY2s9e29uQ2xpY2t9XG4gICAgICBkaXI9e2Rpcn1cbiAgICA+XG4gICAgICA8c3BhbiBjc3M9e1ttZXNzYWdlU3R5bGUuaWNvbldyYXBwZXIodGhlbWUpLCBzdHlsZXM/Lmljb25XcmFwcGVyPy4odGhlbWUpXX0+XG4gICAgICAgIHtjdXJyZW50SWNvbn1cbiAgICAgIDwvc3Bhbj5cbiAgICAgIDxzcGFuIGNzcz17W21lc3NhZ2VTdHlsZS5jb250ZW50V3JhcHBlcih0aGVtZSksIHN0eWxlcz8uY29udGVudFdyYXBwZXI/Lih0aGVtZSldfSBkaXI9e2Rpcn0+XG4gICAgICAgIHtjb250ZW50fVxuICAgICAgPC9zcGFuPlxuICAgICAge2Nsb3NhYmxlICYmIChcbiAgICAgICAgPHNwYW5cbiAgICAgICAgICBjc3M9e1ttZXNzYWdlU3R5bGUuY2xvc2VJY29uV3JhcHBlcih0aGVtZSksIHN0eWxlcz8uY2xvc2VJY29uV3JhcHBlcj8uKHRoZW1lKV19XG4gICAgICAgICAgb25DbGljaz17Y2xvc2VIYW5kbGV9XG4gICAgICAgID5cbiAgICAgICAgICA8Q2xvc2VPdXRsaW5lZCAvPlxuICAgICAgICA8L3NwYW4+XG4gICAgICApfVxuICAgIDwvc3Bhbj5cbiAgKTtcbn07XG4iXX0= */"], children: currentIcon }),
|
|
43
|
+
/* @__PURE__ */ jsx("span", { css: [messageStyle.contentWrapper(theme), (_c = styles == null ? void 0 : styles.contentWrapper) == null ? void 0 : _c.call(styles, theme), process.env.NODE_ENV === "production" ? "" : ";label:Message;", process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9idWlsZHMvZnJvbnRlbmQvbGlicy91aS1raXQvc3JjL2NvbXBvbmVudHMvTWVzc2FnZS9jb21wb25lbnRzL01lc3NhZ2UvTWVzc2FnZS50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBZ0VZIiwiZmlsZSI6Ii9idWlsZHMvZnJvbnRlbmQvbGlicy91aS1raXQvc3JjL2NvbXBvbmVudHMvTWVzc2FnZS9jb21wb25lbnRzL01lc3NhZ2UvTWVzc2FnZS50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB0eXBlIEZDLCB1c2VDYWxsYmFjaywgdXNlRWZmZWN0LCB1c2VTdGF0ZSB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHR5cGUgeyBNZXNzYWdlUHJvcHMgfSBmcm9tIFwiLi9NZXNzYWdlLnR5cGVzXCI7XG5pbXBvcnQge1xuICBDTE9TRV9NRVNTQUdFX0RVUkFUSU9OLFxuICBjb252ZXJ0U2Vjb25kc1RvTWlsbGlzZWNvbmRzLFxuICBnZXRJY29uQnlUeXBlLFxufSBmcm9tIFwiLi9NZXNzYWdlLnV0aWxzXCI7XG5pbXBvcnQgeyBDbG9zZU91dGxpbmVkIH0gZnJvbSBcIkBpbmZvbWF4aW11bS9pY29uc1wiO1xuaW1wb3J0IHsgZ2V0TWVzc2FnZVN0eWxlIH0gZnJvbSBcIi4vTWVzc2FnZS5zdHlsZXNcIjtcbmltcG9ydCB7IHVzZVRoZW1lIH0gZnJvbSBcImhvb2tzL3VzZVRoZW1lXCI7XG5cbmV4cG9ydCBjb25zdCBNZXNzYWdlOiBGQzxNZXNzYWdlUHJvcHM+ID0gKHtcbiAgY29udGVudCxcbiAgaWNvbixcbiAgdHlwZSxcbiAgcGxhY2VtZW50ID0gXCJib3R0b21SaWdodFwiLFxuICBjbG9zYWJsZSxcbiAgZHVyYXRpb24gPSAzLFxuICBydGwsXG4gIGNsYXNzTmFtZSxcbiAgc3R5bGVzLFxuICBvbkNsaWNrLFxuICBvbkNsb3NlLFxufSkgPT4ge1xuICBjb25zdCB0aGVtZSA9IHVzZVRoZW1lKCk7XG5cbiAgY29uc3QgW2lzQ2xvc2VBbmltYXRpb24sIHNldElzQ2xvc2VBbmltYXRpb25dID0gdXNlU3RhdGUoZmFsc2UpO1xuXG4gIGNvbnN0IGNsb3NlTWVzc2FnZSA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHNldElzQ2xvc2VBbmltYXRpb24odHJ1ZSk7XG5cbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICBvbkNsb3NlPy4oKTtcbiAgICAgIH0sIENMT1NFX01FU1NBR0VfRFVSQVRJT04pO1xuICAgIH0pO1xuICB9LCBbb25DbG9zZV0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgY29uc3QgdGltZXJJZCA9IHNldFRpbWVvdXQoY2xvc2VNZXNzYWdlLCBjb252ZXJ0U2Vjb25kc1RvTWlsbGlzZWNvbmRzKGR1cmF0aW9uKSk7XG5cbiAgICByZXR1cm4gKCkgPT4gY2xlYXJUaW1lb3V0KHRpbWVySWQpO1xuICB9LCBbY2xvc2VNZXNzYWdlLCBkdXJhdGlvbl0pO1xuXG4gIGNvbnN0IGNsb3NlSGFuZGxlID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIGNsb3NlTWVzc2FnZSgpO1xuICB9LCBbY2xvc2VNZXNzYWdlXSk7XG5cbiAgY29uc3QgY3VycmVudEljb24gPSBpY29uID8/IGdldEljb25CeVR5cGUodHlwZSk7XG5cbiAgY29uc3QgbWVzc2FnZVN0eWxlID0gZ2V0TWVzc2FnZVN0eWxlKHR5cGUsIGlzQ2xvc2VBbmltYXRpb24sIHBsYWNlbWVudCk7XG5cbiAgY29uc3QgZGlyID0gcnRsID8gXCJydGxcIiA6IHVuZGVmaW5lZDtcblxuICByZXR1cm4gKFxuICAgIDxzcGFuXG4gICAgICBjc3M9e1ttZXNzYWdlU3R5bGUud3JhcHBlcih0aGVtZSksIHN0eWxlcz8ud3JhcHBlcj8uKHRoZW1lKV19XG4gICAgICBjbGFzc05hbWU9e2NsYXNzTmFtZX1cbiAgICAgIG9uQ2xpY2s9e29uQ2xpY2t9XG4gICAgICBkaXI9e2Rpcn1cbiAgICA+XG4gICAgICA8c3BhbiBjc3M9e1ttZXNzYWdlU3R5bGUuaWNvbldyYXBwZXIodGhlbWUpLCBzdHlsZXM/Lmljb25XcmFwcGVyPy4odGhlbWUpXX0+XG4gICAgICAgIHtjdXJyZW50SWNvbn1cbiAgICAgIDwvc3Bhbj5cbiAgICAgIDxzcGFuIGNzcz17W21lc3NhZ2VTdHlsZS5jb250ZW50V3JhcHBlcih0aGVtZSksIHN0eWxlcz8uY29udGVudFdyYXBwZXI/Lih0aGVtZSldfSBkaXI9e2Rpcn0+XG4gICAgICAgIHtjb250ZW50fVxuICAgICAgPC9zcGFuPlxuICAgICAge2Nsb3NhYmxlICYmIChcbiAgICAgICAgPHNwYW5cbiAgICAgICAgICBjc3M9e1ttZXNzYWdlU3R5bGUuY2xvc2VJY29uV3JhcHBlcih0aGVtZSksIHN0eWxlcz8uY2xvc2VJY29uV3JhcHBlcj8uKHRoZW1lKV19XG4gICAgICAgICAgb25DbGljaz17Y2xvc2VIYW5kbGV9XG4gICAgICAgID5cbiAgICAgICAgICA8Q2xvc2VPdXRsaW5lZCAvPlxuICAgICAgICA8L3NwYW4+XG4gICAgICApfVxuICAgIDwvc3Bhbj5cbiAgKTtcbn07XG4iXX0= */"], dir, children: content }),
|
|
44
|
+
closable && /* @__PURE__ */ jsx("span", { css: [messageStyle.closeIconWrapper(theme), (_d = styles == null ? void 0 : styles.closeIconWrapper) == null ? void 0 : _d.call(styles, theme), process.env.NODE_ENV === "production" ? "" : ";label:Message;", process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9idWlsZHMvZnJvbnRlbmQvbGlicy91aS1raXQvc3JjL2NvbXBvbmVudHMvTWVzc2FnZS9jb21wb25lbnRzL01lc3NhZ2UvTWVzc2FnZS50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBcUVVIiwiZmlsZSI6Ii9idWlsZHMvZnJvbnRlbmQvbGlicy91aS1raXQvc3JjL2NvbXBvbmVudHMvTWVzc2FnZS9jb21wb25lbnRzL01lc3NhZ2UvTWVzc2FnZS50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB0eXBlIEZDLCB1c2VDYWxsYmFjaywgdXNlRWZmZWN0LCB1c2VTdGF0ZSB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHR5cGUgeyBNZXNzYWdlUHJvcHMgfSBmcm9tIFwiLi9NZXNzYWdlLnR5cGVzXCI7XG5pbXBvcnQge1xuICBDTE9TRV9NRVNTQUdFX0RVUkFUSU9OLFxuICBjb252ZXJ0U2Vjb25kc1RvTWlsbGlzZWNvbmRzLFxuICBnZXRJY29uQnlUeXBlLFxufSBmcm9tIFwiLi9NZXNzYWdlLnV0aWxzXCI7XG5pbXBvcnQgeyBDbG9zZU91dGxpbmVkIH0gZnJvbSBcIkBpbmZvbWF4aW11bS9pY29uc1wiO1xuaW1wb3J0IHsgZ2V0TWVzc2FnZVN0eWxlIH0gZnJvbSBcIi4vTWVzc2FnZS5zdHlsZXNcIjtcbmltcG9ydCB7IHVzZVRoZW1lIH0gZnJvbSBcImhvb2tzL3VzZVRoZW1lXCI7XG5cbmV4cG9ydCBjb25zdCBNZXNzYWdlOiBGQzxNZXNzYWdlUHJvcHM+ID0gKHtcbiAgY29udGVudCxcbiAgaWNvbixcbiAgdHlwZSxcbiAgcGxhY2VtZW50ID0gXCJib3R0b21SaWdodFwiLFxuICBjbG9zYWJsZSxcbiAgZHVyYXRpb24gPSAzLFxuICBydGwsXG4gIGNsYXNzTmFtZSxcbiAgc3R5bGVzLFxuICBvbkNsaWNrLFxuICBvbkNsb3NlLFxufSkgPT4ge1xuICBjb25zdCB0aGVtZSA9IHVzZVRoZW1lKCk7XG5cbiAgY29uc3QgW2lzQ2xvc2VBbmltYXRpb24sIHNldElzQ2xvc2VBbmltYXRpb25dID0gdXNlU3RhdGUoZmFsc2UpO1xuXG4gIGNvbnN0IGNsb3NlTWVzc2FnZSA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHNldElzQ2xvc2VBbmltYXRpb24odHJ1ZSk7XG5cbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICBvbkNsb3NlPy4oKTtcbiAgICAgIH0sIENMT1NFX01FU1NBR0VfRFVSQVRJT04pO1xuICAgIH0pO1xuICB9LCBbb25DbG9zZV0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgY29uc3QgdGltZXJJZCA9IHNldFRpbWVvdXQoY2xvc2VNZXNzYWdlLCBjb252ZXJ0U2Vjb25kc1RvTWlsbGlzZWNvbmRzKGR1cmF0aW9uKSk7XG5cbiAgICByZXR1cm4gKCkgPT4gY2xlYXJUaW1lb3V0KHRpbWVySWQpO1xuICB9LCBbY2xvc2VNZXNzYWdlLCBkdXJhdGlvbl0pO1xuXG4gIGNvbnN0IGNsb3NlSGFuZGxlID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIGNsb3NlTWVzc2FnZSgpO1xuICB9LCBbY2xvc2VNZXNzYWdlXSk7XG5cbiAgY29uc3QgY3VycmVudEljb24gPSBpY29uID8/IGdldEljb25CeVR5cGUodHlwZSk7XG5cbiAgY29uc3QgbWVzc2FnZVN0eWxlID0gZ2V0TWVzc2FnZVN0eWxlKHR5cGUsIGlzQ2xvc2VBbmltYXRpb24sIHBsYWNlbWVudCk7XG5cbiAgY29uc3QgZGlyID0gcnRsID8gXCJydGxcIiA6IHVuZGVmaW5lZDtcblxuICByZXR1cm4gKFxuICAgIDxzcGFuXG4gICAgICBjc3M9e1ttZXNzYWdlU3R5bGUud3JhcHBlcih0aGVtZSksIHN0eWxlcz8ud3JhcHBlcj8uKHRoZW1lKV19XG4gICAgICBjbGFzc05hbWU9e2NsYXNzTmFtZX1cbiAgICAgIG9uQ2xpY2s9e29uQ2xpY2t9XG4gICAgICBkaXI9e2Rpcn1cbiAgICA+XG4gICAgICA8c3BhbiBjc3M9e1ttZXNzYWdlU3R5bGUuaWNvbldyYXBwZXIodGhlbWUpLCBzdHlsZXM/Lmljb25XcmFwcGVyPy4odGhlbWUpXX0+XG4gICAgICAgIHtjdXJyZW50SWNvbn1cbiAgICAgIDwvc3Bhbj5cbiAgICAgIDxzcGFuIGNzcz17W21lc3NhZ2VTdHlsZS5jb250ZW50V3JhcHBlcih0aGVtZSksIHN0eWxlcz8uY29udGVudFdyYXBwZXI/Lih0aGVtZSldfSBkaXI9e2Rpcn0+XG4gICAgICAgIHtjb250ZW50fVxuICAgICAgPC9zcGFuPlxuICAgICAge2Nsb3NhYmxlICYmIChcbiAgICAgICAgPHNwYW5cbiAgICAgICAgICBjc3M9e1ttZXNzYWdlU3R5bGUuY2xvc2VJY29uV3JhcHBlcih0aGVtZSksIHN0eWxlcz8uY2xvc2VJY29uV3JhcHBlcj8uKHRoZW1lKV19XG4gICAgICAgICAgb25DbGljaz17Y2xvc2VIYW5kbGV9XG4gICAgICAgID5cbiAgICAgICAgICA8Q2xvc2VPdXRsaW5lZCAvPlxuICAgICAgICA8L3NwYW4+XG4gICAgICApfVxuICAgIDwvc3Bhbj5cbiAgKTtcbn07XG4iXX0= */"], onClick: closeHandle, children: /* @__PURE__ */ jsx(CloseOutlined, {}) })
|
|
45
|
+
] });
|
|
46
|
+
};
|
|
47
|
+
export {
|
|
48
|
+
Message
|
|
49
|
+
};
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { Theme } from 'themes';
|
|
2
|
+
import { MessagePlacement, MessageType } from 'components/Message/message.types';
|
|
3
|
+
export declare const getMessageStyle: (type: MessageType, isCloseAnimation: boolean, placement: MessagePlacement) => {
|
|
4
|
+
wrapper: (theme: Theme) => {
|
|
5
|
+
display: string;
|
|
6
|
+
alignItems: string;
|
|
7
|
+
maxWidth: number;
|
|
8
|
+
padding: string;
|
|
9
|
+
borderRadius: 8;
|
|
10
|
+
gap: 8;
|
|
11
|
+
background: "#FFFFFF";
|
|
12
|
+
boxShadow: `0 3px 6px -4px rgba(${number}, ${number}, ${number}, 0.12), 0 6px 16px 0 rgba(${number}, ${number}, ${number}, 0.08), 0 9px 28px 8px rgba(${number}, ${number}, ${number}, 0.05)`;
|
|
13
|
+
animationName: {
|
|
14
|
+
name: string;
|
|
15
|
+
styles: string;
|
|
16
|
+
anim: 1;
|
|
17
|
+
toString: () => string;
|
|
18
|
+
} & string;
|
|
19
|
+
animationDuration: string;
|
|
20
|
+
animationIterationCount: number;
|
|
21
|
+
animationTimingFunction: string;
|
|
22
|
+
};
|
|
23
|
+
iconWrapper: (theme: Theme) => {
|
|
24
|
+
display: string;
|
|
25
|
+
alignItems: string;
|
|
26
|
+
justifyContent: string;
|
|
27
|
+
fontSize: 16;
|
|
28
|
+
color: "#1677FF" | "#52C41A" | "#FA8C16" | "#FF4D4F" | "#0CB3B3";
|
|
29
|
+
};
|
|
30
|
+
contentWrapper: (theme: Theme) => {
|
|
31
|
+
color: "#262626";
|
|
32
|
+
fontFamily: "Roboto";
|
|
33
|
+
fontSize: 14;
|
|
34
|
+
lineHeight: "20px";
|
|
35
|
+
};
|
|
36
|
+
closeIconWrapper: (theme: Theme) => {
|
|
37
|
+
display: string;
|
|
38
|
+
alignItems: string;
|
|
39
|
+
justifyContent: string;
|
|
40
|
+
fontSize: 12;
|
|
41
|
+
color: `rgba(${number}, ${number}, ${number}, 0.3)`;
|
|
42
|
+
cursor: string;
|
|
43
|
+
":hover": {
|
|
44
|
+
color: `rgba(${number}, ${number}, ${number}, 0.7)`;
|
|
45
|
+
};
|
|
46
|
+
};
|
|
47
|
+
};
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import { getMessageTokens } from "./Message.tokens.js";
|
|
2
|
+
import { keyframes } from "@emotion/react";
|
|
3
|
+
import { MESSAGE_ANIMATION_DURATION } from "./Message.utils.js";
|
|
4
|
+
const getIconColor = (theme, type) => {
|
|
5
|
+
switch (type) {
|
|
6
|
+
case "success":
|
|
7
|
+
return theme.positiveBase;
|
|
8
|
+
case "info":
|
|
9
|
+
return theme.infoBase;
|
|
10
|
+
case "warning":
|
|
11
|
+
return theme.warningBase;
|
|
12
|
+
case "error":
|
|
13
|
+
return theme.dangerBase;
|
|
14
|
+
default:
|
|
15
|
+
return theme.primaryBase;
|
|
16
|
+
}
|
|
17
|
+
};
|
|
18
|
+
const messageMoveIn = (isBottomSide) => keyframes`
|
|
19
|
+
0% {
|
|
20
|
+
transform: translate(0px, ${isBottomSide ? 24 : -24}px);
|
|
21
|
+
opacity: 0;
|
|
22
|
+
}
|
|
23
|
+
100% {
|
|
24
|
+
transform: translate(0px, 0px);
|
|
25
|
+
opacity: 1;
|
|
26
|
+
}
|
|
27
|
+
`;
|
|
28
|
+
const messageMoveOut = (isBottomSide) => keyframes`
|
|
29
|
+
0% {
|
|
30
|
+
transform: translate(0px, 0px);
|
|
31
|
+
opacity: 1;
|
|
32
|
+
}
|
|
33
|
+
100% {
|
|
34
|
+
transform: translate(0px, ${isBottomSide ? 24 : -24}px);
|
|
35
|
+
opacity: 0;
|
|
36
|
+
}
|
|
37
|
+
`;
|
|
38
|
+
const getAnimationName = (isCloseAnimation, placement) => {
|
|
39
|
+
const isBottomSide = ["bottom", "bottomRight", "bottomLeft"].includes(placement);
|
|
40
|
+
if (isCloseAnimation) {
|
|
41
|
+
return messageMoveOut(isBottomSide);
|
|
42
|
+
}
|
|
43
|
+
return messageMoveIn(isBottomSide);
|
|
44
|
+
};
|
|
45
|
+
const getMessageStyle = (type, isCloseAnimation, placement) => {
|
|
46
|
+
return {
|
|
47
|
+
wrapper: (theme) => {
|
|
48
|
+
const messageTokens = getMessageTokens(theme);
|
|
49
|
+
return {
|
|
50
|
+
display: "inline-flex",
|
|
51
|
+
alignItems: "center",
|
|
52
|
+
maxWidth: messageTokens.messageMaxWidth,
|
|
53
|
+
padding: `${messageTokens.messagePaddingVertical}px ${messageTokens.messagePaddingHorizontal}px`,
|
|
54
|
+
borderRadius: theme.borderRadiusL,
|
|
55
|
+
gap: theme.marginM,
|
|
56
|
+
background: theme.bgFloat,
|
|
57
|
+
boxShadow: theme.shadow2,
|
|
58
|
+
animationName: getAnimationName(isCloseAnimation, placement),
|
|
59
|
+
animationDuration: `${MESSAGE_ANIMATION_DURATION}ms`,
|
|
60
|
+
animationIterationCount: 1,
|
|
61
|
+
animationTimingFunction: "linear"
|
|
62
|
+
};
|
|
63
|
+
},
|
|
64
|
+
iconWrapper: (theme) => ({
|
|
65
|
+
display: "flex",
|
|
66
|
+
alignItems: "center",
|
|
67
|
+
justifyContent: "center",
|
|
68
|
+
fontSize: theme.iconM,
|
|
69
|
+
color: getIconColor(theme, type)
|
|
70
|
+
}),
|
|
71
|
+
contentWrapper: (theme) => {
|
|
72
|
+
const messageTokens = getMessageTokens(theme);
|
|
73
|
+
return {
|
|
74
|
+
...theme.typography.body2,
|
|
75
|
+
color: messageTokens.messageText
|
|
76
|
+
};
|
|
77
|
+
},
|
|
78
|
+
closeIconWrapper: (theme) => ({
|
|
79
|
+
display: "flex",
|
|
80
|
+
alignItems: "center",
|
|
81
|
+
justifyContent: "center",
|
|
82
|
+
fontSize: theme.iconS,
|
|
83
|
+
color: theme.textIcon,
|
|
84
|
+
cursor: "pointer",
|
|
85
|
+
":hover": {
|
|
86
|
+
color: theme.textIconHover
|
|
87
|
+
}
|
|
88
|
+
})
|
|
89
|
+
};
|
|
90
|
+
};
|
|
91
|
+
export {
|
|
92
|
+
getMessageStyle
|
|
93
|
+
};
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { Interpolation } from '@emotion/react';
|
|
2
|
+
import { MessagePlacement, MessageType } from '../../message.types';
|
|
3
|
+
import { MouseEvent, ReactNode } from 'react';
|
|
4
|
+
import { Theme } from '../../../../themes';
|
|
5
|
+
export interface MessageProps {
|
|
6
|
+
type: MessageType;
|
|
7
|
+
placement?: MessagePlacement;
|
|
8
|
+
content: ReactNode;
|
|
9
|
+
duration?: number;
|
|
10
|
+
closable?: boolean;
|
|
11
|
+
icon?: ReactNode;
|
|
12
|
+
rtl?: boolean;
|
|
13
|
+
className?: string;
|
|
14
|
+
styles?: {
|
|
15
|
+
wrapper?: (theme: Theme) => Interpolation;
|
|
16
|
+
iconWrapper?: (theme: Theme) => Interpolation;
|
|
17
|
+
contentWrapper?: (theme: Theme) => Interpolation;
|
|
18
|
+
closeIconWrapper?: (theme: Theme) => Interpolation;
|
|
19
|
+
};
|
|
20
|
+
onClick?: (e: MouseEvent) => void;
|
|
21
|
+
onClose?: () => void;
|
|
22
|
+
}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
import { MessageType } from 'components/Message/message.types';
|
|
3
|
+
export declare const MESSAGE_ANIMATION_DURATION = 150;
|
|
4
|
+
export declare const CLOSE_MESSAGE_DURATION: number;
|
|
5
|
+
export declare const getIconByType: (type: MessageType) => ReactNode;
|
|
6
|
+
export declare const convertSecondsToMilliseconds: (seconds: number) => number;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { jsx } from "@emotion/react/jsx-runtime";
|
|
2
|
+
import { CheckCircleFilled, InfoCircleFilled, ExclamationCircleFilled, CloseCircleFilled } from "@infomaximum/icons";
|
|
3
|
+
import { LoadingOutlined } from "../../../../icons/icons/LoadingOutlined.js";
|
|
4
|
+
const MESSAGE_ANIMATION_DURATION = 150;
|
|
5
|
+
const CLOSE_MESSAGE_DURATION = MESSAGE_ANIMATION_DURATION - 30;
|
|
6
|
+
const icons = {
|
|
7
|
+
success: /* @__PURE__ */ jsx(CheckCircleFilled, {}),
|
|
8
|
+
info: /* @__PURE__ */ jsx(InfoCircleFilled, {}),
|
|
9
|
+
warning: /* @__PURE__ */ jsx(ExclamationCircleFilled, {}),
|
|
10
|
+
error: /* @__PURE__ */ jsx(CloseCircleFilled, {}),
|
|
11
|
+
loading: /* @__PURE__ */ jsx(LoadingOutlined, {})
|
|
12
|
+
};
|
|
13
|
+
const getIconByType = (type) => {
|
|
14
|
+
return icons[type];
|
|
15
|
+
};
|
|
16
|
+
const convertSecondsToMilliseconds = (seconds) => seconds * 1e3;
|
|
17
|
+
export {
|
|
18
|
+
CLOSE_MESSAGE_DURATION,
|
|
19
|
+
MESSAGE_ANIMATION_DURATION,
|
|
20
|
+
convertSecondsToMilliseconds,
|
|
21
|
+
getIconByType
|
|
22
|
+
};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { jsx } from "@emotion/react/jsx-runtime";
|
|
2
|
+
import { memo } from "react";
|
|
3
|
+
import { getMessageListStyle } from "./MessageList.styles.js";
|
|
4
|
+
const MessageList = memo(({
|
|
5
|
+
placement,
|
|
6
|
+
config,
|
|
7
|
+
messages
|
|
8
|
+
}) => {
|
|
9
|
+
return /* @__PURE__ */ jsx("div", { css: getMessageListStyle(placement, config), children: messages.map((item) => item.content) });
|
|
10
|
+
});
|
|
11
|
+
export {
|
|
12
|
+
MessageList
|
|
13
|
+
};
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import { ConfigType, MessagePlacement } from 'components/Message/message.types';
|
|
2
|
+
export declare const getMessageListStyle: (placement: MessagePlacement, config: ConfigType) => {
|
|
3
|
+
readonly top: number;
|
|
4
|
+
readonly gap: number;
|
|
5
|
+
readonly flexDirection: "column";
|
|
6
|
+
readonly left: number;
|
|
7
|
+
readonly alignItems: string;
|
|
8
|
+
readonly display: "flex";
|
|
9
|
+
readonly position: "fixed";
|
|
10
|
+
readonly padding: `0 ${number}px`;
|
|
11
|
+
readonly boxSizing: "border-box";
|
|
12
|
+
readonly zIndex: number | undefined;
|
|
13
|
+
} | {
|
|
14
|
+
readonly top: number;
|
|
15
|
+
readonly gap: number;
|
|
16
|
+
readonly flexDirection: "column";
|
|
17
|
+
readonly left: string;
|
|
18
|
+
readonly transform: string;
|
|
19
|
+
readonly alignItems: string;
|
|
20
|
+
readonly display: "flex";
|
|
21
|
+
readonly position: "fixed";
|
|
22
|
+
readonly padding: `0 ${number}px`;
|
|
23
|
+
readonly boxSizing: "border-box";
|
|
24
|
+
readonly zIndex: number | undefined;
|
|
25
|
+
} | {
|
|
26
|
+
readonly top: number;
|
|
27
|
+
readonly gap: number;
|
|
28
|
+
readonly flexDirection: "column";
|
|
29
|
+
readonly right: number;
|
|
30
|
+
readonly alignItems: string;
|
|
31
|
+
readonly display: "flex";
|
|
32
|
+
readonly position: "fixed";
|
|
33
|
+
readonly padding: `0 ${number}px`;
|
|
34
|
+
readonly boxSizing: "border-box";
|
|
35
|
+
readonly zIndex: number | undefined;
|
|
36
|
+
} | {
|
|
37
|
+
readonly bottom: number;
|
|
38
|
+
readonly gap: number;
|
|
39
|
+
readonly flexDirection: "column-reverse";
|
|
40
|
+
readonly left: number;
|
|
41
|
+
readonly alignItems: string;
|
|
42
|
+
readonly display: "flex";
|
|
43
|
+
readonly position: "fixed";
|
|
44
|
+
readonly padding: `0 ${number}px`;
|
|
45
|
+
readonly boxSizing: "border-box";
|
|
46
|
+
readonly zIndex: number | undefined;
|
|
47
|
+
} | {
|
|
48
|
+
readonly bottom: number;
|
|
49
|
+
readonly gap: number;
|
|
50
|
+
readonly flexDirection: "column-reverse";
|
|
51
|
+
readonly left: string;
|
|
52
|
+
readonly transform: string;
|
|
53
|
+
readonly alignItems: string;
|
|
54
|
+
readonly display: "flex";
|
|
55
|
+
readonly position: "fixed";
|
|
56
|
+
readonly padding: `0 ${number}px`;
|
|
57
|
+
readonly boxSizing: "border-box";
|
|
58
|
+
readonly zIndex: number | undefined;
|
|
59
|
+
} | {
|
|
60
|
+
readonly bottom: number;
|
|
61
|
+
readonly gap: number;
|
|
62
|
+
readonly flexDirection: "column-reverse";
|
|
63
|
+
readonly right: number;
|
|
64
|
+
readonly alignItems: string;
|
|
65
|
+
readonly display: "flex";
|
|
66
|
+
readonly position: "fixed";
|
|
67
|
+
readonly padding: `0 ${number}px`;
|
|
68
|
+
readonly boxSizing: "border-box";
|
|
69
|
+
readonly zIndex: number | undefined;
|
|
70
|
+
};
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
const getPlacementStyles = (placement, config) => {
|
|
2
|
+
const topSpace = {
|
|
3
|
+
top: config.top ?? 0,
|
|
4
|
+
gap: config.top ?? 0,
|
|
5
|
+
flexDirection: "column"
|
|
6
|
+
};
|
|
7
|
+
const bottomSpace = {
|
|
8
|
+
bottom: config.top ?? 0,
|
|
9
|
+
gap: config.top ?? 0,
|
|
10
|
+
flexDirection: "column-reverse"
|
|
11
|
+
};
|
|
12
|
+
switch (placement) {
|
|
13
|
+
case "topLeft":
|
|
14
|
+
return {
|
|
15
|
+
left: 0,
|
|
16
|
+
alignItems: "flex-start",
|
|
17
|
+
...topSpace
|
|
18
|
+
};
|
|
19
|
+
case "top":
|
|
20
|
+
return {
|
|
21
|
+
left: "50%",
|
|
22
|
+
transform: "translate(-50%, 0)",
|
|
23
|
+
alignItems: "center",
|
|
24
|
+
...topSpace
|
|
25
|
+
};
|
|
26
|
+
case "topRight":
|
|
27
|
+
return {
|
|
28
|
+
right: 0,
|
|
29
|
+
alignItems: "flex-end",
|
|
30
|
+
...topSpace
|
|
31
|
+
};
|
|
32
|
+
case "bottomLeft":
|
|
33
|
+
return {
|
|
34
|
+
left: 0,
|
|
35
|
+
alignItems: "flex-start",
|
|
36
|
+
...bottomSpace
|
|
37
|
+
};
|
|
38
|
+
case "bottom":
|
|
39
|
+
return {
|
|
40
|
+
left: "50%",
|
|
41
|
+
transform: "translate(-50%, 0)",
|
|
42
|
+
alignItems: "center",
|
|
43
|
+
...bottomSpace
|
|
44
|
+
};
|
|
45
|
+
case "bottomRight":
|
|
46
|
+
return {
|
|
47
|
+
right: 0,
|
|
48
|
+
alignItems: "flex-end",
|
|
49
|
+
...bottomSpace
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
};
|
|
53
|
+
const getMessageListStyle = (placement, config) => ({
|
|
54
|
+
display: "flex",
|
|
55
|
+
position: "fixed",
|
|
56
|
+
padding: `0 ${config.top ?? 0}px`,
|
|
57
|
+
boxSizing: "border-box",
|
|
58
|
+
zIndex: config.zIndex,
|
|
59
|
+
...getPlacementStyles(placement, config)
|
|
60
|
+
});
|
|
61
|
+
export {
|
|
62
|
+
getMessageListStyle
|
|
63
|
+
};
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { jsx, Fragment } from "@emotion/react/jsx-runtime";
|
|
2
|
+
import { useEffect } from "react";
|
|
3
|
+
import { useForceUpdate } from "../../../../hooks/useForceUpdate.js";
|
|
4
|
+
import { createPortal } from "react-dom";
|
|
5
|
+
import { MessageList } from "../MessageList/MessageList.js";
|
|
6
|
+
import { DEFAULT_CONTAINER } from "../../message.utils.js";
|
|
7
|
+
import { config, messageQueue } from "../../message.js";
|
|
8
|
+
const MessagesHolder = ({
|
|
9
|
+
messageSubscriptionController
|
|
10
|
+
}) => {
|
|
11
|
+
var _a, _b;
|
|
12
|
+
const forceUpdate = useForceUpdate();
|
|
13
|
+
useEffect(() => {
|
|
14
|
+
messageSubscriptionController.subscribe(forceUpdate);
|
|
15
|
+
return () => messageSubscriptionController.unsubscribe(forceUpdate);
|
|
16
|
+
}, [messageSubscriptionController, forceUpdate]);
|
|
17
|
+
const placementKeys = Object.keys(messageQueue);
|
|
18
|
+
const container = ((_b = (_a = config).getContainer) == null ? void 0 : _b.call(_a)) ?? DEFAULT_CONTAINER;
|
|
19
|
+
return /* @__PURE__ */ jsx(Fragment, { children: placementKeys.map((placement) => messageQueue[placement].length > 0 && createPortal(/* @__PURE__ */ jsx(MessageList, { config, placement, messages: messageQueue[placement] }), container)) });
|
|
20
|
+
};
|
|
21
|
+
export {
|
|
22
|
+
MessagesHolder
|
|
23
|
+
};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { ConfigType, MessageQueue } from 'components/Message/message.types';
|
|
2
|
+
export interface MessagesHolderProps {
|
|
3
|
+
config: ConfigType;
|
|
4
|
+
messageQueue: MessageQueue;
|
|
5
|
+
messageSubscriptionController: {
|
|
6
|
+
subscribe: (callback: () => void) => void;
|
|
7
|
+
unsubscribe: (callback: () => void) => void;
|
|
8
|
+
};
|
|
9
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export declare const openInfoMessage: () => void;
|
|
2
|
+
export declare const openSuccessMessage: () => void;
|
|
3
|
+
export declare const openWarningMessage: () => void;
|
|
4
|
+
export declare const openErrorMessage: () => void;
|
|
5
|
+
export declare const openLoadingMessage: () => void;
|
|
6
|
+
export declare const openTopLeftMessage: () => void;
|
|
7
|
+
export declare const openTopMessage: () => void;
|
|
8
|
+
export declare const openTopRightMessage: () => void;
|
|
9
|
+
export declare const openBottomLeftMessage: () => void;
|
|
10
|
+
export declare const openBottomMessage: () => void;
|
|
11
|
+
export declare const openBottomRightMessage: () => void;
|
|
12
|
+
export declare const openClosableMessage: () => void;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { ConfigType, MessageObjectType, MessageQueue } from './message.types';
|
|
2
|
+
export declare let config: ConfigType;
|
|
3
|
+
export declare let messageQueue: MessageQueue;
|
|
4
|
+
export declare const messageSubscriptionController: {
|
|
5
|
+
subscribe: (callback: () => void) => void;
|
|
6
|
+
unsubscribe: (callback: () => void) => void;
|
|
7
|
+
};
|
|
8
|
+
export declare const messagesHolder: import("@emotion/react/jsx-runtime").JSX.Element;
|
|
9
|
+
export declare const message: MessageObjectType;
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
import { jsx } from "@emotion/react/jsx-runtime";
|
|
2
|
+
import { createElement } from "@emotion/react";
|
|
3
|
+
import { defaultConfig } from "./message.utils.js";
|
|
4
|
+
import { isString, isUndefined } from "lodash-es";
|
|
5
|
+
import { Message } from "./components/Message/Message.js";
|
|
6
|
+
import { MessagesHolder } from "./components/MessagesHolder/MessagesHolder.js";
|
|
7
|
+
let config = {
|
|
8
|
+
...defaultConfig
|
|
9
|
+
};
|
|
10
|
+
let messageQueue = {
|
|
11
|
+
top: [],
|
|
12
|
+
topLeft: [],
|
|
13
|
+
topRight: [],
|
|
14
|
+
bottom: [],
|
|
15
|
+
bottomLeft: [],
|
|
16
|
+
bottomRight: []
|
|
17
|
+
};
|
|
18
|
+
const placementByMessageKey = /* @__PURE__ */ new Map();
|
|
19
|
+
let messagesSubscriptions = [];
|
|
20
|
+
const subscribe = (callback) => {
|
|
21
|
+
messagesSubscriptions.push(callback);
|
|
22
|
+
};
|
|
23
|
+
const unsubscribe = (callback) => {
|
|
24
|
+
messagesSubscriptions = messagesSubscriptions.filter((item) => item !== callback);
|
|
25
|
+
};
|
|
26
|
+
const notifySubscribers = () => {
|
|
27
|
+
messagesSubscriptions.forEach((callback) => callback());
|
|
28
|
+
};
|
|
29
|
+
const changeConfig = (newConfigValues) => {
|
|
30
|
+
config = {
|
|
31
|
+
...config,
|
|
32
|
+
...newConfigValues
|
|
33
|
+
};
|
|
34
|
+
notifySubscribers();
|
|
35
|
+
};
|
|
36
|
+
const removeMessage = (MessageKey) => {
|
|
37
|
+
const placement = placementByMessageKey.get(MessageKey);
|
|
38
|
+
if (isUndefined(placement)) {
|
|
39
|
+
return;
|
|
40
|
+
}
|
|
41
|
+
messageQueue = {
|
|
42
|
+
...messageQueue,
|
|
43
|
+
[placement]: messageQueue[placement].filter((item) => item.key !== MessageKey)
|
|
44
|
+
};
|
|
45
|
+
placementByMessageKey.delete(MessageKey);
|
|
46
|
+
notifySubscribers();
|
|
47
|
+
};
|
|
48
|
+
const addMessage = (task) => {
|
|
49
|
+
const placement = (task == null ? void 0 : task.placement) ?? config.placement ?? "bottomRight";
|
|
50
|
+
const key = task.key ?? Date.now().toString() + Math.floor(Math.random() * 1e3);
|
|
51
|
+
const duration = task.duration ?? config.duration;
|
|
52
|
+
const closeHandle = () => {
|
|
53
|
+
var _a;
|
|
54
|
+
removeMessage(key);
|
|
55
|
+
(_a = task == null ? void 0 : task.onClose) == null ? void 0 : _a.call(task);
|
|
56
|
+
};
|
|
57
|
+
const placementMessageQueue = isUndefined(config.maxCount) || config.maxCount > messageQueue[placement].length ? [...messageQueue[placement], {
|
|
58
|
+
key,
|
|
59
|
+
content: /* @__PURE__ */ createElement(Message, { ...task, duration, onClose: closeHandle, key })
|
|
60
|
+
}] : [...messageQueue[placement].slice(1), {
|
|
61
|
+
key,
|
|
62
|
+
content: /* @__PURE__ */ createElement(Message, { ...task, duration, onClose: closeHandle, key })
|
|
63
|
+
}];
|
|
64
|
+
messageQueue = {
|
|
65
|
+
...messageQueue,
|
|
66
|
+
[placement]: placementMessageQueue
|
|
67
|
+
};
|
|
68
|
+
placementByMessageKey.set(key, placement);
|
|
69
|
+
notifySubscribers();
|
|
70
|
+
return key;
|
|
71
|
+
};
|
|
72
|
+
const methods = ["success", "info", "warning", "error", "loading"];
|
|
73
|
+
const baseMethods = {
|
|
74
|
+
open: addMessage,
|
|
75
|
+
config: changeConfig,
|
|
76
|
+
destroy: removeMessage
|
|
77
|
+
};
|
|
78
|
+
const messageObject = baseMethods;
|
|
79
|
+
methods.forEach((type) => {
|
|
80
|
+
messageObject[type] = (args) => {
|
|
81
|
+
if (isString(args)) {
|
|
82
|
+
return addMessage({
|
|
83
|
+
content: args,
|
|
84
|
+
type
|
|
85
|
+
});
|
|
86
|
+
}
|
|
87
|
+
return addMessage({
|
|
88
|
+
...args,
|
|
89
|
+
type
|
|
90
|
+
});
|
|
91
|
+
};
|
|
92
|
+
});
|
|
93
|
+
const messageSubscriptionController = {
|
|
94
|
+
subscribe,
|
|
95
|
+
unsubscribe
|
|
96
|
+
};
|
|
97
|
+
const messagesHolder = /* @__PURE__ */ jsx(MessagesHolder, { config, messageQueue, messageSubscriptionController });
|
|
98
|
+
const message = messageObject;
|
|
99
|
+
export {
|
|
100
|
+
config,
|
|
101
|
+
message,
|
|
102
|
+
messageQueue,
|
|
103
|
+
messageSubscriptionController,
|
|
104
|
+
messagesHolder
|
|
105
|
+
};
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
import { MessageProps } from './components/Message/Message.types';
|
|
3
|
+
export type MessagePlacement = "top" | "topLeft" | "topRight" | "bottom" | "bottomLeft" | "bottomRight";
|
|
4
|
+
export type MessageType = "success" | "info" | "warning" | "error" | "loading";
|
|
5
|
+
export type MessageKey = string | number;
|
|
6
|
+
export type SpecialMessageTaskType = Omit<MessageTaskType, "type">;
|
|
7
|
+
export interface ConfigType {
|
|
8
|
+
duration?: number;
|
|
9
|
+
getContainer?: () => HTMLElement;
|
|
10
|
+
maxCount?: number;
|
|
11
|
+
prefixCls?: string;
|
|
12
|
+
rtl?: boolean;
|
|
13
|
+
placement?: MessagePlacement;
|
|
14
|
+
top?: number;
|
|
15
|
+
bottom?: number;
|
|
16
|
+
zIndex?: number;
|
|
17
|
+
}
|
|
18
|
+
export interface MessageQueueItem {
|
|
19
|
+
key: MessageKey;
|
|
20
|
+
content: ReactNode;
|
|
21
|
+
}
|
|
22
|
+
export type MessageQueue = Record<MessagePlacement, MessageQueueItem[]>;
|
|
23
|
+
export interface MessageTaskType extends MessageProps {
|
|
24
|
+
key?: MessageKey;
|
|
25
|
+
}
|
|
26
|
+
export type MessageMethods = Record<MessageType, (args: SpecialMessageTaskType | string) => MessageKey>;
|
|
27
|
+
export interface BaseMethods {
|
|
28
|
+
open: (args: MessageTaskType) => MessageKey;
|
|
29
|
+
config: (newConfigValues: ConfigType) => void;
|
|
30
|
+
destroy: (messageKey: MessageKey) => void;
|
|
31
|
+
}
|
|
32
|
+
export type MessageObjectType = MessageMethods & BaseMethods;
|