@chat21/chat21-ionic 3.0.107-rc.3 → 3.0.107-rc.7

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 (68) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/package.json +1 -1
  3. package/src/app/app.component.ts +99 -29
  4. package/src/app/chatlib/conversation-detail/conversation-content/conversation-content.component.scss +0 -1
  5. package/src/app/chatlib/conversation-detail/ion-conversation-detail/ion-conversation-detail.component.scss +9 -9
  6. package/src/app/chatlib/conversation-detail/message/info-message/info-message.component.scss +5 -7
  7. package/src/app/chatlib/conversation-detail/message/options/options.component.scss +2 -2
  8. package/src/app/chatlib/conversation-detail/message/return-receipt/return-receipt.component.scss +1 -1
  9. package/src/app/chatlib/list-conversations-component/ion-list-conversations/ion-list-conversations.component.html +1 -1
  10. package/src/app/chatlib/list-conversations-component/ion-list-conversations/ion-list-conversations.component.scss +22 -55
  11. package/src/app/components/canned-response/canned-response.component.scss +9 -2
  12. package/src/app/components/contacts-directory/contacts-directory.component.scss +4 -56
  13. package/src/app/components/conversation-detail/header-conversation-detail/header-conversation-detail.component.scss +5 -6
  14. package/src/app/components/conversation-detail/message-text-area/message-text-area.component.scss +16 -5
  15. package/src/app/components/conversation-detail/message-text-area/message-text-area.component.ts +5 -0
  16. package/src/app/components/conversation-info/advanced-info-accordion/advanced-info-accordion.component.html +11 -19
  17. package/src/app/components/conversation-info/advanced-info-accordion/advanced-info-accordion.component.scss +15 -19
  18. package/src/app/components/conversation-info/info-direct/info-direct.component.scss +6 -5
  19. package/src/app/components/conversation-info/info-group/info-group.component.html +2 -2
  20. package/src/app/components/conversation-info/info-group/info-group.component.scss +11 -2
  21. package/src/app/components/conversation-info/info-support-group/info-support-group.component.html +2 -1
  22. package/src/app/components/conversation-info/info-support-group/info-support-group.component.ts +46 -3
  23. package/src/app/components/conversations-list/header-conversations-list/header-conversations-list.component.html +2 -1
  24. package/src/app/components/conversations-list/header-conversations-list/header-conversations-list.component.scss +3 -2
  25. package/src/app/components/conversations-list/header-conversations-list-archived/header-conversations-list-archived.component.scss +5 -3
  26. package/src/app/components/conversations-list/header-conversations-list-unassigned/header-conversations-list-unassigned.component.scss +5 -3
  27. package/src/app/components/navbar/navbar.component.html +10 -14
  28. package/src/app/components/navbar/navbar.component.scss +33 -17
  29. package/src/app/components/sidebar/sidebar.component.html +49 -67
  30. package/src/app/components/sidebar/sidebar.component.scss +44 -29
  31. package/src/app/components/sidebar-user-details/sidebar-user-details.component.html +5 -5
  32. package/src/app/components/sidebar-user-details/sidebar-user-details.component.scss +47 -93
  33. package/src/app/components/sidebar-user-details/sidebar-user-details.component.ts +11 -13
  34. package/src/app/modals/create-canned-response/create-canned-response.page.html +2 -20
  35. package/src/app/modals/create-canned-response/create-canned-response.page.scss +44 -27
  36. package/src/app/modals/create-ticket/create-ticket.page.html +4 -4
  37. package/src/app/modals/create-ticket/create-ticket.page.scss +34 -1
  38. package/src/app/modals/json-message/json-message.page.scss +15 -1
  39. package/src/app/modals/loader-preview/loader-preview.page.html +1 -1
  40. package/src/app/modals/loader-preview/loader-preview.page.scss +19 -1
  41. package/src/app/modals/maps/maps.page.scss +18 -0
  42. package/src/app/modals/send-email/send-email.page.scss +30 -7
  43. package/src/app/modals/send-whatsapp-template/send-whatsapp-template.page.html +1 -1
  44. package/src/app/modals/send-whatsapp-template/send-whatsapp-template.page.scss +18 -0
  45. package/src/app/pages/contacts-directory/contacts-directory.page.html +9 -10
  46. package/src/app/pages/contacts-directory/contacts-directory.page.scss +5 -3
  47. package/src/app/pages/contacts-directory/contacts-directory.page.ts +0 -15
  48. package/src/app/pages/conversation-detail/conversation-detail.page.scss +5 -5
  49. package/src/app/pages/conversation-detail/conversation-detail.page.ts +10 -11
  50. package/src/app/pages/conversations-list/conversations-list.page.html +0 -1
  51. package/src/app/pages/conversations-list/conversations-list.page.scss +6 -17
  52. package/src/app/pages/conversations-list/conversations-list.page.ts +9 -18
  53. package/src/app/pages/profile-info/profile-info.page.html +4 -4
  54. package/src/app/pages/profile-info/profile-info.page.scss +43 -25
  55. package/src/app/pages/profile-info/profile-info.page.ts +2 -1
  56. package/src/app/pages/unassigned-conversations/unassigned-conversations.page.html +5 -5
  57. package/src/app/pages/unassigned-conversations/unassigned-conversations.page.scss +2 -2
  58. package/src/app/pages/unassigned-conversations/unassigned-conversations.page.ts +48 -1
  59. package/src/assets/customStyle.css +39 -0
  60. package/src/assets/test.html +38 -4
  61. package/src/chat21-core/providers/firebase/firebase-conversations-handler.ts +1 -0
  62. package/src/chat21-core/providers/mqtt/mqtt-conversations-handler.ts +2 -1
  63. package/src/chat21-core/providers/native/native-upload-service.ts +1 -1
  64. package/src/chat21-core/providers/tiledesk/tiledesk-auth.service.ts +21 -9
  65. package/src/global.scss +52 -137
  66. package/src/index.html +1 -1
  67. package/src/theme/variables.scss +276 -149
  68. package/src/variables.scss +115 -21
package/CHANGELOG.md CHANGED
@@ -1,5 +1,19 @@
1
1
  # chat21-ionic ver 3.0
2
2
 
3
+ ### 3.0.107.rc.7
4
+ - bug-fixed: unassigned-convs not laoded custom external style via postMessage or event.subscribe methods
5
+ - bug-fixed: delete all old css class style while uploading (via postMessge) a new class
6
+ - bug-fixed: customStyle removed if refresh page or window.resize event is handled --> restore saved style from storage
7
+
8
+ ### 3.0.107.rc.6
9
+ - bug-fixed: set is_new=false before archive an active conversation (not show not-read blu pointer and bold recipient fullname and last text)
10
+
11
+ ### 3.0.107.rc.5
12
+ - bug-fixed: user info is not updated in sidebar-user-detail with SSO
13
+
14
+ ### 3.0.107.rc.4
15
+ - bug-fixed: SSO, createCustomToken pass old token to authenticate chat engine module
16
+
3
17
  ### 3.0.107.rc.3
4
18
  - bug-fixed: update tiledek_token after signInWithCustomToken
5
19
 
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@chat21/chat21-ionic",
3
3
  "author": "Tiledesk SRL",
4
- "version": "3.0.107-rc.3",
4
+ "version": "3.0.107-rc.7",
5
5
  "license": "MIT License",
6
6
  "homepage": "https://tiledesk.com/",
7
7
  "repository": {
@@ -137,7 +137,7 @@ export class AppComponent implements OnInit {
137
137
  public fcm: FCM,
138
138
  public el: ElementRef,
139
139
  public g: Globals,
140
- public globalSettingsService: GlobalSettingsService,
140
+ public globalSettingsService: GlobalSettingsService
141
141
  ) {
142
142
 
143
143
  this.saveInStorageNumberOfOpenedChatTab();
@@ -319,6 +319,8 @@ export class AppComponent implements OnInit {
319
319
  this.initializeApp('oninit');
320
320
  this.loadCustomScript(appconfig)
321
321
  this.listenToPostMsgs();
322
+
323
+ this.loadStyle(JSON.parse(this.appStorageService.getItem('style')))
322
324
  }
323
325
 
324
326
 
@@ -354,6 +356,12 @@ export class AppComponent implements OnInit {
354
356
  this.events.publish('presenceUser', event.data.parameter)
355
357
  }
356
358
  }
359
+
360
+ if(event && event.data && event.data.action) {
361
+ if (event.data.action === "style") {
362
+ this.loadStyle(event.data)
363
+ }
364
+ }
357
365
  })
358
366
  }
359
367
 
@@ -402,15 +410,95 @@ export class AppComponent implements OnInit {
402
410
  await alert.present();
403
411
  }
404
412
 
413
+ async loadStyle(data){
414
+ console.log('[APP-COMPO] event: style ...', data)
415
+ this.appStorageService.setItem('style', JSON.stringify(data))
416
+ if(!data || !data.parameter){
417
+
418
+ /** remove class from chat-IFRAME */
419
+ let className = document.body.className.replace(new RegExp(/style-\S*/gm), '')
420
+ document.body.className = className
421
+ document.body.classList.remove('light')
422
+ document.body.classList.remove('dark')
423
+ document.body.classList.remove('custom')
424
+ let link = document.getElementById('themeCustom');
425
+ if(link){
426
+ link.remove();
427
+ }
428
+
429
+ /** remove class from dashoard-IFRAME */
430
+ var iframeWin = <HTMLIFrameElement>document.getElementById("iframeConsole")
431
+ if(iframeWin){
432
+ let className = iframeWin.contentDocument.body.className.replace(new RegExp(/style-\S*/gm), '')
433
+ iframeWin.contentDocument.body.className = className
434
+ iframeWin.contentDocument.body.classList.remove('light')
435
+ iframeWin.contentDocument.body.classList.remove('dark')
436
+ iframeWin.contentDocument.body.classList.remove('custom')
437
+
438
+ let link = iframeWin.contentDocument.getElementById('themeCustom');
439
+ if(link){
440
+ link.remove();
441
+ }
442
+ }
443
+
444
+ /** remove class from dashoard-IFRAME-unsassigned-convs */
445
+ var iframeWinUnassigned = <HTMLIFrameElement>document.getElementById("unassigned-convs-iframe")
446
+ if(iframeWinUnassigned){
447
+ let className = iframeWin.contentDocument.body.className.replace(new RegExp(/style-\S*/gm), '')
448
+ iframeWinUnassigned.contentDocument.body.className = className
449
+ iframeWinUnassigned.contentDocument.body.classList.remove('light')
450
+ iframeWinUnassigned.contentDocument.body.classList.remove('dark')
451
+ iframeWinUnassigned.contentDocument.body.classList.remove('custom')
452
+
453
+ let link = iframeWinUnassigned.contentDocument.getElementById('themeCustom');
454
+ if(link){
455
+ link.remove();
456
+ }
457
+ }
458
+
459
+
460
+ /** remove style INFO from storage */
461
+ this.appStorageService.removeItem('style')
462
+
463
+ return;
464
+ }
465
+
466
+ // Create link
467
+ let link = document.createElement('link');
468
+ link.id= 'themeCustom'
469
+ link.href = data.parameter;
470
+ link.rel = 'stylesheet';
471
+ link.type = 'text/css';
472
+ link.media='all';
473
+ this.logger.log('[APP-COMP] create link element...', link)
474
+ let head = document.getElementsByTagName('head')[0];
475
+ head.appendChild(link);
476
+
477
+ /** add class to body element as theme type ('light', 'dark', 'custom') */
478
+ document.body.classList.add(data.type)
479
+
480
+ /** publish event to
481
+ * - info-support-group component
482
+ * - unassigned-conversations component
483
+ */
484
+ this.events.publish('style', data)
485
+
486
+ // var iframeWin = <HTMLIFrameElement>document.getElementById("iframeConsole")
487
+ // if(iframeWin){
488
+ // iframeWin.contentDocument.head.appendChild(link)
489
+ // iframeWin.contentDocument.body.classList.add(data.type) //ADD class to body element as theme type ('light', 'dark', 'custom')
490
+ // }
491
+ return;
492
+ }
405
493
 
406
494
 
407
495
 
408
496
  signInWithCustomToken(token) {
409
497
  // this.isOnline = false;
410
498
  this.logger.log('[APP-COMP] SIGNINWITHCUSTOMTOKEN token', token)
411
- this.tiledeskAuthService.signInWithCustomToken(token).then((user: any) => {
412
- this.logger.log('[APP-COMP] SIGNINWITHCUSTOMTOKEN AUTLOGIN user', user)
413
- this.messagingAuthService.createCustomToken(token)
499
+ this.tiledeskAuthService.signInWithCustomToken(token).then((data: any) => {
500
+ this.logger.log('[APP-COMP] SIGNINWITHCUSTOMTOKEN AUTLOGIN user', data.user)
501
+ this.messagingAuthService.createCustomToken(data.token)
414
502
  }).catch(error => {
415
503
  this.logger.error('[APP-COMP] SIGNINWITHCUSTOMTOKEN error::', error)
416
504
  })
@@ -712,12 +800,12 @@ export class AppComponent implements OnInit {
712
800
  // this.logger.log('[APP-COMP] >>> initAuthentication currentUser ', currentUser)
713
801
  if (tiledeskToken) {
714
802
  this.logger.log('[APP-COMP] >>> initAuthentication I LOG IN WITH A TOKEN EXISTING IN THE LOCAL STORAGE OR WITH A TOKEN PASSED IN THE URL PARAMETERS <<<')
715
- this.tiledeskAuthService.signInWithCustomToken(tiledeskToken).then(user => {
716
- this.logger.log('[APP-COMP] >>> initAuthentication user ', user)
803
+ this.tiledeskAuthService.signInWithCustomToken(tiledeskToken).then(data => {
804
+ this.logger.log('[APP-COMP] >>> initAuthentication user ', data.user)
717
805
 
718
- this.updateStoredCurrentUser()
806
+ //this.updateStoredCurrentUser()
719
807
 
720
- this.messagingAuthService.createCustomToken(tiledeskToken)
808
+ this.messagingAuthService.createCustomToken(data.token)
721
809
  }).catch(error => {
722
810
  this.logger.error('[APP-COMP] initAuthentication SIGNINWITHCUSTOMTOKEN error::', error)
723
811
  })
@@ -744,14 +832,6 @@ export class AppComponent implements OnInit {
744
832
  }
745
833
  }
746
834
 
747
- // checkTokenAndGoOffline() {
748
- // let token = this.appStorageService.getItem('tiledeskToken');
749
- // this.logger.info('[APP-COMP] ***** checkTokenAndGoOffline - stored token *****', token);
750
- // if (!token) {
751
- // this.goOffLine()
752
- // }
753
- // }
754
-
755
835
 
756
836
  /**------- AUTHENTICATION FUNCTIONS --> END <--- +*/
757
837
  /***************************************************+*/
@@ -1551,11 +1631,11 @@ export class AppComponent implements OnInit {
1551
1631
  @HostListener('window:storage', ['$event'])
1552
1632
  onStorageChanged(event: any) {
1553
1633
 
1554
- if (event.key !== 'chat_sv5__tiledeskToken' && event.key !== 'dshbrd----sound') {
1634
+ if (event.key !== 'tiledesk_token' && event.key !== 'dshbrd----sound') {
1555
1635
  return;
1556
1636
  }
1557
1637
 
1558
- if (this.appStorageService.getItem('tiledeskToken') === null) {
1638
+ if (localStorage.getItem('tiledesk_token') === null) {
1559
1639
  // console.log('[APP-COMP] - onStorageChanged tiledeskToken is null - RUN LOGOUT')
1560
1640
  this.tiledeskAuthService.logOut()
1561
1641
  this.messagingAuthService.logout();
@@ -1563,12 +1643,9 @@ export class AppComponent implements OnInit {
1563
1643
  // this.isOnline = false;
1564
1644
  }
1565
1645
  else {
1566
- const currentUser = this.tiledeskAuthService.getCurrentUser();
1567
- // console.log('[APP-COMP] - X - onStorageChanged currentUser', currentUser)
1568
-
1569
1646
  const currentToken = this.tiledeskAuthService.getTiledeskToken();
1570
1647
  // console.log('[APP-COMP] - onStorageChanged currentToken', currentToken)
1571
- if (this.appStorageService.getItem('tiledeskToken') !== null && currentToken !== this.appStorageService.getItem('tiledeskToken')) {
1648
+ if (localStorage.getItem('tiledesk_token') !== null && currentToken !== this.appStorageService.getItem('tiledeskToken')) {
1572
1649
 
1573
1650
  // console.log('[APP-COMP] - onStorageChanged wentOnline 2')
1574
1651
  // DEALLOCO RISORSE OCCUPATE
@@ -1579,13 +1656,6 @@ export class AppComponent implements OnInit {
1579
1656
  // this.unsubscribe$.complete();
1580
1657
  this.initializeApp('onstoragechanged');
1581
1658
 
1582
-
1583
-
1584
- // console.log('[APP-COMP] onAuthStateChanged HERE !!! ')
1585
- // firebase.auth().onAuthStateChanged(user => {
1586
- // console.log('[APP-COMP] onAuthStateChanged', user)
1587
- // })
1588
-
1589
1659
  }
1590
1660
  }
1591
1661
 
@@ -4,7 +4,6 @@
4
4
  --bck-msg-sent: #62a8ea;
5
5
  --col-msg-sent:#ffffff;
6
6
  --light-white: #f7f7f7;
7
- --black: #1a1a1a;
8
7
  --gray: #aaaaaa;
9
8
  }
10
9
 
@@ -64,14 +64,14 @@
64
64
  :host .base_sent .msg_sent ::ng-deep > div {
65
65
  .options-container{
66
66
  right: unset;
67
- left: 1;
67
+ left: 1px;
68
68
  border-top-right-radius: unset;
69
69
  border-top-left-radius: 16px;
70
- background: radial-gradient(at top left,rgba(#2a6ac1,1) 60%,rgba(#2a6ac1,0) 80%);
70
+ background: radial-gradient(at top left,var(--bck-msg-sent) 60%,rgba(#2a6ac1,0) 80%);
71
71
  flex-direction: row;
72
72
 
73
73
  .options-logo{
74
- color: #ffffff;
74
+ color: var(--col-msg-sent);
75
75
  }
76
76
  }
77
77
  }
@@ -127,6 +127,7 @@
127
127
 
128
128
  ion-icon{
129
129
  margin: 5px;
130
+ color: var(--icon-color)
130
131
  }
131
132
  }
132
133
 
@@ -272,7 +273,7 @@ ion-item {
272
273
  padding: 0px 20px 6px 0px;
273
274
 
274
275
  .message-date{
275
- color: #647491;
276
+ color: var(--message-date-color);
276
277
  font-size: 12px;
277
278
  align-self: center;
278
279
  }
@@ -359,13 +360,12 @@ ion-item {
359
360
  }
360
361
  }
361
362
 
362
- .message-date-hover{
363
- color: #647491;
363
+ .message-date-hover {
364
+ color: var(--message-date-color);
364
365
  font-size: 12px;
365
366
  align-self: center;
366
367
  margin: 0px 5px;
367
368
  display: none;
368
-
369
369
  }
370
370
 
371
371
 
@@ -487,7 +487,7 @@ ion-item {
487
487
  }
488
488
 
489
489
  .long-date-divider-border-b {
490
- border-bottom: 1px solid #dee5ee !important;
490
+ border-bottom: 1px solid var(--date-divider-color) !important;
491
491
  flex: 1 1 auto !important;
492
492
  margin-left: 1.1rem !important;
493
493
  margin-right: 1.1rem !important;
@@ -500,7 +500,7 @@ ion-item {
500
500
  line-height: 1.25rem !important;
501
501
  margin-left: 1rem !important;
502
502
  margin-right: 1rem !important;
503
- color: #64748b;
503
+ color: var(--date-divider-text-color);
504
504
  }
505
505
 
506
506
  // ---------------------------------------------------------
@@ -13,9 +13,9 @@
13
13
  padding-right: 4px;
14
14
  padding: 6px 10px;
15
15
  display: inline-block;
16
- background: rgba(24, 119, 242, 0.1);
16
+ background: var(--info-message-background);
17
17
  font-size: 0.70em;
18
- color: var(--basic-gray);
18
+ color: var(--info-message-color);
19
19
  margin-left: 5px; //32px;
20
20
  margin-right: 5px; //32px;
21
21
 
@@ -37,23 +37,21 @@
37
37
  .spinner > div {
38
38
  width: 10px;
39
39
  height: 10px;
40
- background-color: #333;
41
-
42
40
  border-radius: 100%;
43
41
  display: inline-block;
44
42
  margin: 0px 2px;
45
43
  }
46
44
 
47
45
  .spinner .bounce1 {
48
- background-color: #C9E4F6;
46
+ background-color: var(--info-message-bounce-color);
49
47
  }
50
48
 
51
49
  .spinner .bounce2 {
52
- background-color: #C9E4F6;
50
+ background-color: var(--info-message-bounce-color);
53
51
  opacity: 0.6
54
52
  }
55
53
 
56
54
  .spinner .bounce3 {
57
- background-color: #C9E4F6;
55
+ background-color: var(--info-message-bounce-color);
58
56
  opacity: 0.4
59
57
  }
@@ -9,7 +9,7 @@
9
9
  width: 40px;
10
10
  padding: 5px;
11
11
  z-index: 2;
12
- background: radial-gradient(at top right,rgba(240, 242, 247,1) 60%,rgba(240, 242, 247,0) 80%);
12
+ background: radial-gradient(at top right,var(--bck-msg-received) 60%,rgba(240, 242, 247,0) 80%);
13
13
  border-top-right-radius: 16px;
14
14
 
15
15
  .options-logo{
@@ -21,7 +21,7 @@
21
21
  /* width: 20px; */
22
22
  height: 16px;
23
23
  border-radius: 3px;
24
- color: rgb(135, 150, 175);
24
+ color: var(--col-msg-received);
25
25
  text-align: left;
26
26
  justify-content: center;
27
27
  font-size: initial;
@@ -12,7 +12,7 @@
12
12
  }
13
13
 
14
14
  svg {
15
- fill: var(--bubble-blue)
15
+ fill: var(--return-receipt-color)
16
16
  }
17
17
 
18
18
  .c21-ico-schedule {
@@ -121,7 +121,7 @@
121
121
  {{conversation?.conversation_with_fullname}}
122
122
  </span>
123
123
  </div>
124
- <div class="conversation_message truncate-conv-msg" [ngClass]="{'truncate-on-desktop': !isApp}">
124
+ <div class="conversation_message truncate" [ngClass]="{'truncate-on-desktop': !isApp}">
125
125
 
126
126
  <!-- -------------------------------------------------------------------------- -->
127
127
  <!-- if conversation type is image display the image icon before the message -->
@@ -18,7 +18,7 @@ ion-item {
18
18
  // padding-right: 8px;
19
19
  --padding-start: 0;
20
20
  --inner-padding-end: 0;
21
- --background-hover: #000000 !important;
21
+ --background-hover: var(--item-backgroud-hover) !important;
22
22
  --background: transparent;
23
23
  border-radius: var(--border-radius-item);
24
24
  margin: 4px 5px;
@@ -28,17 +28,6 @@ ion-item {
28
28
  height: 100%;
29
29
  padding: 12px 0;
30
30
  }
31
- .selected {
32
- // border-radius: 10px;
33
- // padding-left: 8px;
34
- // padding-right: 8px;
35
- position: absolute;
36
- width: 100%;
37
- height: 100%;
38
- z-index: -1;
39
- // background-color: rgba(0, 0, 0, .05);
40
- background-color: rgb(231, 241, 255);
41
- }
42
31
  ion-avatar {
43
32
  position: relative;
44
33
  padding: 0;
@@ -58,7 +47,7 @@ ion-item {
58
47
  border-radius: 50%;
59
48
  text-align: center;
60
49
  font-size: 15px; //20px;
61
- color: #ffffff;
50
+ color: var(--avatar-placeholder-color);
62
51
  font-weight: 500;
63
52
  }
64
53
  .avatar-profile {
@@ -89,11 +78,11 @@ ion-item {
89
78
  align-items: center;
90
79
  line-height: 1.2rem;
91
80
  font-weight: 500;
92
- color: #779bbb;
81
+ color: var(--conversation-project-color);
93
82
  font-size: 10px;
94
83
  max-width: 90%;
95
84
  svg {
96
- fill:#779bbb;
85
+ fill:var(--conversation-project-color);
97
86
  vertical-align: sub;
98
87
  }
99
88
  span{
@@ -105,40 +94,27 @@ ion-item {
105
94
  }
106
95
  }
107
96
  .conversation_with {
108
- color: rgba(0, 0, 0, 1);
97
+ color: var(--list-conversation-with-color);
109
98
  font-size: 15px;
110
99
  font-weight: 400;
111
100
  line-height: 1.4;
112
101
  width: 70% !important;
113
102
  &.not-read {
114
103
  font-weight: 600;
115
- color: #3c4858; //#1876f2;
104
+ color: var(--list-conversation-with-color-not-read); //#1876f2;
116
105
  }
117
106
  }
118
107
 
119
108
  .conversation_message {
120
109
  margin: 5px 0px;
121
- p {
122
- color: #6e6f73; //#3c4858;
123
- font-size: 15px;
124
- font-weight: 400;
125
- height: 18px;
126
- vertical-align: middle;
127
- align-self: center;
128
- &.not-read {
129
- font-weight: 600;
130
- color: #1876f2;
131
- }
132
- }
133
-
110
+ color: var(--last-message-color);
111
+ font-size: 12px;
134
112
  span {
135
- color: rgb(60, 72, 88);
136
- font-size: 12px;
137
113
  font-weight: 400;
138
114
  height: 18px;
139
115
  &.not-read {
140
116
  font-weight: 600;
141
- color: #3c4858; //#1876f2;
117
+ color: var(--list-conversation-message-color-not-read); //#1876f2;
142
118
  }
143
119
  }
144
120
  }
@@ -150,7 +126,7 @@ ion-item {
150
126
  font-size: 10px;
151
127
  display: flex;
152
128
  flex-direction: column;
153
- color: #6e6f73;
129
+ color: var(--list-timestamp-color);
154
130
 
155
131
  &.is-on-mobile{
156
132
  top: 10px;
@@ -161,16 +137,21 @@ ion-item {
161
137
  ion-button {
162
138
  padding: 0;
163
139
  margin: 0;
164
- height: 24px;
165
- width: 24px;
140
+ height: 35px;
141
+ width: 35px;
166
142
  font-size: 10px;
167
143
  --padding-start: 0px;
168
144
  --padding-end: 0px;
169
- color: var(--basic-blue);//rgba(153, 153, 153, 1);
170
- background-color: transparent;
145
+ color: var(--icon-color);//rgba(153, 153, 153, 1);
146
+ background-color: var(--archive-button-background);
147
+ border: 1px solid var(--archive-button-background);
148
+ ion-icon {
149
+ font-size: 21px !important;
150
+ color: var(--icon-color)
151
+ }
171
152
  border-radius: 50%; // nk
172
153
  &:hover {
173
- background-color: rgba(0, 0, 0, 0.05);
154
+ opacity: 0.8;
174
155
  }
175
156
  }
176
157
  }
@@ -179,7 +160,7 @@ ion-item {
179
160
  width: 10px;
180
161
  height: 10px;
181
162
  border-radius: 50%;
182
- background-color: var(--basic-blue);
163
+ background-color: var(--list-notification-point-color);
183
164
  position: absolute;
184
165
  right: 6px;
185
166
  bottom: 8px;
@@ -211,14 +192,7 @@ ion-item:hover {
211
192
  }
212
193
 
213
194
  .button-on-desktop {
214
- background-color: #fff !important;
215
195
  margin-right: 21px !important;
216
- height: 35px !important;
217
- width: 35px !important;
218
- border: 1px solid #eee;
219
- ion-icon {
220
- font-size: 21px !important;
221
- }
222
196
  }
223
197
 
224
198
  .button-on-mobile {
@@ -258,14 +232,7 @@ ion-item:hover {
258
232
 
259
233
  .ion-selected {
260
234
  background: var(--list-bkg-color-selected);
261
- border-right: 4px solid var(--basic-blue);
262
- }
263
-
264
- .time-in-archived {
265
- color: #666666;
266
- font-size: 10px;
267
- position: relative;
268
- top: -4px;
235
+ border-right: 4px solid var(--list-bkg-color-selected-border);
269
236
  }
270
237
 
271
238
 
@@ -120,10 +120,16 @@
120
120
  // }
121
121
  ion-icon {
122
122
  zoom: 0.7;
123
+ color: var(--icon-color);
124
+
125
+ &:hover{
126
+ opacity: 0.8;
127
+ }
123
128
  }
124
129
  .no-ripple {
125
130
  --ripple-color: transparent;
126
131
  --background-activated: transparent;
132
+ --background: transparent;
127
133
  }
128
134
 
129
135
  .border{
@@ -156,8 +162,9 @@
156
162
  }
157
163
 
158
164
  ion-item {
159
- --background-hover: #1877f2 !important;
160
-
165
+ --background-hover: var(--canned-hover-background) !important;
166
+ --color-hover: var(--canned-hover-color);
167
+ --background: transparent;
161
168
  .nocannedTitle {
162
169
  color: #f44336;
163
170
  }
@@ -9,7 +9,7 @@ ion-item {
9
9
  --padding-start: 0;
10
10
  --inner-padding-end: 0;
11
11
  --background: transparent;
12
- --background-hover: #000000 !important;
12
+ --background-hover: var(--item-backgroud-hover) !important;
13
13
  border-radius: var(--border-radius-item);
14
14
 
15
15
  .selected {
@@ -38,7 +38,7 @@ ion-item {
38
38
  border-radius: 50%;
39
39
  text-align: center;
40
40
  font-size: 20px;
41
- color:#ffffff;
41
+ color: var(--avatar-placeholder-color);
42
42
  font-weight: 500;
43
43
  }
44
44
  .avatar-profile {
@@ -70,65 +70,13 @@ ion-item {
70
70
  font-family: Helvetica, Helvetica, Arial, sans-serif;
71
71
  line-height: 1.28;
72
72
  text-rendering: optimizeLegibility;
73
- .conversation_with {
74
- color: rgba(0, 0, 0, 1);
75
- font-size: 15px;
76
- font-weight: 400;
77
- line-height: 1.4;
78
- }
79
- .conversation_message {
80
- p {
81
- color: rgba(153, 153, 153, 1);
82
- font-size: 13px;
83
- font-weight: 400;
84
- height: 18px;
85
- &.not-read {
86
- font-weight:bold;
87
- }
88
- }
89
-
90
- }
91
-
73
+ color: var(--list-conversation-with-color);
92
74
  }
93
75
 
94
-
95
- ion-note {
96
- position: absolute;
97
- right: 8px;
98
- top: 4px;
99
- font-size: 10px;
100
- }
101
- ion-buttons {
102
- margin: 0;
103
- ion-button {
104
- padding: 0;
105
- margin: 0;
106
- height: 24px;
107
- width: 24px;
108
- font-size: 10px;
109
- --padding-start: 0px;
110
- --padding-end: 0px;
111
- color: rgba(153, 153, 153, 1);
112
- background-color: transparent;
113
- &:hover {
114
- background-color: rgba(0, 0, 0, .05)
115
- }
116
- }
117
- }
118
-
119
- .notification_point {
120
- width: 10px;
121
- height: 10px;
122
- border-radius: 50%;
123
- background-color: #0b5c89;
124
- position: absolute;
125
- right: 6px;
126
- bottom: 8px;
127
- }
128
76
  }
129
77
 
130
78
  ion-searchbar {
131
79
  --box-shadow: 0px ;
132
- --background: rgba(0, 0, 0, 0.05);
80
+ --background: var(--contact-directory-searchbar-background);
133
81
  --border-radius: 10px;
134
82
  }