@zohoim/chat-components 0.0.11 → 0.0.14
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/es/ActionIcon/ActionIcon.js +56 -34
- package/es/ActionIcon/css/ActionIcon.module.css +4 -23
- package/es/ActionIcon/props/defaultProps.js +4 -2
- package/es/ActionIcon/props/propTypes.js +10 -3
- package/es/ActionIconWrapper/ActionIconWrapper.js +49 -0
- package/es/ActionIconWrapper/css/ActionIconWrapper.module.css +27 -0
- package/es/ActionIconWrapper/index.js +1 -0
- package/es/{MessageWrapper → ActionIconWrapper}/props/defaultProps.js +3 -3
- package/es/ActionIconWrapper/props/propTypes.js +11 -0
- package/es/AttachmentBubble/AttachmentBubble.js +36 -34
- package/es/AttachmentBubble/css/AttachmentBubble.module.css +16 -15
- package/es/AttachmentBubble/props/defaultProps.js +2 -2
- package/es/AttachmentBubble/props/propTypes.js +10 -5
- package/es/AttachmentBubbleInfo/AttachmentBubbleInfo.js +7 -20
- package/es/AttachmentBubbleInfo/css/AttachmentBubbleInfo.module.css +20 -15
- package/es/AttachmentBubbleInfo/props/defaultProps.js +1 -1
- package/es/AttachmentBubbleInfo/props/propTypes.js +3 -3
- package/es/AttachmentIcon/AttachmentIcon.js +47 -0
- package/es/AttachmentIcon/css/AttachmentIcon.module.css +4 -0
- package/es/AttachmentIcon/index.js +1 -0
- package/es/{MediaControls → AttachmentIcon}/props/defaultProps.js +3 -3
- package/es/AttachmentIcon/props/propTypes.js +11 -0
- package/es/AttachmentIcon/utils/getAttachmentIconComponent.js +55 -0
- package/es/Audio/Audio.js +12 -34
- package/es/Audio/css/Audio.module.css +3 -3
- package/es/Audio/props/defaultProps.js +2 -3
- package/es/Audio/props/propTypes.js +3 -4
- package/es/AudioBubble/AudioBubble.js +25 -43
- package/es/AudioBubble/props/defaultProps.js +2 -4
- package/es/AudioBubble/props/propTypes.js +10 -7
- package/es/Fonts/puviFont.module.css +55 -54
- package/es/ImageBubble/ImageBubble.js +26 -25
- package/es/ImageBubble/css/ImageBubble.module.css +8 -11
- package/es/ImageBubble/props/defaultProps.js +1 -1
- package/es/ImageBubble/props/propTypes.js +5 -3
- package/es/InfoBubble/InfoBubble.js +6 -9
- package/es/InfoBubble/props/defaultProps.js +1 -1
- package/es/LazyLoadImage/LazyLoadImage.js +8 -19
- package/es/LazyLoadImage/css/LazyLoadImage.module.css +1 -0
- package/es/LazyLoadImage/props/defaultProps.js +1 -1
- package/es/LazyLoadImage/props/propTypes.js +3 -3
- package/es/LocationBubble/LocationBubble.js +25 -44
- package/es/LocationBubble/css/LocationBubble.module.css +11 -9
- package/es/LocationBubble/props/defaultProps.js +1 -1
- package/es/LocationBubble/props/propTypes.js +2 -2
- package/es/MediaBubbleWrapper/MediaBubbleWrapper.js +59 -0
- package/es/MediaBubbleWrapper/css/MediaBubbleWrapper.module.css +3 -0
- package/es/MediaBubbleWrapper/index.js +1 -0
- package/es/MediaBubbleWrapper/props/defaultProps.js +7 -0
- package/es/MediaBubbleWrapper/props/propTypes.js +16 -0
- package/es/Message/Message.js +91 -104
- package/es/Message/props/defaultProps.js +3 -35
- package/es/Message/props/propTypes.js +26 -85
- package/es/MessageAction/MessageAction.js +32 -19
- package/es/MessageAction/props/defaultProps.js +4 -4
- package/es/MessageAction/props/propTypes.js +11 -8
- package/es/MessageActions/MessageActions.js +86 -53
- package/es/MessageActions/css/MessageActions.module.css +23 -2
- package/es/MessageActions/props/defaultProps.js +5 -5
- package/es/MessageActions/props/propTypes.js +15 -3
- package/es/MessageActionsMore/MessageActionsMore.js +45 -37
- package/es/MessageActionsMore/css/MessageActionsMore.module.css +8 -5
- package/es/MessageActionsMore/props/defaultProps.js +3 -2
- package/es/MessageActionsMore/props/propTypes.js +3 -2
- package/es/MessageActionsWrapper/MessageActionsWrapper.js +67 -0
- package/es/MessageActionsWrapper/css/MessageActionsWrapper.module.css +3 -0
- package/es/MessageActionsWrapper/index.js +1 -0
- package/es/MessageActionsWrapper/props/defaultProps.js +9 -0
- package/es/MessageActionsWrapper/props/propTypes.js +15 -0
- package/es/MessageAvatar/MessageAvatar.js +15 -22
- package/es/MessageAvatar/css/MessageAvatar.module.css +3 -3
- package/es/MessageAvatar/props/defaultProps.js +2 -6
- package/es/MessageAvatar/props/propTypes.js +5 -5
- package/es/MessageBox/MessageBox.js +24 -25
- package/es/MessageBox/css/MessageBox.module.css +12 -14
- package/es/MessageBox/css/cssJSLogic.js +1 -21
- package/es/MessageBox/props/defaultProps.js +1 -3
- package/es/MessageBox/props/propTypes.js +8 -7
- package/es/MessageBubble/MessageBubble.js +61 -38
- package/es/MessageBubble/css/MessageBubble.module.css +11 -8
- package/es/MessageBubble/css/cssJSLogic.js +10 -26
- package/es/MessageBubble/props/defaultProps.js +2 -2
- package/es/MessageBubble/props/propTypes.js +9 -9
- package/es/MessageStatus/MessageStatus.js +72 -0
- package/es/{im/IMMessageStatus/css/IMMessageStatus.module.css → MessageStatus/css/MessageStatus.module.css} +1 -1
- package/es/MessageStatus/css/cssJSLogic.js +26 -0
- package/es/MessageStatus/index.js +1 -0
- package/es/{im/IMAttachmentIcon → MessageStatus}/props/defaultProps.js +3 -3
- package/es/MessageStatus/props/propTypes.js +12 -0
- package/es/MoreActionItem/MoreActionItem.js +25 -37
- package/es/MoreActionItem/css/MoreActionItem.module.css +5 -11
- package/es/MoreActionItem/props/defaultProps.js +1 -5
- package/es/MoreActionItem/props/propTypes.js +6 -5
- package/es/ReplyBubble/ReplyBubble.js +62 -30
- package/es/ReplyBubble/css/ReplyBubble.module.css +17 -0
- package/es/ReplyBubble/props/defaultProps.js +3 -4
- package/es/ReplyBubble/props/propTypes.js +15 -8
- package/es/ReplyBubbleContent/ReplyBubbleContent.js +21 -28
- package/es/ReplyBubbleContent/css/ReplyBubbleContent.module.css +44 -34
- package/es/ReplyBubbleContent/props/defaultProps.js +1 -1
- package/es/ReplyBubbleContent/props/propTypes.js +4 -4
- package/es/ReplyBubbleHeader/ReplyBubbleHeader.js +25 -29
- package/es/ReplyBubbleHeader/css/ReplyBubbleHeader.module.css +12 -4
- package/es/ReplyBubbleHeader/props/defaultProps.js +2 -5
- package/es/ReplyBubbleHeader/props/propTypes.js +2 -2
- package/es/TextBubble/TextBubble.js +15 -34
- package/es/TextBubble/css/TextBubble.module.css +16 -3
- package/es/TextBubble/props/defaultProps.js +2 -5
- package/es/TextBubble/props/propTypes.js +3 -4
- package/es/Theme/{DeskAssets.js → ThemeAssets.js} +10 -6
- package/es/Theme/ThemeWrapper.js +62 -62
- package/es/Theme/{ToolttipWrapper.js → TooltipWrapper.js} +29 -25
- package/es/Theme/constants/index.js +1 -4
- package/es/Theme/crm/dark/blueFanTheme.js +5 -5
- package/es/Theme/crm/dark/blueTheme.js +5 -5
- package/es/Theme/crm/dark/commonColorVariable.js +5 -5
- package/es/Theme/crm/dark/darkBlueTheme.js +5 -5
- package/es/Theme/crm/dark/darkGreyTheme.js +5 -5
- package/es/Theme/crm/dark/greenTheme.js +5 -5
- package/es/Theme/crm/dark/orangeTheme.js +5 -5
- package/es/Theme/crm/dark/pinkTheme.js +5 -5
- package/es/Theme/crm/dark/tealTheme.js +5 -5
- package/es/Theme/crm/dark/whiteTheme.js +5 -5
- package/es/Theme/crm/light/blueFanTheme.js +5 -5
- package/es/Theme/crm/light/blueTheme.js +3 -3
- package/es/Theme/crm/light/commonColorVariable.js +3 -3
- package/es/Theme/crm/light/darkBlueTheme.js +5 -5
- package/es/Theme/crm/light/darkGreyTheme.js +5 -5
- package/es/Theme/crm/light/greenTheme.js +3 -3
- package/es/Theme/crm/light/orangeTheme.js +3 -3
- package/es/Theme/crm/light/pinkTheme.js +3 -3
- package/es/Theme/crm/light/tealTheme.js +3 -3
- package/es/Theme/crm/light/whiteTheme.js +5 -5
- package/es/Theme/crm/pureDark/blueFanTheme.js +5 -5
- package/es/Theme/crm/pureDark/blueTheme.js +5 -5
- package/es/Theme/crm/pureDark/commonColorVariable.js +3 -3
- package/es/Theme/crm/pureDark/darkBlueTheme.js +5 -5
- package/es/Theme/crm/pureDark/darkGreyTheme.js +5 -5
- package/es/Theme/crm/pureDark/greenTheme.js +5 -5
- package/es/Theme/crm/pureDark/orangeTheme.js +5 -5
- package/es/Theme/crm/pureDark/pinkTheme.js +5 -5
- package/es/Theme/crm/pureDark/tealTheme.js +5 -5
- package/es/Theme/crm/pureDark/whiteTheme.js +5 -5
- package/es/Theme/css/TooltipWrapper.module.css +2 -2
- package/es/Theme/props/defaultProps.js +2 -3
- package/es/Theme/props/propTypes.js +5 -6
- package/es/Theme/themeVariables/commonThemeColorVariable.js +13 -0
- package/es/Theme/themeVariables/dark/blueTheme.js +68 -0
- package/es/Theme/themeVariables/dark/commonColorVariable.js +10 -0
- package/es/Theme/themeVariables/dark/greenTheme.js +67 -0
- package/es/Theme/themeVariables/dark/orangeTheme.js +67 -0
- package/es/Theme/themeVariables/dark/redTheme.js +76 -0
- package/es/Theme/themeVariables/dark/yellowTheme.js +67 -0
- package/es/Theme/themeVariables/light/blueTheme.js +63 -0
- package/es/Theme/themeVariables/light/commonColorVariable.js +12 -0
- package/es/Theme/themeVariables/light/greenTheme.js +63 -0
- package/es/Theme/themeVariables/light/orangeTheme.js +61 -0
- package/es/Theme/themeVariables/light/redTheme.js +61 -0
- package/es/Theme/themeVariables/light/yellowTheme.js +63 -0
- package/es/Theme/themeVariables/pureDark/blueTheme.js +68 -0
- package/es/Theme/themeVariables/pureDark/commonColorVariable.js +12 -0
- package/es/Theme/themeVariables/pureDark/greenTheme.js +67 -0
- package/es/Theme/themeVariables/pureDark/orangeTheme.js +67 -0
- package/es/Theme/themeVariables/pureDark/redTheme.js +67 -0
- package/es/Theme/themeVariables/pureDark/yellowTheme.js +67 -0
- package/es/Theme/utils/combineConfigurations.js +17 -0
- package/es/Theme/utils/flatVariables.js +12 -0
- package/es/Theme/utils/getCustomizedCssVariables.js +19 -0
- package/es/Theme/utils/getThemeConfigurations.js +47 -175
- package/es/Theme/utils/getWrapperDivProps.js +12 -0
- package/es/Video/Video.js +14 -45
- package/es/Video/css/Video.module.css +2 -7
- package/es/Video/props/defaultProps.js +2 -3
- package/es/Video/props/propTypes.js +3 -4
- package/es/VideoBubble/VideoBubble.js +31 -36
- package/es/VideoBubble/css/VideoBubble.module.css +4 -4
- package/es/VideoBubble/props/defaultProps.js +2 -3
- package/es/VideoBubble/props/propTypes.js +11 -7
- package/es/icons/create-icon-components.js +31 -0
- package/es/icons/icon.template.js +10 -9
- package/es/icons/iconSrc/attachments/Audio.js +1 -0
- package/es/icons/iconSrc/attachments/Code.js +1 -0
- package/es/icons/iconSrc/attachments/Image.js +1 -0
- package/es/icons/iconSrc/attachments/Pdf.js +1 -0
- package/es/icons/iconSrc/attachments/Txt.js +1 -0
- package/es/icons/iconSrc/attachments/Unknown.js +1 -0
- package/es/icons/iconSrc/attachments/Video.js +1 -0
- package/es/icons/iconSrc/attachments/Zip.js +1 -0
- package/es/icons/iconSrc/attachments/index.js +8 -8
- package/es/icons/iconSrc/common/Article.js +1 -0
- package/es/icons/iconSrc/common/index.js +1 -2
- package/es/icons/iconSrc/integrations/ChInstagram.js +1 -0
- package/es/icons/iconSrc/integrations/ChWhatsApp.js +1 -0
- package/es/icons/iconSrc/integrations/TtASAP.js +1 -0
- package/es/icons/iconSrc/integrations/TtTelegram.js +1 -0
- package/es/icons/iconSrc/integrations/TtTwillio.js +1 -0
- package/es/icons/iconSrc/integrations/TtTwitter.js +1 -0
- package/es/icons/iconSrc/integrations/TtWechat.js +1 -0
- package/es/icons/iconSrc/integrations/index.js +7 -7
- package/es/icons/iconSrc/messageStatus/Clock.js +1 -0
- package/es/icons/iconSrc/messageStatus/DoubleTick.js +1 -0
- package/es/icons/iconSrc/messageStatus/Failed.js +1 -0
- package/es/icons/iconSrc/messageStatus/Tick.js +1 -0
- package/es/icons/iconSrc/messageStatus/index.js +4 -4
- package/es/im/ArticleBubble/ArticleBubble.js +66 -0
- package/es/im/ArticleBubble/css/ArticleBubble.module.css +47 -0
- package/es/{ArticleBubble → im/ArticleBubble}/props/defaultProps.js +1 -1
- package/es/im/ArticleBubble/props/propTypes.js +13 -0
- package/es/im/IMAutoMessageInfo/IMAutoMessageInfo.js +10 -21
- package/es/im/IMAutoMessageInfo/css/IMAutoMessageInfo.module.css +2 -3
- package/es/im/IMAutoMessageInfo/props/defaultProps.js +1 -1
- package/es/im/IMAutoMessageInfo/props/propTypes.js +11 -9
- package/es/im/IMInfoBubble/IMInfoBubble.js +6 -9
- package/es/im/IMInfoBubble/props/defaultProps.js +1 -1
- package/es/im/IMIntegrationIcon/IMIntegrationIcon.js +31 -38
- package/es/im/IMIntegrationIcon/css/IMIntegrationIcon.module.css +5 -8
- package/es/im/IMIntegrationIcon/css/cssJSLogic.js +9 -13
- package/es/im/IMIntegrationIcon/index.js +1 -2
- package/es/im/IMIntegrationIcon/props/defaultProps.js +6 -4
- package/es/im/IMIntegrationIcon/props/propTypes.js +6 -17
- package/es/im/IMMessage/IMMessage.js +95 -156
- package/es/im/IMMessage/props/defaultProps.js +2 -29
- package/es/im/IMMessage/props/propTypes.js +57 -117
- package/es/im/IMMessageContent/IMMessageContent.js +80 -55
- package/es/im/IMMessageContent/css/IMMessageContent.module.css +3 -0
- package/es/im/IMMessageContent/props/defaultProps.js +2 -3
- package/es/im/IMMessageContent/props/propTypes.js +28 -23
- package/es/im/IMMessageMeta/IMMessageMeta.js +28 -24
- package/es/im/IMMessageMeta/css/IMMessageMeta.module.css +15 -4
- package/es/im/IMMessageMeta/css/cssJSLogic.js +11 -3
- package/es/im/IMMessageMeta/props/defaultProps.js +1 -1
- package/es/im/IMMessageMeta/props/propTypes.js +17 -12
- package/es/im/IMReplyBubble/IMReplyBubble.js +21 -61
- package/es/im/IMReplyBubble/props/defaultProps.js +2 -4
- package/es/im/IMReplyBubble/props/propTypes.js +16 -14
- package/es/im/IMTextBubble/IMTextBubble.js +16 -33
- package/es/im/IMTextBubble/props/defaultProps.js +3 -9
- package/es/im/IMTextBubble/props/propTypes.js +22 -8
- package/es/im/IMTicketLink/IMTicketLink.js +13 -13
- package/es/im/IMTicketLink/css/IMTicketLink.module.css +3 -4
- package/es/im/IMTicketLink/props/defaultProps.js +1 -1
- package/es/im/IMTicketLink/props/propTypes.js +4 -3
- package/es/im/index.js +1 -11
- package/es/index.js +30 -34
- package/package.json +32 -14
- package/es/ActionIcon/css/cssJSLogic.js +0 -10
- package/es/ArticleBubble/ArticleBubble.js +0 -68
- package/es/ArticleBubble/css/ArticleBubble.module.css +0 -40
- package/es/ArticleBubble/css/cssJSLogic.js +0 -34
- package/es/ArticleBubble/props/propTypes.js +0 -10
- package/es/AttachmentBubble/css/cssJSLogic.js +0 -18
- package/es/AttachmentBubbleInfo/css/cssJSLogic.js +0 -18
- package/es/Audio/css/cssJSLogic.js +0 -14
- package/es/AudioBubble/css/AudioBubble.module.css +0 -3
- package/es/AudioBubble/css/cssJSLogic.js +0 -20
- package/es/ImageBubble/css/cssJSLogic.js +0 -22
- package/es/LazyLoadImage/css/cssJSLogic.js +0 -10
- package/es/LocationBubble/css/cssJSLogic.js +0 -30
- package/es/MediaControls/MediaControls.js +0 -60
- package/es/MediaControls/css/MediaControls.module.css +0 -1
- package/es/MediaControls/css/cssJSLogic.js +0 -22
- package/es/MediaControls/index.js +0 -1
- package/es/MediaControls/props/propTypes.js +0 -11
- package/es/Message/css/Message.module.css +0 -0
- package/es/Message/css/cssJSLogic.js +0 -10
- package/es/MessageAction/css/MessageAction.module.css +0 -0
- package/es/MessageAction/css/cssJSLogic.js +0 -0
- package/es/MessageActions/css/cssJSLogic.js +0 -10
- package/es/MessageActions/props/propConstants.js +0 -7
- package/es/MessageActionsMore/css/cssJSLogic.js +0 -28
- package/es/MessageAvatar/css/cssJSLogic.js +0 -18
- package/es/MessageBoxFooter/MessageBoxFooter.js +0 -39
- package/es/MessageBoxFooter/css/MessageBoxFooter.module.css +0 -3
- package/es/MessageBoxFooter/css/cssJSLogic.js +0 -10
- package/es/MessageBoxFooter/index.js +0 -1
- package/es/MessageBoxFooter/props/defaultProps.js +0 -5
- package/es/MessageBoxFooter/props/propTypes.js +0 -6
- package/es/MessageBoxHeader/MessageBoxHeader.js +0 -7
- package/es/MessageBoxHeader/css/MessageBoxHeader.module.css +0 -0
- package/es/MessageBoxHeader/css/cssJsLogic.js +0 -0
- package/es/MessageBoxHeader/index.js +0 -2
- package/es/MessageBoxHeader/props/defaultProps.js +0 -0
- package/es/MessageBoxHeader/props/propTypes.js +0 -0
- package/es/MessageBubble/props/propConstants.js +0 -6
- package/es/MessageWrapper/MessageWrapper.js +0 -37
- package/es/MessageWrapper/css/MessageWrapper.module.css +0 -0
- package/es/MessageWrapper/css/cssJSLogic.js +0 -10
- package/es/MessageWrapper/index.js +0 -1
- package/es/MessageWrapper/props/propTypes.js +0 -6
- package/es/MoreActionItem/css/cssJSLogic.js +0 -27
- package/es/ReplyBubble/css/cssJSLogic.js +0 -10
- package/es/ReplyBubbleContent/css/cssJSLogic.js +0 -22
- package/es/ReplyBubbleHeader/css/cssJSLogic.js +0 -10
- package/es/TextBubble/css/cssJSLogic.js +0 -18
- package/es/TextMessage/DefaultActions.js +0 -60
- package/es/TextMessage/TextMessage.js +0 -67
- package/es/TextMessage/TextMessage1.js +0 -69
- package/es/TextMessage/css/TextMessage.module.css +0 -5
- package/es/TextMessage/css/cssJSLogic.js +0 -0
- package/es/TextMessage/index.js +0 -1
- package/es/TextMessage/props/defaultProps.js +0 -4
- package/es/TextMessage/props/propConstants.js +0 -3
- package/es/TextMessage/props/propTypes.js +0 -17
- package/es/Theme/css/cssJSLogic.js +0 -14
- package/es/Theme/darkTheme.js +0 -9
- package/es/Theme/defaultTheme.js +0 -33
- package/es/Theme/desk/commonDeskColorVariable.js +0 -14
- package/es/Theme/desk/dark/blueTheme.js +0 -42
- package/es/Theme/desk/dark/commonColorVariable.js +0 -5
- package/es/Theme/desk/dark/greenTheme.js +0 -41
- package/es/Theme/desk/dark/orangeTheme.js +0 -41
- package/es/Theme/desk/dark/redTheme.js +0 -41
- package/es/Theme/desk/dark/yellowTheme.js +0 -41
- package/es/Theme/desk/light/blueTheme.js +0 -46
- package/es/Theme/desk/light/commonColorVariable.js +0 -6
- package/es/Theme/desk/light/greenTheme.js +0 -37
- package/es/Theme/desk/light/orangeTheme.js +0 -36
- package/es/Theme/desk/light/redTheme.js +0 -36
- package/es/Theme/desk/light/yellowTheme.js +0 -37
- package/es/Theme/desk/pureDark/blueTheme.js +0 -41
- package/es/Theme/desk/pureDark/commonColorVariable.js +0 -7
- package/es/Theme/desk/pureDark/greenTheme.js +0 -41
- package/es/Theme/desk/pureDark/orangeTheme.js +0 -41
- package/es/Theme/desk/pureDark/redTheme.js +0 -41
- package/es/Theme/desk/pureDark/yellowTheme.js +0 -41
- package/es/Video/css/cssJSLogic.js +0 -14
- package/es/VideoBubble/css/cssJSLogic.js +0 -10
- package/es/icons/factory/actions/convertTicket.svg +0 -21
- package/es/icons/factory/common/quote.svg +0 -1
- package/es/icons/iconSrc/actions/ConvertTicket.js +0 -24
- package/es/icons/iconSrc/actions/index.js +0 -1
- package/es/icons/iconSrc/common/Quote.js +0 -16
- package/es/im/IMArticleBubble/IMArticleBubble.js +0 -55
- package/es/im/IMArticleBubble/css/IMArticleBubble.module.css +0 -0
- package/es/im/IMArticleBubble/css/cssJSLogic.js +0 -10
- package/es/im/IMArticleBubble/index.js +0 -1
- package/es/im/IMArticleBubble/props/defaultProps.js +0 -8
- package/es/im/IMArticleBubble/props/propTypes.js +0 -14
- package/es/im/IMAttachmentBubble/IMAttachmentBubble.js +0 -63
- package/es/im/IMAttachmentBubble/css/IMAttachmentBubble.module.css +0 -1
- package/es/im/IMAttachmentBubble/css/cssJSLogic.js +0 -10
- package/es/im/IMAttachmentBubble/index.js +0 -1
- package/es/im/IMAttachmentBubble/props/defaultProps.js +0 -10
- package/es/im/IMAttachmentBubble/props/propTypes.js +0 -16
- package/es/im/IMAttachmentIcon/IMAttachmentIcon.js +0 -86
- package/es/im/IMAttachmentIcon/css/IMAttachmentIcon.module.css +0 -4
- package/es/im/IMAttachmentIcon/css/cssJSLogic.js +0 -16
- package/es/im/IMAttachmentIcon/index.js +0 -1
- package/es/im/IMAttachmentIcon/props/propTypes.js +0 -26
- package/es/im/IMAudioBubble/IMAudioBubble.js +0 -63
- package/es/im/IMAudioBubble/css/IMAudioBubble.module.css +0 -8
- package/es/im/IMAudioBubble/css/cssJSLogic.js +0 -20
- package/es/im/IMAudioBubble/index.js +0 -1
- package/es/im/IMAudioBubble/props/defaultProps.js +0 -11
- package/es/im/IMAudioBubble/props/propTypes.js +0 -17
- package/es/im/IMAutoMessageInfo/css/cssJSLogic.js +0 -10
- package/es/im/IMDateTime/IMDateTime.js +0 -41
- package/es/im/IMDateTime/css/IMDateTime.module.css +0 -5
- package/es/im/IMDateTime/css/cssJSLogic.js +0 -10
- package/es/im/IMDateTime/index.js +0 -1
- package/es/im/IMDateTime/props/defaultProps.js +0 -6
- package/es/im/IMDateTime/props/propTypes.js +0 -6
- package/es/im/IMImageBubble/IMImageBubble.js +0 -49
- package/es/im/IMImageBubble/css/IMImageBubble.module.css +0 -0
- package/es/im/IMImageBubble/css/cssJSLogic.js +0 -10
- package/es/im/IMImageBubble/index.js +0 -1
- package/es/im/IMImageBubble/props/defaultProps.js +0 -7
- package/es/im/IMImageBubble/props/propTypes.js +0 -13
- package/es/im/IMIntegrationIcon/props/propConstants.js +0 -8
- package/es/im/IMLocationBubble/IMLocationBubble.js +0 -49
- package/es/im/IMLocationBubble/css/IMLocationBubble.module.css +0 -0
- package/es/im/IMLocationBubble/css/cssJSLogic.js +0 -10
- package/es/im/IMLocationBubble/index.js +0 -1
- package/es/im/IMLocationBubble/props/defaultProps.js +0 -8
- package/es/im/IMLocationBubble/props/propTypes.js +0 -11
- package/es/im/IMMessage/css/IMMessage.module.css +0 -0
- package/es/im/IMMessage/css/cssJSLogic.js +0 -10
- package/es/im/IMMessage/renderChild/renderMessage.js +0 -8
- package/es/im/IMMessage/renderChild/renderMessageActions.js +0 -8
- package/es/im/IMMessage/renderChild/renderMessageBox.js +0 -15
- package/es/im/IMMessage/renderChild/renderMessageBoxFooter.js +0 -8
- package/es/im/IMMessage/renderChild/renderMessageFooter.js +0 -8
- package/es/im/IMMessage/renderChild/renderMessageHeader.js +0 -8
- package/es/im/IMMessage/renderChild/renderMessageOwner.js +0 -8
- package/es/im/IMMessage/renderChild/renderMessageStatus.js +0 -8
- package/es/im/IMMessageActions/IMMessageActions.js +0 -150
- package/es/im/IMMessageActions/css/IMMessageActions.module.css +0 -31
- package/es/im/IMMessageActions/css/cssJSLogic.js +0 -20
- package/es/im/IMMessageActions/index.js +0 -1
- package/es/im/IMMessageActions/props/defaultProps.js +0 -12
- package/es/im/IMMessageActions/props/propTypes.js +0 -30
- package/es/im/IMMessageAvatar/IMMessageAvatar.js +0 -45
- package/es/im/IMMessageAvatar/css/IMMessageAvatar.module.css +0 -0
- package/es/im/IMMessageAvatar/css/cssJSLogic.js +0 -0
- package/es/im/IMMessageAvatar/index.js +0 -1
- package/es/im/IMMessageAvatar/props/defaultProps.js +0 -12
- package/es/im/IMMessageAvatar/props/propTypes.js +0 -28
- package/es/im/IMMessageContent/css/cssJSLogic.js +0 -10
- package/es/im/IMMessageStatus/IMMessageStatus.js +0 -69
- package/es/im/IMMessageStatus/css/cssJSLogic.js +0 -22
- package/es/im/IMMessageStatus/index.js +0 -1
- package/es/im/IMMessageStatus/props/defaultProps.js +0 -6
- package/es/im/IMMessageStatus/props/propTypes.js +0 -21
- package/es/im/IMReplyBubble/css/IMReplyBubble.module.css +0 -24
- package/es/im/IMReplyBubble/css/cssJSLogic.js +0 -10
- package/es/im/IMTextBubble/css/IMTextBubble.module.css +0 -1
- package/es/im/IMTextBubble/css/cssJSLogic.js +0 -10
- package/es/im/IMVideoBubble/IMVideoBubble.js +0 -62
- package/es/im/IMVideoBubble/css/IMVideoBubble.module.css +0 -1
- package/es/im/IMVideoBubble/css/cssJSLogic.js +0 -10
- package/es/im/IMVideoBubble/index.js +0 -1
- package/es/im/IMVideoBubble/props/defaultProps.js +0 -11
- package/es/im/IMVideoBubble/props/propTypes.js +0 -17
- package/es/unused/AvatarSpace/AvatarSpace.js +0 -40
- package/es/unused/AvatarSpace/css/AvatarSpace.module.css +0 -1
- package/es/unused/AvatarSpace/css/cssJSLogic.js +0 -15
- package/es/unused/AvatarSpace/index.js +0 -1
- package/es/unused/AvatarSpace/props/defaultProps.js +0 -10
- package/es/unused/AvatarSpace/props/propConstants.js +0 -7
- package/es/unused/AvatarSpace/props/propTypes.js +0 -8
- /package/es/{ArticleBubble → im/ArticleBubble}/index.js +0 -0
|
@@ -1,98 +1,39 @@
|
|
|
1
1
|
/** ** Libraries *** */
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
|
-
|
|
4
3
|
/** ** Constants *** */
|
|
5
|
-
|
|
4
|
+
|
|
6
5
|
import { defaultMessageActions } from '@zohoim/chat-components-utils/es/constants/messageActionConstants';
|
|
7
6
|
import messageStatusConstants from '@zohoim/chat-components-utils/es/constants/messageStatusConstants';
|
|
8
7
|
import { direction } from '@zohoim/chat-components-utils/es/constants/messageConstants';
|
|
9
|
-
import sizes from '@zohoim/chat-components-utils/es/constants/sizes';
|
|
10
|
-
const {
|
|
11
|
-
REPLY,
|
|
12
|
-
COPY,
|
|
13
|
-
DOWNLOAD,
|
|
14
|
-
CREATE_TICKET,
|
|
15
|
-
RESEND,
|
|
16
|
-
DELETE,
|
|
17
|
-
FORWARD
|
|
18
|
-
} = defaultMessageActions;
|
|
19
|
-
const {
|
|
20
|
-
WHATSAPP,
|
|
21
|
-
TELEGRAM,
|
|
22
|
-
INSTAGRAM,
|
|
23
|
-
ASAP,
|
|
24
|
-
WECHAT,
|
|
25
|
-
TWILLIO,
|
|
26
|
-
LINE
|
|
27
|
-
} = integrationConstants;
|
|
28
|
-
const {
|
|
29
|
-
SENT,
|
|
30
|
-
SAVED,
|
|
31
|
-
QUEUED,
|
|
32
|
-
DELIVERED,
|
|
33
|
-
READ,
|
|
34
|
-
UNSENT,
|
|
35
|
-
FAILED,
|
|
36
|
-
OUTGOING
|
|
37
|
-
} = messageStatusConstants;
|
|
38
|
-
const {
|
|
39
|
-
IN,
|
|
40
|
-
OUT
|
|
41
|
-
} = direction;
|
|
42
8
|
const messagePropTypes = {
|
|
43
|
-
|
|
44
|
-
|
|
9
|
+
direction: PropTypes.oneOf(Object.values(direction)).isRequired,
|
|
10
|
+
renderContent: PropTypes.func.isRequired,
|
|
45
11
|
isActive: PropTypes.bool,
|
|
46
|
-
needMessageActions: PropTypes.bool,
|
|
47
|
-
renderMessageBoxFooter: PropTypes.func,
|
|
48
|
-
/* Avatar Related Props Start */
|
|
49
|
-
needSender: PropTypes.bool,
|
|
50
12
|
isShowSender: PropTypes.bool,
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
/* MessageBox Props Start */
|
|
67
|
-
needMessageBox: PropTypes.bool,
|
|
68
|
-
renderMessage: PropTypes.func.isRequired,
|
|
69
|
-
renderMessageFooter: PropTypes.func,
|
|
70
|
-
renderMessageHeader: PropTypes.func,
|
|
71
|
-
messageBoxCustomStyle: PropTypes.object,
|
|
72
|
-
isFailedMessage: PropTypes.bool,
|
|
73
|
-
/*MessageBox Props End */
|
|
74
|
-
|
|
75
|
-
/* MessageAction Props Start */
|
|
76
|
-
messageActions: PropTypes.arrayOf(PropTypes.shape({
|
|
77
|
-
id: PropTypes.oneOfType([PropTypes.string, PropTypes.oneOf([REPLY, COPY, DOWNLOAD, CREATE_TICKET, RESEND, DELETE, FORWARD])]).isRequired,
|
|
78
|
-
displayText: PropTypes.string,
|
|
79
|
-
renderFunction: PropTypes.func,
|
|
80
|
-
iconTitle: PropTypes.string
|
|
13
|
+
needSender: PropTypes.bool,
|
|
14
|
+
ownerDetails: PropTypes.shape({
|
|
15
|
+
alternateSrc: PropTypes.string,
|
|
16
|
+
name: PropTypes.string,
|
|
17
|
+
src: PropTypes.string
|
|
18
|
+
}),
|
|
19
|
+
renderOwnerStatusIcon: PropTypes.func,
|
|
20
|
+
status: PropTypes.oneOf(Object.values(messageStatusConstants)),
|
|
21
|
+
statusTooltip: PropTypes.string,
|
|
22
|
+
actions: PropTypes.arrayOf(PropTypes.shape({
|
|
23
|
+
displayText: PropTypes.string.isRequired,
|
|
24
|
+
id: PropTypes.oneOfType([PropTypes.string, PropTypes.oneOf(Object.values(defaultMessageActions))]).isRequired,
|
|
25
|
+
iconTitle: PropTypes.string,
|
|
26
|
+
isDisabled: PropTypes.bool,
|
|
27
|
+
renderFunction: PropTypes.func
|
|
81
28
|
})),
|
|
29
|
+
onSelectAction: PropTypes.func.isRequired,
|
|
82
30
|
renderSecondaryActions: PropTypes.func,
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
/* MessageStatus Props Start */
|
|
92
|
-
messageStatus: PropTypes.oneOf([SENT, SAVED, QUEUED, DELIVERED, READ, UNSENT, FAILED, OUTGOING]),
|
|
93
|
-
messageStatusCustomStyle: PropTypes.object,
|
|
94
|
-
statusTitle: PropTypes.string
|
|
95
|
-
/*MessageStatus Props End */
|
|
31
|
+
customProps: PropTypes.shape({
|
|
32
|
+
messageActionsProps: PropTypes.object,
|
|
33
|
+
messageBoxProps: PropTypes.object,
|
|
34
|
+
messageBubbleProps: PropTypes.object,
|
|
35
|
+
messageOwnerProps: PropTypes.object,
|
|
36
|
+
messageStatusProps: PropTypes.object
|
|
37
|
+
})
|
|
96
38
|
};
|
|
97
|
-
|
|
98
39
|
export default messagePropTypes;
|
|
@@ -1,44 +1,57 @@
|
|
|
1
|
-
|
|
1
|
+
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
2
2
|
|
|
3
3
|
/** ** Libraries *** */
|
|
4
|
-
import React from 'react';
|
|
5
|
-
|
|
4
|
+
import React, { useCallback } from 'react';
|
|
6
5
|
/** ** Components *** */
|
|
6
|
+
|
|
7
7
|
import MoreActionItem from '../MoreActionItem/MoreActionItem';
|
|
8
8
|
import ActionIcon from '../ActionIcon/ActionIcon';
|
|
9
|
-
|
|
10
9
|
/** ** Constants *** */
|
|
10
|
+
|
|
11
11
|
import messageActionsDefaultProps from './props/defaultProps';
|
|
12
12
|
import messageActionsPropTypes from './props/propTypes';
|
|
13
|
+
import { dummyObject } from '@zohoim/chat-components-utils/es/constants/emptyConstants';
|
|
13
14
|
export default function MessageAction(props) {
|
|
14
15
|
const {
|
|
15
16
|
displayText,
|
|
16
17
|
id,
|
|
17
|
-
index,
|
|
18
|
-
renderIcon,
|
|
19
18
|
onClick,
|
|
20
19
|
isShowInMore,
|
|
21
20
|
iconTitle,
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
21
|
+
customProps,
|
|
22
|
+
closePopup,
|
|
23
|
+
isDisabled,
|
|
24
|
+
needMoreActionItemIcon
|
|
25
25
|
} = props;
|
|
26
|
-
|
|
26
|
+
const {
|
|
27
|
+
moreActionItemProps = dummyObject,
|
|
28
|
+
actionIconProps = dummyObject
|
|
29
|
+
} = customProps;
|
|
30
|
+
const renderIcon = useCallback( // eslint-disable-next-line no-confusing-arrow
|
|
31
|
+
function () {
|
|
32
|
+
let {
|
|
33
|
+
id
|
|
34
|
+
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
35
|
+
return needMoreActionItemIcon ? /*#__PURE__*/React.createElement(ActionIcon, _extends({
|
|
36
|
+
id: id,
|
|
37
|
+
needIconOnly: true
|
|
38
|
+
}, actionIconProps)) : null;
|
|
39
|
+
}, [actionIconProps, needMoreActionItemIcon]);
|
|
40
|
+
return isShowInMore ? /*#__PURE__*/React.createElement(MoreActionItem, _extends({
|
|
41
|
+
closePopup: closePopup,
|
|
27
42
|
displayText: displayText,
|
|
28
|
-
iconTitle: iconTitle,
|
|
29
43
|
id: id,
|
|
30
|
-
|
|
31
|
-
|
|
44
|
+
isDisabled: isDisabled,
|
|
45
|
+
needIcon: needMoreActionItemIcon,
|
|
32
46
|
onClick: onClick,
|
|
33
47
|
renderIcon: renderIcon,
|
|
34
|
-
|
|
35
|
-
}) : /*#__PURE__*/React.createElement(ActionIcon, {
|
|
36
|
-
renderIcon: renderIcon,
|
|
37
|
-
customStyle: actionIconCustomStyle,
|
|
38
|
-
onClick: onClick,
|
|
48
|
+
title: iconTitle
|
|
49
|
+
}, moreActionItemProps)) : /*#__PURE__*/React.createElement(ActionIcon, _extends({
|
|
39
50
|
id: id,
|
|
51
|
+
isDisabled: isDisabled,
|
|
52
|
+
onClick: onClick,
|
|
40
53
|
title: iconTitle
|
|
41
|
-
}));
|
|
54
|
+
}, actionIconProps));
|
|
42
55
|
}
|
|
43
56
|
MessageAction.propTypes = messageActionsPropTypes;
|
|
44
57
|
MessageAction.defaultProps = messageActionsDefaultProps;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/** ** Constants *** */
|
|
2
|
-
import { dummyObject } from '@zohoim/chat-components-utils/es/constants';
|
|
2
|
+
import { dummyObject } from '@zohoim/chat-components-utils/es/constants/emptyConstants';
|
|
3
3
|
const messageActionDefaultProps = {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
4
|
+
customProps: dummyObject,
|
|
5
|
+
isShowInMore: false,
|
|
6
|
+
needMoreActionItemIcon: true
|
|
7
7
|
};
|
|
8
8
|
export default messageActionDefaultProps;
|
|
@@ -1,14 +1,17 @@
|
|
|
1
1
|
/** ** Libraries *** */
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
3
|
const messageActionPropTypes = {
|
|
4
|
-
displayText: PropTypes.string,
|
|
5
|
-
id: PropTypes.string,
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
4
|
+
displayText: PropTypes.string.isRequired,
|
|
5
|
+
id: PropTypes.string.isRequired,
|
|
6
|
+
onClick: PropTypes.func.isRequired,
|
|
7
|
+
closePopup: PropTypes.func,
|
|
8
|
+
customProps: PropTypes.shape({
|
|
9
|
+
actionIconProps: PropTypes.object,
|
|
10
|
+
moreActionItemProps: PropTypes.object
|
|
11
|
+
}),
|
|
10
12
|
iconTitle: PropTypes.string,
|
|
11
|
-
|
|
12
|
-
|
|
13
|
+
isDisabled: PropTypes.bool,
|
|
14
|
+
isShowInMore: PropTypes.bool,
|
|
15
|
+
needMoreActionItemIcon: PropTypes.bool
|
|
13
16
|
};
|
|
14
17
|
export default messageActionPropTypes;
|
|
@@ -1,75 +1,108 @@
|
|
|
1
|
-
|
|
1
|
+
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
2
2
|
|
|
3
3
|
/** ** Libraries *** */
|
|
4
|
-
import React from 'react';
|
|
5
|
-
|
|
4
|
+
import React, { useCallback } from 'react';
|
|
6
5
|
/** ** Components *** */
|
|
7
|
-
import { Container } from '@zohodesk/components/lib/Layout';
|
|
8
|
-
import MessageActionsMore from '../MessageActionsMore/MessageActionsMore';
|
|
9
6
|
|
|
7
|
+
import ActionIconWrapper from '../ActionIconWrapper/ActionIconWrapper';
|
|
8
|
+
import MessageActionsWrapper from '../MessageActionsWrapper/MessageActionsWrapper';
|
|
9
|
+
import MessageAction from '../MessageAction/MessageAction';
|
|
10
|
+
/** ** Icons *** */
|
|
11
|
+
|
|
12
|
+
import MoreIcon from '@zohodesk/icon/es/general/More';
|
|
10
13
|
/** ** Hooks *** */
|
|
11
|
-
import { useMessageAction } from '@zohoim/chat-components-hooks';
|
|
12
14
|
|
|
15
|
+
import useMergeStyle from '@zohodesk/hooks/es/utils/useMergeStyle';
|
|
16
|
+
import useMessageActions from '@zohoim/chat-components-hooks/es/MessageActions/useMessageActions';
|
|
17
|
+
/** ** Methods *** */
|
|
18
|
+
|
|
19
|
+
import renderHandler from '@zohoim/chat-components-utils/es/common/renderHandler';
|
|
13
20
|
/** ** Constants *** */
|
|
21
|
+
|
|
14
22
|
import messageActionsDefaultProps from './props/defaultProps';
|
|
15
23
|
import messageActionsPropTypes from './props/propTypes';
|
|
16
|
-
import
|
|
17
|
-
|
|
18
|
-
/** ** Methods *** */
|
|
19
|
-
import renderHandler from '@zohoim/chat-components-utils/es/common/renderHandler';
|
|
20
|
-
import useMergeStyle from '@zohodesk/hooks/es/utils/useMergeStyle';
|
|
21
|
-
import cssJSLogic from './css/cssJSLogic';
|
|
24
|
+
import { dummyObject } from '@zohoim/chat-components-utils/es/constants/emptyConstants';
|
|
25
|
+
/** ** CSS *** */
|
|
22
26
|
|
|
23
|
-
/** ** Style *** */
|
|
24
27
|
import style from './css/MessageActions.module.css';
|
|
25
|
-
function MessageActions(props) {
|
|
28
|
+
export default function MessageActions(props) {
|
|
26
29
|
const {
|
|
27
30
|
actions,
|
|
28
|
-
renderMoreIcon,
|
|
29
31
|
defaultShowCount,
|
|
32
|
+
onSelect,
|
|
33
|
+
renderSecondaryActions,
|
|
30
34
|
customStyle,
|
|
31
|
-
|
|
35
|
+
customProps
|
|
32
36
|
} = props;
|
|
37
|
+
const {
|
|
38
|
+
messageActionProps = dummyObject,
|
|
39
|
+
actionIconWrapperProps = dummyObject,
|
|
40
|
+
messageActionsWrapperProps = dummyObject
|
|
41
|
+
} = customProps;
|
|
42
|
+
/* External CSS Customization */
|
|
33
43
|
|
|
34
|
-
/* external customization */
|
|
35
44
|
const newStyle = useMergeStyle(style, customStyle);
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
45
|
+
const handleClickAction = useCallback(_ref => {
|
|
46
|
+
let {
|
|
47
|
+
id,
|
|
48
|
+
e
|
|
49
|
+
} = _ref;
|
|
50
|
+
onSelect && onSelect({
|
|
51
|
+
id,
|
|
52
|
+
e
|
|
53
|
+
});
|
|
54
|
+
}, [onSelect]);
|
|
55
|
+
const renderAction = useCallback(function () {
|
|
56
|
+
let {
|
|
57
|
+
id,
|
|
58
|
+
isShowInMore,
|
|
59
|
+
action,
|
|
60
|
+
closePopup
|
|
61
|
+
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
62
|
+
const {
|
|
63
|
+
displayText,
|
|
64
|
+
iconTitle,
|
|
65
|
+
isDisabled
|
|
66
|
+
} = action || dummyObject;
|
|
67
|
+
return /*#__PURE__*/React.createElement(MessageAction, _extends({
|
|
68
|
+
key: id,
|
|
69
|
+
closePopup: closePopup,
|
|
70
|
+
displayText: displayText,
|
|
71
|
+
iconTitle: iconTitle,
|
|
72
|
+
id: id,
|
|
73
|
+
isDisabled: isDisabled,
|
|
74
|
+
isShowInMore: isShowInMore,
|
|
75
|
+
onClick: handleClickAction
|
|
76
|
+
}, messageActionProps));
|
|
77
|
+
}, [handleClickAction, messageActionProps]);
|
|
78
|
+
/* Hooks handling */
|
|
79
|
+
|
|
40
80
|
const {
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
81
|
+
actionDetails
|
|
82
|
+
} = useMessageActions({
|
|
83
|
+
actions,
|
|
84
|
+
defaultRenderFunction: renderAction
|
|
85
|
+
});
|
|
44
86
|
const {
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
renderMoreIcon: renderMoreIcon,
|
|
64
|
-
customStyle: morePopupCustomStyle
|
|
65
|
-
}) : null));
|
|
66
|
-
}
|
|
67
|
-
return /*#__PURE__*/React.createElement("div", {
|
|
68
|
-
className: actionsClass
|
|
69
|
-
}, renderRow(defaultActions, isShowMoreIcon));
|
|
87
|
+
allActions
|
|
88
|
+
} = actionDetails;
|
|
89
|
+
/* Render More Icon */
|
|
90
|
+
|
|
91
|
+
const renderMoreIcon = useCallback(() => /*#__PURE__*/React.createElement("div", {
|
|
92
|
+
className: newStyle.moreIcon
|
|
93
|
+
}, /*#__PURE__*/React.createElement(MoreIcon, null)), [newStyle.moreIcon]);
|
|
94
|
+
const renderMore = useCallback(() => /*#__PURE__*/React.createElement(ActionIconWrapper, _extends({
|
|
95
|
+
renderIcon: renderMoreIcon
|
|
96
|
+
}, actionIconWrapperProps)), [actionIconWrapperProps, renderMoreIcon]);
|
|
97
|
+
const secondaryActions = renderHandler(renderSecondaryActions)();
|
|
98
|
+
return /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(MessageActionsWrapper, _extends({
|
|
99
|
+
actions: allActions,
|
|
100
|
+
defaultShowCount: defaultShowCount,
|
|
101
|
+
renderMoreIcon: renderMore
|
|
102
|
+
}, messageActionsWrapperProps)), secondaryActions ? /*#__PURE__*/React.createElement("div", {
|
|
103
|
+
className: newStyle.secondaryActions
|
|
104
|
+
}, secondaryActions) : null);
|
|
70
105
|
}
|
|
71
|
-
MessageActions.defaultProps = messageActionsDefaultProps;
|
|
72
106
|
MessageActions.propTypes = messageActionsPropTypes;
|
|
73
|
-
MessageActions.
|
|
74
|
-
MessageActions.displayName = 'MessageActions';
|
|
75
|
-
export default MessageActions;
|
|
107
|
+
MessageActions.defaultProps = messageActionsDefaultProps;
|
|
108
|
+
MessageActions.displayName = 'MessageActions';
|
|
@@ -1,3 +1,24 @@
|
|
|
1
|
-
.
|
|
2
|
-
/*
|
|
1
|
+
.varClass {
|
|
2
|
+
/* --messageActions-secondaryActions_margin: 5px; */
|
|
3
|
+
}
|
|
4
|
+
|
|
5
|
+
[dir=ltr] .moreIcon svg {
|
|
6
|
+
transform: rotate(90deg);
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
[dir=rtl] .moreIcon svg {
|
|
10
|
+
transform: rotate(-90deg);
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
.secondaryActions {
|
|
14
|
+
composes: varClass;
|
|
15
|
+
/* margin-top: var(--messageActions-secondaryActions_margin); */
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
[dir=ltr] .secondaryActions {
|
|
19
|
+
text-align: left;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
[dir=rtl] .secondaryActions {
|
|
23
|
+
text-align: right;
|
|
3
24
|
}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
/** ** Constants *** */
|
|
2
|
-
import { dummyObject, dummyArray } from '@zohoim/chat-components-utils/es/constants';
|
|
3
|
-
import
|
|
2
|
+
import { dummyObject, dummyArray } from '@zohoim/chat-components-utils/es/constants/emptyConstants';
|
|
3
|
+
import { actionsDefaultShowCount } from '@zohoim/chat-components-utils/es/constants/messageActionConstants';
|
|
4
4
|
const messageActionsDefaultProps = {
|
|
5
|
-
actions: dummyArray,
|
|
6
5
|
customStyle: dummyObject,
|
|
7
|
-
|
|
8
|
-
defaultShowCount:
|
|
6
|
+
customProps: dummyObject,
|
|
7
|
+
defaultShowCount: actionsDefaultShowCount,
|
|
8
|
+
actions: dummyArray
|
|
9
9
|
};
|
|
10
10
|
export default messageActionsDefaultProps;
|
|
@@ -1,12 +1,24 @@
|
|
|
1
1
|
/** ** Libraries *** */
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
|
+
/** ** Constants *** */
|
|
4
|
+
|
|
5
|
+
import { defaultMessageActions } from '@zohoim/chat-components-utils/es/constants/messageActionConstants';
|
|
3
6
|
const messageActionsPropTypes = {
|
|
4
|
-
renderMoreIcon: PropTypes.func,
|
|
5
7
|
actions: PropTypes.arrayOf(PropTypes.shape({
|
|
6
|
-
|
|
8
|
+
displayText: PropTypes.string.isRequired,
|
|
9
|
+
id: PropTypes.oneOfType([PropTypes.string, PropTypes.oneOf(Object.values(defaultMessageActions))]).isRequired,
|
|
10
|
+
iconTitle: PropTypes.string,
|
|
11
|
+
isDisabled: PropTypes.bool,
|
|
7
12
|
renderFunction: PropTypes.func
|
|
8
13
|
})).isRequired,
|
|
14
|
+
onSelect: PropTypes.func.isRequired,
|
|
15
|
+
customProps: PropTypes.shape({
|
|
16
|
+
actionIconWrapperProps: PropTypes.object,
|
|
17
|
+
messageActionProps: PropTypes.object,
|
|
18
|
+
messageActionsWrapperProps: PropTypes.object
|
|
19
|
+
}),
|
|
20
|
+
customStyle: PropTypes.object,
|
|
9
21
|
defaultShowCount: PropTypes.number,
|
|
10
|
-
|
|
22
|
+
renderSecondaryActions: PropTypes.func
|
|
11
23
|
};
|
|
12
24
|
export default messageActionsPropTypes;
|
|
@@ -1,33 +1,33 @@
|
|
|
1
|
-
/* eslint-disable max-len */
|
|
2
|
-
|
|
3
1
|
/** ** Libraries *** */
|
|
4
|
-
import React from 'react';
|
|
5
|
-
|
|
2
|
+
import React, { useCallback, useMemo } from 'react';
|
|
6
3
|
/** ** Components *** */
|
|
4
|
+
|
|
7
5
|
import Popup from '@zohodesk/components/lib/Popup/Popup';
|
|
8
6
|
import DropBox from '@zohodesk/components/lib/DropBox/DropBox';
|
|
9
|
-
|
|
10
7
|
/** ** Constants *** */
|
|
8
|
+
|
|
11
9
|
import messageActionsMoreDefaultProps from './props/defaultProps';
|
|
12
10
|
import messageActionsMorePropTypes from './props/propTypes';
|
|
13
11
|
import { MSG_ACTION_POPUP_PORTAL } from '../constants';
|
|
14
|
-
|
|
15
12
|
/** ** Methods *** */
|
|
16
|
-
import renderHandler from '@zohoim/chat-components-utils/es/common/renderHandler';
|
|
17
|
-
import cssJSLogic from './css/cssJSLogic';
|
|
18
13
|
|
|
14
|
+
import renderHandler from '@zohoim/chat-components-utils/es/common/renderHandler';
|
|
19
15
|
/** ** Hooks *** */
|
|
20
|
-
import useMergeStyle from '@zohodesk/hooks/es/utils/useMergeStyle';
|
|
21
16
|
|
|
17
|
+
import useMergeStyle from '@zohodesk/hooks/es/utils/useMergeStyle';
|
|
22
18
|
/** ** Styles *** */
|
|
19
|
+
|
|
23
20
|
import style from './css/MessageActionsMore.module.css';
|
|
21
|
+
|
|
24
22
|
function MessageActionsMoreComp(props) {
|
|
25
23
|
const {
|
|
26
24
|
actions,
|
|
27
25
|
renderMoreIcon,
|
|
28
26
|
customStyle,
|
|
29
27
|
popupSize,
|
|
30
|
-
|
|
28
|
+
defaultPopupPosition,
|
|
29
|
+
|
|
30
|
+
/** ** Popup Props *** */
|
|
31
31
|
getTargetRef,
|
|
32
32
|
getContainerRef,
|
|
33
33
|
position,
|
|
@@ -40,34 +40,21 @@ function MessageActionsMoreComp(props) {
|
|
|
40
40
|
positionsOffset
|
|
41
41
|
} = props;
|
|
42
42
|
const moreIcon = renderHandler(renderMoreIcon)();
|
|
43
|
+
/* External CSS Customization */
|
|
43
44
|
|
|
44
|
-
/* External customization */
|
|
45
45
|
const newStyle = useMergeStyle(style, customStyle);
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
getRef: getContainerRef,
|
|
59
|
-
isActive: isPopupReady,
|
|
60
|
-
isAnimate: true,
|
|
61
|
-
isArrow: false,
|
|
62
|
-
onClick: removeClose,
|
|
63
|
-
isAbsolutePositioningNeeded: isAbsolutePositioningNeeded,
|
|
64
|
-
positionMapping: positionsOffset,
|
|
65
|
-
positionsOffset: positionsOffset,
|
|
66
|
-
portalId: MSG_ACTION_POPUP_PORTAL,
|
|
67
|
-
size: popupSize,
|
|
68
|
-
customClass: popupClass
|
|
69
|
-
// isModel
|
|
70
|
-
}, actions.map(action => {
|
|
46
|
+
const popupClass = useMemo(() => ({
|
|
47
|
+
customDropBox: newStyle.popup,
|
|
48
|
+
customMobileDropBox: newStyle.mobilePopup,
|
|
49
|
+
customDropBoxWrap: newStyle.popupWrapper,
|
|
50
|
+
customMobileDropBoxWrap: newStyle.mobilePopupWrapper
|
|
51
|
+
}), [newStyle.popup, newStyle.mobilePopup, newStyle.popupWrapper, newStyle.mobilePopupWrapper]);
|
|
52
|
+
|
|
53
|
+
const handleTogglePopup = e => {
|
|
54
|
+
togglePopup(e, defaultPopupPosition);
|
|
55
|
+
};
|
|
56
|
+
|
|
57
|
+
const renderActions = useCallback(() => actions.map(action => {
|
|
71
58
|
const {
|
|
72
59
|
id,
|
|
73
60
|
renderFunction
|
|
@@ -78,8 +65,29 @@ function MessageActionsMoreComp(props) {
|
|
|
78
65
|
action,
|
|
79
66
|
closePopup: closePopupOnly
|
|
80
67
|
}); // id, isRenderInMorePopup
|
|
81
|
-
})
|
|
68
|
+
}), [actions, closePopupOnly]);
|
|
69
|
+
const isRenderPopup = !!(moreIcon && isPopupOpen);
|
|
70
|
+
return /*#__PURE__*/React.createElement("span", {
|
|
71
|
+
className: newStyle.morePopupContainer
|
|
72
|
+
}, moreIcon ? /*#__PURE__*/React.createElement("span", {
|
|
73
|
+
ref: getTargetRef,
|
|
74
|
+
onClick: handleTogglePopup
|
|
75
|
+
}, moreIcon) : null, isRenderPopup ? /*#__PURE__*/React.createElement(DropBox, {
|
|
76
|
+
boxPosition: position,
|
|
77
|
+
customClass: popupClass,
|
|
78
|
+
getRef: getContainerRef,
|
|
79
|
+
isAbsolutePositioningNeeded: isAbsolutePositioningNeeded,
|
|
80
|
+
isActive: isPopupReady,
|
|
81
|
+
isAnimate: true,
|
|
82
|
+
isArrow: false,
|
|
83
|
+
onClick: removeClose,
|
|
84
|
+
portalId: MSG_ACTION_POPUP_PORTAL,
|
|
85
|
+
positionsOffset: positionsOffset,
|
|
86
|
+
size: popupSize // isModel
|
|
87
|
+
|
|
88
|
+
}, renderActions()) : null);
|
|
82
89
|
}
|
|
90
|
+
|
|
83
91
|
const MessageActionsMore = Popup(MessageActionsMoreComp, '', '', {
|
|
84
92
|
isAbsolutePositioningNeeded: false
|
|
85
93
|
});
|
|
@@ -2,19 +2,22 @@
|
|
|
2
2
|
display: inline-block;
|
|
3
3
|
}
|
|
4
4
|
|
|
5
|
+
.morePopupContainer {
|
|
6
|
+
composes: container;
|
|
7
|
+
}
|
|
8
|
+
|
|
5
9
|
.popup {
|
|
6
|
-
|
|
7
|
-
padding: var(--imlib_size_10) 0;
|
|
10
|
+
padding: var(--zd_size10) 0 ;
|
|
8
11
|
}
|
|
9
12
|
|
|
10
13
|
.popupWrapper {
|
|
11
|
-
|
|
14
|
+
composes: container;
|
|
12
15
|
}
|
|
13
16
|
|
|
14
17
|
.mobilePopup {
|
|
15
|
-
|
|
18
|
+
composes: container;
|
|
16
19
|
}
|
|
17
20
|
|
|
18
21
|
.mobilePopupWrapper {
|
|
19
|
-
|
|
22
|
+
composes: container;
|
|
20
23
|
}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
/** ** Constants *** */
|
|
2
|
-
import { dummyObject, dummyArray } from '@zohoim/chat-components-utils/es/constants';
|
|
2
|
+
import { dummyObject, dummyArray } from '@zohoim/chat-components-utils/es/constants/emptyConstants';
|
|
3
3
|
const messageActionsMoreDefaultProps = {
|
|
4
4
|
customStyle: dummyObject,
|
|
5
5
|
actions: dummyArray,
|
|
6
|
-
popupSize: 'small'
|
|
6
|
+
popupSize: 'small',
|
|
7
|
+
defaultPopupPosition: 'bottomCenter'
|
|
7
8
|
};
|
|
8
9
|
export default messageActionsMoreDefaultProps;
|
|
@@ -5,8 +5,9 @@ const messageActionsMorePropTypes = {
|
|
|
5
5
|
id: PropTypes.string.isRequired,
|
|
6
6
|
renderFunction: PropTypes.func
|
|
7
7
|
})).isRequired,
|
|
8
|
-
renderMoreIcon: PropTypes.func,
|
|
8
|
+
renderMoreIcon: PropTypes.func.isRequired,
|
|
9
9
|
customStyle: PropTypes.object,
|
|
10
|
-
popupSize: PropTypes.
|
|
10
|
+
popupSize: PropTypes.oneOf(['mini', 'xmini', 'xsmall', 'small', 'medium', 'large', 'mlarge', 'xlarge', 'xxlarge', 'default']),
|
|
11
|
+
defaultPopupPosition: PropTypes.oneOf([['bottomCenter', 'bottomLeftToRight', 'bottomCenterToRight', 'bottomRightToLeft', 'bottomCenterToLeft', 'topCenter', 'topLeftToRight', 'topCenterToRight', 'topRightToLeft', 'topCenterToLeft', 'rightTopToBottom', 'rightCenterToBottom', 'rightCenter', 'rightBottomToTop', 'rightCenterToTop', 'leftTopToBottom', 'leftCenterToBottom', 'leftCenter', 'leftBottomToTop', 'leftCenterToTop', 'bottomRight', 'bottomLeft', 'topRight', 'topLeft', 'rightBottom', 'rightTop', 'leftBottom', 'leftTop']])
|
|
11
12
|
};
|
|
12
13
|
export default messageActionsMorePropTypes;
|