@zohoim/chat-components 0.0.13 → 0.0.15
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 +57 -35
- 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 +57 -0
- package/es/ActionIconWrapper/css/ActionIconWrapper.module.css +32 -0
- package/es/ActionIconWrapper/css/cssJSLogic.js +14 -0
- package/es/ActionIconWrapper/index.js +1 -0
- package/es/{im/IMDateTime → ActionIconWrapper}/props/defaultProps.js +3 -3
- package/es/ActionIconWrapper/props/propTypes.js +11 -0
- package/es/AttachmentBubble/AttachmentBubble.js +30 -29
- package/es/AttachmentBubble/css/AttachmentBubble.module.css +17 -15
- package/es/AttachmentBubble/props/defaultProps.js +2 -2
- package/es/AttachmentBubble/props/propTypes.js +10 -5
- package/es/AttachmentBubbleInfo/AttachmentBubbleInfo.js +13 -21
- package/es/AttachmentBubbleInfo/css/AttachmentBubbleInfo.module.css +19 -16
- 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 +61 -0
- package/es/Audio/Audio.js +14 -36
- 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 +32 -36
- package/es/AudioBubble/css/AudioBubble.module.css +3 -2
- package/es/AudioBubble/props/defaultProps.js +2 -3
- package/es/AudioBubble/props/propTypes.js +10 -7
- package/es/Fonts/puviFont.module.css +55 -54
- package/es/ImageBubble/ImageBubble.js +20 -20
- 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 -8
- package/es/InfoBubble/props/defaultProps.js +1 -1
- package/es/LazyLoadImage/LazyLoadImage.js +6 -16
- 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 +17 -34
- package/es/LocationBubble/css/LocationBubble.module.css +13 -14
- 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 +7 -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 +59 -37
- package/es/Message/props/defaultProps.js +3 -3
- package/es/Message/props/propTypes.js +17 -38
- package/es/MessageAction/MessageAction.js +31 -18
- package/es/MessageAction/props/defaultProps.js +4 -4
- package/es/MessageAction/props/propTypes.js +11 -8
- package/es/MessageActions/MessageActions.js +56 -96
- package/es/MessageActions/css/MessageActions.module.css +2 -9
- package/es/MessageActions/props/defaultProps.js +2 -4
- package/es/MessageActions/props/propTypes.js +13 -19
- package/es/MessageActionsMore/MessageActionsMore.js +43 -35
- 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 +36 -44
- package/es/MessageActionsWrapper/css/MessageActionsWrapper.module.css +1 -1
- package/es/MessageActionsWrapper/props/defaultProps.js +4 -5
- package/es/MessageActionsWrapper/props/propTypes.js +7 -4
- package/es/MessageAvatar/MessageAvatar.js +11 -19
- 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 +33 -30
- package/es/MessageBox/css/MessageBox.module.css +9 -16
- 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 +64 -38
- package/es/MessageBubble/css/MessageBubble.module.css +11 -8
- package/es/MessageBubble/css/cssJSLogic.js +10 -26
- package/es/MessageBubble/props/defaultProps.js +1 -1
- package/es/MessageBubble/props/propTypes.js +7 -7
- package/es/MessageStatus/MessageStatus.js +11 -11
- package/es/MessageStatus/css/MessageStatus.module.css +1 -1
- package/es/MessageStatus/css/cssJSLogic.js +13 -9
- package/es/MessageStatus/props/defaultProps.js +1 -1
- package/es/MessageStatus/props/propTypes.js +4 -14
- package/es/MoreActionItem/MoreActionItem.js +21 -33
- package/es/MoreActionItem/css/MoreActionItem.module.css +6 -14
- package/es/MoreActionItem/props/defaultProps.js +1 -5
- package/es/MoreActionItem/props/propTypes.js +6 -5
- package/es/ReplyBubble/ReplyBubble.js +58 -28
- 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 +15 -25
- package/es/ReplyBubbleContent/css/ReplyBubbleContent.module.css +35 -38
- package/es/ReplyBubbleContent/props/defaultProps.js +1 -1
- package/es/ReplyBubbleContent/props/propTypes.js +4 -4
- package/es/ReplyBubbleHeader/ReplyBubbleHeader.js +27 -33
- package/es/ReplyBubbleHeader/css/ReplyBubbleHeader.module.css +25 -9
- package/es/ReplyBubbleHeader/props/defaultProps.js +2 -4
- package/es/ReplyBubbleHeader/props/propTypes.js +3 -2
- package/es/TextBubble/TextBubble.js +12 -30
- package/es/TextBubble/css/TextBubble.module.css +15 -9
- 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 +54 -57
- 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/{desk/commonDeskColorVariable.js → themeVariables/commonThemeColorVariable.js} +2 -3
- package/es/Theme/{desk → themeVariables}/dark/blueTheme.js +11 -11
- package/es/Theme/{desk → themeVariables}/dark/commonColorVariable.js +1 -1
- package/es/Theme/{desk → themeVariables}/dark/greenTheme.js +8 -8
- package/es/Theme/{desk → themeVariables}/dark/orangeTheme.js +8 -8
- package/es/Theme/{desk → themeVariables}/dark/redTheme.js +8 -8
- package/es/Theme/{desk → themeVariables}/dark/yellowTheme.js +8 -8
- package/es/Theme/{desk → themeVariables}/light/blueTheme.js +8 -8
- package/es/Theme/{desk → themeVariables}/light/commonColorVariable.js +1 -1
- package/es/Theme/{desk → themeVariables}/light/greenTheme.js +8 -8
- package/es/Theme/{desk → themeVariables}/light/orangeTheme.js +7 -7
- package/es/Theme/{desk → themeVariables}/light/redTheme.js +7 -7
- package/es/Theme/{desk → themeVariables}/light/yellowTheme.js +8 -8
- package/es/Theme/{desk → themeVariables}/pureDark/blueTheme.js +8 -8
- package/es/Theme/{desk → themeVariables}/pureDark/commonColorVariable.js +1 -1
- package/es/Theme/{desk → themeVariables}/pureDark/greenTheme.js +8 -8
- package/es/Theme/{desk → themeVariables}/pureDark/orangeTheme.js +8 -8
- package/es/Theme/{desk → themeVariables}/pureDark/redTheme.js +8 -8
- package/es/Theme/{desk → themeVariables}/pureDark/yellowTheme.js +8 -8
- 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 +13 -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 +32 -35
- 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/css/common.module.css +6 -0
- package/es/icons/create-icon-components.js +30 -0
- package/es/icons/factory/common/article.svg +4 -4
- package/es/icons/factory/integrations/chInstagram.svg +2 -2
- package/es/icons/factory/integrations/chWhatsApp.svg +2 -2
- package/es/icons/factory/integrations/ttASAP.svg +6 -1
- package/es/icons/factory/integrations/ttLine.svg +8 -0
- package/es/icons/factory/integrations/ttTelegram.svg +4 -1
- package/es/icons/factory/integrations/ttTwillio.svg +8 -1
- package/es/icons/factory/integrations/ttWechat.svg +9 -1
- package/es/icons/icon.template.js +9 -8
- package/es/icons/iconSrc/common/Article.js +2 -3
- package/es/icons/iconSrc/common/index.js +1 -2
- package/es/icons/iconSrc/integrations/ChInstagram.js +2 -3
- package/es/icons/iconSrc/integrations/ChWhatsApp.js +2 -3
- package/es/icons/iconSrc/integrations/TtASAP.js +11 -15
- package/es/icons/iconSrc/integrations/{TtTwitter.js → TtLine.js} +14 -18
- package/es/icons/iconSrc/integrations/TtTelegram.js +8 -12
- package/es/icons/iconSrc/integrations/TtTwillio.js +15 -19
- package/es/icons/iconSrc/integrations/TtWechat.js +19 -20
- package/es/icons/iconSrc/integrations/index.js +1 -1
- package/es/im/ArticleBubble/ArticleBubble.js +67 -0
- package/es/im/ArticleBubble/css/ArticleBubble.module.css +57 -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 -20
- 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 -8
- 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 +97 -90
- package/es/im/IMMessage/css/IMMessage.module.css +36 -0
- package/es/im/IMMessage/css/cssJSLogic.js +16 -3
- package/es/im/IMMessage/props/defaultProps.js +3 -11
- package/es/im/IMMessage/props/propTypes.js +52 -97
- package/es/im/IMMessageContent/IMMessageContent.js +76 -65
- package/es/im/IMMessageContent/css/IMMessageContent.module.css +1 -1
- package/es/im/IMMessageContent/props/defaultProps.js +2 -3
- package/es/im/IMMessageContent/props/propTypes.js +29 -23
- package/es/im/IMMessageMeta/IMMessageMeta.js +26 -21
- package/es/im/IMMessageMeta/css/IMMessageMeta.module.css +13 -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/IMPermaLink/IMPermaLink.js +48 -0
- package/es/im/IMPermaLink/css/IMPermaLink.module.css +14 -0
- package/es/im/{IMTicketLink → IMPermaLink}/css/cssJSLogic.js +3 -3
- package/es/im/IMPermaLink/index.js +1 -0
- package/es/im/{IMAttachmentIcon → IMPermaLink}/props/defaultProps.js +3 -3
- package/es/im/IMPermaLink/props/propTypes.js +11 -0
- package/es/im/IMReplyBubble/IMReplyBubble.js +20 -59
- package/es/im/IMReplyBubble/props/defaultProps.js +2 -4
- package/es/im/IMReplyBubble/props/propTypes.js +16 -14
- package/es/im/IMTextBubble/IMTextBubble.js +15 -31
- package/es/im/IMTextBubble/props/defaultProps.js +3 -9
- package/es/im/IMTextBubble/props/propTypes.js +22 -8
- package/es/im/css/common.module.css +6 -0
- package/es/im/index.js +2 -10
- package/es/index.js +4 -6
- package/package.json +32 -14
- package/es/ActionIcon/css/cssJSLogic.js +0 -10
- package/es/ArticleBubble/ArticleBubble.js +0 -70
- package/es/ArticleBubble/css/ArticleBubble.module.css +0 -48
- 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/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 -59
- 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 -20
- package/es/MessageActionsMore/css/cssJSLogic.js +0 -28
- package/es/MessageActionsWrapper/css/cssJSLogic.js +0 -10
- package/es/MessageActionsWrapper/props/propConstants.js +0 -7
- package/es/MessageAvatar/css/cssJSLogic.js +0 -18
- package/es/MessageBubble/props/propConstants.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 -18
- package/es/TextBubble/css/cssJSLogic.js +0 -18
- package/es/Theme/css/cssJSLogic.js +0 -14
- 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/factory/integrations/ttTwitter.svg +0 -1
- package/es/icons/iconSrc/actions/ConvertTicket.js +0 -25
- package/es/icons/iconSrc/actions/index.js +0 -1
- package/es/icons/iconSrc/common/Quote.js +0 -17
- package/es/im/IMArticleBubble/IMArticleBubble.js +0 -54
- 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 -62
- 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 -85
- 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 -62
- 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 -40
- package/es/im/IMDateTime/css/IMDateTime.module.css +0 -10
- package/es/im/IMDateTime/css/cssJSLogic.js +0 -10
- package/es/im/IMDateTime/index.js +0 -1
- package/es/im/IMDateTime/props/propTypes.js +0 -6
- package/es/im/IMImageBubble/IMImageBubble.js +0 -50
- 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 -50
- 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/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 -53
- package/es/im/IMMessageContent/css/cssJSLogic.js +0 -10
- package/es/im/IMReplyBubble/css/IMReplyBubble.module.css +0 -18
- 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/IMTicketLink/IMTicketLink.js +0 -46
- package/es/im/IMTicketLink/css/IMTicketLink.module.css +0 -27
- package/es/im/IMTicketLink/index.js +0 -1
- package/es/im/IMTicketLink/props/defaultProps.js +0 -6
- package/es/im/IMTicketLink/props/propTypes.js +0 -10
- package/es/im/IMVideoBubble/IMVideoBubble.js +0 -61
- 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/unused/MessageBoxFooter/MessageBoxFooter.js +0 -39
- package/es/unused/MessageBoxFooter/css/MessageBoxFooter.module.css +0 -3
- package/es/unused/MessageBoxFooter/css/cssJSLogic.js +0 -10
- package/es/unused/MessageBoxFooter/index.js +0 -1
- package/es/unused/MessageBoxFooter/props/defaultProps.js +0 -5
- package/es/unused/MessageBoxFooter/props/propTypes.js +0 -6
- package/es/unused/MessageBoxHeader/MessageBoxHeader.js +0 -7
- package/es/unused/MessageBoxHeader/css/MessageBoxHeader.module.css +0 -0
- package/es/unused/MessageBoxHeader/css/cssJsLogic.js +0 -0
- package/es/unused/MessageBoxHeader/index.js +0 -2
- package/es/unused/MessageBoxHeader/props/defaultProps.js +0 -0
- package/es/unused/MessageBoxHeader/props/propTypes.js +0 -0
- package/es/unused/MessageWrapper/MessageWrapper.js +0 -36
- package/es/unused/MessageWrapper/css/MessageWrapper.module.css +0 -0
- package/es/unused/MessageWrapper/css/cssJSLogic.js +0 -10
- package/es/unused/MessageWrapper/index.js +0 -1
- package/es/unused/MessageWrapper/props/defaultProps.js +0 -6
- package/es/unused/MessageWrapper/props/propTypes.js +0 -6
- package/es/unused/TextMessage/DefaultActions.js +0 -60
- package/es/unused/TextMessage/TextMessage.js +0 -67
- package/es/unused/TextMessage/TextMessage1.js +0 -66
- package/es/unused/TextMessage/css/TextMessage.module.css +0 -5
- package/es/unused/TextMessage/css/cssJSLogic.js +0 -0
- package/es/unused/TextMessage/index.js +0 -1
- package/es/unused/TextMessage/props/defaultProps.js +0 -4
- package/es/unused/TextMessage/props/propConstants.js +0 -3
- package/es/unused/TextMessage/props/propTypes.js +0 -17
- package/es/unused/darkTheme.js +0 -9
- package/es/unused/defaultTheme.js +0 -33
- /package/es/{ArticleBubble → im/ArticleBubble}/index.js +0 -0
|
@@ -1,20 +1,19 @@
|
|
|
1
1
|
/** ** Libraries *** */
|
|
2
2
|
import React from 'react';
|
|
3
|
-
|
|
4
3
|
/** ** Components *** */
|
|
5
|
-
import Avatar from '@zohodesk/components/es/Avatar/Avatar';
|
|
6
4
|
|
|
5
|
+
import Avatar from '@zohodesk/components/es/Avatar/Avatar';
|
|
7
6
|
/** ** CSS *** */
|
|
8
|
-
import style from './css/MessageAvatar.module.css';
|
|
9
7
|
|
|
8
|
+
import style from './css/MessageAvatar.module.css';
|
|
10
9
|
/** ** Hooks *** */
|
|
11
|
-
import useMergeStyle from '@zohodesk/hooks/es/utils/useMergeStyle';
|
|
12
10
|
|
|
11
|
+
import useMergeStyle from '@zohodesk/hooks/es/utils/useMergeStyle';
|
|
13
12
|
/** ** Methods *** */
|
|
14
|
-
import renderHandler from '@zohoim/chat-components-utils/es/common/renderHandler';
|
|
15
|
-
import cssJSLogic from './css/cssJSLogic';
|
|
16
13
|
|
|
14
|
+
import renderHandler from '@zohoim/chat-components-utils/es/common/renderHandler';
|
|
17
15
|
/** ** Constants *** */
|
|
16
|
+
|
|
18
17
|
import messageAvatarDefaultProps from './props/defaultProps';
|
|
19
18
|
import messageAvatarPropTypes from './props/propTypes';
|
|
20
19
|
export default function MessageAvatar(props) {
|
|
@@ -28,30 +27,23 @@ export default function MessageAvatar(props) {
|
|
|
28
27
|
iconTitle,
|
|
29
28
|
renderIcon
|
|
30
29
|
} = props;
|
|
30
|
+
/* External CSS Customization */
|
|
31
31
|
|
|
32
|
-
/* external customization */
|
|
33
32
|
const newStyle = useMergeStyle(style, customStyle);
|
|
34
33
|
const icon = renderHandler(renderIcon)();
|
|
35
|
-
|
|
36
|
-
/* css classnames added based on logic */
|
|
37
|
-
const {
|
|
38
|
-
avatarWrapperClass,
|
|
39
|
-
iconClass,
|
|
40
|
-
avatarClass
|
|
41
|
-
} = cssJSLogic(props, newStyle);
|
|
42
34
|
return /*#__PURE__*/React.createElement("div", {
|
|
43
|
-
className:
|
|
35
|
+
className: newStyle.msgAvatar
|
|
44
36
|
}, /*#__PURE__*/React.createElement(Avatar, {
|
|
45
37
|
alternateSrc: alternateSrc,
|
|
46
|
-
customClass:
|
|
38
|
+
customClass: newStyle.avatar,
|
|
47
39
|
name: name,
|
|
48
40
|
size: size,
|
|
49
41
|
src: src,
|
|
50
42
|
title: title
|
|
51
|
-
}), /*#__PURE__*/React.createElement("span", {
|
|
52
|
-
className:
|
|
43
|
+
}), icon ? /*#__PURE__*/React.createElement("span", {
|
|
44
|
+
className: newStyle.icon,
|
|
53
45
|
"data-title": iconTitle
|
|
54
|
-
}, icon));
|
|
46
|
+
}, icon) : null);
|
|
55
47
|
}
|
|
56
48
|
MessageAvatar.defaultProps = messageAvatarDefaultProps;
|
|
57
49
|
MessageAvatar.propTypes = messageAvatarPropTypes;
|
|
@@ -5,15 +5,15 @@
|
|
|
5
5
|
|
|
6
6
|
.icon {
|
|
7
7
|
position: absolute;
|
|
8
|
-
bottom: calc(
|
|
8
|
+
bottom: calc( var(--zd_size6) * -1 ) ;
|
|
9
9
|
}
|
|
10
10
|
|
|
11
11
|
[dir=ltr] .icon {
|
|
12
|
-
right: calc(
|
|
12
|
+
right: calc( var(--zd_size7) * -1 ) ;
|
|
13
13
|
}
|
|
14
14
|
|
|
15
15
|
[dir=rtl] .icon {
|
|
16
|
-
left: calc(
|
|
16
|
+
left: calc( var(--zd_size7) * -1 ) ;
|
|
17
17
|
}
|
|
18
18
|
|
|
19
19
|
.avatar {
|
|
@@ -1,11 +1,7 @@
|
|
|
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 messageAvatarDefaultProps = {
|
|
4
4
|
customStyle: dummyObject,
|
|
5
|
-
|
|
6
|
-
// 'RAVI KUMAR',
|
|
7
|
-
size: 'medium',
|
|
8
|
-
iconTitle: '' // 'RAVI KUMAR',
|
|
5
|
+
size: 'medium'
|
|
9
6
|
};
|
|
10
|
-
|
|
11
7
|
export default messageAvatarDefaultProps;
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
/** ** Libraries *** */
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
3
|
const messageAvatarPropTypes = {
|
|
4
|
-
src: PropTypes.string,
|
|
4
|
+
src: PropTypes.string.isRequired,
|
|
5
5
|
alternateSrc: PropTypes.string,
|
|
6
|
-
|
|
7
|
-
size: PropTypes.string,
|
|
8
|
-
name: PropTypes.string,
|
|
6
|
+
customStyle: PropTypes.object,
|
|
9
7
|
iconTitle: PropTypes.string,
|
|
8
|
+
name: PropTypes.string,
|
|
10
9
|
renderIcon: PropTypes.func,
|
|
11
|
-
|
|
10
|
+
size: PropTypes.oneOf(['xxsmall', 'small', 'xsmall', 'medium', 'xmedium', 'large', 'xlarge']),
|
|
11
|
+
title: PropTypes.string
|
|
12
12
|
};
|
|
13
13
|
export default messageAvatarPropTypes;
|
|
@@ -1,63 +1,66 @@
|
|
|
1
|
-
/* eslint-disable max-len */
|
|
2
|
-
|
|
3
1
|
/** ** Libraries *** */
|
|
4
2
|
import React from 'react';
|
|
5
|
-
|
|
6
3
|
/** ** Hooks *** */
|
|
7
|
-
import useMergeStyle from '@zohodesk/hooks/es/utils/useMergeStyle';
|
|
8
4
|
|
|
5
|
+
import useMergeStyle from '@zohodesk/hooks/es/utils/useMergeStyle';
|
|
9
6
|
/** ** Constants *** */
|
|
7
|
+
|
|
10
8
|
import messageBoxDefaultProps from './props/defaultProps';
|
|
11
9
|
import messageBoxPropTypes from './props/propTypes';
|
|
12
|
-
|
|
13
10
|
/** ** Methods *** */
|
|
11
|
+
|
|
14
12
|
import renderHandler from '@zohoim/chat-components-utils/es/common/renderHandler';
|
|
15
13
|
import cssJSLogic from './css/cssJSLogic';
|
|
14
|
+
/** ** Components *** */
|
|
16
15
|
|
|
16
|
+
import { Container, Box } from '@zohodesk/components/es/Layout';
|
|
17
17
|
/** ** Styles *** */
|
|
18
|
+
|
|
18
19
|
import style from './css/MessageBox.module.css';
|
|
19
|
-
function MessageBox(props) {
|
|
20
|
+
export default function MessageBox(props) {
|
|
20
21
|
const {
|
|
21
22
|
renderMessage: renderMessageContent,
|
|
22
23
|
renderMessageFooter,
|
|
23
24
|
renderMessageHeader,
|
|
24
25
|
customStyle,
|
|
25
|
-
renderMessageStatus
|
|
26
|
+
renderMessageStatus,
|
|
27
|
+
isFailed,
|
|
28
|
+
isIncoming,
|
|
29
|
+
isOutgoing
|
|
26
30
|
} = props;
|
|
31
|
+
/* External CSS Customization */
|
|
27
32
|
|
|
28
|
-
/* external customization */
|
|
29
33
|
const newStyle = useMergeStyle(style, customStyle);
|
|
30
|
-
|
|
31
34
|
/* css classnames added based on logic */
|
|
32
|
-
const {
|
|
33
|
-
messageBoxClass,
|
|
34
|
-
messageBoxInner,
|
|
35
|
-
messageContentWrapperClass,
|
|
36
|
-
messageHeaderWrapperClass,
|
|
37
|
-
messageFooterWrapperClass,
|
|
38
|
-
messageStatusWrapperClass
|
|
39
|
-
} = cssJSLogic(props, newStyle);
|
|
40
35
|
|
|
36
|
+
const {
|
|
37
|
+
messageBoxClass
|
|
38
|
+
} = cssJSLogic({
|
|
39
|
+
isFailed,
|
|
40
|
+
isIncoming,
|
|
41
|
+
isOutgoing
|
|
42
|
+
}, newStyle);
|
|
41
43
|
/* Render Childrens */
|
|
44
|
+
|
|
42
45
|
const messageHeader = renderHandler(renderMessageHeader)();
|
|
43
46
|
const messageConent = renderHandler(renderMessageContent)();
|
|
44
47
|
const messageFooter = renderHandler(renderMessageFooter)();
|
|
45
48
|
const messageStatus = renderHandler(renderMessageStatus)();
|
|
46
|
-
return /*#__PURE__*/React.createElement(
|
|
49
|
+
return /*#__PURE__*/React.createElement(Container, {
|
|
47
50
|
className: messageBoxClass
|
|
48
|
-
}, /*#__PURE__*/React.createElement(
|
|
49
|
-
className: messageBoxInner
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
51
|
+
}, /*#__PURE__*/React.createElement(Box, {
|
|
52
|
+
className: newStyle.messageBoxInner,
|
|
53
|
+
flexible: true
|
|
54
|
+
}, messageHeader ? /*#__PURE__*/React.createElement(Box, {
|
|
55
|
+
className: newStyle.messageHeaderWrapper
|
|
56
|
+
}, messageHeader) : null, messageConent ? /*#__PURE__*/React.createElement(Box, {
|
|
57
|
+
className: newStyle.messageContentWrapper
|
|
58
|
+
}, messageConent) : null, messageFooter ? /*#__PURE__*/React.createElement(Box, {
|
|
59
|
+
className: newStyle.messageFooterWrapper
|
|
60
|
+
}, messageFooter) : null), messageStatus ? /*#__PURE__*/React.createElement(Box, {
|
|
61
|
+
className: newStyle.messageStatusWrapper
|
|
58
62
|
}, messageStatus) : null);
|
|
59
63
|
}
|
|
60
64
|
MessageBox.propTypes = messageBoxPropTypes;
|
|
61
65
|
MessageBox.defaultProps = messageBoxDefaultProps;
|
|
62
|
-
MessageBox.displayName = 'MessageBox';
|
|
63
|
-
export default MessageBox;
|
|
66
|
+
MessageBox.displayName = 'MessageBox';
|
|
@@ -1,16 +1,15 @@
|
|
|
1
1
|
.varClass {
|
|
2
|
-
--messageBox-content_padding: var(--
|
|
3
|
-
--messageBox-content_size: var(--
|
|
4
|
-
--messageBox-border_radius:
|
|
5
|
-
--messageBox-message_status_gap: var(--
|
|
6
|
-
--messageBox-message_header_gap: var(--
|
|
7
|
-
--messageBox-message_footer_gap: var(--
|
|
8
|
-
/* --messageBox-max_width:
|
|
2
|
+
--messageBox-content_padding: var(--zd_size14);
|
|
3
|
+
--messageBox-content_size: var(--zd_font_size14);
|
|
4
|
+
--messageBox-border_radius: 9px;
|
|
5
|
+
--messageBox-message_status_gap: var(--zd_size12);
|
|
6
|
+
--messageBox-message_header_gap: var(--zd_size1);
|
|
7
|
+
--messageBox-message_footer_gap: var(--zd_size1);
|
|
8
|
+
/* --messageBox-max_width: 410px; */
|
|
9
9
|
}
|
|
10
10
|
|
|
11
11
|
.messageBoxContainer {
|
|
12
12
|
composes: varClass;
|
|
13
|
-
|
|
14
13
|
display: grid;
|
|
15
14
|
/* flex-direction: row; */
|
|
16
15
|
grid-template-columns: 1fr auto;
|
|
@@ -19,20 +18,14 @@
|
|
|
19
18
|
/* max-width: var(--messageBox-max_width); */
|
|
20
19
|
word-wrap: break-word;
|
|
21
20
|
font-size: var(--messageBox-content_size);
|
|
22
|
-
|
|
21
|
+
box-sizing: border-box;
|
|
23
22
|
background-color: var(--imlib_chat_components_messageBox_bg_color);
|
|
24
23
|
padding: var(--messageBox-content_padding);
|
|
25
24
|
border-radius: var(--messageBox-border_radius);
|
|
26
25
|
}
|
|
27
26
|
|
|
28
|
-
.messageBoxInner{
|
|
29
|
-
flex:1;
|
|
30
|
-
min-width: 0;
|
|
31
|
-
min-height: 0;
|
|
32
|
-
}
|
|
33
|
-
|
|
34
27
|
.messageContentWrapper {
|
|
35
|
-
/*Use this class for message content customization*/
|
|
28
|
+
/* Use this class for message content customization */
|
|
36
29
|
line-height: 150%;
|
|
37
30
|
}
|
|
38
31
|
|
|
@@ -12,27 +12,7 @@ export default function cssJSLogic(props, style) {
|
|
|
12
12
|
[style.incomingMessageBox]: isIncoming && !isFailed,
|
|
13
13
|
[style.outgoingMessageBox]: isOutgoing && !isFailed
|
|
14
14
|
});
|
|
15
|
-
const messageBoxInner = compileClassNames({
|
|
16
|
-
[style.messageBoxInner]: true
|
|
17
|
-
});
|
|
18
|
-
const messageContentWrapperClass = compileClassNames({
|
|
19
|
-
[style.messageContentWrapper]: true
|
|
20
|
-
});
|
|
21
|
-
const messageHeaderWrapperClass = compileClassNames({
|
|
22
|
-
[style.messageHeaderWrapper]: true
|
|
23
|
-
});
|
|
24
|
-
const messageFooterWrapperClass = compileClassNames({
|
|
25
|
-
[style.messageFooterWrapper]: true
|
|
26
|
-
});
|
|
27
|
-
const messageStatusWrapperClass = compileClassNames({
|
|
28
|
-
[style.messageStatusWrapper]: true
|
|
29
|
-
});
|
|
30
15
|
return {
|
|
31
|
-
messageBoxClass
|
|
32
|
-
messageBoxInner,
|
|
33
|
-
messageContentWrapperClass,
|
|
34
|
-
messageHeaderWrapperClass,
|
|
35
|
-
messageFooterWrapperClass,
|
|
36
|
-
messageStatusWrapperClass
|
|
16
|
+
messageBoxClass
|
|
37
17
|
};
|
|
38
18
|
}
|
|
@@ -1,8 +1,6 @@
|
|
|
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
|
export default {
|
|
4
4
|
customStyle: dummyObject,
|
|
5
|
-
isFailed: false,
|
|
6
|
-
isIncoming: false,
|
|
7
5
|
isOutgoing: true
|
|
8
6
|
};
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
/** ** Libraries *** */
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
renderMessageStatus: PropTypes.func,
|
|
3
|
+
const messageBoxPropTypes = {
|
|
4
|
+
isIncoming: PropTypes.bool.isRequired,
|
|
5
|
+
isOutgoing: PropTypes.bool.isRequired,
|
|
7
6
|
renderMessage: PropTypes.func.isRequired,
|
|
8
7
|
customStyle: PropTypes.object,
|
|
9
8
|
isFailed: PropTypes.bool,
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
9
|
+
renderMessageFooter: PropTypes.func,
|
|
10
|
+
renderMessageHeader: PropTypes.func,
|
|
11
|
+
renderMessageStatus: PropTypes.func
|
|
12
|
+
};
|
|
13
|
+
export default messageBoxPropTypes;
|
|
@@ -1,23 +1,22 @@
|
|
|
1
|
-
/* eslint-disable max-len */
|
|
2
|
-
/* eslint-disable sort-imports */
|
|
3
|
-
|
|
4
1
|
/** ** Libraries *** */
|
|
5
|
-
import React from 'react';
|
|
6
|
-
|
|
2
|
+
import React, { useCallback } from 'react';
|
|
7
3
|
/** ** Hooks *** */
|
|
8
|
-
import useMergeStyle from '@zohodesk/hooks/es/utils/useMergeStyle';
|
|
9
|
-
import { useMessageBubbleAction } from '@zohoim/chat-components-hooks/es/MessageBubble';
|
|
10
4
|
|
|
5
|
+
import useMergeStyle from '@zohodesk/hooks/es/utils/useMergeStyle';
|
|
6
|
+
import useMessageBubbleAction from '@zohoim/chat-components-hooks/es/MessageBubble/useMessageBubbleAction';
|
|
11
7
|
/** ** Constants *** */
|
|
8
|
+
|
|
12
9
|
import messageBubbleDefaultProps from './props/defaultProps';
|
|
13
10
|
import messageBubblePropTypes from './props/propTypes';
|
|
14
|
-
import constantProps from './props/propConstants';
|
|
15
|
-
|
|
16
11
|
/** ** Methods *** */
|
|
12
|
+
|
|
17
13
|
import renderHandler from '@zohoim/chat-components-utils/es/common/renderHandler';
|
|
18
14
|
import cssJSLogic from './css/cssJSLogic';
|
|
15
|
+
/** ** Components *** */
|
|
19
16
|
|
|
17
|
+
import { Container, Box } from '@zohodesk/components/es/Layout';
|
|
20
18
|
/** ** Styles *** */
|
|
19
|
+
|
|
21
20
|
import style from './css/MessageBubble.module.css';
|
|
22
21
|
export default function MessageBubble(props) {
|
|
23
22
|
const {
|
|
@@ -26,53 +25,80 @@ export default function MessageBubble(props) {
|
|
|
26
25
|
renderMessageOwner,
|
|
27
26
|
renderMessageActions,
|
|
28
27
|
customStyle,
|
|
29
|
-
needSender
|
|
28
|
+
needSender,
|
|
29
|
+
isActive,
|
|
30
|
+
direction
|
|
30
31
|
} = props;
|
|
32
|
+
/* External CSS Customization */
|
|
31
33
|
|
|
32
|
-
/* external customization */
|
|
33
34
|
const newStyle = useMergeStyle(style, customStyle);
|
|
34
35
|
/* css classnames added based on logic */
|
|
35
|
-
const {
|
|
36
|
-
bubbleClass,
|
|
37
|
-
messageOwnerWrapperClass,
|
|
38
|
-
messageContainerClass,
|
|
39
|
-
messageBoxWrapperClass,
|
|
40
|
-
messageActionWrapperClass,
|
|
41
|
-
messageBoxFooterWrapperClass
|
|
42
|
-
} = cssJSLogic(props, newStyle);
|
|
43
36
|
|
|
37
|
+
const {
|
|
38
|
+
bubbleClass
|
|
39
|
+
} = cssJSLogic({
|
|
40
|
+
isActive,
|
|
41
|
+
direction
|
|
42
|
+
}, newStyle);
|
|
44
43
|
/* Use Hooks */
|
|
44
|
+
|
|
45
45
|
const {
|
|
46
46
|
onMouseEnter,
|
|
47
47
|
onMouseLeave,
|
|
48
|
-
|
|
48
|
+
isRenderMessageActions
|
|
49
49
|
} = useMessageBubbleAction(props);
|
|
50
|
-
|
|
51
50
|
/* Render Childrens */
|
|
52
|
-
const messageActions = isRenderMessageAction ? renderHandler(renderMessageActions)() : null;
|
|
53
|
-
const messageOwner = renderHandler(renderMessageOwner)();
|
|
54
|
-
const messageBox = renderHandler(renderMessageBox)();
|
|
55
|
-
const messageBoxFooter = renderHandler(renderMessageBoxFooter)();
|
|
56
51
|
|
|
52
|
+
/* Message Sender Render */
|
|
53
|
+
|
|
54
|
+
const messageSenderRenderer = useCallback(() => {
|
|
55
|
+
const messageOwner = renderHandler(renderMessageOwner)();
|
|
56
|
+
return needSender ? /*#__PURE__*/React.createElement(Box, {
|
|
57
|
+
className: newStyle.messageOwnerWrapper
|
|
58
|
+
}, messageOwner) : null;
|
|
59
|
+
}, [renderMessageOwner, needSender, newStyle.messageOwnerWrapper]);
|
|
60
|
+
/* Message Actions Render */
|
|
61
|
+
|
|
62
|
+
const messageActionsRenderer = useCallback(() => {
|
|
63
|
+
const messageActions = isRenderMessageActions ? renderHandler(renderMessageActions)() : null;
|
|
64
|
+
return messageActions ? /*#__PURE__*/React.createElement(Box, {
|
|
65
|
+
className: newStyle.messageActionWrapper
|
|
66
|
+
}, messageActions) : null;
|
|
67
|
+
}, [isRenderMessageActions, renderMessageActions, newStyle.messageActionWrapper]);
|
|
68
|
+
/* Message Box Render */
|
|
69
|
+
|
|
70
|
+
const messageBoxRenderer = useCallback(() => {
|
|
71
|
+
const messageBox = renderHandler(renderMessageBox)();
|
|
72
|
+
return messageBox ? /*#__PURE__*/React.createElement(Box, {
|
|
73
|
+
className: newStyle.messageBoxWrapper
|
|
74
|
+
}, messageBox) : null;
|
|
75
|
+
}, [renderMessageBox, newStyle.messageBoxWrapper]);
|
|
76
|
+
/* Message BoxWithActions Render */
|
|
77
|
+
|
|
78
|
+
const messageBoxWithActionsRenderer = useCallback(() => {
|
|
79
|
+
const messageBox = messageBoxRenderer();
|
|
80
|
+
const messageActions = messageActionsRenderer();
|
|
81
|
+
return messageBox || messageActions ? /*#__PURE__*/React.createElement(Box, {
|
|
82
|
+
className: newStyle.messageContainer
|
|
83
|
+
}, messageBox, messageActions) : null;
|
|
84
|
+
}, [messageBoxRenderer, messageActionsRenderer, newStyle.messageContainer]);
|
|
85
|
+
/* Message Footer Render */
|
|
86
|
+
|
|
87
|
+
const messageFooterRenderer = useCallback(() => {
|
|
88
|
+
const messageBoxFooter = renderHandler(renderMessageBoxFooter)();
|
|
89
|
+
return messageBoxFooter ? /*#__PURE__*/React.createElement(Box, {
|
|
90
|
+
className: newStyle.messageBoxFooterWrapper
|
|
91
|
+
}, messageBoxFooter) : null;
|
|
92
|
+
}, [renderMessageBoxFooter, newStyle.messageBoxFooterWrapper]);
|
|
57
93
|
/* Construct Layout */
|
|
58
|
-
|
|
94
|
+
|
|
95
|
+
const messageLayout = /*#__PURE__*/React.createElement(Container, {
|
|
59
96
|
className: bubbleClass,
|
|
60
97
|
onMouseEnter: onMouseEnter,
|
|
61
98
|
onMouseLeave: onMouseLeave
|
|
62
|
-
},
|
|
63
|
-
className: messageOwnerWrapperClass
|
|
64
|
-
}, messageOwner) : null, messageBox || messageActions ? /*#__PURE__*/React.createElement("div", {
|
|
65
|
-
className: messageContainerClass
|
|
66
|
-
}, messageBox ? /*#__PURE__*/React.createElement("div", {
|
|
67
|
-
className: messageBoxWrapperClass
|
|
68
|
-
}, messageBox) : null, messageActions ? /*#__PURE__*/React.createElement("div", {
|
|
69
|
-
className: messageActionWrapperClass
|
|
70
|
-
}, messageActions) : null) : null, messageBoxFooter ? /*#__PURE__*/React.createElement("div", {
|
|
71
|
-
className: messageBoxFooterWrapperClass
|
|
72
|
-
}, messageBoxFooter) : null);
|
|
99
|
+
}, messageSenderRenderer(), messageBoxWithActionsRenderer(), messageFooterRenderer());
|
|
73
100
|
return messageLayout;
|
|
74
101
|
}
|
|
75
102
|
MessageBubble.propTypes = messageBubblePropTypes;
|
|
76
103
|
MessageBubble.defaultProps = messageBubbleDefaultProps;
|
|
77
|
-
MessageBubble.constantProps = constantProps;
|
|
78
104
|
MessageBubble.displayName = 'MessageBubble';
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
.varClass {
|
|
2
|
-
--messageBubble-bubble_footer_gap: var(--
|
|
3
|
-
--messageBubble-message_owner_gap:
|
|
4
|
-
--messageBubble-message_action_gap: var(--
|
|
5
|
-
--messageBox-max_width: var(--
|
|
6
|
-
--messageBox-footer_fontSize: var(--
|
|
7
|
-
--messageBox-owner_width: var(--
|
|
2
|
+
--messageBubble-bubble_footer_gap: var(--zd_size5);
|
|
3
|
+
--messageBubble-message_owner_gap: 13px;
|
|
4
|
+
--messageBubble-message_action_gap: var(--zd_size12);
|
|
5
|
+
--messageBox-max_width: var(--zd_size410);
|
|
6
|
+
--messageBox-footer_fontSize: var(--zd_font_size11);
|
|
7
|
+
--messageBox-owner_width: var(--zd_size34);
|
|
8
8
|
}
|
|
9
9
|
|
|
10
10
|
.messageBubble {
|
|
11
11
|
composes: varClass;
|
|
12
|
-
width: 100
|
|
12
|
+
width: 100% ;
|
|
13
13
|
display: grid;
|
|
14
14
|
grid-column-gap: var(--messageBubble-message_owner_gap);
|
|
15
15
|
}
|
|
@@ -38,7 +38,9 @@
|
|
|
38
38
|
.messageBoxFooterWrapper {
|
|
39
39
|
grid-area: messageBoxFooter;
|
|
40
40
|
font-size: var(--messageBox-footer_fontSize);
|
|
41
|
-
color: var(
|
|
41
|
+
color: var(
|
|
42
|
+
--imlib_chat_components_messageBubble_messageBox_footer_text_color
|
|
43
|
+
);
|
|
42
44
|
margin-top: var(--messageBubble-bubble_footer_gap);
|
|
43
45
|
}
|
|
44
46
|
|
|
@@ -65,6 +67,7 @@
|
|
|
65
67
|
grid-template-columns: auto 1fr;
|
|
66
68
|
grid-template-areas: 'messageBox messageAction';
|
|
67
69
|
}
|
|
70
|
+
|
|
68
71
|
.directionOut .messageContainer {
|
|
69
72
|
grid-template-columns: 1fr auto;
|
|
70
73
|
grid-template-areas: 'messageAction messageBox';
|
|
@@ -1,42 +1,26 @@
|
|
|
1
1
|
/** ** Methods *** */
|
|
2
2
|
import { compileClassNames } from '@zohodesk/utils';
|
|
3
|
-
|
|
4
|
-
/** ** Constants *** */
|
|
5
|
-
import propConstants from '../props/propConstants';
|
|
3
|
+
import getMessageDirectionType from '@zohoim/chat-components-utils/es/getMessageDirectionType';
|
|
6
4
|
export default function cssJSLogic(props, style) {
|
|
7
5
|
const {
|
|
8
6
|
isActive,
|
|
9
7
|
direction
|
|
10
8
|
} = props;
|
|
11
|
-
const
|
|
12
|
-
|
|
9
|
+
const {
|
|
10
|
+
isIncoming,
|
|
11
|
+
isOutgoing
|
|
12
|
+
} = getMessageDirectionType({
|
|
13
|
+
messageDetails: {
|
|
14
|
+
direction
|
|
15
|
+
}
|
|
16
|
+
});
|
|
13
17
|
const bubbleClass = compileClassNames({
|
|
14
18
|
[style.messageBubble]: true,
|
|
15
19
|
[style.directionIn]: isIncoming,
|
|
16
20
|
[style.directionOut]: isOutgoing,
|
|
17
21
|
[style.active]: isActive
|
|
18
22
|
});
|
|
19
|
-
const messageOwnerWrapperClass = compileClassNames({
|
|
20
|
-
[style.messageOwnerWrapper]: true
|
|
21
|
-
});
|
|
22
|
-
const messageContainerClass = compileClassNames({
|
|
23
|
-
[style.messageContainer]: true
|
|
24
|
-
});
|
|
25
|
-
const messageBoxWrapperClass = compileClassNames({
|
|
26
|
-
[style.messageBoxWrapper]: true
|
|
27
|
-
});
|
|
28
|
-
const messageActionWrapperClass = compileClassNames({
|
|
29
|
-
[style.messageActionWrapper]: true
|
|
30
|
-
});
|
|
31
|
-
const messageBoxFooterWrapperClass = compileClassNames({
|
|
32
|
-
[style.messageBoxFooterWrapper]: true
|
|
33
|
-
});
|
|
34
23
|
return {
|
|
35
|
-
bubbleClass
|
|
36
|
-
messageOwnerWrapperClass,
|
|
37
|
-
messageContainerClass,
|
|
38
|
-
messageBoxWrapperClass,
|
|
39
|
-
messageActionWrapperClass,
|
|
40
|
-
messageBoxFooterWrapperClass
|
|
24
|
+
bubbleClass
|
|
41
25
|
};
|
|
42
26
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
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
|
import { direction } from '@zohoim/chat-components-utils/es/constants/messageConstants';
|
|
4
4
|
const messageBubbleDefaultProps = {
|
|
5
5
|
direction: direction.IN,
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
/** ** Libraries *** */
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
|
-
|
|
4
3
|
/** ** Constants *** */
|
|
4
|
+
|
|
5
5
|
import { direction } from '@zohoim/chat-components-utils/es/constants/messageConstants';
|
|
6
6
|
const messageBubblePropTypes = {
|
|
7
|
-
direction: PropTypes.oneOf(
|
|
7
|
+
direction: PropTypes.oneOf(Object.values(direction)).isRequired,
|
|
8
|
+
renderMessageBox: PropTypes.func.isRequired,
|
|
9
|
+
customStyle: PropTypes.object,
|
|
8
10
|
isActive: PropTypes.bool,
|
|
9
11
|
needMessageActions: PropTypes.bool,
|
|
10
|
-
|
|
11
|
-
renderMessageBoxFooter: PropTypes.func,
|
|
12
|
-
renderMessageOwner: PropTypes.func,
|
|
12
|
+
needSender: PropTypes.bool,
|
|
13
13
|
renderMessageActions: PropTypes.func,
|
|
14
|
-
|
|
15
|
-
|
|
14
|
+
renderMessageBoxFooter: PropTypes.func,
|
|
15
|
+
renderMessageOwner: PropTypes.func
|
|
16
16
|
};
|
|
17
17
|
export default messageBubblePropTypes;
|
|
@@ -1,25 +1,22 @@
|
|
|
1
|
-
/* eslint-disable react/jsx-no-bind */
|
|
2
|
-
/* eslint-disable max-len */
|
|
3
|
-
|
|
4
1
|
/** ** Libraries *** */
|
|
5
2
|
import React from 'react';
|
|
6
|
-
|
|
7
3
|
/** ** Hooks *** */
|
|
8
|
-
import useMergeStyle from '@zohodesk/hooks/es/utils/useMergeStyle';
|
|
9
4
|
|
|
5
|
+
import useMergeStyle from '@zohodesk/hooks/es/utils/useMergeStyle';
|
|
10
6
|
/** ** Constants *** */
|
|
7
|
+
|
|
11
8
|
import messageStatusDefaultProps from './props/defaultProps';
|
|
12
9
|
import messageStatusPropTypes from './props/propTypes';
|
|
13
10
|
import messageStatusConstants from '@zohoim/chat-components-utils/es/constants/messageStatusConstants';
|
|
14
|
-
|
|
15
11
|
/** ** Methods *** */
|
|
12
|
+
|
|
16
13
|
import cssJSLogic from './css/cssJSLogic';
|
|
17
14
|
import renderHandler from '@zohoim/chat-components-utils/es/common/renderHandler';
|
|
18
|
-
|
|
19
15
|
/** ** Styles *** */
|
|
20
|
-
import style from './css/MessageStatus.module.css';
|
|
21
16
|
|
|
17
|
+
import style from './css/MessageStatus.module.css';
|
|
22
18
|
/** ** Icons *** */
|
|
19
|
+
|
|
23
20
|
import DoubleTickIcon from '../icons/iconSrc/messageStatus/DoubleTick';
|
|
24
21
|
import TickIcon from '../icons/iconSrc/messageStatus/Tick';
|
|
25
22
|
import ClockIcon from '../icons/iconSrc/messageStatus/Clock';
|
|
@@ -51,15 +48,18 @@ export default function MessageStatus(props) {
|
|
|
51
48
|
title,
|
|
52
49
|
renderCustomIcon
|
|
53
50
|
} = props;
|
|
51
|
+
/* External CSS Customization */
|
|
54
52
|
|
|
55
|
-
/* External customization */
|
|
56
53
|
const newStyle = useMergeStyle(style, customStyle);
|
|
57
54
|
/* CSS classnames added based on logic */
|
|
55
|
+
|
|
58
56
|
const {
|
|
59
57
|
statusClass
|
|
60
|
-
} = cssJSLogic(
|
|
61
|
-
|
|
58
|
+
} = cssJSLogic({
|
|
59
|
+
messageStatus
|
|
60
|
+
}, newStyle);
|
|
62
61
|
/* Custom Icon */
|
|
62
|
+
|
|
63
63
|
const customIcon = renderHandler(renderCustomIcon)();
|
|
64
64
|
const IconComponent = messageStatusIconMapping[messageStatus];
|
|
65
65
|
return IconComponent || customIcon ? /*#__PURE__*/React.createElement("div", {
|