@tencentcloud/chat-uikit-react 2.2.4 → 2.2.5

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.
Files changed (54) hide show
  1. package/.babelrc +2 -2
  2. package/.eslintrc.js +125 -19
  3. package/.stylelintrc.js +17 -18
  4. package/CHANGELOG.md +11 -2
  5. package/README.md +8 -8
  6. package/dist/cjs/assets/fonts/iconfont.ttf +0 -0
  7. package/dist/cjs/assets/fonts/iconfont.woff +0 -0
  8. package/dist/cjs/assets/fonts/iconfont.woff2 +0 -0
  9. package/dist/cjs/components/ConversationPreview/ConversationPreviewContent.js +1 -1
  10. package/dist/cjs/components/ConversationPreview/utils.js +1 -1
  11. package/dist/cjs/context/TUIKitContext.js +1 -1
  12. package/dist/cjs/index.css +2 -1
  13. package/dist/cjs/index.d.css +643 -166
  14. package/dist/esm/assets/fonts/iconfont.ttf +0 -0
  15. package/dist/esm/assets/fonts/iconfont.woff +0 -0
  16. package/dist/esm/assets/fonts/iconfont.woff2 +0 -0
  17. package/dist/esm/components/ConversationPreview/ConversationPreviewContent.js +1 -1
  18. package/dist/esm/components/ConversationPreview/utils.js +1 -1
  19. package/dist/esm/context/TUIKitContext.js +1 -1
  20. package/dist/esm/index.css +2 -1
  21. package/dist/esm/index.d.css +643 -166
  22. package/package.json +7 -6
  23. package/rollup.config.js +13 -2
  24. package/src/assets/fonts/iconfont.ttf +0 -0
  25. package/src/assets/fonts/iconfont.woff +0 -0
  26. package/src/assets/fonts/iconfont.woff2 +0 -0
  27. package/src/components/ConversationCreate/styles/ConversationCreatGroupDetail.scss +16 -7
  28. package/src/components/ConversationCreate/styles/index.scss +23 -13
  29. package/src/components/ConversationPreview/ConversationPreviewContent.tsx +1 -2
  30. package/src/components/ConversationPreview/styles/index.scss +44 -14
  31. package/src/components/ConversationPreview/utils.tsx +36 -28
  32. package/src/components/Input/styles/index.scss +7 -5
  33. package/src/components/Model/styles/layout.scss +3 -3
  34. package/src/components/Plugins/styles/color.scss +17 -3
  35. package/src/components/Popup/styles/layout.scss +2 -1
  36. package/src/components/TUIChatHeader/styles/layout.scss +13 -2
  37. package/src/components/TUIConversationList/index.scss +25 -7
  38. package/src/components/TUIKit/TUIKit.tsx +3 -2
  39. package/src/components/TUIKit/styles/index.scss +27 -7
  40. package/src/components/TUIManage/styles/index.scss +16 -6
  41. package/src/components/TUIMessage/styles/color.scss +20 -9
  42. package/src/components/TUIMessage/styles/layout.scss +44 -11
  43. package/src/components/TUIMessageInput/styles/color.scss +25 -6
  44. package/src/components/TUIMessageInput/styles/layout.scss +58 -16
  45. package/src/components/TUIMessageList/styles/layout.scss +16 -2
  46. package/src/components/TUIProfile/styles/layout.scss +33 -16
  47. package/src/context/TUIKitContext.tsx +6 -1
  48. package/src/styles/colors/_color-dark.scss +35 -0
  49. package/src/styles/colors/_color-light.scss +35 -0
  50. package/src/styles/colors/_color-theme.scss +54 -0
  51. package/src/styles/fonts/icon-font.scss +18 -0
  52. package/src/styles/index.scss +4 -0
  53. package/src/styles/normalize.scss +355 -0
  54. package/src/components/TUIKit/styles/reset.scss +0 -67
@@ -1,15 +1,23 @@
1
+ @use "../../styles/colors/color-theme" as *;
2
+
1
3
  .tui-conversation {
2
4
  flex: 1;
3
- min-width: 360px;
4
- max-width: 400px;
5
+ box-sizing: border-box;
6
+ overflow: hidden;
7
+ min-width: 0;
5
8
  display: flex;
6
9
  flex-direction: column;
7
10
  position: relative;
8
- border-right: 1px solid #F9FAFB;
9
11
  text-align: initial;
12
+
13
+ @include theme() {
14
+ background-color: get(bg-primary);
15
+ }
16
+
10
17
  .tui-conversation-header {
11
18
  display: flex;
12
19
  padding: 10px 20px;
20
+
13
21
  .tui-conversation-create-icon {
14
22
  display: flex;
15
23
  align-items: center;
@@ -17,16 +25,19 @@
17
25
  margin-left: 10px;
18
26
  }
19
27
  }
28
+
20
29
  .no-result {
21
30
  padding: 0 20px;
22
31
  display: flex;
23
32
  flex-direction: column;
24
33
  align-items: center;
34
+
25
35
  &-icon {
26
36
  margin: 100px auto 50px;
27
37
  }
38
+
28
39
  &-message {
29
- color: #999999;
40
+ color: #999;
30
41
  font-weight: 400;
31
42
  font-size: 16px;
32
43
  font-family: PingFangSC-Medium;
@@ -34,8 +45,15 @@
34
45
  }
35
46
  }
36
47
  }
48
+
37
49
  .tui-conversation-h5 {
38
- min-width: 100%;
39
- width: 100%;
40
- max-width: 100%;
50
+ .tui-conversation-header {
51
+ padding: 10px;
52
+ }
53
+
54
+ .conversation-list-container {
55
+ .conversation-preview-container {
56
+ padding: 0 10px;
57
+ }
58
+ }
41
59
  }
@@ -7,8 +7,6 @@ import { isH5, isPC } from '../../utils/env';
7
7
  import { useTUIKit, UseContactParams } from './hooks/useTUIKit';
8
8
  import { useCreateTUIKitContext } from './hooks/useCreateTUIKitContext';
9
9
  import { TUIKitProvider } from '../../context/TUIKitContext';
10
- import './styles/index.scss';
11
- import './styles/h5.scss';
12
10
  import { TUIConversation } from '../TUIConversation';
13
11
  import { TUIChat } from '../TUIChat';
14
12
  import { TUIManage } from '../TUIManage';
@@ -21,6 +19,9 @@ import chats from '../Icon/images/chats.svg';
21
19
  import chatsSelected from '../Icon/images/chats-selected.svg';
22
20
  import contacts from '../Icon/images/contacts.svg';
23
21
  import contactsSelected from '../Icon/images/contacts-selected.svg';
22
+ import './styles/index.scss';
23
+ import './styles/h5.scss';
24
+ import '../../styles/index.scss';
24
25
 
25
26
  export interface ChatProps {
26
27
  chat?: any,
@@ -1,14 +1,19 @@
1
- @import "reset";
1
+ @use "../../../styles/colors/color-theme" as *;
2
+
2
3
  .tui-kit {
3
4
  position: relative;
4
5
  display: flex;
5
6
  width: 100%;
6
7
  height: 100%;
7
- background-color: #FFFFFF;
8
8
  text-align: initial;
9
+
10
+ @include theme() {
11
+ background-color: get(bg-primary);
12
+ }
9
13
  }
14
+
10
15
  .sample-chat {
11
- position:relative;
16
+ position: relative;
12
17
  margin: 0 auto;
13
18
  width: calc(100% - 20rem);
14
19
  min-width: 850px;
@@ -16,23 +21,30 @@
16
21
  box-sizing: border-box;
17
22
  border-radius: 12px;
18
23
  overflow: hidden;
24
+
19
25
  &-profile {
20
26
  position: absolute;
21
27
  top: 0;
22
28
  z-index: 1;
29
+ width: 100%;
30
+ height: 100%;
23
31
  }
32
+
24
33
  &-left-container {
25
34
  max-width: 360px;
26
35
  min-width: 360px;
27
36
  display: flex;
28
37
  flex-direction: column;
38
+ position: relative;
29
39
  }
40
+
30
41
  &-tab {
31
42
  display: flex;
32
43
  align-items: center;
33
44
  justify-content: space-around;
34
45
  margin: 12px;
35
46
  }
47
+
36
48
  &-tab-container {
37
49
  display: flex;
38
50
  flex-direction: column;
@@ -40,22 +52,26 @@
40
52
  justify-content: center;
41
53
  cursor: pointer;
42
54
  }
55
+
43
56
  &-tab-text {
44
57
  font-size: 15px;
45
58
  line-height: 25px;
46
59
  text-align: center;
47
60
  }
61
+
48
62
  &-tab-active {
49
- color: #147AFF;
63
+ color: #147aff;
50
64
  }
51
65
  }
66
+
52
67
  .tuikit-container {
53
68
  display: flex;
54
69
  height: 100%;
55
70
  position: relative;
56
71
  text-align: initial;
57
- box-shadow: 0 11px 20px 0 rgba(0,0,0,.3);
72
+ box-shadow: 0 11px 20px 0 rgba(0, 0, 0, 30%);
58
73
  }
74
+
59
75
  .tui-chat-default {
60
76
  width: 100%;
61
77
  height: 100%;
@@ -63,6 +79,7 @@
63
79
  background-position-x: -17px;
64
80
  background-position-y: 173px;
65
81
  padding: 100px 40px 0;
82
+
66
83
  header {
67
84
  display: flex;
68
85
  align-items: center;
@@ -71,11 +88,13 @@
71
88
  font-weight: 500;
72
89
  color: #000;
73
90
  letter-spacing: 0;
91
+
74
92
  img {
75
93
  width: 32px;
76
94
  margin: 0 10px;
77
95
  }
78
96
  }
97
+
79
98
  .content {
80
99
  max-width: 393px;
81
100
  font-size: 16px;
@@ -86,6 +105,7 @@
86
105
  letter-spacing: 0;
87
106
  padding: 36px 0 20px;
88
107
  }
108
+
89
109
  .link {
90
110
  font-size: 14px;
91
111
  line-height: 20px;
@@ -93,6 +113,7 @@
93
113
  font-weight: 400;
94
114
  color: #666;
95
115
  letter-spacing: 0;
116
+
96
117
  a {
97
118
  font-family: PingFangSC-Regular;
98
119
  font-weight: 400;
@@ -104,9 +125,8 @@
104
125
  }
105
126
  }
106
127
 
107
-
108
128
  body {
109
129
  #webpack-dev-server-client-overlay {
110
130
  display: none !important;
111
131
  }
112
- }
132
+ }
@@ -5,13 +5,16 @@
5
5
  max-width: 300px;
6
6
  min-width: 200px;
7
7
  border-left: 1px solid #f9fafb;
8
+
8
9
  .red {
9
- color: #FF584C !important;
10
+ color: #ff584c !important;
10
11
  }
12
+
11
13
  .tui-manage-title {
12
14
  display: flex;
13
15
  align-items: center;
14
- padding: 24px 20px;
16
+ padding: 24px 10px;
17
+
15
18
  span {
16
19
  margin-right: 10px;
17
20
  font-weight: 700;
@@ -20,15 +23,18 @@
20
23
  line-height: 17px;
21
24
  }
22
25
  }
26
+
23
27
  .tui-manage-container {
24
28
  .tui-manage-info {
25
29
  display: flex;
26
30
  flex-direction: column;
27
31
  align-items: center;
32
+
28
33
  .info-avatar {
29
34
  margin-top: 40px;
30
35
  margin-bottom: 20px;
31
36
  }
37
+
32
38
  .info-name {
33
39
  text-align: center;
34
40
  font-weight: 700;
@@ -37,33 +43,37 @@
37
43
  line-height: 29px;
38
44
  margin-bottom: 10px;
39
45
  }
46
+
40
47
  .info-id {
41
48
  font-weight: 400;
42
49
  font-size: 12px;
43
50
  font-family: PingFangSC-Medium;
44
51
  line-height: 14px;
45
- color: #666666;
52
+ color: #666;
46
53
  margin-bottom: 30px;
47
54
  text-align: center;
48
55
  }
49
56
  }
57
+
50
58
  .tui-manage-handle {
51
59
  .manage-handle-box {
52
60
  display: flex;
53
- background: rgba(249, 249, 249, 0.94);
61
+ background: rgba(249, 249, 249, 94%);
54
62
  align-items: center;
55
63
  justify-content: space-between;
56
64
  padding: 10px;
57
65
  box-sizing: border-box;
66
+
58
67
  &:nth-child(2) {
59
68
  margin-top: 10px;
60
69
  cursor: pointer;
61
70
  }
71
+
62
72
  .manage-handle-title {
63
73
  font-size: 16px;
64
74
  font-family: PingFangSC-Medium;
65
75
  line-height: 22px;
66
- color: rgba(0, 0, 0, 0.6);
76
+ color: rgba(0, 0, 0, 60%);
67
77
  }
68
78
  }
69
79
  }
@@ -71,7 +81,7 @@
71
81
  }
72
82
 
73
83
  .tui-manage.tui-h5-manage {
74
- border-left: 1px solid #f9fafb;
84
+ border-left: none;
75
85
  display: flex;
76
86
  flex-direction: column;
77
87
  position: absolute;
@@ -1,26 +1,37 @@
1
- .message-text, .message-custom{
2
- border: 1px solid #DDDDDD;
1
+ @use "../../../styles/colors/color-theme" as *;
2
+
3
+ .message-text,
4
+ .message-custom {
5
+ @include theme() {
6
+ border: 1px solid get(border-5);
7
+ }
3
8
  }
4
9
 
5
10
  .bubble {
11
+ @include theme() {
12
+ background-color: get(bg-primary);
13
+ }
14
+
6
15
  &-out {
7
- background: #F2F7FF;
8
- border: 1px solid #F2F7FF;
16
+ @include theme() {
17
+ border: none;
18
+ background-color: get(bg-secondary);
19
+ }
9
20
  }
10
21
  }
11
22
 
12
23
  .meesage-bubble-reply-out {
13
- background: #F2F7FF;
14
24
  .meesage-bubble-reply-main {
15
- .message-text{
25
+ .message-text {
16
26
  background: none;
17
27
  }
18
28
  }
19
29
  }
20
30
 
21
-
22
31
  .message-tip {
23
- color: #999999;
32
+ @include theme() {
33
+ color: get(text-secondary);
34
+ }
24
35
  }
25
36
 
26
37
  .tip {
@@ -30,4 +41,4 @@
30
41
  padding: 3px;
31
42
  }
32
43
  }
33
- }
44
+ }
@@ -1,3 +1,5 @@
1
+ @use "../../../styles/colors/color-theme" as *;
2
+
1
3
  .message-default {
2
4
  width: 100%;
3
5
  flex: 1;
@@ -24,6 +26,10 @@
24
26
  display: inline-block;
25
27
  padding-bottom: 3px;
26
28
  max-width: 60%;
29
+
30
+ @include theme() {
31
+ color: get(text-primary);
32
+ }
27
33
  }
28
34
  }
29
35
  }
@@ -80,7 +86,10 @@
80
86
  font-family: PingFangSC-Medium;
81
87
  line-height: 14px;
82
88
  text-align: right;
83
- color: #7A7A7A;
89
+
90
+ @include theme() {
91
+ color: get(text-secondary);
92
+ }
84
93
  }
85
94
  }
86
95
 
@@ -91,7 +100,9 @@
91
100
  bottom: 10px;
92
101
  right: 10px;
93
102
  .time {
94
- color: #FFFFFF;
103
+ @include theme() {
104
+ color: get(text-primary);
105
+ }
95
106
  }
96
107
  }
97
108
  }
@@ -110,6 +121,10 @@
110
121
  white-space: pre-wrap;
111
122
  display: inline;
112
123
  vertical-align: middle;
124
+
125
+ @include theme() {
126
+ color: get(text-primary);
127
+ }
113
128
  }
114
129
  .message-status {
115
130
  display: inline-flex;
@@ -232,46 +247,64 @@
232
247
  }
233
248
 
234
249
  .meesage-bubble-reply {
235
- background: #ECEBEB;
236
250
  padding: 8px 16px;
251
+
252
+ @include theme() {
253
+ background-color: get(bg-secondary);
254
+ }
255
+
237
256
  &-in {
238
257
  border-radius: 16px 16px 16px 0;
239
258
  }
259
+
240
260
  &-out {
241
261
  border-radius: 16px 16px 0px 16px;
242
262
  }
263
+
243
264
  .message-text {
244
- border-radius: none;
245
- border: none;
265
+ border: none !important;
246
266
  }
267
+
247
268
  .bubble {
248
269
  padding: 0;
270
+
249
271
  &-in {
250
272
  border-radius: 0;
251
273
  }
252
274
  }
275
+
253
276
  &-main {
254
277
  position: relative;
255
278
  padding: 10px 14px;
256
279
  margin-bottom: 10px;
257
- background: #FFFFFF;
280
+
281
+ @include theme() {
282
+ background-color: get(bg-primary);
283
+ }
284
+
258
285
  &::before {
259
286
  content: "";
260
287
  position: absolute;
261
288
  width: 6px;
262
289
  height: 100%;
263
- background: #D9D9D9;
264
290
  top: 0;
265
291
  left: 0;
292
+
293
+ @include theme() {
294
+ background-color: get(bg-5);
295
+ }
266
296
  }
297
+
267
298
  .title {
268
- font-family: PingFangSC-Medium;
269
- font-style: normal;
270
299
  font-weight: 500;
271
300
  font-size: 14px;
272
- line-height: 17px;
273
301
  padding-bottom: 10px;
302
+
303
+ @include theme() {
304
+ color: get(text-primary);
305
+ }
274
306
  }
307
+
275
308
  .message-context {
276
309
  opacity: 0.6;
277
310
  }
@@ -504,4 +537,4 @@
504
537
 
505
538
  .website {
506
539
  color: #147aff !important;
507
- }
540
+ }
@@ -1,17 +1,36 @@
1
+ @use "../../../styles/colors/color-theme" as *;
2
+
1
3
  .tui-message-input {
4
+ @include theme() {
5
+ background-color: get(bg-primary);
6
+ }
7
+
2
8
  .tui-kit-input-box--focus {
3
- outline: 1px solid #147AFF;
9
+ @include theme() {
10
+ outline: 1px solid get(status-info);
11
+ }
4
12
  }
13
+
5
14
  .input-box {
6
- border: 1px solid #D3DAF3;
7
- background: #FFFFFF;
15
+ @include theme() {
16
+ background-color: get(bg-primary);
17
+ border: 1px solid get(border-5);
18
+ }
8
19
  }
9
20
  }
10
21
 
11
22
  .input-plugin-popup {
12
23
  &-box {
13
- background: #FFFFFF;
14
- box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.25);
15
24
  border-radius: 16px;
25
+
26
+ [data-chat-theme="light"] & {
27
+ background-color: var(--chat-theme-light-bg-primary);
28
+ box-shadow: var(--chat-theme-light-box-shadow-1);
29
+ }
30
+
31
+ [data-chat-theme="dark"] & {
32
+ background-color: var(--chat-theme-dark-bg-3);
33
+ box-shadow: var(--chat-theme-dark-box-shadow-1);
34
+ }
16
35
  }
17
- }
36
+ }