Add TNEF handling and email loading improvements
- Implement TNEF extraction and recursive parsing in new `tnef_reader.go` and associated tests. - Create tests for TNEF extraction scenarios in `tnef_diag_test.go`, `tnef_diag7_test.go`, and `tnef_diag8_test.go`.
This commit is contained in:
44
frontend/src/lib/wailsjs/go/main/App.d.ts
vendored
44
frontend/src/lib/wailsjs/go/main/App.d.ts
vendored
@@ -1,15 +1,29 @@
|
||||
// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL
|
||||
// This file is automatically generated. DO NOT EDIT
|
||||
import {utils} from '../models';
|
||||
import {main} from '../models';
|
||||
import {utils} from '../models';
|
||||
import {internal} from '../models';
|
||||
|
||||
export function CheckForUpdates():Promise<main.UpdateStatus>;
|
||||
|
||||
export function CheckIsDefaultEMLHandler():Promise<boolean>;
|
||||
|
||||
export function ConvertToUTF8(arg1:string):Promise<string>;
|
||||
|
||||
export function CreateBugReportFolder():Promise<main.BugReportResult>;
|
||||
|
||||
export function DetectEmailFormat(arg1:string):Promise<string>;
|
||||
|
||||
export function DownloadUpdate():Promise<string>;
|
||||
|
||||
export function ExportSettings(arg1:string):Promise<string>;
|
||||
|
||||
export function FrontendLog(arg1:string,arg2:string):Promise<void>;
|
||||
|
||||
export function GetConfig():Promise<utils.Config>;
|
||||
|
||||
export function GetCurrentMailFilePath():Promise<string>;
|
||||
|
||||
export function GetImageViewerData():Promise<main.ImageViewerData>;
|
||||
|
||||
export function GetMachineData():Promise<utils.MachineInfo>;
|
||||
@@ -18,14 +32,26 @@ export function GetPDFViewerData():Promise<main.PDFViewerData>;
|
||||
|
||||
export function GetStartupFile():Promise<string>;
|
||||
|
||||
export function GetUpdateStatus():Promise<main.UpdateStatus>;
|
||||
|
||||
export function GetViewerData():Promise<main.ViewerData>;
|
||||
|
||||
export function ImportSettings():Promise<string>;
|
||||
|
||||
export function InstallUpdate(arg1:boolean):Promise<void>;
|
||||
|
||||
export function InstallUpdateSilent():Promise<void>;
|
||||
|
||||
export function InstallUpdateSilentFromPath(arg1:string):Promise<void>;
|
||||
|
||||
export function IsDebuggerRunning():Promise<boolean>;
|
||||
|
||||
export function OpenDefaultAppsSettings():Promise<void>;
|
||||
|
||||
export function OpenEMLWindow(arg1:string,arg2:string):Promise<void>;
|
||||
|
||||
export function OpenFolderInExplorer(arg1:string):Promise<void>;
|
||||
|
||||
export function OpenImage(arg1:string,arg2:string):Promise<void>;
|
||||
|
||||
export function OpenImageWindow(arg1:string,arg2:string):Promise<void>;
|
||||
@@ -34,8 +60,12 @@ export function OpenPDF(arg1:string,arg2:string):Promise<void>;
|
||||
|
||||
export function OpenPDFWindow(arg1:string,arg2:string):Promise<void>;
|
||||
|
||||
export function OpenURLInBrowser(arg1:string):Promise<void>;
|
||||
|
||||
export function QuitApp():Promise<void>;
|
||||
|
||||
export function ReadAuto(arg1:string):Promise<internal.EmailData>;
|
||||
|
||||
export function ReadEML(arg1:string):Promise<internal.EmailData>;
|
||||
|
||||
export function ReadMSG(arg1:string,arg2:boolean):Promise<internal.EmailData>;
|
||||
@@ -46,4 +76,16 @@ export function ReadPEC(arg1:string):Promise<internal.EmailData>;
|
||||
|
||||
export function SaveConfig(arg1:utils.Config):Promise<void>;
|
||||
|
||||
export function SaveScreenshot():Promise<string>;
|
||||
|
||||
export function SaveScreenshotAs():Promise<string>;
|
||||
|
||||
export function SetCurrentMailFilePath(arg1:string):Promise<void>;
|
||||
|
||||
export function SetUpdateCheckerEnabled(arg1:boolean):Promise<void>;
|
||||
|
||||
export function ShowOpenFileDialog():Promise<string>;
|
||||
|
||||
export function SubmitBugReport(arg1:main.BugReportInput):Promise<main.SubmitBugReportResult>;
|
||||
|
||||
export function TakeScreenshot():Promise<main.ScreenshotResult>;
|
||||
|
||||
@@ -2,10 +2,34 @@
|
||||
// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL
|
||||
// This file is automatically generated. DO NOT EDIT
|
||||
|
||||
export function CheckForUpdates() {
|
||||
return window['go']['main']['App']['CheckForUpdates']();
|
||||
}
|
||||
|
||||
export function CheckIsDefaultEMLHandler() {
|
||||
return window['go']['main']['App']['CheckIsDefaultEMLHandler']();
|
||||
}
|
||||
|
||||
export function ConvertToUTF8(arg1) {
|
||||
return window['go']['main']['App']['ConvertToUTF8'](arg1);
|
||||
}
|
||||
|
||||
export function CreateBugReportFolder() {
|
||||
return window['go']['main']['App']['CreateBugReportFolder']();
|
||||
}
|
||||
|
||||
export function DetectEmailFormat(arg1) {
|
||||
return window['go']['main']['App']['DetectEmailFormat'](arg1);
|
||||
}
|
||||
|
||||
export function DownloadUpdate() {
|
||||
return window['go']['main']['App']['DownloadUpdate']();
|
||||
}
|
||||
|
||||
export function ExportSettings(arg1) {
|
||||
return window['go']['main']['App']['ExportSettings'](arg1);
|
||||
}
|
||||
|
||||
export function FrontendLog(arg1, arg2) {
|
||||
return window['go']['main']['App']['FrontendLog'](arg1, arg2);
|
||||
}
|
||||
@@ -14,6 +38,10 @@ export function GetConfig() {
|
||||
return window['go']['main']['App']['GetConfig']();
|
||||
}
|
||||
|
||||
export function GetCurrentMailFilePath() {
|
||||
return window['go']['main']['App']['GetCurrentMailFilePath']();
|
||||
}
|
||||
|
||||
export function GetImageViewerData() {
|
||||
return window['go']['main']['App']['GetImageViewerData']();
|
||||
}
|
||||
@@ -30,10 +58,30 @@ export function GetStartupFile() {
|
||||
return window['go']['main']['App']['GetStartupFile']();
|
||||
}
|
||||
|
||||
export function GetUpdateStatus() {
|
||||
return window['go']['main']['App']['GetUpdateStatus']();
|
||||
}
|
||||
|
||||
export function GetViewerData() {
|
||||
return window['go']['main']['App']['GetViewerData']();
|
||||
}
|
||||
|
||||
export function ImportSettings() {
|
||||
return window['go']['main']['App']['ImportSettings']();
|
||||
}
|
||||
|
||||
export function InstallUpdate(arg1) {
|
||||
return window['go']['main']['App']['InstallUpdate'](arg1);
|
||||
}
|
||||
|
||||
export function InstallUpdateSilent() {
|
||||
return window['go']['main']['App']['InstallUpdateSilent']();
|
||||
}
|
||||
|
||||
export function InstallUpdateSilentFromPath(arg1) {
|
||||
return window['go']['main']['App']['InstallUpdateSilentFromPath'](arg1);
|
||||
}
|
||||
|
||||
export function IsDebuggerRunning() {
|
||||
return window['go']['main']['App']['IsDebuggerRunning']();
|
||||
}
|
||||
@@ -46,6 +94,10 @@ export function OpenEMLWindow(arg1, arg2) {
|
||||
return window['go']['main']['App']['OpenEMLWindow'](arg1, arg2);
|
||||
}
|
||||
|
||||
export function OpenFolderInExplorer(arg1) {
|
||||
return window['go']['main']['App']['OpenFolderInExplorer'](arg1);
|
||||
}
|
||||
|
||||
export function OpenImage(arg1, arg2) {
|
||||
return window['go']['main']['App']['OpenImage'](arg1, arg2);
|
||||
}
|
||||
@@ -62,10 +114,18 @@ export function OpenPDFWindow(arg1, arg2) {
|
||||
return window['go']['main']['App']['OpenPDFWindow'](arg1, arg2);
|
||||
}
|
||||
|
||||
export function OpenURLInBrowser(arg1) {
|
||||
return window['go']['main']['App']['OpenURLInBrowser'](arg1);
|
||||
}
|
||||
|
||||
export function QuitApp() {
|
||||
return window['go']['main']['App']['QuitApp']();
|
||||
}
|
||||
|
||||
export function ReadAuto(arg1) {
|
||||
return window['go']['main']['App']['ReadAuto'](arg1);
|
||||
}
|
||||
|
||||
export function ReadEML(arg1) {
|
||||
return window['go']['main']['App']['ReadEML'](arg1);
|
||||
}
|
||||
@@ -86,6 +146,30 @@ export function SaveConfig(arg1) {
|
||||
return window['go']['main']['App']['SaveConfig'](arg1);
|
||||
}
|
||||
|
||||
export function SaveScreenshot() {
|
||||
return window['go']['main']['App']['SaveScreenshot']();
|
||||
}
|
||||
|
||||
export function SaveScreenshotAs() {
|
||||
return window['go']['main']['App']['SaveScreenshotAs']();
|
||||
}
|
||||
|
||||
export function SetCurrentMailFilePath(arg1) {
|
||||
return window['go']['main']['App']['SetCurrentMailFilePath'](arg1);
|
||||
}
|
||||
|
||||
export function SetUpdateCheckerEnabled(arg1) {
|
||||
return window['go']['main']['App']['SetUpdateCheckerEnabled'](arg1);
|
||||
}
|
||||
|
||||
export function ShowOpenFileDialog() {
|
||||
return window['go']['main']['App']['ShowOpenFileDialog']();
|
||||
}
|
||||
|
||||
export function SubmitBugReport(arg1) {
|
||||
return window['go']['main']['App']['SubmitBugReport'](arg1);
|
||||
}
|
||||
|
||||
export function TakeScreenshot() {
|
||||
return window['go']['main']['App']['TakeScreenshot']();
|
||||
}
|
||||
|
||||
@@ -242,6 +242,44 @@ export namespace internal {
|
||||
|
||||
export namespace main {
|
||||
|
||||
export class BugReportInput {
|
||||
name: string;
|
||||
email: string;
|
||||
description: string;
|
||||
screenshotData: string;
|
||||
localStorageData: string;
|
||||
configData: string;
|
||||
|
||||
static createFrom(source: any = {}) {
|
||||
return new BugReportInput(source);
|
||||
}
|
||||
|
||||
constructor(source: any = {}) {
|
||||
if ('string' === typeof source) source = JSON.parse(source);
|
||||
this.name = source["name"];
|
||||
this.email = source["email"];
|
||||
this.description = source["description"];
|
||||
this.screenshotData = source["screenshotData"];
|
||||
this.localStorageData = source["localStorageData"];
|
||||
this.configData = source["configData"];
|
||||
}
|
||||
}
|
||||
export class BugReportResult {
|
||||
folderPath: string;
|
||||
screenshotPath: string;
|
||||
mailFilePath: string;
|
||||
|
||||
static createFrom(source: any = {}) {
|
||||
return new BugReportResult(source);
|
||||
}
|
||||
|
||||
constructor(source: any = {}) {
|
||||
if ('string' === typeof source) source = JSON.parse(source);
|
||||
this.folderPath = source["folderPath"];
|
||||
this.screenshotPath = source["screenshotPath"];
|
||||
this.mailFilePath = source["mailFilePath"];
|
||||
}
|
||||
}
|
||||
export class ImageViewerData {
|
||||
data: string;
|
||||
filename: string;
|
||||
@@ -270,6 +308,70 @@ export namespace main {
|
||||
this.filename = source["filename"];
|
||||
}
|
||||
}
|
||||
export class ScreenshotResult {
|
||||
data: string;
|
||||
width: number;
|
||||
height: number;
|
||||
filename: string;
|
||||
|
||||
static createFrom(source: any = {}) {
|
||||
return new ScreenshotResult(source);
|
||||
}
|
||||
|
||||
constructor(source: any = {}) {
|
||||
if ('string' === typeof source) source = JSON.parse(source);
|
||||
this.data = source["data"];
|
||||
this.width = source["width"];
|
||||
this.height = source["height"];
|
||||
this.filename = source["filename"];
|
||||
}
|
||||
}
|
||||
export class SubmitBugReportResult {
|
||||
zipPath: string;
|
||||
folderPath: string;
|
||||
|
||||
static createFrom(source: any = {}) {
|
||||
return new SubmitBugReportResult(source);
|
||||
}
|
||||
|
||||
constructor(source: any = {}) {
|
||||
if ('string' === typeof source) source = JSON.parse(source);
|
||||
this.zipPath = source["zipPath"];
|
||||
this.folderPath = source["folderPath"];
|
||||
}
|
||||
}
|
||||
export class UpdateStatus {
|
||||
currentVersion: string;
|
||||
availableVersion: string;
|
||||
updateAvailable: boolean;
|
||||
checking: boolean;
|
||||
downloading: boolean;
|
||||
downloadProgress: number;
|
||||
ready: boolean;
|
||||
installerPath: string;
|
||||
errorMessage: string;
|
||||
releaseNotes?: string;
|
||||
lastCheckTime: string;
|
||||
|
||||
static createFrom(source: any = {}) {
|
||||
return new UpdateStatus(source);
|
||||
}
|
||||
|
||||
constructor(source: any = {}) {
|
||||
if ('string' === typeof source) source = JSON.parse(source);
|
||||
this.currentVersion = source["currentVersion"];
|
||||
this.availableVersion = source["availableVersion"];
|
||||
this.updateAvailable = source["updateAvailable"];
|
||||
this.checking = source["checking"];
|
||||
this.downloading = source["downloading"];
|
||||
this.downloadProgress = source["downloadProgress"];
|
||||
this.ready = source["ready"];
|
||||
this.installerPath = source["installerPath"];
|
||||
this.errorMessage = source["errorMessage"];
|
||||
this.releaseNotes = source["releaseNotes"];
|
||||
this.lastCheckTime = source["lastCheckTime"];
|
||||
}
|
||||
}
|
||||
export class ViewerData {
|
||||
imageData?: ImageViewerData;
|
||||
pdfData?: PDFViewerData;
|
||||
@@ -717,6 +819,10 @@ export namespace utils {
|
||||
SDKDecoderReleaseChannel: string;
|
||||
GUISemver: string;
|
||||
GUIReleaseChannel: string;
|
||||
Language: string;
|
||||
UpdateCheckEnabled: string;
|
||||
UpdatePath: string;
|
||||
UpdateAutoCheck: string;
|
||||
|
||||
static createFrom(source: any = {}) {
|
||||
return new EMLyConfig(source);
|
||||
@@ -728,6 +834,10 @@ export namespace utils {
|
||||
this.SDKDecoderReleaseChannel = source["SDKDecoderReleaseChannel"];
|
||||
this.GUISemver = source["GUISemver"];
|
||||
this.GUIReleaseChannel = source["GUIReleaseChannel"];
|
||||
this.Language = source["Language"];
|
||||
this.UpdateCheckEnabled = source["UpdateCheckEnabled"];
|
||||
this.UpdatePath = source["UpdatePath"];
|
||||
this.UpdateAutoCheck = source["UpdateAutoCheck"];
|
||||
}
|
||||
}
|
||||
export class Config {
|
||||
|
||||
Reference in New Issue
Block a user