beem-component 1.1.7 → 1.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/css/sidebar.scss +31 -5
- package/dist/components/Avatars/avatars.js +4 -6
- package/dist/components/Avatars/avatars.stories.js +1 -1
- package/dist/components/ChatComponents/ChatBody/chatBody.js +3 -3
- package/dist/components/ChatComponents/ColorPicker/colorPicker.stories.js +3 -3
- package/dist/components/{ContactCards → ChatComponents/ContactCards}/contactCards.js +3 -3
- package/dist/components/{ContactCards → ChatComponents/ContactCards}/contactCards.stories.js +4 -4
- package/dist/components/ChatComponents/FormAccordion/FormAccordion.stories.js +6 -2
- package/dist/components/{InfoTab → ChatComponents/InfoTab}/infoTab.js +0 -1
- package/dist/components/{InfoTab → ChatComponents/InfoTab}/infoTab.stories.js +3 -5
- package/dist/components/ChatComponents/LabelAccordion/LabelAccordion.stories.js +6 -2
- package/dist/components/ChatComponents/NoteAccordion/NoteAccordion.stories.js +43 -0
- package/dist/components/Modals/modal.js +22 -1
- package/dist/components/colors.js +5 -2
- package/dist/components/index.js +2 -2
- package/package.json +1 -1
- package/src/App.js +89 -14
- package/src/Chat.js +20 -3
- package/src/lib/assets/css/sidebar.scss +31 -5
- package/src/lib/components/Avatars/avatars.js +4 -6
- package/src/lib/components/Avatars/avatars.stories.js +1 -1
- package/src/lib/components/ChatComponents/ChatBody/chatBody.js +3 -2
- package/src/lib/components/ChatComponents/ColorPicker/colorPicker.stories.js +1 -1
- package/src/lib/components/{ContactCards → ChatComponents/ContactCards}/contactCards.js +3 -3
- package/src/lib/components/{ContactCards → ChatComponents/ContactCards}/contactCards.stories.js +4 -4
- package/src/lib/components/ChatComponents/FormAccordion/FormAccordion.stories.js +23 -19
- package/src/lib/components/{InfoTab → ChatComponents/InfoTab}/infoTab.js +0 -1
- package/src/lib/components/{InfoTab → ChatComponents/InfoTab}/infoTab.stories.js +3 -4
- package/src/lib/components/ChatComponents/LabelAccordion/LabelAccordion.stories.js +24 -22
- package/src/lib/components/ChatComponents/NoteAccordion/NoteAccordion.stories.js +47 -0
- package/src/lib/components/Modals/modal.js +14 -2
- package/src/lib/components/colors.js +3 -0
- package/src/lib/components/index.js +2 -2
|
@@ -1,3 +1,9 @@
|
|
|
1
|
+
.main-chat-container {
|
|
2
|
+
display: flex;
|
|
3
|
+
flex-direction: row;
|
|
4
|
+
width: 100%;
|
|
5
|
+
}
|
|
6
|
+
|
|
1
7
|
.sidebar {
|
|
2
8
|
display: flex;
|
|
3
9
|
flex-direction: column;
|
|
@@ -5,7 +11,7 @@
|
|
|
5
11
|
height: 100%;
|
|
6
12
|
overflow: auto;
|
|
7
13
|
max-width: 20%;
|
|
8
|
-
width:
|
|
14
|
+
width: 100%;
|
|
9
15
|
border: 1px solid #E2E2E2;
|
|
10
16
|
}
|
|
11
17
|
|
|
@@ -33,7 +39,7 @@
|
|
|
33
39
|
overflow: auto;
|
|
34
40
|
}
|
|
35
41
|
|
|
36
|
-
.
|
|
42
|
+
.chat-container {
|
|
37
43
|
display: flex;
|
|
38
44
|
flex-direction: row;
|
|
39
45
|
align-items: center;
|
|
@@ -47,9 +53,7 @@
|
|
|
47
53
|
display: flex;
|
|
48
54
|
flex-direction: column;
|
|
49
55
|
max-height: 100%;
|
|
50
|
-
height: 100%;
|
|
51
56
|
flex-grow: 1;
|
|
52
|
-
max-height: 100%;
|
|
53
57
|
height: 100%;
|
|
54
58
|
}
|
|
55
59
|
|
|
@@ -59,6 +63,7 @@
|
|
|
59
63
|
height: 0%;
|
|
60
64
|
flex-grow: 1;
|
|
61
65
|
width: 100%;
|
|
66
|
+
max-width: 100%;
|
|
62
67
|
}
|
|
63
68
|
|
|
64
69
|
.chat-messages {
|
|
@@ -66,7 +71,8 @@
|
|
|
66
71
|
flex-direction: column;
|
|
67
72
|
height: 100%;
|
|
68
73
|
overflow: auto;
|
|
69
|
-
width:
|
|
74
|
+
width: 75%;
|
|
75
|
+
max-width: 75%;
|
|
70
76
|
border: 1px solid #E2E2E2;
|
|
71
77
|
}
|
|
72
78
|
|
|
@@ -76,6 +82,7 @@
|
|
|
76
82
|
height: 100%;
|
|
77
83
|
overflow: auto;
|
|
78
84
|
width: 25%;
|
|
85
|
+
max-width: 25%;
|
|
79
86
|
border: 1px solid #E2E2E2;
|
|
80
87
|
}
|
|
81
88
|
|
|
@@ -97,4 +104,23 @@
|
|
|
97
104
|
|
|
98
105
|
.chat-footer>*:not(:last-child) {
|
|
99
106
|
margin-right: 0.5rem;
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
.quick-reply {
|
|
110
|
+
display: flex;
|
|
111
|
+
justify-content: center;
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
.label-color-picker {
|
|
115
|
+
display: flex;
|
|
116
|
+
flex-direction: row;
|
|
117
|
+
justify-content: flex-start !important;
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
.label-color-picker>* {
|
|
121
|
+
margin-right: 0.5rem;
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
.label-select {
|
|
125
|
+
width: 100%;
|
|
100
126
|
}
|
|
@@ -52,9 +52,8 @@ var BmAvatarWrapper = _styledComponents.default.div(_templateObject || (_templat
|
|
|
52
52
|
}, function (_ref3) {
|
|
53
53
|
var user = _ref3.user;
|
|
54
54
|
if (user === "chatbot") return "".concat(_colors.BmPrimaryBlue);
|
|
55
|
-
if (user === "employee") return "".concat(_colors.
|
|
56
|
-
|
|
57
|
-
return "".concat(_colors.BmPrimaryBlue);
|
|
55
|
+
if (user === "employee") return "".concat(_colors.BmPrimaryBlue);
|
|
56
|
+
return "".concat(_colors.BmGrey100);
|
|
58
57
|
}, function (_ref4) {
|
|
59
58
|
var type = _ref4.type;
|
|
60
59
|
if (type === "circle") return "7.143rem";
|
|
@@ -63,9 +62,8 @@ var BmAvatarWrapper = _styledComponents.default.div(_templateObject || (_templat
|
|
|
63
62
|
}, function (_ref5) {
|
|
64
63
|
var user = _ref5.user;
|
|
65
64
|
if (user === "chatbot") return "".concat(_colors.BmPrimaryBlue);
|
|
66
|
-
if (user === "employee") return "".concat(_colors.
|
|
67
|
-
|
|
68
|
-
return "".concat(_colors.BmPrimaryBlue);
|
|
65
|
+
if (user === "employee") return "".concat(_colors.BmPrimaryBlue);
|
|
66
|
+
return "".concat(_colors.BmGrey100);
|
|
69
67
|
});
|
|
70
68
|
|
|
71
69
|
exports.BmAvatarWrapper = BmAvatarWrapper;
|
|
@@ -39,7 +39,7 @@ var _default = {
|
|
|
39
39
|
}
|
|
40
40
|
},
|
|
41
41
|
user: {
|
|
42
|
-
description: "Type of the Avatar ('chatbot', 'employee' or Material-UI icon)",
|
|
42
|
+
description: "Type of the Avatar ('chatbot', 'employee' or Material-UI icon), If not chatbot or employee, background color will be grey",
|
|
43
43
|
defaultValue: {
|
|
44
44
|
summary: undefined
|
|
45
45
|
}
|
|
@@ -59,9 +59,9 @@ var Details = _styledComponents.default.div(_templateObject3 || (_templateObject
|
|
|
59
59
|
return "row";
|
|
60
60
|
});
|
|
61
61
|
|
|
62
|
-
var MessageDetails = _styledComponents.default.div(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n display: flex;\n flex-direction: column;\n max-width: 50%;\n > * {\n margin-top: 0.5rem;\n }\n"])));
|
|
62
|
+
var MessageDetails = _styledComponents.default.div(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n display: flex;\n flex-direction: column;\n max-width: 50%;\n > * {\n margin-top: 0.5rem;\n margin-bottom: 0.5rem; \n }\n"])));
|
|
63
63
|
|
|
64
|
-
var Messages = _styledComponents.default.div(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral(["\n display: flex;\n flex-direction: row;\n align-items: center;\n padding:
|
|
64
|
+
var Messages = _styledComponents.default.div(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral(["\n display: flex;\n flex-direction: row;\n align-items: center;\n padding: 0.5rem;\n background: ", ";\n color: ", ";\n border-radius: ", ";\n border: 0.071rem solid ", ";\n word-break: break-all;\n margin: 0rem;\n"])), function (_ref2) {
|
|
65
65
|
var state = _ref2.state;
|
|
66
66
|
|
|
67
67
|
if (state) {
|
|
@@ -192,7 +192,7 @@ var BmImageWrapper = _styledComponents.default.div(_templateObject8 || (_templat
|
|
|
192
192
|
|
|
193
193
|
exports.BmImageWrapper = BmImageWrapper;
|
|
194
194
|
|
|
195
|
-
var BmImage = _styledComponents.default.img(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral(["\n ", "\n width:
|
|
195
|
+
var BmImage = _styledComponents.default.img(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral(["\n ", "\n width: 100%;\n object-fit: cover;\n flex-grow: 1;\n"])), ""
|
|
196
196
|
/* Fix width */
|
|
197
197
|
);
|
|
198
198
|
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.default = exports.
|
|
6
|
+
exports.default = exports.ColorPicker = void 0;
|
|
7
7
|
|
|
8
8
|
var _colorPicker = require("./colorPicker");
|
|
9
9
|
|
|
@@ -14,7 +14,7 @@ var _default = {
|
|
|
14
14
|
};
|
|
15
15
|
exports.default = _default;
|
|
16
16
|
|
|
17
|
-
var
|
|
17
|
+
var ColorPicker = function ColorPicker() {
|
|
18
18
|
return /*#__PURE__*/React.createElement(React.Fragment, null, ["#33b1ba", "#000000", "#F62E48", "#8CC63F"].map(function (color) {
|
|
19
19
|
return /*#__PURE__*/React.createElement(_colorPicker.BmColorPicker, {
|
|
20
20
|
key: color,
|
|
@@ -23,4 +23,4 @@ var ChatBody = function ChatBody() {
|
|
|
23
23
|
}));
|
|
24
24
|
};
|
|
25
25
|
|
|
26
|
-
exports.
|
|
26
|
+
exports.ColorPicker = ColorPicker;
|
|
@@ -7,7 +7,7 @@ exports.default = exports.BmContactCard = void 0;
|
|
|
7
7
|
|
|
8
8
|
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
9
9
|
|
|
10
|
-
var _colors = require("
|
|
10
|
+
var _colors = require("../../colors");
|
|
11
11
|
|
|
12
12
|
var _templateObject, _templateObject2, _templateObject3, _templateObject4;
|
|
13
13
|
|
|
@@ -15,9 +15,9 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
|
|
|
15
15
|
|
|
16
16
|
function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
|
|
17
17
|
|
|
18
|
-
var BmContactCard = _styledComponents.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n > *:not(:last-child) {\n margin-right: 1rem;\n }\n &:hover {\n background: ", ";\n }\n\n ", "\n cursor: pointer;\n padding: 1rem 1.5rem;\n"])), _colors.
|
|
18
|
+
var BmContactCard = _styledComponents.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n > *:not(:last-child) {\n margin-right: 1rem;\n }\n &:hover {\n background: ", ";\n }\n\n ", "\n cursor: pointer;\n padding: 1rem 1.5rem;\n"])), _colors.BmSecondaryBlue12, function (_ref) {
|
|
19
19
|
var active = _ref.active;
|
|
20
|
-
return active && " \n background: ".concat(_colors.
|
|
20
|
+
return active && " \n background: ".concat(_colors.BmSecondaryBlue12, ";\n ");
|
|
21
21
|
});
|
|
22
22
|
|
|
23
23
|
exports.BmContactCard = BmContactCard;
|
package/dist/components/{ContactCards → ChatComponents/ContactCards}/contactCards.stories.js
RENAMED
|
@@ -9,11 +9,11 @@ var _react = _interopRequireDefault(require("react"));
|
|
|
9
9
|
|
|
10
10
|
var _contactCards = _interopRequireDefault(require("./contactCards"));
|
|
11
11
|
|
|
12
|
-
var _avatars = _interopRequireDefault(require("
|
|
12
|
+
var _avatars = _interopRequireDefault(require("../../Avatars/avatars"));
|
|
13
13
|
|
|
14
|
-
var _messageCounter = _interopRequireDefault(require("
|
|
14
|
+
var _messageCounter = _interopRequireDefault(require("../../MessageCounter/messageCounter"));
|
|
15
15
|
|
|
16
|
-
var _tags = require("
|
|
16
|
+
var _tags = require("../../tags");
|
|
17
17
|
|
|
18
18
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
19
19
|
|
|
@@ -25,7 +25,7 @@ var _default = {
|
|
|
25
25
|
BmTag: _tags.BmTag,
|
|
26
26
|
BmCounter: _messageCounter.default
|
|
27
27
|
},
|
|
28
|
-
title: "components/ContactCard"
|
|
28
|
+
title: "components/Chat/Components/ContactCard"
|
|
29
29
|
};
|
|
30
30
|
exports.default = _default;
|
|
31
31
|
|
|
@@ -15,11 +15,15 @@ var _default = {
|
|
|
15
15
|
exports.default = _default;
|
|
16
16
|
|
|
17
17
|
var FormAccordion = function FormAccordion() {
|
|
18
|
-
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(
|
|
18
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
|
|
19
|
+
style: {
|
|
20
|
+
width: "30%"
|
|
21
|
+
}
|
|
22
|
+
}, /*#__PURE__*/React.createElement(_.BmAccordion, null, /*#__PURE__*/React.createElement(_.BmAccordion.Title, null, /*#__PURE__*/React.createElement("h3", null, "Information")), /*#__PURE__*/React.createElement(_.BmAccordion.Body, null, /*#__PURE__*/React.createElement(_.BmChatForm, null, /*#__PURE__*/React.createElement(_.BmChatForm.Group, null, /*#__PURE__*/React.createElement(_.BmChatForm.Label, null, /*#__PURE__*/React.createElement("h4", null, "Account No.")), /*#__PURE__*/React.createElement(_.BmChatForm.Input, {
|
|
19
23
|
placeholder: "Enter here"
|
|
20
24
|
})), /*#__PURE__*/React.createElement(_.BmChatForm.Group, null, /*#__PURE__*/React.createElement(_.BmChatForm.Label, null, /*#__PURE__*/React.createElement("h4", null, "Preferred Language")), /*#__PURE__*/React.createElement(_.BmChatForm.Input, {
|
|
21
25
|
placeholder: "Enter here"
|
|
22
|
-
}))))));
|
|
26
|
+
})))))));
|
|
23
27
|
};
|
|
24
28
|
|
|
25
29
|
exports.FormAccordion = FormAccordion;
|
|
@@ -13,7 +13,6 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
|
|
|
13
13
|
|
|
14
14
|
function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
|
|
15
15
|
|
|
16
|
-
// import { BmGrey400 } from "../colors";
|
|
17
16
|
var BmInfoTab = _styledComponents.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n display: flex;\n flex-direction: column;\n padding: 1.5rem;\n ", "\n > *:not(:last-child) {\n margin-bottom: 1rem;\n }\n"])), ''
|
|
18
17
|
/* border: 0.071rem solid ${BmGrey400}; */
|
|
19
18
|
);
|
|
@@ -9,20 +9,18 @@ var _react = _interopRequireDefault(require("react"));
|
|
|
9
9
|
|
|
10
10
|
var _infoTab = _interopRequireDefault(require("./infoTab"));
|
|
11
11
|
|
|
12
|
-
var
|
|
13
|
-
|
|
14
|
-
var _buttonIconsOnly = require("../Buttons/buttonIconsOnly");
|
|
12
|
+
var _buttonIconsOnly = require("../../Buttons/buttonIconsOnly");
|
|
15
13
|
|
|
16
14
|
var _icons = require("@material-ui/icons");
|
|
17
15
|
|
|
18
|
-
var _iconStyles = require("
|
|
16
|
+
var _iconStyles = require("../../iconStyles");
|
|
19
17
|
|
|
20
18
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
21
19
|
|
|
22
20
|
/* eslint-disable import/no-anonymous-default-export */
|
|
23
21
|
var _default = {
|
|
24
22
|
component: _infoTab.default,
|
|
25
|
-
title: "components/InfoTab"
|
|
23
|
+
title: "components/Chat/Components/InfoTab"
|
|
26
24
|
};
|
|
27
25
|
exports.default = _default;
|
|
28
26
|
|
|
@@ -15,13 +15,17 @@ var _default = {
|
|
|
15
15
|
exports.default = _default;
|
|
16
16
|
|
|
17
17
|
var LabelAccordion = function LabelAccordion() {
|
|
18
|
-
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(
|
|
18
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
|
|
19
|
+
style: {
|
|
20
|
+
width: "30%"
|
|
21
|
+
}
|
|
22
|
+
}, /*#__PURE__*/React.createElement(_.BmAccordion, null, /*#__PURE__*/React.createElement(_.BmAccordion.Title, null, /*#__PURE__*/React.createElement("h3", null, "Labels"), /*#__PURE__*/React.createElement("a", null, "Manage Labels")), /*#__PURE__*/React.createElement(_.BmAccordion.Body, null, /*#__PURE__*/React.createElement(_.BmChatLabels, null, /*#__PURE__*/React.createElement("h4", null, "Added labels"), /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(_.BmTag, {
|
|
19
23
|
variant: "success"
|
|
20
24
|
}, /*#__PURE__*/React.createElement("p", null, "label")), /*#__PURE__*/React.createElement(_.BmTag, {
|
|
21
25
|
variant: "warning"
|
|
22
26
|
}, /*#__PURE__*/React.createElement("p", null, "label")), /*#__PURE__*/React.createElement(_.BmTag, {
|
|
23
27
|
variant: "error"
|
|
24
|
-
}, /*#__PURE__*/React.createElement("p", null, "label")))))));
|
|
28
|
+
}, /*#__PURE__*/React.createElement("p", null, "label"))))))));
|
|
25
29
|
};
|
|
26
30
|
|
|
27
31
|
exports.LabelAccordion = LabelAccordion;
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = exports.NoteAccordion = void 0;
|
|
7
|
+
|
|
8
|
+
var _ = require("../..");
|
|
9
|
+
|
|
10
|
+
var _ContentCopy = _interopRequireDefault(require("@mui/icons-material/ContentCopy"));
|
|
11
|
+
|
|
12
|
+
var _icons = require("@material-ui/icons");
|
|
13
|
+
|
|
14
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
15
|
+
|
|
16
|
+
// eslint-disable-next-line import/no-anonymous-default-export
|
|
17
|
+
var _default = {
|
|
18
|
+
component: _.BmChatLabels,
|
|
19
|
+
title: "components/Chat/Components/NoteAccordion"
|
|
20
|
+
};
|
|
21
|
+
exports.default = _default;
|
|
22
|
+
|
|
23
|
+
var NoteAccordion = function NoteAccordion() {
|
|
24
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
|
|
25
|
+
style: {
|
|
26
|
+
width: "30%"
|
|
27
|
+
}
|
|
28
|
+
}, /*#__PURE__*/React.createElement(_.BmAccordion, null, /*#__PURE__*/React.createElement(_.BmAccordion.Title, null, /*#__PURE__*/React.createElement("h3", null, "Notes")), /*#__PURE__*/React.createElement(_.BmAccordion.Body, null, /*#__PURE__*/React.createElement(_.BmChatNotes, null, /*#__PURE__*/React.createElement(_.BmChatNotes.Input, {
|
|
29
|
+
type: "text",
|
|
30
|
+
placeholder: "Add Note"
|
|
31
|
+
}), /*#__PURE__*/React.createElement(_.BmChatNotes.Details, null, /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("p", null, "Description")), /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(_.BmIcons, {
|
|
32
|
+
icon: /*#__PURE__*/React.createElement(_icons.Edit, null),
|
|
33
|
+
size: "xsmall"
|
|
34
|
+
}), /*#__PURE__*/React.createElement(_.BmIcons, {
|
|
35
|
+
icon: /*#__PURE__*/React.createElement(_ContentCopy.default, null),
|
|
36
|
+
size: "xsmall"
|
|
37
|
+
}), /*#__PURE__*/React.createElement(_.BmIcons, {
|
|
38
|
+
icon: /*#__PURE__*/React.createElement(_icons.Delete, null),
|
|
39
|
+
size: "xsmall"
|
|
40
|
+
})), /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("p", null, /*#__PURE__*/React.createElement("i", null, "By User")), /*#__PURE__*/React.createElement("p", null, /*#__PURE__*/React.createElement("i", null, "12:00pm")))))))));
|
|
41
|
+
};
|
|
42
|
+
|
|
43
|
+
exports.NoteAccordion = NoteAccordion;
|
|
@@ -153,7 +153,28 @@ BmModal.Header = function (_ref4) {
|
|
|
153
153
|
});
|
|
154
154
|
};
|
|
155
155
|
|
|
156
|
-
BmModal.Body = _styledComponents.default.div(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral(["\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n > *:not(:last-child) {\n margin-bottom: 0.5rem;\n }\n
|
|
156
|
+
BmModal.Body = _styledComponents.default.div(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral(["\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n > *:not(:last-child) {\n margin-bottom: 0.5rem;\n }\n height: ", ";\n overflow: auto;\n ", "\n ", "\n"])), function (_ref5) {
|
|
157
|
+
var size = _ref5.size;
|
|
158
|
+
|
|
159
|
+
if (size) {
|
|
160
|
+
if (size === "small") return "21.429rem";
|
|
161
|
+
if (size === "default") return "35.714rem";
|
|
162
|
+
if (size === "large") return "57.143rem";
|
|
163
|
+
if (size === "xlarge") return "81.429rem";
|
|
164
|
+
return size;
|
|
165
|
+
}
|
|
166
|
+
|
|
167
|
+
return "35.714rem";
|
|
168
|
+
}, ''
|
|
169
|
+
/* height: 100%; */
|
|
170
|
+
, ''
|
|
171
|
+
/* > * {
|
|
172
|
+
display: flex;
|
|
173
|
+
flex-direction: row;
|
|
174
|
+
justify-content: space-between;
|
|
175
|
+
width: 100%;
|
|
176
|
+
} */
|
|
177
|
+
);
|
|
157
178
|
BmModal.Footer = _styledComponents.default.div(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral(["\n display: flex;\n justify-content: space-between;\n"])));
|
|
158
179
|
BmModal.propTypes = {
|
|
159
180
|
size: _propTypes.default.string,
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.BmSecondaryYellow = exports.BmSecondaryRed8 = exports.BmSecondaryRed15 = exports.BmSecondaryRed = exports.BmSecondaryPurple = exports.BmSecondaryGrey = exports.BmSecondaryGreen8 = exports.BmSecondaryGreen15 = exports.BmSecondaryGreen = exports.BmSecondaryGold15 = exports.BmSecondaryDarkGreen = exports.BmSecondaryCyan = exports.BmPrimaryWhite = exports.BmPrimaryGold = exports.BmPrimaryBlue = exports.BmPrimaryBlack = exports.BmPictogramGold = exports.BmPictogramBlue = exports.BmGrey600 = exports.BmGrey500 = exports.BmGrey50 = exports.BmGrey400 = exports.BmGrey200 = exports.BmGrey100 = exports.BmBgLightBlue = exports.BmBgGreyBlue = exports.BmBgGrey45 = void 0;
|
|
6
|
+
exports.BmSecondaryYellow = exports.BmSecondaryRed8 = exports.BmSecondaryRed15 = exports.BmSecondaryRed = exports.BmSecondaryPurple = exports.BmSecondaryGrey = exports.BmSecondaryGreen8 = exports.BmSecondaryGreen15 = exports.BmSecondaryGreen = exports.BmSecondaryGold15 = exports.BmSecondaryDarkGreen = exports.BmSecondaryCyan = exports.BmSecondaryBlue12 = exports.BmPrimaryWhite = exports.BmPrimaryGold = exports.BmPrimaryBlue = exports.BmPrimaryBlack = exports.BmPictogramGold = exports.BmPictogramBlue = exports.BmGrey600 = exports.BmGrey500 = exports.BmGrey50 = exports.BmGrey400 = exports.BmGrey200 = exports.BmGrey100 = exports.BmBgLightBlue = exports.BmBgGreyBlue = exports.BmBgGrey45 = void 0;
|
|
7
7
|
// Primary Colors
|
|
8
8
|
var BmPrimaryBlue = "#33B1BA";
|
|
9
9
|
exports.BmPrimaryBlue = BmPrimaryBlue;
|
|
@@ -36,9 +36,12 @@ var BmSecondaryRed15 = "rgba(246, 46, 72, 0.15)";
|
|
|
36
36
|
exports.BmSecondaryRed15 = BmSecondaryRed15;
|
|
37
37
|
var BmSecondaryGreen15 = "rgba(4, 132, 75, 0.15)";
|
|
38
38
|
exports.BmSecondaryGreen15 = BmSecondaryGreen15;
|
|
39
|
-
var BmSecondaryGold15 = "rgba(243, 169, 41, 0.15)"; //
|
|
39
|
+
var BmSecondaryGold15 = "rgba(243, 169, 41, 0.15)"; // #33B1BA 12%
|
|
40
40
|
|
|
41
41
|
exports.BmSecondaryGold15 = BmSecondaryGold15;
|
|
42
|
+
var BmSecondaryBlue12 = "rgba(51, 177, 186, 0.12)"; // Background Colors
|
|
43
|
+
|
|
44
|
+
exports.BmSecondaryBlue12 = BmSecondaryBlue12;
|
|
42
45
|
var BmBgLightBlue = "#E1EAFC";
|
|
43
46
|
exports.BmBgLightBlue = BmBgLightBlue;
|
|
44
47
|
var BmBgGreyBlue = "#F5F6FA";
|
package/dist/components/index.js
CHANGED
|
@@ -359,9 +359,9 @@ var _chatBody = _interopRequireDefault(require("./ChatComponents/ChatBody/chatBo
|
|
|
359
359
|
|
|
360
360
|
var _chatHeader = require("./ChatComponents/ChatHeader/chatHeader");
|
|
361
361
|
|
|
362
|
-
var _contactCards = _interopRequireDefault(require("./ContactCards/contactCards"));
|
|
362
|
+
var _contactCards = _interopRequireDefault(require("./ChatComponents/ContactCards/contactCards"));
|
|
363
363
|
|
|
364
|
-
var _infoTab = _interopRequireDefault(require("./InfoTab/infoTab"));
|
|
364
|
+
var _infoTab = _interopRequireDefault(require("./ChatComponents/InfoTab/infoTab"));
|
|
365
365
|
|
|
366
366
|
var _messageCounter = _interopRequireDefault(require("./MessageCounter/messageCounter"));
|
|
367
367
|
|
package/package.json
CHANGED
package/src/App.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import React from "react";
|
|
1
|
+
import React, { useState } from "react";
|
|
2
2
|
import "../src/main.scss";
|
|
3
|
-
import { MainWrapper } from "./lib/components";
|
|
3
|
+
import { BmButton, MainWrapper, BmModal } from "./lib/components";
|
|
4
4
|
import { GlobalStyle } from "./lib/components/globalStyles";
|
|
5
5
|
import "./lib/assets/css/sidebar.scss";
|
|
6
6
|
import SideBar from "./SideBar";
|
|
@@ -10,23 +10,98 @@ import CustomerInfo from "./CustomerInfo";
|
|
|
10
10
|
import InfoAccordion from "./InfoAccordion";
|
|
11
11
|
|
|
12
12
|
export const App = () => {
|
|
13
|
+
const [showModal, setShowModal] = useState(false);
|
|
13
14
|
return (
|
|
14
15
|
<>
|
|
15
16
|
<GlobalStyle />
|
|
16
17
|
<MainWrapper>
|
|
18
|
+
<div>
|
|
19
|
+
<BmButton onClick={() => setShowModal(!showModal)}>
|
|
20
|
+
Click Me!
|
|
21
|
+
</BmButton>
|
|
22
|
+
</div>
|
|
23
|
+
<BmModal show={showModal} onHide={() => setShowModal(false)} centered>
|
|
24
|
+
<BmModal.Header closeButton>
|
|
25
|
+
<h2>Header</h2>
|
|
26
|
+
</BmModal.Header>
|
|
27
|
+
<BmModal.Body>
|
|
28
|
+
<p>This is a body</p>
|
|
29
|
+
<p>This is a body</p>
|
|
30
|
+
<p>This is a body</p>
|
|
31
|
+
<p>This is a body</p>
|
|
32
|
+
<p>This is a body</p>
|
|
33
|
+
<p>This is a body</p>
|
|
34
|
+
<p>This is a body</p>
|
|
35
|
+
<p>This is a body</p>
|
|
36
|
+
<p>This is a body</p>
|
|
37
|
+
<p>This is a body</p>
|
|
38
|
+
<p>This is a body</p>
|
|
39
|
+
<p>This is a body</p>
|
|
40
|
+
<p>This is a body</p>
|
|
41
|
+
<p>This is a body</p>
|
|
42
|
+
<p>This is a body</p>
|
|
43
|
+
<p>This is a body</p>
|
|
44
|
+
<p>This is a body</p>
|
|
45
|
+
<p>This is a body</p>
|
|
46
|
+
<p>This is a body</p>
|
|
47
|
+
<p>This is a body</p>
|
|
48
|
+
<p>This is a body</p>
|
|
49
|
+
<p>This is a body</p>
|
|
50
|
+
<p>This is a body</p>
|
|
51
|
+
<p>This is a body</p>
|
|
52
|
+
<p>This is a body</p>
|
|
53
|
+
<p>This is a body</p>
|
|
54
|
+
<p>This is a body</p>
|
|
55
|
+
<p>This is a body</p>
|
|
56
|
+
<p>This is a body</p>
|
|
57
|
+
<p>This is a body</p>
|
|
58
|
+
<p>This is a body</p>
|
|
59
|
+
<p>This is a body</p>
|
|
60
|
+
<p>This is a body</p>
|
|
61
|
+
<p>This is a body</p>
|
|
62
|
+
<p>This is a body</p>
|
|
63
|
+
<p>This is a body</p>
|
|
64
|
+
<p>This is a body</p>
|
|
65
|
+
<p>This is a body</p>
|
|
66
|
+
<p>This is a body</p>
|
|
67
|
+
<p>This is a body</p>
|
|
68
|
+
<p>This is a body</p>
|
|
69
|
+
<p>This is a body</p>
|
|
70
|
+
<p>This is a body</p>
|
|
71
|
+
<p>This is a body</p>
|
|
72
|
+
<p>This is a body</p>
|
|
73
|
+
<p>This is a body</p>
|
|
74
|
+
<p>This is a body</p>
|
|
75
|
+
<p>This is a body</p>
|
|
76
|
+
<p>This is a body</p>
|
|
77
|
+
<p>This is a body</p>
|
|
78
|
+
<p>This is a body</p>
|
|
79
|
+
<p>This is a body</p>
|
|
80
|
+
<p>This is a body</p>
|
|
81
|
+
<p>This is a body</p>
|
|
82
|
+
<p>This is a body</p>
|
|
83
|
+
<p>This is a body</p>
|
|
84
|
+
<p>This is a body</p>
|
|
85
|
+
</BmModal.Body>
|
|
86
|
+
<BmModal.Footer>
|
|
87
|
+
<p>This is a footer</p>
|
|
88
|
+
</BmModal.Footer>
|
|
89
|
+
</BmModal>
|
|
17
90
|
<div className="main-chat-container">
|
|
18
|
-
<div className="
|
|
19
|
-
<
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
<
|
|
23
|
-
|
|
24
|
-
<div className="chat-
|
|
25
|
-
<
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
<
|
|
29
|
-
|
|
91
|
+
<div className="chat-container">
|
|
92
|
+
<div className="sidebar">
|
|
93
|
+
<SideBar />
|
|
94
|
+
</div>
|
|
95
|
+
<div className="chat">
|
|
96
|
+
<ChatHeader />
|
|
97
|
+
<div className="chat-menu">
|
|
98
|
+
<div className="chat-messages">
|
|
99
|
+
<Chat />
|
|
100
|
+
</div>
|
|
101
|
+
<div className="chat-contact-info">
|
|
102
|
+
<CustomerInfo />
|
|
103
|
+
<InfoAccordion />
|
|
104
|
+
</div>
|
|
30
105
|
</div>
|
|
31
106
|
</div>
|
|
32
107
|
</div>
|
package/src/Chat.js
CHANGED
|
@@ -6,7 +6,7 @@ import SendIcon from "@mui/icons-material/Send";
|
|
|
6
6
|
import { BmChat, BmIcons, BmInput } from "./lib/components";
|
|
7
7
|
import "../src/lib/assets/css/sidebar.scss";
|
|
8
8
|
import image from "../src/lib/assets/chart-img.png";
|
|
9
|
-
import azam from
|
|
9
|
+
import azam from "../src/lib/images/azam1.png";
|
|
10
10
|
|
|
11
11
|
const Chat = () => {
|
|
12
12
|
return (
|
|
@@ -20,7 +20,16 @@ const Chat = () => {
|
|
|
20
20
|
src={image}
|
|
21
21
|
fileName={<p>attachment.jpg</p>}
|
|
22
22
|
/>
|
|
23
|
-
|
|
23
|
+
<BmChat.Details
|
|
24
|
+
state="inbound"
|
|
25
|
+
session="bot"
|
|
26
|
+
displayTime={<p>12:00pm</p>}
|
|
27
|
+
status="sent"
|
|
28
|
+
// src={image}
|
|
29
|
+
// fileName={<p>attachment.jpg</p>}
|
|
30
|
+
>
|
|
31
|
+
Hello
|
|
32
|
+
</BmChat.Details>
|
|
24
33
|
<BmChat.Details
|
|
25
34
|
state="outbound"
|
|
26
35
|
session="live"
|
|
@@ -61,7 +70,15 @@ const Chat = () => {
|
|
|
61
70
|
displayTime={<p>10:00am</p>}
|
|
62
71
|
status="failed"
|
|
63
72
|
>
|
|
64
|
-
<p>
|
|
73
|
+
<p>
|
|
74
|
+
Habari! Mimi ni msaidizi wako binafsi Azam TV. Ningependa
|
|
75
|
+
nikusaidie, lakini tafadhali anza kwa kuchagua kati ya haya
|
|
76
|
+
nikuhudumie (Mfano chagua namba 2 kubadili kifurushi au 5 kwa msaada
|
|
77
|
+
zaidi). 1. Angalia Salio 2. Badilisha Kifurishi 3. Tuma Ujumbe
|
|
78
|
+
Kuwasha Kisimbuzi 4. Huduma za mteja mpya 5. Nahitaji msaada (Huduma
|
|
79
|
+
kwa mteja) 6. Change language 0. Au ungependa kutuuliza swali
|
|
80
|
+
lingine?
|
|
81
|
+
</p>
|
|
65
82
|
</BmChat.Details>{" "}
|
|
66
83
|
<BmChat.Details
|
|
67
84
|
state="outbound"
|
|
@@ -1,3 +1,9 @@
|
|
|
1
|
+
.main-chat-container {
|
|
2
|
+
display: flex;
|
|
3
|
+
flex-direction: row;
|
|
4
|
+
width: 100%;
|
|
5
|
+
}
|
|
6
|
+
|
|
1
7
|
.sidebar {
|
|
2
8
|
display: flex;
|
|
3
9
|
flex-direction: column;
|
|
@@ -5,7 +11,7 @@
|
|
|
5
11
|
height: 100%;
|
|
6
12
|
overflow: auto;
|
|
7
13
|
max-width: 20%;
|
|
8
|
-
width:
|
|
14
|
+
width: 100%;
|
|
9
15
|
border: 1px solid #E2E2E2;
|
|
10
16
|
}
|
|
11
17
|
|
|
@@ -33,7 +39,7 @@
|
|
|
33
39
|
overflow: auto;
|
|
34
40
|
}
|
|
35
41
|
|
|
36
|
-
.
|
|
42
|
+
.chat-container {
|
|
37
43
|
display: flex;
|
|
38
44
|
flex-direction: row;
|
|
39
45
|
align-items: center;
|
|
@@ -47,9 +53,7 @@
|
|
|
47
53
|
display: flex;
|
|
48
54
|
flex-direction: column;
|
|
49
55
|
max-height: 100%;
|
|
50
|
-
height: 100%;
|
|
51
56
|
flex-grow: 1;
|
|
52
|
-
max-height: 100%;
|
|
53
57
|
height: 100%;
|
|
54
58
|
}
|
|
55
59
|
|
|
@@ -59,6 +63,7 @@
|
|
|
59
63
|
height: 0%;
|
|
60
64
|
flex-grow: 1;
|
|
61
65
|
width: 100%;
|
|
66
|
+
max-width: 100%;
|
|
62
67
|
}
|
|
63
68
|
|
|
64
69
|
.chat-messages {
|
|
@@ -66,7 +71,8 @@
|
|
|
66
71
|
flex-direction: column;
|
|
67
72
|
height: 100%;
|
|
68
73
|
overflow: auto;
|
|
69
|
-
width:
|
|
74
|
+
width: 75%;
|
|
75
|
+
max-width: 75%;
|
|
70
76
|
border: 1px solid #E2E2E2;
|
|
71
77
|
}
|
|
72
78
|
|
|
@@ -76,6 +82,7 @@
|
|
|
76
82
|
height: 100%;
|
|
77
83
|
overflow: auto;
|
|
78
84
|
width: 25%;
|
|
85
|
+
max-width: 25%;
|
|
79
86
|
border: 1px solid #E2E2E2;
|
|
80
87
|
}
|
|
81
88
|
|
|
@@ -97,4 +104,23 @@
|
|
|
97
104
|
|
|
98
105
|
.chat-footer>*:not(:last-child) {
|
|
99
106
|
margin-right: 0.5rem;
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
.quick-reply {
|
|
110
|
+
display: flex;
|
|
111
|
+
justify-content: center;
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
.label-color-picker {
|
|
115
|
+
display: flex;
|
|
116
|
+
flex-direction: row;
|
|
117
|
+
justify-content: flex-start !important;
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
.label-color-picker>* {
|
|
121
|
+
margin-right: 0.5rem;
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
.label-select {
|
|
125
|
+
width: 100%;
|
|
100
126
|
}
|
|
@@ -28,9 +28,8 @@ export const BmAvatarWrapper = styled.div`
|
|
|
28
28
|
}};
|
|
29
29
|
background: ${({ user }) => {
|
|
30
30
|
if (user === "chatbot") return `${BmPrimaryBlue}`;
|
|
31
|
-
if (user === "employee") return `${
|
|
32
|
-
|
|
33
|
-
return `${BmPrimaryBlue}`;
|
|
31
|
+
if (user === "employee") return `${BmPrimaryBlue}`;
|
|
32
|
+
return `${BmGrey100}`;
|
|
34
33
|
}};
|
|
35
34
|
border-radius: ${({ type }) => {
|
|
36
35
|
if (type === "circle") return "7.143rem";
|
|
@@ -40,9 +39,8 @@ export const BmAvatarWrapper = styled.div`
|
|
|
40
39
|
border: 0.071rem solid
|
|
41
40
|
${({ user }) => {
|
|
42
41
|
if (user === "chatbot") return `${BmPrimaryBlue}`;
|
|
43
|
-
if (user === "employee") return `${
|
|
44
|
-
|
|
45
|
-
return `${BmPrimaryBlue}`;
|
|
42
|
+
if (user === "employee") return `${BmPrimaryBlue}`;
|
|
43
|
+
return `${BmGrey100}`;
|
|
46
44
|
}};
|
|
47
45
|
`;
|
|
48
46
|
|
|
@@ -21,7 +21,7 @@ export default {
|
|
|
21
21
|
},
|
|
22
22
|
user: {
|
|
23
23
|
description:
|
|
24
|
-
"Type of the Avatar ('chatbot', 'employee' or Material-UI icon)",
|
|
24
|
+
"Type of the Avatar ('chatbot', 'employee' or Material-UI icon), If not chatbot or employee, background color will be grey",
|
|
25
25
|
defaultValue: { summary: undefined },
|
|
26
26
|
},
|
|
27
27
|
},
|
|
@@ -57,6 +57,7 @@ const MessageDetails = styled.div`
|
|
|
57
57
|
max-width: 50%;
|
|
58
58
|
> * {
|
|
59
59
|
margin-top: 0.5rem;
|
|
60
|
+
margin-bottom: 0.5rem;
|
|
60
61
|
}
|
|
61
62
|
`;
|
|
62
63
|
|
|
@@ -64,7 +65,7 @@ const Messages = styled.div`
|
|
|
64
65
|
display: flex;
|
|
65
66
|
flex-direction: row;
|
|
66
67
|
align-items: center;
|
|
67
|
-
padding:
|
|
68
|
+
padding: 0.5rem;
|
|
68
69
|
background: ${({ state }) => {
|
|
69
70
|
if (state) {
|
|
70
71
|
if (state === "inbound") return `${BmPrimaryWhite}`;
|
|
@@ -192,7 +193,7 @@ export const BmImageWrapper = styled.div`
|
|
|
192
193
|
|
|
193
194
|
export const BmImage = styled.img`
|
|
194
195
|
${"" /* Fix width */}
|
|
195
|
-
width:
|
|
196
|
+
width: 100%;
|
|
196
197
|
object-fit: cover;
|
|
197
198
|
flex-grow: 1;
|
|
198
199
|
`;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import styled from "styled-components";
|
|
2
|
-
import {
|
|
2
|
+
import { BmSecondaryBlue12 } from "../../colors";
|
|
3
3
|
|
|
4
4
|
export const BmContactCard = styled.div`
|
|
5
5
|
display: flex;
|
|
@@ -9,13 +9,13 @@ export const BmContactCard = styled.div`
|
|
|
9
9
|
margin-right: 1rem;
|
|
10
10
|
}
|
|
11
11
|
&:hover {
|
|
12
|
-
background: ${
|
|
12
|
+
background: ${BmSecondaryBlue12};
|
|
13
13
|
}
|
|
14
14
|
|
|
15
15
|
${({ active }) =>
|
|
16
16
|
active &&
|
|
17
17
|
`
|
|
18
|
-
background: ${
|
|
18
|
+
background: ${BmSecondaryBlue12};
|
|
19
19
|
`}
|
|
20
20
|
cursor: pointer;
|
|
21
21
|
padding: 1rem 1.5rem;
|
package/src/lib/components/{ContactCards → ChatComponents/ContactCards}/contactCards.stories.js
RENAMED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
/* eslint-disable import/no-anonymous-default-export */
|
|
2
2
|
import React from "react";
|
|
3
3
|
import BmContactCard from "./contactCards";
|
|
4
|
-
import BmAvatar from "
|
|
5
|
-
import BmCounter from "
|
|
6
|
-
import { BmTag } from "
|
|
4
|
+
import BmAvatar from "../../Avatars/avatars";
|
|
5
|
+
import BmCounter from "../../MessageCounter/messageCounter";
|
|
6
|
+
import { BmTag } from "../../tags";
|
|
7
7
|
|
|
8
8
|
export default {
|
|
9
9
|
component: { BmContactCard, BmAvatar, BmTag, BmCounter },
|
|
10
|
-
title: "components/ContactCard",
|
|
10
|
+
title: "components/Chat/Components/ContactCard",
|
|
11
11
|
};
|
|
12
12
|
|
|
13
13
|
export const ContactCard = () => {
|
|
@@ -9,25 +9,29 @@ export default {
|
|
|
9
9
|
export const FormAccordion = () => {
|
|
10
10
|
return (
|
|
11
11
|
<>
|
|
12
|
-
<
|
|
13
|
-
<BmAccordion
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
12
|
+
<div style={{ width: "30%" }}>
|
|
13
|
+
<BmAccordion>
|
|
14
|
+
<BmAccordion.Title>
|
|
15
|
+
<h3>Information</h3>
|
|
16
|
+
</BmAccordion.Title>
|
|
17
|
+
<BmAccordion.Body>
|
|
18
|
+
<BmChatForm>
|
|
19
|
+
<BmChatForm.Group>
|
|
20
|
+
<BmChatForm.Label>
|
|
21
|
+
<h4>Account No.</h4>
|
|
22
|
+
</BmChatForm.Label>
|
|
23
|
+
<BmChatForm.Input placeholder="Enter here" />
|
|
24
|
+
</BmChatForm.Group>
|
|
25
|
+
<BmChatForm.Group>
|
|
26
|
+
<BmChatForm.Label>
|
|
27
|
+
<h4>Preferred Language</h4>
|
|
28
|
+
</BmChatForm.Label>
|
|
29
|
+
<BmChatForm.Input placeholder="Enter here" />
|
|
30
|
+
</BmChatForm.Group>
|
|
31
|
+
</BmChatForm>
|
|
32
|
+
</BmAccordion.Body>
|
|
33
|
+
</BmAccordion>
|
|
34
|
+
</div>
|
|
31
35
|
</>
|
|
32
36
|
);
|
|
33
37
|
};
|
|
@@ -1,14 +1,13 @@
|
|
|
1
1
|
/* eslint-disable import/no-anonymous-default-export */
|
|
2
2
|
import React from "react";
|
|
3
3
|
import BmInfoTab from "./infoTab";
|
|
4
|
-
import {
|
|
5
|
-
import { BmBtnIcon } from "../Buttons/buttonIconsOnly";
|
|
4
|
+
import { BmBtnIcon } from "../../Buttons/buttonIconsOnly";
|
|
6
5
|
import { MoreVert, Phone } from "@material-ui/icons";
|
|
7
|
-
import { BmIcons } from "
|
|
6
|
+
import { BmIcons } from "../../iconStyles";
|
|
8
7
|
|
|
9
8
|
export default {
|
|
10
9
|
component: BmInfoTab,
|
|
11
|
-
title: "components/InfoTab",
|
|
10
|
+
title: "components/Chat/Components/InfoTab",
|
|
12
11
|
};
|
|
13
12
|
|
|
14
13
|
export const InfoTab = () => {
|
|
@@ -9,28 +9,30 @@ export default {
|
|
|
9
9
|
export const LabelAccordion = () => {
|
|
10
10
|
return (
|
|
11
11
|
<>
|
|
12
|
-
<
|
|
13
|
-
<BmAccordion
|
|
14
|
-
<
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
<
|
|
19
|
-
<
|
|
20
|
-
|
|
21
|
-
<
|
|
22
|
-
<
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
<
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
<
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
12
|
+
<div style={{ width: "30%" }}>
|
|
13
|
+
<BmAccordion>
|
|
14
|
+
<BmAccordion.Title>
|
|
15
|
+
<h3>Labels</h3>
|
|
16
|
+
<a>Manage Labels</a>
|
|
17
|
+
</BmAccordion.Title>
|
|
18
|
+
<BmAccordion.Body>
|
|
19
|
+
<BmChatLabels>
|
|
20
|
+
<h4>Added labels</h4>
|
|
21
|
+
<div>
|
|
22
|
+
<BmTag variant="success">
|
|
23
|
+
<p>label</p>
|
|
24
|
+
</BmTag>
|
|
25
|
+
<BmTag variant="warning">
|
|
26
|
+
<p>label</p>
|
|
27
|
+
</BmTag>
|
|
28
|
+
<BmTag variant="error">
|
|
29
|
+
<p>label</p>
|
|
30
|
+
</BmTag>
|
|
31
|
+
</div>
|
|
32
|
+
</BmChatLabels>
|
|
33
|
+
</BmAccordion.Body>
|
|
34
|
+
</BmAccordion>
|
|
35
|
+
</div>
|
|
34
36
|
</>
|
|
35
37
|
);
|
|
36
38
|
};
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { BmAccordion, BmChatLabels, BmChatNotes, BmIcons } from "../..";
|
|
2
|
+
import ContentCopyIcon from "@mui/icons-material/ContentCopy";
|
|
3
|
+
import { Delete, Edit } from "@material-ui/icons";
|
|
4
|
+
|
|
5
|
+
// eslint-disable-next-line import/no-anonymous-default-export
|
|
6
|
+
export default {
|
|
7
|
+
component: BmChatLabels,
|
|
8
|
+
title: "components/Chat/Components/NoteAccordion",
|
|
9
|
+
};
|
|
10
|
+
|
|
11
|
+
export const NoteAccordion = () => {
|
|
12
|
+
return (
|
|
13
|
+
<>
|
|
14
|
+
<div style={{ width: "30%" }}>
|
|
15
|
+
<BmAccordion>
|
|
16
|
+
<BmAccordion.Title>
|
|
17
|
+
<h3>Notes</h3>
|
|
18
|
+
</BmAccordion.Title>
|
|
19
|
+
<BmAccordion.Body>
|
|
20
|
+
<BmChatNotes>
|
|
21
|
+
<BmChatNotes.Input type="text" placeholder="Add Note" />
|
|
22
|
+
{/* Display Note */}
|
|
23
|
+
<BmChatNotes.Details>
|
|
24
|
+
<div>
|
|
25
|
+
<p>Description</p>
|
|
26
|
+
</div>
|
|
27
|
+
<div>
|
|
28
|
+
<BmIcons icon={<Edit />} size="xsmall" />
|
|
29
|
+
<BmIcons icon={<ContentCopyIcon />} size="xsmall" />
|
|
30
|
+
<BmIcons icon={<Delete />} size="xsmall" />
|
|
31
|
+
</div>
|
|
32
|
+
<div>
|
|
33
|
+
<p>
|
|
34
|
+
<i>By User</i>
|
|
35
|
+
</p>
|
|
36
|
+
<p>
|
|
37
|
+
<i>12:00pm</i>
|
|
38
|
+
</p>
|
|
39
|
+
</div>
|
|
40
|
+
</BmChatNotes.Details>
|
|
41
|
+
</BmChatNotes>
|
|
42
|
+
</BmAccordion.Body>
|
|
43
|
+
</BmAccordion>
|
|
44
|
+
</div>
|
|
45
|
+
</>
|
|
46
|
+
);
|
|
47
|
+
};
|
|
@@ -138,12 +138,24 @@ BmModal.Body = styled.div`
|
|
|
138
138
|
> *:not(:last-child) {
|
|
139
139
|
margin-bottom: 0.5rem;
|
|
140
140
|
}
|
|
141
|
-
|
|
141
|
+
height: ${({ size }) => {
|
|
142
|
+
if (size) {
|
|
143
|
+
if (size === "small") return "21.429rem";
|
|
144
|
+
if (size === "default") return "35.714rem";
|
|
145
|
+
if (size === "large") return "57.143rem";
|
|
146
|
+
if (size === "xlarge") return "81.429rem";
|
|
147
|
+
return size;
|
|
148
|
+
}
|
|
149
|
+
return "35.714rem";
|
|
150
|
+
}};
|
|
151
|
+
overflow: auto;
|
|
152
|
+
${'' /* height: 100%; */}
|
|
153
|
+
${'' /* > * {
|
|
142
154
|
display: flex;
|
|
143
155
|
flex-direction: row;
|
|
144
156
|
justify-content: space-between;
|
|
145
157
|
width: 100%;
|
|
146
|
-
}
|
|
158
|
+
} */}
|
|
147
159
|
`;
|
|
148
160
|
|
|
149
161
|
BmModal.Footer = styled.div`
|
|
@@ -32,6 +32,9 @@ export const BmSecondaryGreen15 = "rgba(4, 132, 75, 0.15)";
|
|
|
32
32
|
|
|
33
33
|
export const BmSecondaryGold15 = "rgba(243, 169, 41, 0.15)";
|
|
34
34
|
|
|
35
|
+
// #33B1BA 12%
|
|
36
|
+
export const BmSecondaryBlue12="rgba(51, 177, 186, 0.12)";
|
|
37
|
+
|
|
35
38
|
// Background Colors
|
|
36
39
|
export const BmBgLightBlue = "#E1EAFC";
|
|
37
40
|
|
|
@@ -34,8 +34,8 @@ import { MainWrapper } from "../components/MainWrapper";
|
|
|
34
34
|
//Chat Components
|
|
35
35
|
import BmChat from "./ChatComponents/ChatBody/chatBody";
|
|
36
36
|
import { BmChatHeader } from "./ChatComponents/ChatHeader/chatHeader";
|
|
37
|
-
import BmContactCard from "./ContactCards/contactCards";
|
|
38
|
-
import BmInfoTab from "./InfoTab/infoTab";
|
|
37
|
+
import BmContactCard from "./ChatComponents/ContactCards/contactCards";
|
|
38
|
+
import BmInfoTab from "./ChatComponents/InfoTab/infoTab";
|
|
39
39
|
import BmCounter from "./MessageCounter/messageCounter";
|
|
40
40
|
//Chat Accordion components
|
|
41
41
|
import BmChatForm from "./ChatComponents/FormAccordion/FormAccordion";
|