The mail-box-modal
provides interface unit for users to send and receive outlook mails.
Users can log mails in custom database which is provided by the developer.
The purpose of mail logging is to establish transparency on a specific type of mails that user wishes to share among organization. This logged mail is visible to the users who shares the same custom database.
You can install the package using following command.
$ npm install mail-box-modal
import { CommonModule } from '@angular/common';
import { NgModule } from '@angular/core';
import { AppComponent } from './app.component';
import { DxHtmlEditorModule } from 'devextreme-angular';
import { TagInputModule } from 'ngx-chips';
@NgModule({
declarations: [
AppComponent
],
imports: [
CommonModule,
DxHtmlEditorModule,
TagInputModule
],
providers: [],
})
export class AppModule { }
import { MailUtilityService } from 'mail-box-modal';
import { MatDialog } from '@angular/material/dialog';
constructor(
public _mailUtilityService : MailUtilityService,
public dialog : MatDialog
) {}
ngOnInit() {
this._mailUtilityService.mUtilityData.applicationId = 123 //Application ID
this._mailUtilityService.mUtilityData.recipientMailIdArr = 'abc@outlook.com' //Recipient mail ID
this._mailUtilityService.mUtilityData.currentUserMailId = 'xyz@outlook.com' //Loggedin User mail ID
this._mailUtilityService.mailUiData.isSyncWithKebsBtn = true // Custom logging enable/disable
this._mailUtilityService.mUtilityData["receiveMailsFromO365"] = true //Get outlook mail transactions between current loggedin user and recipientMailId
}
openMailModal() {
this._mailUtilityService.mUtilityData.o365Token = 'ee34fddfd...'//O365 token
this._mailUtilityService.mUtilityData.getMailFromKebsApiData = {
url:"CUSTOM_API_URL", //API URL to retrieve logged mails
jwtToken: 'eyJhbGciOiJ...',
paramsArr:[
{
applicationId: 123,
objectIdArr: [46,78]
}
]
}
this._mailUtilityService.mUtilityData.saveMailInKebsApiData = {
url:"CUSTOM_API_URL", //API URL to log mail
jwtToken: 'eyJhbGciOiJ...',
paramsArr:[
{
applicationId: 123,
objectIdArr: [46,78]
}
]
}
const { ViewMailComponent } = await import('mail-box-modal');
const openViewMailComponent = this.dialog.open(ViewMailComponent, {
panelClass: 'mail-plugin-dialog',
width: "96%",
height: "97%",
maxWidth: "100vw",
maxHeight: "100vw",
data:{},
disableClose: true,
})
openViewMailComponent.afterClosed().subscribe(res => {
this._mailUtilityService.resetMailData()
})
}
"@angular/common": "^11.0.9",
"@angular/core": "^11.0.9",
"ngx-chips": "^2.2.2"