@chat21/chat21-ionic 3.4.27-rc13 → 3.4.27-rc15
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 +7 -0
- package/package.json +1 -1
- package/src/app/chatlib/conversation-detail/conversation-content/conversation-content.component.scss +3 -3
- package/src/app/chatlib/conversation-detail/conversation-content/conversation-content.component.ts +1 -1
- package/src/app/chatlib/conversation-detail/ion-conversation-detail/ion-conversation-detail.component.html +1 -1
- package/src/app/chatlib/conversation-detail/message/avatar/avatar.component.html +1 -1
- package/src/app/chatlib/conversation-detail/message/avatar/avatar.component.ts +4 -4
- package/src/app/chatlib/conversation-detail/message/return-receipt/return-receipt.component.scss +3 -3
- package/src/app/chatlib/list-conversations-component/ion-list-conversations/ion-list-conversations.component.html +9 -9
- package/src/app/components/bubbleMessageInfo-popover/bubbleinfo-popover.component.html +1 -1
- package/src/app/components/canned-response/canned-response.component.html +2 -2
- package/src/app/components/conversation-detail/header-conversation-detail/header-conversation-detail.component.html +8 -8
- package/src/app/components/conversation-detail/message-text-area/message-text-area.component.ts +9 -0
- package/src/app/components/copilot-popover/copilot-popover.component.html +1 -1
- package/src/app/components/sidebar/sidebar.component.html +2 -2
- package/src/app/components/sidebar-user-details/sidebar-user-details.component.html +2 -2
- package/src/app/components/sidebar-user-details/sidebar-user-details.component.ts +7 -7
- package/src/app/modals/create-ticket/create-ticket.page.html +6 -6
- package/src/app/modals/create-ticket/create-ticket.page.ts +4 -4
- package/src/app/modals/loader-preview/loader-preview.page.ts +1 -1
- package/src/app/modals/send-whatsapp-template/send-whatsapp-template.page.scss +1 -1
- package/src/app/pages/conversation-detail/conversation-detail.page.scss +1 -1
- package/src/app/pages/conversation-detail/conversation-detail.page.ts +1 -1
- package/src/app/pages/conversations-list/conversations-list.page.ts +3 -3
- package/src/app/pages/profile-info/profile-info.page.ts +3 -3
- package/src/app/services/brand/brand.service.ts +5 -5
- package/src/app/utils/utils-resources.ts +8 -7
- package/src/chat21-core/utils/constants.ts +2 -2
- /package/src/assets/{images → img}/channel_icons/chat21.svg +0 -0
- /package/src/assets/{images → img}/channel_icons/direct.svg +0 -0
- /package/src/assets/{images → img}/channel_icons/email-logo.svg +0 -0
- /package/src/assets/{images → img}/channel_icons/form-logo_v2.svg +0 -0
- /package/src/assets/{images → img}/channel_icons/group.svg +0 -0
- /package/src/assets/{images → img}/channel_icons/messenger-logo.svg +0 -0
- /package/src/assets/{images → img}/channel_icons/telegram-logo.svg +0 -0
- /package/src/assets/{images → img}/channel_icons/voice.svg +0 -0
- /package/src/assets/{images → img}/channel_icons/whatsapp-logo.svg +0 -0
- /package/src/assets/{images → img}/default-avatar-x-select.png +0 -0
- /package/src/assets/{images → img}/f21ico-done.svg +0 -0
- /package/src/assets/{images → img}/f21ico-done_all.svg +0 -0
- /package/src/assets/{images → img}/f21ico-schedule.svg +0 -0
- /package/src/assets/{images → img}/file-alt-solid.png +0 -0
- /package/src/assets/{images → img}/icons/copilot.svg +0 -0
- /package/src/assets/{images → img}/json-file.svg +0 -0
- /package/src/assets/{images → img}/language_flag/ar.png +0 -0
- /package/src/assets/{images → img}/language_flag/az.png +0 -0
- /package/src/assets/{images → img}/language_flag/bg.png +0 -0
- /package/src/assets/{images → img}/language_flag/ca.png +0 -0
- /package/src/assets/{images → img}/language_flag/cs.png +0 -0
- /package/src/assets/{images → img}/language_flag/da.png +0 -0
- /package/src/assets/{images → img}/language_flag/de.png +0 -0
- /package/src/assets/{images → img}/language_flag/el.png +0 -0
- /package/src/assets/{images → img}/language_flag/en.png +0 -0
- /package/src/assets/{images → img}/language_flag/es.png +0 -0
- /package/src/assets/{images → img}/language_flag/fa.png +0 -0
- /package/src/assets/{images → img}/language_flag/fi.png +0 -0
- /package/src/assets/{images → img}/language_flag/fr.png +0 -0
- /package/src/assets/{images → img}/language_flag/he.png +0 -0
- /package/src/assets/{images → img}/language_flag/hi.png +0 -0
- /package/src/assets/{images → img}/language_flag/hr.png +0 -0
- /package/src/assets/{images → img}/language_flag/hu.png +0 -0
- /package/src/assets/{images → img}/language_flag/id.png +0 -0
- /package/src/assets/{images → img}/language_flag/it.png +0 -0
- /package/src/assets/{images → img}/language_flag/ja.png +0 -0
- /package/src/assets/{images → img}/language_flag/kk.png +0 -0
- /package/src/assets/{images → img}/language_flag/ko.png +0 -0
- /package/src/assets/{images → img}/language_flag/ml-IN.png +0 -0
- /package/src/assets/{images → img}/language_flag/ne-NP.png +0 -0
- /package/src/assets/{images → img}/language_flag/nl.png +0 -0
- /package/src/assets/{images → img}/language_flag/no.png +0 -0
- /package/src/assets/{images → img}/language_flag/pl.png +0 -0
- /package/src/assets/{images → img}/language_flag/pt-BR.png +0 -0
- /package/src/assets/{images → img}/language_flag/pt.png +0 -0
- /package/src/assets/{images → img}/language_flag/ro.png +0 -0
- /package/src/assets/{images → img}/language_flag/ru.png +0 -0
- /package/src/assets/{images → img}/language_flag/sk.png +0 -0
- /package/src/assets/{images → img}/language_flag/sl.png +0 -0
- /package/src/assets/{images → img}/language_flag/sr.png +0 -0
- /package/src/assets/{images → img}/language_flag/sv.png +0 -0
- /package/src/assets/{images → img}/language_flag/ta.png +0 -0
- /package/src/assets/{images → img}/language_flag/th.png +0 -0
- /package/src/assets/{images → img}/language_flag/tr.png +0 -0
- /package/src/assets/{images → img}/language_flag/uk.png +0 -0
- /package/src/assets/{images → img}/language_flag/uz.png +0 -0
- /package/src/assets/{images → img}/language_flag/vi.png +0 -0
- /package/src/assets/{images → img}/language_flag/zh-CN.png +0 -0
- /package/src/assets/{images → img}/language_flag/zh-TW.png +0 -0
- /package/src/assets/{logos → img/logos}/chat21-logo.png +0 -0
- /package/src/assets/{logos → img/logos}/logo.png +0 -0
- /package/src/assets/{logos → img/logos}/tiledesk-logo_new_white.svg +0 -0
- /package/src/assets/{logos → img/logos}/tiledesk-solo-logo.png +0 -0
- /package/src/assets/{logos → img/logos}/tiledesk_logo.svg +0 -0
- /package/src/assets/{logos → img/logos}/tiledesk_logo_no_text.svg +0 -0
- /package/src/assets/{logos → img/logos}/tiledesk_logo_white_small.svg +0 -0
- /package/src/assets/{images → img}/no_conversation.jpg +0 -0
- /package/src/assets/{images → img}/no_image.png +0 -0
- /package/src/assets/{images → img}/no_image_user.png +0 -0
- /package/src/assets/{images → img}/pin.svg +0 -0
- /package/src/assets/{images → img}/pinned.svg +0 -0
- /package/src/assets/{images → img}/priority_icons/high.svg +0 -0
- /package/src/assets/{images → img}/priority_icons/high_v2.svg +0 -0
- /package/src/assets/{images → img}/priority_icons/low.svg +0 -0
- /package/src/assets/{images → img}/priority_icons/low_v2.svg +0 -0
- /package/src/assets/{images → img}/priority_icons/medium.svg +0 -0
- /package/src/assets/{images → img}/priority_icons/medium_v2.svg +0 -0
- /package/src/assets/{images → img}/priority_icons/urgent.svg +0 -0
- /package/src/assets/{images → img}/priority_icons/urgent_v2.svg +0 -0
- /package/src/assets/{images → img}/teammate-status/avaible.svg +0 -0
- /package/src/assets/{images → img}/teammate-status/inactive.svg +0 -0
- /package/src/assets/{images → img}/teammate-status/unavaible.svg +0 -0
- /package/src/assets/{images → img}/whatsapp_background.png +0 -0
package/CHANGELOG.md
CHANGED
|
@@ -8,6 +8,13 @@
|
|
|
8
8
|
### **Copyrigth**:
|
|
9
9
|
*Tiledesk SRL*
|
|
10
10
|
|
|
11
|
+
# 3.4.27-rc15
|
|
12
|
+
- **changed**: /images with /img in assets folder
|
|
13
|
+
|
|
14
|
+
# 3.4.27-rc14
|
|
15
|
+
- **added**: DISPLAY_EDIT_PROFILE brand variable
|
|
16
|
+
- **bug-fixed**: emojii is sent also if is not allowed
|
|
17
|
+
|
|
11
18
|
# 3.4.27-rc13
|
|
12
19
|
- **added**: ability to mantain logout parameter when redirect to dashboard urls from sidebar component
|
|
13
20
|
|
package/package.json
CHANGED
package/src/app/chatlib/conversation-detail/conversation-content/conversation-content.component.scss
CHANGED
|
@@ -205,13 +205,13 @@
|
|
|
205
205
|
// overflow-x: hidden;
|
|
206
206
|
// }
|
|
207
207
|
// .c21-ico-schedule {
|
|
208
|
-
// background-image: url("src/assets/
|
|
208
|
+
// background-image: url("src/assets/img/f21ico-schedule.svg");
|
|
209
209
|
// }
|
|
210
210
|
// .c21-ico-done {
|
|
211
|
-
// background-image: url("src/assets/
|
|
211
|
+
// background-image: url("src/assets/img/f21ico-done.svg");
|
|
212
212
|
// }
|
|
213
213
|
// .c21-ico-done_all {
|
|
214
|
-
// background-image: url("src/assets/
|
|
214
|
+
// background-image: url("src/assets/img/f21ico-done_all.svg");
|
|
215
215
|
// }
|
|
216
216
|
// }
|
|
217
217
|
|
package/src/app/chatlib/conversation-detail/conversation-content/conversation-content.component.ts
CHANGED
|
@@ -58,7 +58,7 @@ export class ConversationContentComponent implements OnInit {
|
|
|
58
58
|
MESSAGE_TYPE_OTHERS = MESSAGE_TYPE_OTHERS;
|
|
59
59
|
// ========== end:: check message type functions ======= //
|
|
60
60
|
|
|
61
|
-
urlBOTImage = 'https://s3.eu-west-1.amazonaws.com/tiledesk-widget/dev/2.0.4-beta.7/assets/
|
|
61
|
+
urlBOTImage = 'https://s3.eu-west-1.amazonaws.com/tiledesk-widget/dev/2.0.4-beta.7/assets/img/avatar_bot_tiledesk.svg'
|
|
62
62
|
uploadProgress: number;
|
|
63
63
|
showUploadProgress: boolean = false;
|
|
64
64
|
fileType: string;
|
|
@@ -184,7 +184,7 @@
|
|
|
184
184
|
<ng-container *ngIf="isCopilotEnabled">
|
|
185
185
|
<ion-button shape="round" size="small" class="btn-info-msg btn-copilot" ion-button fill="clear"
|
|
186
186
|
(click)="onClickOptionsCopilot(message, i)">
|
|
187
|
-
<ion-icon id="copilot" src="assets/
|
|
187
|
+
<ion-icon id="copilot" src="assets/img/icons/copilot.svg"></ion-icon>
|
|
188
188
|
</ion-button>
|
|
189
189
|
</ng-container>
|
|
190
190
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
<div class="c21-icon-avatar">
|
|
2
2
|
<div class="c21-avatar-image profile_image">
|
|
3
|
-
<!-- <img src="getUrlImgProfile(message.sender) {{getUrlImgProfile(message.sender)}}" onError="this.src = 'https://s3.eu-west-1.amazonaws.com/tiledesk-widget/v2/assets/
|
|
3
|
+
<!-- <img src="getUrlImgProfile(message.sender) {{getUrlImgProfile(message.sender)}}" onError="this.src = 'https://s3.eu-west-1.amazonaws.com/tiledesk-widget/v2/assets/img/line_avatar_male_tiledesk.svg'" /> -->
|
|
4
4
|
<!-- <img [src]="url" (error)="onBotImgError($event)" /> -->
|
|
5
5
|
<img *ngIf="senderID?.indexOf('bot_') !== -1 || senderFullname === 'Bot'" [src]="url" (error)="onBotImgError($event)" (load)="onLoadedBot($event)"/>
|
|
6
6
|
<!-- is a HUMAN -->
|
|
@@ -17,18 +17,18 @@ export class AvatarComponent implements OnInit {
|
|
|
17
17
|
if(this.senderID){
|
|
18
18
|
this.url = this.imageRepoService.getImagePhotoUrl(this.senderID)
|
|
19
19
|
if(!this.url && (this.senderID.indexOf('bot_') !== -1 || this.senderFullname === 'Bot')){
|
|
20
|
-
this.url = this.baseLocation +'/assets/
|
|
20
|
+
this.url = this.baseLocation +'/assets/img/avatar_bot_tiledesk.svg'
|
|
21
21
|
}else if(!this.url && this.senderID.indexOf('bot_') == -1){
|
|
22
|
-
this.url = this.baseLocation +'/assets/
|
|
22
|
+
this.url = this.baseLocation +'/assets/img/light_avatar_placeholder.svg'
|
|
23
23
|
}
|
|
24
24
|
}
|
|
25
25
|
}
|
|
26
26
|
|
|
27
27
|
onBotImgError(event){
|
|
28
|
-
event.target.src = this.baseLocation +'/assets/
|
|
28
|
+
event.target.src = this.baseLocation +'/assets/img/avatar_bot_tiledesk.svg'
|
|
29
29
|
}
|
|
30
30
|
onHumanImgError(event) {
|
|
31
|
-
event.target.src = this.baseLocation + "/assets/
|
|
31
|
+
event.target.src = this.baseLocation + "/assets/img/light_avatar_placeholder.svg"
|
|
32
32
|
}
|
|
33
33
|
|
|
34
34
|
onLoadedBot(event){
|
package/src/app/chatlib/conversation-detail/message/return-receipt/return-receipt.component.scss
CHANGED
|
@@ -16,12 +16,12 @@
|
|
|
16
16
|
}
|
|
17
17
|
|
|
18
18
|
.c21-ico-schedule {
|
|
19
|
-
background-image: url("/src/assets/
|
|
19
|
+
background-image: url("/src/assets/img/f21ico-schedule.svg");
|
|
20
20
|
}
|
|
21
21
|
.c21-ico-done {
|
|
22
|
-
background-image: url("/src/assets/
|
|
22
|
+
background-image: url("/src/assets/img/f21ico-done.svg");
|
|
23
23
|
}
|
|
24
24
|
.c21-ico-done_all {
|
|
25
|
-
background-image: url("/src/assets/
|
|
25
|
+
background-image: url("/src/assets/img/f21ico-done_all.svg");
|
|
26
26
|
}
|
|
27
27
|
}
|
|
@@ -96,23 +96,23 @@
|
|
|
96
96
|
<div class="conversation_project truncate">
|
|
97
97
|
<!-- DIRECT CONV -->
|
|
98
98
|
<div *ngIf="conversation.channel_type === CHANNEL_TYPE.DIRECT">
|
|
99
|
-
<img class="channel-icon" src="assets/
|
|
99
|
+
<img class="channel-icon" src="assets/img/channel_icons/direct.svg">
|
|
100
100
|
<span class="truncate">{{translationsMap.get('DIRECT_CHAT')}}</span>
|
|
101
101
|
</div>
|
|
102
102
|
<!-- GROUP CONV -->
|
|
103
103
|
<div *ngIf="conversation.uid.startsWith(CHANNEL_TYPE.GROUP)">
|
|
104
|
-
<img class="channel-icon" src="assets/
|
|
104
|
+
<img class="channel-icon" src="assets/img/channel_icons/group.svg">
|
|
105
105
|
<span class="truncate">{{translationsMap.get('GROUP_CHAT')}}</span>
|
|
106
106
|
</div>
|
|
107
107
|
<!-- SUPPORT-GROUP CONV -->
|
|
108
108
|
<div *ngIf="conversation.uid.startsWith(CHANNEL_TYPE.SUPPORT_GROUP) && !IS_ON_MOBILE_DEVICE">
|
|
109
|
-
<img class="channel-icon" src="assets/
|
|
110
|
-
<img class="channel-icon" src="assets/
|
|
111
|
-
<img class="channel-icon" src="assets/
|
|
112
|
-
<img class="channel-icon" src="assets/
|
|
113
|
-
<img class="channel-icon" src="assets/
|
|
114
|
-
<img class="channel-icon" src="assets/
|
|
115
|
-
<img class="channel-icon" src="assets/
|
|
109
|
+
<img class="channel-icon" src="assets/img/channel_icons/chat21.svg" *ngIf="conversation?.attributes && ( (conversation?.attributes?.request_channel && conversation?.attributes?.request_channel === CHANNEL_TYPE.CHAT21) || !conversation?.attributes?.request_channel) " >
|
|
110
|
+
<img class="channel-icon" src="assets/img/channel_icons/email-logo.svg" *ngIf="conversation?.attributes && conversation?.attributes?.request_channel && conversation?.attributes?.request_channel === CHANNEL_TYPE.EMAIL" >
|
|
111
|
+
<img class="channel-icon" src="assets/img/channel_icons/form-logo_v2.svg" *ngIf="conversation?.attributes && conversation?.attributes?.request_channel && conversation?.attributes?.request_channel === CHANNEL_TYPE.FORM" >
|
|
112
|
+
<img class="channel-icon" src="assets/img/channel_icons/messenger-logo.svg" *ngIf="conversation?.attributes && conversation?.attributes?.request_channel && conversation?.attributes?.request_channel === CHANNEL_TYPE.MESSENGER" >
|
|
113
|
+
<img class="channel-icon" src="assets/img/channel_icons/whatsapp-logo.svg" *ngIf="conversation?.attributes && conversation?.attributes?.request_channel && conversation?.attributes?.request_channel === CHANNEL_TYPE.WHATSAPP" >
|
|
114
|
+
<img class="channel-icon" src="assets/img/channel_icons/telegram-logo.svg" *ngIf="conversation?.attributes && conversation?.attributes?.request_channel && conversation?.attributes?.request_channel === CHANNEL_TYPE.TELEGRAM" >
|
|
115
|
+
<img class="channel-icon" src="assets/img/channel_icons/voice.svg" *ngIf="conversation?.attributes && conversation?.attributes?.request_channel && conversation?.attributes?.request_channel.startsWith(CHANNEL_TYPE.VOICE)" >
|
|
116
116
|
<span *ngIf="conversation?.attributes?.project_name" class="truncate">{{conversation?.attributes?.project_name}}</span>
|
|
117
117
|
<span *ngIf="!conversation?.attributes?.project_name" class="truncate">{{conversation?.attributes?.projectId}}</span>
|
|
118
118
|
</div>
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
<ion-label>{{translationsMap?.get('AddAsCannedResponse')}}</ion-label>
|
|
10
10
|
</ion-item>
|
|
11
11
|
<ion-item button="true" *ngIf="logLevel >= LogLevel.DEBUG" (click)="onClickOption('jsonInfo')">
|
|
12
|
-
<ion-icon src="assets/
|
|
12
|
+
<ion-icon src="assets/img/json-file.svg" slot="start"></ion-icon>
|
|
13
13
|
<ion-label>{{translationsMap?.get('JSON_RESPONSE')}}</ion-label>
|
|
14
14
|
</ion-item>
|
|
15
15
|
</ion-list>
|
|
@@ -9,8 +9,8 @@
|
|
|
9
9
|
<ion-input [class.readonly]="canned?.disabled" [readonly]="canned?.disabled" type="text" [(ngModel)]="canned.title" class="title" id="{{'titleCanned_'+canned._id}}" #title></ion-input>
|
|
10
10
|
<ion-input [class.readonly]="canned?.disabled" [readonly]="canned?.disabled" type="text" [(ngModel)]="canned.text" class="text truncate"></ion-input>
|
|
11
11
|
</div>
|
|
12
|
-
<!-- <ion-icon class="canned-item-icon" name="pin" src="assets/
|
|
13
|
-
<ion-icon class="canned-item-icon" name="pin" src="assets/
|
|
12
|
+
<!-- <ion-icon class="canned-item-icon" name="pin" src="assets/img/pin.svg" slot=end *ngIf="canned.pinned" (click)="onPinCanned(canned, $event)"></ion-icon>
|
|
13
|
+
<ion-icon class="canned-item-icon" name="pin" src="assets/img/pinned.svg" slot=end (click)="onUnPinCanned(canned, $event)"></ion-icon> -->
|
|
14
14
|
<ion-icon class="canned-item-icon" name="checkmark-sharp" slot=end *ngIf="(canned.createdBy === loggedUser.uid && !canned.disabled) && roles[PERMISSIONS.CANNED_RESPONSES_UPDATE]" (click)="onConfirmEditCanned(canned, $event)"></ion-icon>
|
|
15
15
|
<ion-icon class="canned-item-icon" name="pencil-sharp" slot=end *ngIf="(canned.createdBy === loggedUser.uid && canned.disabled) && roles[PERMISSIONS.CANNED_RESPONSES_UPDATE]" (click)="onEditCanned(canned, $event)"></ion-icon>
|
|
16
16
|
<ion-icon class="canned-item-icon" name="trash-bin-outline" slot=end *ngIf="(canned.createdBy === loggedUser.uid) && roles[PERMISSIONS.CANNED_RESPONSES_DELETE]" (click)="onDeleteCanned(canned, $event)"></ion-icon>
|
|
@@ -47,13 +47,13 @@
|
|
|
47
47
|
</div>
|
|
48
48
|
<!-- SUPPORT-GROUP CONV -->
|
|
49
49
|
<div *ngIf="conversationUid?.startsWith(CHANNEL_TYPE.SUPPORT_GROUP) && !IS_ON_MOBILE_DEVICE">
|
|
50
|
-
<img class="channel-icon" src="assets/
|
|
51
|
-
<img class="channel-icon" src="assets/
|
|
52
|
-
<img class="channel-icon" src="assets/
|
|
53
|
-
<img class="channel-icon" src="assets/
|
|
54
|
-
<img class="channel-icon" src="assets/
|
|
55
|
-
<img class="channel-icon" src="assets/
|
|
56
|
-
<img class="channel-icon" src="assets/
|
|
50
|
+
<img class="channel-icon" src="assets/img/channel_icons/chat21.svg" *ngIf="( (conversationAvatar?.request_channel && conversationAvatar?.request_channel === CHANNEL_TYPE.CHAT21) || !conversationAvatar?.request_channel) " >
|
|
51
|
+
<img class="channel-icon" src="assets/img/channel_icons/email-logo.svg" *ngIf="conversationAvatar?.request_channel && conversationAvatar?.request_channel === CHANNEL_TYPE.EMAIL" >
|
|
52
|
+
<img class="channel-icon" src="assets/img/channel_icons/form-logo_v2.svg" *ngIf="conversationAvatar?.request_channel && conversationAvatar?.request_channel === CHANNEL_TYPE.FORM" >
|
|
53
|
+
<img class="channel-icon" src="assets/img/channel_icons/messenger-logo.svg" *ngIf="conversationAvatar?.request_channel && conversationAvatar?.request_channel === CHANNEL_TYPE.MESSENGER" >
|
|
54
|
+
<img class="channel-icon" src="assets/img/channel_icons/whatsapp-logo.svg" *ngIf="conversationAvatar?.request_channel && conversationAvatar?.request_channel === CHANNEL_TYPE.WHATSAPP" >
|
|
55
|
+
<img class="channel-icon" src="assets/img/channel_icons/telegram-logo.svg" *ngIf="conversationAvatar?.request_channel && conversationAvatar?.request_channel === CHANNEL_TYPE.TELEGRAM" >
|
|
56
|
+
<img class="channel-icon" src="assets/img/channel_icons/voice.svg" *ngIf="conversationAvatar?.request_channel && conversationAvatar?.request_channel.startsWith(CHANNEL_TYPE.VOICE)" >
|
|
57
57
|
<span *ngIf="conversationAvatar?.project_name" class="truncate">{{conversationAvatar?.project_name}}</span>
|
|
58
58
|
<span *ngIf="!conversationAvatar?.project_name" class="truncate">{{conversationAvatar?.projectId}}</span>
|
|
59
59
|
</div>
|
|
@@ -65,7 +65,7 @@
|
|
|
65
65
|
<!-- COPILOT-OPTION -->
|
|
66
66
|
<div *ngIf="isCopilotEnabled" class="copilot-container" id="copilot">
|
|
67
67
|
<ion-button id="copilot" fill="clear" (click)="onOpenSection('copilot')">
|
|
68
|
-
<ion-icon class="channel-icon" src="assets/
|
|
68
|
+
<ion-icon class="channel-icon" src="assets/img/icons/copilot.svg"></ion-icon>
|
|
69
69
|
{{translationsMap?.get('COPILOT.SOLVE_WITH_AI')}}
|
|
70
70
|
</ion-button>
|
|
71
71
|
</div>
|
package/src/app/components/conversation-detail/message-text-area/message-text-area.component.ts
CHANGED
|
@@ -548,6 +548,10 @@ export class MessageTextAreaComponent implements OnInit, AfterViewInit, OnChange
|
|
|
548
548
|
e.preventDefault(); // Prevent press enter from creating new line
|
|
549
549
|
// console.log("[CONVS-DETAIL] replaceTagInMessage onKeydown in msg-texarea * event: ", e);
|
|
550
550
|
|
|
551
|
+
if(this.showAlertEmoji || this.showAlertUrl){
|
|
552
|
+
return;
|
|
553
|
+
}
|
|
554
|
+
|
|
551
555
|
this.countClicks++;
|
|
552
556
|
this.logger.log('[CONVS-DETAIL][MSG-TEXT-AREA] onKeydown - countClicks: ', this.countClicks);
|
|
553
557
|
this.logger.log('[CONVS-DETAIL][MSG-TEXT-AREA] onKeydown - event: ', e);
|
|
@@ -652,6 +656,11 @@ export class MessageTextAreaComponent implements OnInit, AfterViewInit, OnChange
|
|
|
652
656
|
return
|
|
653
657
|
}
|
|
654
658
|
|
|
659
|
+
let check = this.checkForEmojii(text)
|
|
660
|
+
if(!check){
|
|
661
|
+
return;
|
|
662
|
+
}
|
|
663
|
+
|
|
655
664
|
this.messageString = '';
|
|
656
665
|
// text = text.replace(/(\r\n|\n|\r)/gm, '');
|
|
657
666
|
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
</ion-content>
|
|
19
19
|
<ion-footer class="ion-no-border">
|
|
20
20
|
<ion-button fill="clear" (click)="onClickCopilot()">
|
|
21
|
-
<ion-icon src="assets/
|
|
21
|
+
<ion-icon src="assets/img/icons/copilot.svg"></ion-icon>
|
|
22
22
|
{{translationsMap.get('COPILOT.ASK_AI') }}
|
|
23
23
|
</ion-button>
|
|
24
24
|
</ion-footer>
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
<div class="logo">
|
|
3
3
|
<!-- <a class="logo-img-wpr" [ngClass]="{'small-sidebar-logo-img-wpr' : SIDEBAR_IS_SMALL === true }">
|
|
4
4
|
<div class="logo-img" (click)="goToHome()" style="cursor: pointer;">
|
|
5
|
-
<img class="small-sidebar__logo" src="assets/logos/tiledesk-solo-logo.svg" />
|
|
5
|
+
<img class="small-sidebar__logo" src="assets/img/logos/tiledesk-solo-logo.svg" />
|
|
6
6
|
</div>
|
|
7
7
|
</a> -->
|
|
8
8
|
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
style="cursor: pointer;" [ngClass]="{'small-sidebar-avatar' : SIDEBAR_IS_SMALL === true, 'small-sidebar-avatar-with-avatar': SIDEBAR_IS_SMALL === true && !USER_PHOTO_PROFILE_EXIST}">
|
|
13
13
|
|
|
14
14
|
<img *ngIf="USER_PHOTO_PROFILE_EXIST" id="sidebaravatar-img" class="sidebar-avatar" [src]="photo_profile_URL"
|
|
15
|
-
onerror="this.src='assets/
|
|
15
|
+
onerror="this.src='assets/img/no_image_user.png'" />
|
|
16
16
|
|
|
17
17
|
<div *ngIf="!USER_PHOTO_PROFILE_EXIST" id="sidebaravatar-no-img" class="sidebar-avatar"
|
|
18
18
|
[ngStyle]="{'background': 'linear-gradient(rgb(255,255,255) -125%,' + currentUser?.fillColour + ')'}">
|
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
<!-- (click)="goToUserProfile()" -->
|
|
23
23
|
<div role="button" class="user-details-avatar">
|
|
24
24
|
<img *ngIf="USER_PHOTO_PROFILE_EXIST" class="user-img-in-sidebar-user-details" [src]="photo_profile_URL"
|
|
25
|
-
onerror="this.src='assets/
|
|
25
|
+
onerror="this.src='assets/img/no_image_user.png'" />
|
|
26
26
|
|
|
27
27
|
<div *ngIf="!USER_PHOTO_PROFILE_EXIST" class="user-img-in-sidebar-user-details"
|
|
28
28
|
[ngStyle]="{'background': 'linear-gradient(rgb(255,255,255) -125%,' + user?.fillColour + ')'}">
|
|
@@ -51,7 +51,7 @@
|
|
|
51
51
|
<div class="user-details-role">
|
|
52
52
|
<h3>{{ USER_ROLE_LABEL }} </h3>
|
|
53
53
|
|
|
54
|
-
<div class="user-details-view-profile" (click)="goToUserProfile()">
|
|
54
|
+
<div *ngIf="BRAND_BASE_INFO['DISPLAY_EDIT_PROFILE']" class="user-details-view-profile" (click)="goToUserProfile()">
|
|
55
55
|
{{translationsMap.get('EditProfile')}}
|
|
56
56
|
</div>
|
|
57
57
|
|
|
@@ -53,9 +53,9 @@ export class SidebarUserDetailsComponent implements OnInit, OnChanges {
|
|
|
53
53
|
|
|
54
54
|
selectedStatus: any;
|
|
55
55
|
teammateStatus = [
|
|
56
|
-
{ id: 1, name: 'Available', avatar: 'assets/
|
|
57
|
-
{ id: 2, name: 'Unavailable', avatar: 'assets/
|
|
58
|
-
{ id: 3, name: 'Inactive', avatar: 'assets/
|
|
56
|
+
{ id: 1, name: 'Available', avatar: 'assets/img/teammate-status/avaible.svg', label: "LABEL_AVAILABLE" },
|
|
57
|
+
{ id: 2, name: 'Unavailable', avatar: 'assets/img/teammate-status/unavaible.svg', label: "LABEL_NOT_AVAILABLE" },
|
|
58
|
+
{ id: 3, name: 'Inactive', avatar: 'assets/img/teammate-status/inactive.svg', label: "LABEL_INACTIVE" },
|
|
59
59
|
];
|
|
60
60
|
|
|
61
61
|
translationsMap: Map<string, string> = new Map();
|
|
@@ -195,13 +195,13 @@ export class SidebarUserDetailsComponent implements OnInit, OnChanges {
|
|
|
195
195
|
this.chat_lang = ''
|
|
196
196
|
if (this.browserLang && !stored_preferred_lang) {
|
|
197
197
|
this.chat_lang = this.browserLang
|
|
198
|
-
// this.flag_url = "assets/
|
|
198
|
+
// this.flag_url = "assets/img/language_flag/" + this.chat_lang + ".png"
|
|
199
199
|
|
|
200
200
|
this.logger.log('[SIDEBAR-USER-DETAILS] flag_url: ', this.flag_url);
|
|
201
201
|
this.logger.log('[SIDEBAR-USER-DETAILS] chat_lang: ', this.chat_lang);
|
|
202
202
|
} else if (this.browserLang && stored_preferred_lang) {
|
|
203
203
|
this.chat_lang = stored_preferred_lang
|
|
204
|
-
// this.flag_url = "assets/
|
|
204
|
+
// this.flag_url = "assets/img/language_flag/" + this.chat_lang + ".png"
|
|
205
205
|
this.logger.log('[SIDEBAR-USER-DETAILS] flag_url: ', this.flag_url);
|
|
206
206
|
this.logger.log('[SIDEBAR-USER-DETAILS] chat_lang: ', this.chat_lang);
|
|
207
207
|
}
|
|
@@ -209,11 +209,11 @@ export class SidebarUserDetailsComponent implements OnInit, OnChanges {
|
|
|
209
209
|
if (tranlatedLanguage.includes(this.chat_lang)) {
|
|
210
210
|
this.logger.log('[SIDEBAR-USER-DETAILS] tranlatedLanguage includes', this.chat_lang, ': ', tranlatedLanguage.includes(this.chat_lang))
|
|
211
211
|
this.translate.use(this.chat_lang);
|
|
212
|
-
this.flag_url = "assets/
|
|
212
|
+
this.flag_url = "assets/img/language_flag/" + this.chat_lang + ".png"
|
|
213
213
|
} else {
|
|
214
214
|
this.logger.log('[SIDEBAR-USER-DETAILS] tranlatedLanguage includes', this.chat_lang, ': ', tranlatedLanguage.includes(this.chat_lang))
|
|
215
215
|
this.translate.use('en');
|
|
216
|
-
this.flag_url = "assets/
|
|
216
|
+
this.flag_url = "assets/img/language_flag/en.png"
|
|
217
217
|
this.chat_lang = 'en'
|
|
218
218
|
}
|
|
219
219
|
|
|
@@ -36,7 +36,7 @@
|
|
|
36
36
|
<img *ngIf="item.requestertype === 'agent' && UPLOAD_ENGINE_IS_FIREBASE" height="24" width="24"
|
|
37
37
|
style="border-radius:50%; object-fit: cover; vertical-align: middle;"
|
|
38
38
|
src="https://firebasestorage.googleapis.com/v0/b/{{storageBucket}}/o/profiles%2F{{item.id}}%2Fphoto.jpg?alt=media"
|
|
39
|
-
alt="" onerror="this.src='assets/
|
|
39
|
+
alt="" onerror="this.src='assets/img/default-avatar-x-select.png'">
|
|
40
40
|
|
|
41
41
|
<!-- ---------------------------------------- -->
|
|
42
42
|
<!-- Usecase Native -->
|
|
@@ -44,11 +44,11 @@
|
|
|
44
44
|
<img *ngIf="item.requestertype === 'agent' && !UPLOAD_ENGINE_IS_FIREBASE" height="24" width="24"
|
|
45
45
|
style="border-radius:50%;object-fit: cover;vertical-align: middle;"
|
|
46
46
|
src="{{baseUrl}}images?path=uploads%2Fusers%2F{{item.id}}%2Fimages%2Fthumbnails_200_200-photo.jpg" alt=""
|
|
47
|
-
onerror="this.src='assets/
|
|
47
|
+
onerror="this.src='assets/img/default-avatar-x-select.png'">
|
|
48
48
|
|
|
49
49
|
<img *ngIf="item.requestertype === 'lead'" height="24" width="24"
|
|
50
50
|
style="border-radius:50%;object-fit: cover;vertical-align: middle;"
|
|
51
|
-
src="assets/
|
|
51
|
+
src="assets/img/default-avatar-x-select.png" alt="">
|
|
52
52
|
<span style="font-weight: 400;">
|
|
53
53
|
{{ item.name }}
|
|
54
54
|
</span>
|
|
@@ -64,7 +64,7 @@
|
|
|
64
64
|
<img *ngIf="item.requestertype === 'agent' && UPLOAD_ENGINE_IS_FIREBASE" height="24" width="24"
|
|
65
65
|
style="border-radius:50%;object-fit: cover;vertical-align: middle;"
|
|
66
66
|
src="https://firebasestorage.googleapis.com/v0/b/{{storageBucket}}/o/profiles%2F{{item.id}}%2Fphoto.jpg?alt=media"
|
|
67
|
-
alt="" onerror="this.src='assets/
|
|
67
|
+
alt="" onerror="this.src='assets/img/default-avatar-x-select.png'">
|
|
68
68
|
|
|
69
69
|
<!-- ---------------------------------------- -->
|
|
70
70
|
<!-- Usecase Native -->
|
|
@@ -72,11 +72,11 @@
|
|
|
72
72
|
<img *ngIf="item.requestertype === 'agent' && !UPLOAD_ENGINE_IS_FIREBASE" height="24" width="24"
|
|
73
73
|
style="border-radius:50%;object-fit: cover;vertical-align: middle;"
|
|
74
74
|
src="{{baseUrl}}images?path=uploads%2Fusers%2F{{item.id}}%2Fimages%2Fthumbnails_200_200-photo.jpg" alt=""
|
|
75
|
-
onerror="this.src='assets/
|
|
75
|
+
onerror="this.src='assets/img/default-avatar-x-select.png'">
|
|
76
76
|
|
|
77
77
|
<img *ngIf="item.requestertype === 'lead'" height="24" width="24"
|
|
78
78
|
style="border-radius:50%; object-fit: cover;vertical-align: middle;"
|
|
79
|
-
src="assets/
|
|
79
|
+
src="assets/img/default-avatar-x-select.png" alt="">
|
|
80
80
|
<span style="font-weight: 400;">
|
|
81
81
|
{{ item.name }}
|
|
82
82
|
</span>
|
|
@@ -43,22 +43,22 @@ export class CreateTicketPage implements OnInit {
|
|
|
43
43
|
{
|
|
44
44
|
id: 1,
|
|
45
45
|
name: 'urgent',
|
|
46
|
-
avatar: 'assets/
|
|
46
|
+
avatar: 'assets/img/priority_icons/urgent_v2.svg'
|
|
47
47
|
},
|
|
48
48
|
{
|
|
49
49
|
id: 2,
|
|
50
50
|
name: 'high',
|
|
51
|
-
avatar: 'assets/
|
|
51
|
+
avatar: 'assets/img/priority_icons/high_v2.svg '
|
|
52
52
|
},
|
|
53
53
|
{
|
|
54
54
|
id: 3,
|
|
55
55
|
name: 'medium',
|
|
56
|
-
avatar: 'assets/
|
|
56
|
+
avatar: 'assets/img/priority_icons/medium_v2.svg'
|
|
57
57
|
},
|
|
58
58
|
{
|
|
59
59
|
id: 4,
|
|
60
60
|
name: 'low',
|
|
61
|
-
avatar: 'assets/
|
|
61
|
+
avatar: 'assets/img/priority_icons/low_v2.svg'
|
|
62
62
|
},
|
|
63
63
|
];
|
|
64
64
|
|
|
@@ -156,7 +156,7 @@ export class LoaderPreviewPage implements OnInit, AfterViewInit {
|
|
|
156
156
|
}
|
|
157
157
|
// file-alt-solid.png
|
|
158
158
|
async createFile() {
|
|
159
|
-
let response = await fetch('./assets/
|
|
159
|
+
let response = await fetch('./assets/img/file-alt-solid.png')
|
|
160
160
|
let data = await response.blob()
|
|
161
161
|
let metadata = {
|
|
162
162
|
type: 'image/png',
|
|
@@ -106,7 +106,7 @@ ion-footer {
|
|
|
106
106
|
width: 100%;
|
|
107
107
|
min-height: 200px;
|
|
108
108
|
//background-image: url(https://user-images.githubusercontent.com/15075759/28719144-86dc0f70-73b1-11e7-911d-60d70fcded21.png);
|
|
109
|
-
background-image: url(../../../assets/
|
|
109
|
+
background-image: url(../../../assets/img/whatsapp_background.png);
|
|
110
110
|
border-radius: 8px;
|
|
111
111
|
background-size: cover;
|
|
112
112
|
display: flex;
|
|
@@ -1158,7 +1158,7 @@ export class ConversationDetailPage implements OnInit, OnDestroy, AfterViewInit
|
|
|
1158
1158
|
// ${metadata.name}
|
|
1159
1159
|
// </a>`
|
|
1160
1160
|
|
|
1161
|
-
// msg =  + [${metadata.name}](${metadata.src})
|
|
1162
1162
|
msg = `[${metadata.name}](${metadata.src})`
|
|
1163
1163
|
}
|
|
1164
1164
|
}
|
|
@@ -116,9 +116,9 @@ export class ConversationListPage implements OnInit {
|
|
|
116
116
|
profile_name_translated: string;
|
|
117
117
|
selectedStatus: any;
|
|
118
118
|
teammateStatus = [
|
|
119
|
-
{ id: 1, name: 'Available', avatar: 'assets/
|
|
120
|
-
{ id: 2, name: 'Unavailable', avatar: 'assets/
|
|
121
|
-
{ id: 3, name: 'Inactive', avatar: 'assets/
|
|
119
|
+
{ id: 1, name: 'Available', avatar: 'assets/img/teammate-status/avaible.svg', label: "LABEL_AVAILABLE" },
|
|
120
|
+
{ id: 2, name: 'Unavailable', avatar: 'assets/img/teammate-status/unavaible.svg', label: "LABEL_NOT_AVAILABLE" },
|
|
121
|
+
{ id: 3, name: 'Inactive', avatar: 'assets/img/teammate-status/inactive.svg', label: "LABEL_INACTIVE" },
|
|
122
122
|
];
|
|
123
123
|
// PROJECT AVAILABILITY INFO: end
|
|
124
124
|
|
|
@@ -51,9 +51,9 @@ export class ProfileInfoPage implements OnInit {
|
|
|
51
51
|
|
|
52
52
|
isVisiblePAY: boolean;
|
|
53
53
|
teammateStatus = [
|
|
54
|
-
{ id: 1, name: 'Available', avatar: 'assets/
|
|
55
|
-
{ id: 2, name: 'Unavailable', avatar: 'assets/
|
|
56
|
-
{ id: 3, name: 'Inactive', avatar: 'assets/
|
|
54
|
+
{ id: 1, name: 'Available', avatar: 'assets/img/teammate-status/avaible.svg', label: "LABEL_AVAILABLE" },
|
|
55
|
+
{ id: 2, name: 'Unavailable', avatar: 'assets/img/teammate-status/unavaible.svg', label: "LABEL_NOT_AVAILABLE" },
|
|
56
|
+
{ id: 3, name: 'Inactive', avatar: 'assets/img/teammate-status/inactive.svg', label: "LABEL_INACTIVE" },
|
|
57
57
|
];
|
|
58
58
|
|
|
59
59
|
constructor(
|
|
@@ -67,11 +67,11 @@ export class BrandService {
|
|
|
67
67
|
]
|
|
68
68
|
},
|
|
69
69
|
COMMON: {
|
|
70
|
-
COMPANY_LOGO:"assets/logos/tiledesk_logo.svg",
|
|
71
|
-
COMPANY_LOGO_NO_TEXT:"assets/logos/tiledesk_logo.svg",
|
|
72
|
-
BASE_LOGO: "assets/logos/tiledesk_logo.svg",
|
|
73
|
-
BASE_LOGO_NO_TEXT: "assets/logos/tiledesk_logo.svg",
|
|
74
|
-
BASE_LOGO_WHITE: "assets/logos/tiledesk-logo_new_white.svg",
|
|
70
|
+
COMPANY_LOGO:"assets/img/logos/tiledesk_logo.svg",
|
|
71
|
+
COMPANY_LOGO_NO_TEXT:"assets/img/logos/tiledesk_logo.svg",
|
|
72
|
+
BASE_LOGO: "assets/img/logos/tiledesk_logo.svg",
|
|
73
|
+
BASE_LOGO_NO_TEXT: "assets/img/logos/tiledesk_logo.svg",
|
|
74
|
+
BASE_LOGO_WHITE: "assets/img/logos/tiledesk-logo_new_white.svg",
|
|
75
75
|
BASE_LOGO_WHITE_NO_TEXT:"",
|
|
76
76
|
COMPANY_NAME: "Tiledesk",
|
|
77
77
|
BRAND_NAME: "Tiledesk",
|
|
@@ -7,16 +7,17 @@ export const BRAND_BASE_INFO: { [key: string] : string | boolean} ={
|
|
|
7
7
|
FAVICON: "https://tiledesk.com/wp-content/uploads/2022/07/tiledesk_v13-300x300.png",
|
|
8
8
|
META_TITLE:"Tiledesk - Open Source Live Chat",
|
|
9
9
|
DOCS: true,
|
|
10
|
-
LOGOUT_ENABLED: true
|
|
10
|
+
LOGOUT_ENABLED: true,
|
|
11
|
+
DISPLAY_EDIT_PROFILE: true
|
|
11
12
|
}
|
|
12
13
|
|
|
13
14
|
export var LOGOS_ITEMS: { [key: string] : { label: string | boolean, icon: string }} ={
|
|
14
|
-
COMPANY_LOGO: {label: BRAND_BASE_INFO.COMPANY_NAME, icon: 'assets/logos/tiledesk_logo.svg'},
|
|
15
|
-
COMPANY_LOGO_NO_TEXT: {label: BRAND_BASE_INFO.COMPANY_NAME, icon: 'assets/logos/tiledesk_logo_no_text.svg'},
|
|
16
|
-
BASE_LOGO: {label: BRAND_BASE_INFO.BRAND_NAME, icon: 'assets/logos/tiledesk_logo.svg'},
|
|
17
|
-
BASE_LOGO_NO_TEXT: {label: BRAND_BASE_INFO.BRAND_NAME, icon: 'assets/logos/tiledesk_logo_no_text.svg'},
|
|
18
|
-
BASE_LOGO_WHITE: { label: BRAND_BASE_INFO.BRAND_NAME, icon: '"assets/logos/tiledesk-logo_new_white.svg'},
|
|
19
|
-
BASE_LOGO_WHITE_NO_TEXT: { label: BRAND_BASE_INFO.BRAND_NAME, icon: '"assets/logos/tiledesk-logo_new_white.svg'},
|
|
15
|
+
COMPANY_LOGO: {label: BRAND_BASE_INFO.COMPANY_NAME, icon: 'assets/img/logos/tiledesk_logo.svg'},
|
|
16
|
+
COMPANY_LOGO_NO_TEXT: {label: BRAND_BASE_INFO.COMPANY_NAME, icon: 'assets/img/logos/tiledesk_logo_no_text.svg'},
|
|
17
|
+
BASE_LOGO: {label: BRAND_BASE_INFO.BRAND_NAME, icon: 'assets/img/logos/tiledesk_logo.svg'},
|
|
18
|
+
BASE_LOGO_NO_TEXT: {label: BRAND_BASE_INFO.BRAND_NAME, icon: 'assets/img/logos/tiledesk_logo_no_text.svg'},
|
|
19
|
+
BASE_LOGO_WHITE: { label: BRAND_BASE_INFO.BRAND_NAME, icon: '"assets/img/logos/tiledesk-logo_new_white.svg'},
|
|
20
|
+
BASE_LOGO_WHITE_NO_TEXT: { label: BRAND_BASE_INFO.BRAND_NAME, icon: '"assets/img/logos/tiledesk-logo_new_white.svg'},
|
|
20
21
|
BASE_LOGO_GRAY: { label: BRAND_BASE_INFO.BRAND_NAME, icon: 'https://support-pre.tiledesk.com/dashboard/assets/img/logos/tiledesk-logo_new_gray.svg'}
|
|
21
22
|
}
|
|
22
23
|
|
|
@@ -119,8 +119,8 @@ export const STORAGE_PREFIX = 'tiledesk_widget_';
|
|
|
119
119
|
|
|
120
120
|
// links
|
|
121
121
|
export const FIREBASESTORAGE_BASE_URL_IMAGE = 'https://firebasestorage.googleapis.com/v0/b/' //+ 'chat-v2-dev.appspot.com/o/';
|
|
122
|
-
export const IMG_PROFILE_BOT = '/assets/
|
|
123
|
-
export const IMG_PROFILE_DEFAULT = '/assets/
|
|
122
|
+
export const IMG_PROFILE_BOT = '/assets/img/avatar_bot_tiledesk.svg';
|
|
123
|
+
export const IMG_PROFILE_DEFAULT = '/assets/img/avatar_male_tiledesk.svg';
|
|
124
124
|
|
|
125
125
|
//LOG LEVEL
|
|
126
126
|
// export enum LogLevel {
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|