@chat21/chat21-ionic 3.0.61-rc12 → 3.0.61-rc14
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/CHANGELOG.md
CHANGED
|
@@ -1,12 +1,15 @@
|
|
|
1
1
|
# chat21-ionic ver 3.0
|
|
2
2
|
|
|
3
|
+
### 3.0.61-rc14
|
|
4
|
+
- Fixes the bug: the page to which the sidebar Settings menu item redirects is not correct for team members with agent role
|
|
5
|
+
- Fixes the bug: right clicking on the sidebar menu items doesn't show the context menu
|
|
6
|
+
|
|
3
7
|
### 3.0.61-rc12
|
|
4
|
-
- Fixes the bug: it is not possible to read the requester's id which occurs when in the modal window "Create ticket" after selecting the requester the same is deleted
|
|
5
8
|
- Improves the alignment of left sidebar menu item icons
|
|
6
|
-
- Adds the ability
|
|
9
|
+
- Adds the ability to add a message as a canned response
|
|
7
10
|
- Hides the "Open canned responses" button if the "supportMode" environment variable is set to false
|
|
8
11
|
- Fixes the bug: "Settings" menu item in the left sidebar redirects to the "Canned responses" page instead of the "Widget" page
|
|
9
|
-
- Adds the ability to add a canned response
|
|
12
|
+
- Adds the ability to add a new canned response
|
|
10
13
|
- Fixes the bug: "Resolve conversation" from conversation detail header doesn't work on mobile
|
|
11
14
|
- Adds the ability to insert emoji in the message text
|
|
12
15
|
- Fixes the bug: on iOS mobile devices in the conversation detail the requester's avatar is not vertically aligned
|
package/package.json
CHANGED
|
@@ -71,11 +71,12 @@
|
|
|
71
71
|
</li>
|
|
72
72
|
|
|
73
73
|
<!-- ------------------------------------------- -->
|
|
74
|
-
<!-- HOME
|
|
74
|
+
<!-- HOME target="_self" href="{{ dashboard_home_url }}" -->
|
|
75
75
|
<!-- ------------------------------------------- -->
|
|
76
|
+
|
|
76
77
|
<li (click)="goToHome()" matTooltip="Home" #tooltip="matTooltip" matTooltipPosition='right'
|
|
77
78
|
matTooltipHideDelay="100" matTooltipClass="custom-mat-tooltip">
|
|
78
|
-
<a class="customAncor">
|
|
79
|
+
<a target="_self" href="{{ dashboard_home_url }}" class="customAncor">
|
|
79
80
|
<i class="material-icons sidebar-icons">
|
|
80
81
|
home
|
|
81
82
|
</i>
|
|
@@ -89,7 +90,7 @@
|
|
|
89
90
|
<ng-container *ngIf="USER_ROLE !== 'agent'">
|
|
90
91
|
<li (click)="goToBots()" id="bot-anchor-wpr" matTooltipClass="custom-mat-tooltip" matTooltip="Bots"
|
|
91
92
|
#tooltip="matTooltip" matTooltipPosition='right' matTooltipHideDelay="100" style="text-align: center;">
|
|
92
|
-
<a id="bot-anchor" #botbtn class="customAncor" style="height: 40px;margin-right: 0px !important;">
|
|
93
|
+
<a target="_self" href="{{ dashboard_bots_url }}" id="bot-anchor" #botbtn class="customAncor" style="height: 40px;margin-right: 0px !important;">
|
|
93
94
|
<span class="bot-icon-wpr">
|
|
94
95
|
<svg version="1.1" id="Objects" xmlns="http://www.w3.org/2000/svg"
|
|
95
96
|
xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 30 30"
|
|
@@ -119,7 +120,7 @@
|
|
|
119
120
|
<ng-container *ngIf="USER_ROLE !== 'agent'">
|
|
120
121
|
<li (click)="goToConversations()" matTooltipClass="custom-mat-tooltip" matTooltip="Monitor"
|
|
121
122
|
#tooltip="matTooltip" matTooltipPosition='right' matTooltipHideDelay="100" style="text-align: center;">
|
|
122
|
-
<a class="customAncor" style="height: 40px;margin-right: 0px !important;">
|
|
123
|
+
<a target="_self" href="{{ dashboard_convs_url }}" class="customAncor" style="height: 40px;margin-right: 0px !important;">
|
|
123
124
|
<!-- <i class="material-icons sidebar-icons">forum</i> -->
|
|
124
125
|
<span class="realtime-icon-wpr" >
|
|
125
126
|
|
|
@@ -140,7 +141,7 @@
|
|
|
140
141
|
<!-- ------------------------------------------- -->
|
|
141
142
|
<li (click)="goToContacts()" matTooltipClass="custom-mat-tooltip" matTooltip="{{ contacts_lbl }}"
|
|
142
143
|
#tooltip="matTooltip" matTooltipPosition='right' matTooltipHideDelay="100" style="text-align: center;">
|
|
143
|
-
<a class="customAncor">
|
|
144
|
+
<a target="_self" href="{{ dashboard_contacts_url }}" class="customAncor">
|
|
144
145
|
<i class="material-icons sidebar-icons">contacts</i>
|
|
145
146
|
</a>
|
|
146
147
|
</li>
|
|
@@ -151,7 +152,7 @@
|
|
|
151
152
|
<ng-container *ngIf="isVisibleAPP && USER_ROLE !== 'agent'">
|
|
152
153
|
<li (click)="goToAppStore()" matTooltipClass="custom-mat-tooltip" matTooltip="{{ apps_lbl }}"
|
|
153
154
|
#tooltip="matTooltip" matTooltipPosition='right' matTooltipHideDelay="100" style="text-align: center;">
|
|
154
|
-
<a class="customAncor" style="margin-right: 0px !important;">
|
|
155
|
+
<a target="_self" href="{{ dashboard_app_url }}" class="customAncor" style="margin-right: 0px !important;">
|
|
155
156
|
<!-- <i class="material-icons sidebar-icons">apps</i> -->
|
|
156
157
|
<!-- <i class="material-icons sidebar-icons">dashboard_customize</i> -->
|
|
157
158
|
<span class="dashboard-customize-icon-wpr">
|
|
@@ -171,7 +172,7 @@
|
|
|
171
172
|
<ng-container *ngIf="isVisibleANA && USER_ROLE !== 'agent'">
|
|
172
173
|
<li (click)="goToAnalytics()" matTooltipClass="custom-mat-tooltip" matTooltip="{{ analytics_lbl }}"
|
|
173
174
|
#tooltip="matTooltip" matTooltipPosition='right' matTooltipHideDelay="100" style="text-align: center;">
|
|
174
|
-
<a class="customAncor" style="margin-right: 0px !important;">
|
|
175
|
+
<a target="_self" href="{{ dashboard_analytics_url }}" class="customAncor" style="margin-right: 0px !important;">
|
|
175
176
|
<!-- <i class="material-icons sidebar-icons">trending_up</i> -->
|
|
176
177
|
<!-- <i class="material-icons sidebar-icons"> analytics </i> -->
|
|
177
178
|
<!-- <i class="material-icons sidebar-icons"> bar_chart </i> -->
|
|
@@ -192,7 +193,7 @@
|
|
|
192
193
|
<ng-container *ngIf="isVisibleACT">
|
|
193
194
|
<li *ngIf="USER_ROLE !== 'agent'" (click)="goToActivities()" matTooltipClass="custom-mat-tooltip"
|
|
194
195
|
matTooltip="{{ activities_lbl }}" #tooltip="matTooltip" matTooltipPosition='right' matTooltipHideDelay="100" style="text-align: center;">
|
|
195
|
-
<a class="customAncor">
|
|
196
|
+
<a target="_self" href="{{ dashboard_activities_url }}" class="customAncor">
|
|
196
197
|
<i class="material-icons sidebar-icons">assignment</i>
|
|
197
198
|
</a>
|
|
198
199
|
</li>
|
|
@@ -204,7 +205,7 @@
|
|
|
204
205
|
<!-- ------------------------------------------- -->
|
|
205
206
|
<li (click)="goToHistory()" matTooltipClass="custom-mat-tooltip" matTooltip="{{ history_lbl }}"
|
|
206
207
|
#tooltip="matTooltip" matTooltipPosition='right' matTooltipHideDelay="100" style="text-align: center;">
|
|
207
|
-
<a class="customAncor">
|
|
208
|
+
<a target="_self" href="{{ dashboard_history_url }}" class="customAncor">
|
|
208
209
|
<i class="material-icons sidebar-icons">history</i>
|
|
209
210
|
</a>
|
|
210
211
|
</li>
|
|
@@ -212,9 +213,9 @@
|
|
|
212
213
|
<!-- ----------------------------------------------------------------------------------- -->
|
|
213
214
|
<!-- SETTINGS // old: goToSettings_CannedResponses() *ngIf="USER_ROLE !== 'agent'" -->
|
|
214
215
|
<!-- ----------------------------------------------------------------------------------- -->
|
|
215
|
-
<li (click)="
|
|
216
|
+
<li (click)="goToWidgetSetUpOrToCannedResponses()" matTooltipClass="custom-mat-tooltip"
|
|
216
217
|
matTooltip="{{ settings_lbl }}" #tooltip="matTooltip" matTooltipPosition='right' matTooltipHideDelay="100" style="text-align: center;">
|
|
217
|
-
<a class="customAncor">
|
|
218
|
+
<a target="_self" href="{{ dashboard_settings_url }}" class="customAncor">
|
|
218
219
|
<i class="material-icons sidebar-icons">settings</i>
|
|
219
220
|
</a>
|
|
220
221
|
</li>
|
|
@@ -49,6 +49,15 @@ export class SidebarComponent implements OnInit {
|
|
|
49
49
|
countClickOnOpenUserDetailSidebar: number = 0
|
|
50
50
|
USER_PHOTO_PROFILE_EXIST: boolean;
|
|
51
51
|
currentUser: any;
|
|
52
|
+
dashboard_home_url: string;
|
|
53
|
+
dashboard_bots_url: string;
|
|
54
|
+
dashboard_convs_url: string;
|
|
55
|
+
dashboard_contacts_url: string;
|
|
56
|
+
dashboard_app_url: string;
|
|
57
|
+
dashboard_analytics_url: string;
|
|
58
|
+
dashboard_activities_url: string;
|
|
59
|
+
dashboard_history_url: string;
|
|
60
|
+
dashboard_settings_url: string;
|
|
52
61
|
constructor(
|
|
53
62
|
public imageRepoService: ImageRepoService,
|
|
54
63
|
public appStorageService: AppStorageService,
|
|
@@ -84,8 +93,44 @@ export class SidebarComponent implements OnInit {
|
|
|
84
93
|
// height: '35px'
|
|
85
94
|
// };
|
|
86
95
|
// }
|
|
96
|
+
|
|
97
|
+
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
|
|
101
|
+
getStoredProjectAndUserRole() {
|
|
102
|
+
const stored_project = localStorage.getItem('last_project')
|
|
103
|
+
// console.log('[SIDEBAR] stored_project ', stored_project)
|
|
104
|
+
if (stored_project) {
|
|
105
|
+
const project = JSON.parse(stored_project)
|
|
106
|
+
this.logger.log('[SIDEBAR] project ', project)
|
|
107
|
+
|
|
108
|
+
this.project_id = project.id_project.id
|
|
109
|
+
this.logger.log('[SIDEBAR] project_id ', this.project_id)
|
|
110
|
+
|
|
111
|
+
this.USER_ROLE = project.role;
|
|
112
|
+
this.logger.log('[SIDEBAR] USER_ROLE ', this.USER_ROLE)
|
|
113
|
+
this.buildURLs(this.USER_ROLE)
|
|
114
|
+
}
|
|
87
115
|
}
|
|
88
116
|
|
|
117
|
+
buildURLs(USER_ROLE) {
|
|
118
|
+
this.dashboard_home_url = this.DASHBOARD_URL + this.project_id + '/home'
|
|
119
|
+
this.dashboard_bots_url = this.DASHBOARD_URL + this.project_id + '/bots'
|
|
120
|
+
this.dashboard_convs_url = this.DASHBOARD_URL + this.project_id + '/wsrequests'
|
|
121
|
+
this.dashboard_contacts_url = this.DASHBOARD_URL + this.project_id + '/contacts'
|
|
122
|
+
this.dashboard_app_url = this.DASHBOARD_URL + this.project_id + '/app-store'
|
|
123
|
+
this.dashboard_analytics_url = this.DASHBOARD_URL + this.project_id + '/analytics'
|
|
124
|
+
this.dashboard_activities_url = this.DASHBOARD_URL + this.project_id + '/activities'
|
|
125
|
+
this.dashboard_history_url = this.DASHBOARD_URL + this.project_id + '/history'
|
|
126
|
+
this.dashboard_settings_url = ''
|
|
127
|
+
if (USER_ROLE !== 'agent') {
|
|
128
|
+
this.dashboard_settings_url = this.DASHBOARD_URL + this.project_id + '/widget-set-up'
|
|
129
|
+
} else if (USER_ROLE === 'agent') {
|
|
130
|
+
this.dashboard_settings_url = this.DASHBOARD_URL + this.project_id + '/cannedresponses'
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
}
|
|
89
134
|
|
|
90
135
|
subcribeToAuthStateChanged() {
|
|
91
136
|
this.messagingAuthService.BSAuthStateChanged.subscribe((state) => {
|
|
@@ -378,35 +423,23 @@ export class SidebarComponent implements OnInit {
|
|
|
378
423
|
// }
|
|
379
424
|
// }
|
|
380
425
|
|
|
381
|
-
getStoredProjectAndUserRole() {
|
|
382
|
-
const stored_project = localStorage.getItem('last_project')
|
|
383
|
-
// console.log('[SIDEBAR] stored_project ', stored_project)
|
|
384
|
-
if (stored_project) {
|
|
385
|
-
const project = JSON.parse(stored_project)
|
|
386
|
-
this.logger.log('[SIDEBAR] project ', project)
|
|
387
426
|
|
|
388
|
-
this.project_id = project.id_project.id
|
|
389
|
-
this.logger.log('[SIDEBAR] project_id ', this.project_id)
|
|
390
|
-
|
|
391
|
-
this.USER_ROLE = project.role;
|
|
392
|
-
this.logger.log('[SIDEBAR] USER_ROLE ', this.USER_ROLE)
|
|
393
|
-
}
|
|
394
|
-
}
|
|
395
427
|
|
|
396
428
|
goToHome() {
|
|
397
429
|
let url = this.DASHBOARD_URL + this.project_id + '/home'
|
|
430
|
+
this.dashboard_home_url = url;
|
|
398
431
|
const myWindow = window.open(url, '_self');
|
|
399
432
|
myWindow.focus();
|
|
400
433
|
}
|
|
401
434
|
|
|
402
|
-
|
|
403
|
-
let url = this.DASHBOARD_URL + this.project_id + '/
|
|
435
|
+
goToBots() {
|
|
436
|
+
let url = this.DASHBOARD_URL + this.project_id + '/bots'
|
|
404
437
|
const myWindow = window.open(url, '_self');
|
|
405
438
|
myWindow.focus();
|
|
406
439
|
}
|
|
407
440
|
|
|
408
|
-
|
|
409
|
-
let url = this.DASHBOARD_URL + this.project_id + '/
|
|
441
|
+
goToConversations() {
|
|
442
|
+
let url = this.DASHBOARD_URL + this.project_id + '/wsrequests'
|
|
410
443
|
const myWindow = window.open(url, '_self');
|
|
411
444
|
myWindow.focus();
|
|
412
445
|
}
|
|
@@ -443,10 +476,12 @@ export class SidebarComponent implements OnInit {
|
|
|
443
476
|
myWindow.focus();
|
|
444
477
|
}
|
|
445
478
|
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
479
|
+
goToWidgetSetUpOrToCannedResponses() {
|
|
480
|
+
if (this.USER_ROLE !== 'agent') {
|
|
481
|
+
this.goToWidgetSetUp()
|
|
482
|
+
} else if (this.USER_ROLE === 'agent') {
|
|
483
|
+
this.goToSettings_CannedResponses()
|
|
484
|
+
}
|
|
450
485
|
}
|
|
451
486
|
|
|
452
487
|
goToWidgetSetUp() {
|
|
@@ -455,6 +490,14 @@ export class SidebarComponent implements OnInit {
|
|
|
455
490
|
myWindow.focus();
|
|
456
491
|
}
|
|
457
492
|
|
|
493
|
+
goToSettings_CannedResponses() {
|
|
494
|
+
let url = this.DASHBOARD_URL + this.project_id + '/cannedresponses'
|
|
495
|
+
const myWindow = window.open(url, '_self');
|
|
496
|
+
myWindow.focus();
|
|
497
|
+
}
|
|
498
|
+
|
|
499
|
+
|
|
500
|
+
|
|
458
501
|
public translations() {
|
|
459
502
|
const keys = [
|
|
460
503
|
'Available',
|