recei and clear the code

This commit is contained in:
Peter Maquiran
2024-08-21 20:14:48 +01:00
parent 82c67b8976
commit 24aac56824
36 changed files with 319 additions and 246 deletions
+2 -2
View File
@@ -19,7 +19,7 @@ import { RoomListOutPutDTO } from 'src/app/module/chat/data/dto/room/roomListOut
import { Observable as DexieObservable } from 'Dexie';
import { EditGroupPage } from './modal/edit-group/edit-group.page';
import { ChatServiceService } from 'src/app/module/chat/domain/chat-service.service'
import { RoomLocalRepository } from 'src/app/module/chat/data/repository/room-local-repository.service'
import { RoomLocalRepository } from 'src/app/module/chat/data/repository/room/room-local-repository.service'
import { RoomTable } from 'src/app/module/chat/infra/database/dexie/schema/room';
import { map, tap } from 'rxjs/operators';
import { interval, Subscription } from 'rxjs';
@@ -71,6 +71,7 @@ export class ChatPage implements OnInit {
public RouteService: RouteService,
private ChatServiceService: ChatServiceService,
private roomLocalDataSourceService: RoomLocalRepository,
private chatServiceService: ChatServiceService
) {
@@ -284,7 +285,6 @@ export class ChatPage implements OnInit {
openMessagesPage(rid) {
// this.chatService.refreshtoken();
this.roomId = rid;
@@ -121,7 +121,33 @@ export class ContactsPage implements OnInit {
}
onChange(event) {
const textSearch = event.detail.value;
const filteredUserList: (UserContacts & {isChecked: boolean})[] = this.FilterUserListedByTextSearch(textSearch) as any
const userContainer = {}
for(const user of filteredUserList) {
const firstLetter = user.wxFullName.charAt(0)
if(!userContainer[firstLetter]) {
userContainer[firstLetter] = [user]
} else {
userContainer[firstLetter].push(user)
}
}
this.userContainer = userContainer
}
FilterUserListedByTextSearch(textSearch: string) {
return this.allChatUsers.filter( e => e.wxFullName.toLowerCase().includes(textSearch.toLowerCase())).sort((a,b) => {
if(a.wxFullName < b.wxFullName) {
return -1;
}
if(a.wxFullName > b.wxFullName) {
return 1;
}
return 0;
});
}
clicked() {}
@@ -22,7 +22,7 @@ import { ViewMediaPage } from 'src/app/modals/view-media/view-media.page';
import { PermissionService } from 'src/app/services/permission.service';
import { Observable as DexieObservable } from 'Dexie';
import { Observable, Subscription } from 'rxjs';
import { RoomLocalRepository } from 'src/app/module/chat/data/repository/room-local-repository.service'
import { RoomLocalRepository } from 'src/app/module/chat/data/repository/room/room-local-repository.service'
import { MemberListLocalRepository } from 'src/app/module/chat/data/repository/member-list-local-repository.service'
import { MessageTable } from 'src/app/module/chat/infra/database/dexie/schema/message';
import { ChatServiceService } from 'src/app/module/chat/domain/chat-service.service';
@@ -243,6 +243,9 @@ export class MessagesPage implements OnInit, OnChanges, AfterViewInit, OnDestroy
this.messages1[this.roomId].push(LastMessage)
this.loadAttachment()
setTimeout(() => {
this.sendReadMessage()
}, 1000)
}
@@ -76,6 +76,9 @@
<div *ngIf="attachment.fileType == MessageAttachmentFileType.Audio">
<audio [src]="attachment.safeFile|safehtml" preload="metadata" class="flex-grow-1" controls controlsList="nodownload noplaybackrate"></audio>
</div>
<div *ngIf="attachment.fileType == MessageAttachmentFileType.Audio">
<audio [src]="attachment.safeFile" preload="metadata" class="flex-grow-1" controls controlsList="nodownload noplaybackrate"></audio>
</div>
<div *ngIf="attachment.fileType == MessageAttachmentFileType.Doc">
<fa-icon *ngIf="attachment.mimeType == 'application/pdf'" icon="file-pdf" class="pdf-icon"></fa-icon>
@@ -40,7 +40,7 @@ import { FilePickerMobileService } from 'src/app/infra/file-picker/mobile/file-p
import { FilePickerWebService } from 'src/app/infra/file-picker/web/file-picker-web.service'
import { allowedDocExtension } from 'src/app/utils/allowedDocExtension';
import { JSFileToDataUrl } from 'src/app/utils/ToBase64';
import { RoomLocalRepository } from 'src/app/module/chat/data/repository/room-local-repository.service'
import { RoomLocalRepository } from 'src/app/module/chat/data/repository/room/room-local-repository.service'
import { MemberListLocalRepository } from 'src/app/module/chat/data/repository/member-list-local-repository.service'
import { UserTypingLocalRepository } from 'src/app/module/chat/data/repository/user-typing-local-data-source.service';
import { UserTypingRemoteRepositoryService } from 'src/app/module/chat/data/repository/user-typing-live-data-source.service';
@@ -276,7 +276,7 @@ export class MessagesPage implements OnInit, AfterViewInit, OnDestroy {
listenToIncomingMessage() {
this.messageReceiveSubject?.unsubscribe();
this.messageReceiveSubject = this.chatServiceService.listenToIncomingMessage(this.roomId).subscribe(async (message) => {
this.messages1[this.roomId].unshift(message as MessageEntity)
this.messages1[this.roomId].push(message as MessageEntity)
if(message.hasAttachment) {
@@ -557,6 +557,7 @@ export class MessagesPage implements OnInit, AfterViewInit, OnDestroy {
this.audioRecorded = `data:${recordData.value.mimeType};base64,${recordData?.value?.recordDataBase64}`;
}
const audioMimeType: string = recordData.value.mimeType
//Converting base64 to blob
const encodedData = btoa(this.audioRecorded);
@@ -572,7 +573,7 @@ export class MessagesPage implements OnInit, AfterViewInit, OnDestroy {
}
message.attachments = [{
file: encodedData,
file: this.audioRecorded.split(',')[1],
fileName: "audio",
source: MessageAttachmentSource.Device,
fileType: MessageAttachmentFileType.Audio,