-
+
-
+
-
+
-
+
-
+
diff --git a/electron/main/script.js b/electron/main/script.js
index d46d7b3..8c4f044 100644
--- a/electron/main/script.js
+++ b/electron/main/script.js
@@ -27,15 +27,13 @@ function checkBoxes() {
if(testEndings.some(e => pathToLower.endsWith(e))){
//assembly of the json for the main
- const selectedStyles = [checkedCounter];
- var iter = 0;
- checkboxes.forEach(function(checkbox){
- if(checkbox.checked){
- console.log(checkbox.value);
- selectedStyles[iter] = {iter: checkbox.value};
- iter++;
- }
- });
+ var typeCheckbox;
+ if(document.getElementById("docFormat").checked) typeCheckbox = document.getElementById("docFormat").value;
+ if(document.getElementById("docFormatSummary1").checked) typeCheckbox = document.getElementById("docFormatSummary1").value;
+ if(document.getElementById("docFormatSummary2").checked) typeCheckbox = document.getElementById("docFormatSummary2").value;
+ if(document.getElementById("docFormatSummary3").checked) typeCheckbox = document.getElementById("docFormatSummary3").value;
+ if(document.getElementById("docFormatCustom").checked) typeCheckbox = document.getElementById("docFormatCustom").value;
+
document.getElementById("testy").style.visibility = "visible"
document.getElementById("box1").style.backgroundColor = "red";
document.getElementById("box2").style.backgroundColor = "red";
@@ -55,7 +53,7 @@ function checkBoxes() {
},
"document": {
"module":aiType.value,
- "styles": selectedStyles,
+ "type": typeCheckbox,
"outputType": outputType.value
}
};
diff --git a/main.js b/main.js
index fa33871..20ef61c 100644
--- a/main.js
+++ b/main.js
@@ -1,12 +1,12 @@
// Loading required packages
require("./requires.js")
console.log(start);
-
-
+
+
// Initialising map to be used to store the functionality later on for reloadability
mapFunctions = new Map()
-
-
+
+
// Loading the Function Map
var path = `${mainDir}/services/modules`
var folders = fs.readdirSync(path).filter(function (file) {
@@ -20,9 +20,9 @@ folders.forEach(element => {
mapFunctions.set(command.name, command);
}
});
-
-
-
+
+
+
// The startup information for the project, here you can add stuff that might be nice to see when the app starts
mapFunctions.get("Startup_function").function()
console.log("------------------------------------ Status ------------------------------------");
@@ -31,37 +31,37 @@ console.log(platform);
console.log(`The Startup took ${new Date() - start}ms`)
console.log(`${mapFunctions.size} Function modules loaded`);
console.log("--------------------------------------------------------------------------------");
-
-
-
-
-
-
+
+
+
+
+
+
// --------------------------------------------------------- CLI COMMANDS --------------------------------------------------------- //
-
+
const rl = readline.createInterface({
input: process.stdin,
output: process.stdout
});
-
-
+
+
rl.on("line", data =>{
const args = data.trim().split(" ");
const command = args.shift().toLowerCase();
mapFunctions.get("cliCommands").function(command, args)
})
-
-
-
-
-
+
+
+
+
+
// ----------------------------------------------------------- ELECTRON ----------------------------------------------------------- //
-
+
let mainWindow;
-
+
function createWindow() {
mainWindow = new electron.BrowserWindow({
- width: 800,
+ width: 1200,
height: 800,
webPreferences: {
nodeIntegration: false,
@@ -69,21 +69,21 @@ function createWindow() {
preload: `${mainDir}/electron/main/preload.js`
}
});
-
+
mainWindow.loadFile('./electron/main/index.html');
}
-
+
electron.app.whenReady().then(createWindow);
-
-
+
+
// electron.ipcMain.on("extract", (event, args) => {
// mapFunctions.get("extraction-video-to-audio").function(args)
// })
-
+
// setTimeout(() => {
// mainWindow.webContents.send("fuck", "worked uwu")
// }, 5000);
-
+
electron.ipcMain.handle('get-module-names', async () => {
let module_array = {
"ai_modules":[],
@@ -102,8 +102,8 @@ electron.ipcMain.handle('get-module-names', async () => {
// console.log(module_array);
return module_array
});
-
-
+
+
// electron.ipcMain.on("get_modules", async (event, args) => {
// let module_array = {
// "ai_modules":[],
@@ -120,25 +120,35 @@ electron.ipcMain.handle('get-module-names', async () => {
// }
// })
// console.log(module_array);
-
+
// mainWindow.webContents.send("modules", module_array)
// })
-
-
-
+
+
+
electron.ipcMain.on("file_submit", async (event, args) => {
try {
let curstep = 0
- let totalsteps = 3 + args.document.styles.length
-
- if(args.document.styles.length == 0)
- throw new Error("At least one Document Style needed");
-
-
+ let totalsteps = 4
+
+ const TEMPLATE_MAP = {
+ "followup-report": "followup_report.txt",
+ "agenda": "agenda.txt",
+ "result-protocol": "result_protocol.txt",
+ "sprint-planning": "sprint_planning_note.txt",
+ "custom": "custom_document.txt"
+ };
+
+ const templateFile = TEMPLATE_MAP[args.document.type];
+
+ if (!templateFile) {
+ throw new Error("Unknown document type: " + args.document.type);
+ }
+
console.log(args);
let audiopath = ""
let transcriptpath = ""
-
+
console.log("\n\n Running the Video to Audio Extractor");
// This code handles the Video to Audio extraction module call
await mapFunctions.get("module-handler").function(args.video.module, {inputVideoPath: args.video.inputVideoPath, outputType: mapFunctions.get(args.transcription.module).audioformat}).then(resp => {
@@ -150,8 +160,8 @@ electron.ipcMain.on("file_submit", async (event, args) => {
mainWindow.webContents.send("error", err)
return
})
-
-
+
+
console.log("\n\n Running the Audio to Transcription module");
// TODO implement transcription module
// This code handles the Audio to Text transcription module call
@@ -164,8 +174,8 @@ electron.ipcMain.on("file_submit", async (event, args) => {
mainWindow.webContents.send("error", err)
return
})
-
-
+
+
console.log("\n\n Running the Transcription Summarizer module");
// This code summarises the transcript, so that it can be used by an llm
// await mapFunctions.get("summarize-transcription").function('A:\\programing\\@projects\\video2document\\storage\\transcripts\\IMG_2978.json').then(resp => {
@@ -178,24 +188,24 @@ electron.ipcMain.on("file_submit", async (event, args) => {
mainWindow.webContents.send("error", err)
return
})
-
+
console.log("\n\n Running the LLM module");
// TODO implement documentation module
// This code handles the Text to Document processing module call
- for (let i = 0; i < args.document.styles.length; i++) {
- console.log(`\n\n Running the LLM for Document Style ${i+1}`);
-
- await mapFunctions.get("module-handler").function(args.document.module, {inputTranscriptPath: transcriptpath, documentTypePath: "/Users/mikehughes/PROJ/video2document/storage/documentType/meetingReport.json", language: "en"}).then(resp => {
- console.log(resp);
- transcriptpath = resp
- curstep++
- mainWindow.webContents.send("progress", {curstep:curstep, totalsteps:totalsteps})
- }).catch(err => {
- mainWindow.webContents.send("error", err)
- return
- })
- }
-
+
+ console.log(`\n\n Running the LLM for Document Style ${args.document.type}`);
+
+ await mapFunctions.get("module-handler").function(args.document.module, { inputTranscriptPath: transcriptpath, documentTypePath: "./storage/documentType/" + templateFile, language: "en" }).then(resp => {
+ console.log(resp);
+ transcriptpath = resp
+ curstep++
+ mainWindow.webContents.send("progress", { curstep: curstep, totalsteps: totalsteps })
+ }).catch(err => {
+ mainWindow.webContents.send("error", err)
+ return
+ })
+
+
// TODO actually implement this functionality
// Module to get the first few lines for each speaker to send to the frontend
// await mapFunctions.get("speaker-getter-idfk").function(transcriptpath).then(resp => {
@@ -203,7 +213,7 @@ electron.ipcMain.on("file_submit", async (event, args) => {
// transcriptpath = resp
// curstep++
// mainWindow.webContents.send("progress", {curstep:curstep, totalsteps:totalsteps})
-
+
// // {
// // speakerA: {source: "Pfad zur Audio File"},
// // speakerB:.....
@@ -213,15 +223,15 @@ electron.ipcMain.on("file_submit", async (event, args) => {
// mainWindow.webContents.send("error", err)
// return
// })
-
-
+
+
} catch (error) {
console.log(error);
}
})
-
-
-
+
+
+
let q =
{
video: {
@@ -241,8 +251,8 @@ let q =
]
}
}
-
-
+
+
let q1 = {
"ai_modules": [
{name:"abc", displayname:"ABC"},
@@ -252,4 +262,4 @@ let q1 = {
{name:"abc", displayname:"ABC"},
{name:"qeg", displayname:"aqghegahu"}
]
-}
+}
\ No newline at end of file