From b1d15531e4fc2bcf10c02b58f6b8a7244bf8abef Mon Sep 17 00:00:00 2001 From: amhsirak Date: Wed, 22 Jan 2025 18:58:49 +0530 Subject: [PATCH 01/16] feat: set alter true while db sync --- server/src/storage/db.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/server/src/storage/db.ts b/server/src/storage/db.ts index 2f0fcde4..81c9c039 100644 --- a/server/src/storage/db.ts +++ b/server/src/storage/db.ts @@ -29,7 +29,7 @@ export const connectDB = async () => { export const syncDB = async () => { try { //setupAssociations(); - await sequelize.sync({ force: false }); // force: true will drop and recreate tables on every run + await sequelize.sync({ force: false, alter: true }); // force: true will drop and recreate tables on every run console.log('Database synced successfully!'); } catch (error) { console.error('Failed to sync database:', error); From 75d65578cd54a9ab4afd637bf8dc2e537e32ed30 Mon Sep 17 00:00:00 2001 From: amhsirak Date: Wed, 22 Jan 2025 19:00:15 +0530 Subject: [PATCH 02/16] feat: check node env --- server/src/storage/db.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/server/src/storage/db.ts b/server/src/storage/db.ts index 81c9c039..b6854c55 100644 --- a/server/src/storage/db.ts +++ b/server/src/storage/db.ts @@ -29,6 +29,7 @@ export const connectDB = async () => { export const syncDB = async () => { try { //setupAssociations(); + const isDevelopment = process.env.NODE_ENV === 'development'; await sequelize.sync({ force: false, alter: true }); // force: true will drop and recreate tables on every run console.log('Database synced successfully!'); } catch (error) { From 76ab46fc879e9486e053362e514b9e9a92d88a64 Mon Sep 17 00:00:00 2001 From: amhsirak Date: Wed, 22 Jan 2025 19:01:00 +0530 Subject: [PATCH 03/16] chore: re-arrange --- server/src/storage/db.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/server/src/storage/db.ts b/server/src/storage/db.ts index b6854c55..40968df8 100644 --- a/server/src/storage/db.ts +++ b/server/src/storage/db.ts @@ -30,7 +30,8 @@ export const syncDB = async () => { try { //setupAssociations(); const isDevelopment = process.env.NODE_ENV === 'development'; - await sequelize.sync({ force: false, alter: true }); // force: true will drop and recreate tables on every run + // force: true will drop and recreate tables on every run + await sequelize.sync({ force: false, alter: true }); console.log('Database synced successfully!'); } catch (error) { console.error('Failed to sync database:', error); From e58197b91b477163e3b3414a0c239e483596e88e Mon Sep 17 00:00:00 2001 From: amhsirak Date: Wed, 22 Jan 2025 19:01:16 +0530 Subject: [PATCH 04/16] chore: format --- server/src/storage/db.ts | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/server/src/storage/db.ts b/server/src/storage/db.ts index 40968df8..bc31439c 100644 --- a/server/src/storage/db.ts +++ b/server/src/storage/db.ts @@ -31,7 +31,10 @@ export const syncDB = async () => { //setupAssociations(); const isDevelopment = process.env.NODE_ENV === 'development'; // force: true will drop and recreate tables on every run - await sequelize.sync({ force: false, alter: true }); + await sequelize.sync({ + force: false, + alter: true + }); console.log('Database synced successfully!'); } catch (error) { console.error('Failed to sync database:', error); From aaf13b47004529bfab5ba902e21d2392a0395950 Mon Sep 17 00:00:00 2001 From: amhsirak Date: Wed, 22 Jan 2025 19:01:53 +0530 Subject: [PATCH 05/16] feat: alter:true only in development mode --- server/src/storage/db.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/server/src/storage/db.ts b/server/src/storage/db.ts index bc31439c..0aa0dad5 100644 --- a/server/src/storage/db.ts +++ b/server/src/storage/db.ts @@ -33,7 +33,7 @@ export const syncDB = async () => { // force: true will drop and recreate tables on every run await sequelize.sync({ force: false, - alter: true + alter: isDevelopment }); console.log('Database synced successfully!'); } catch (error) { From a4c072b7d56b2f920ef32eebd5dd9799dd09aad9 Mon Sep 17 00:00:00 2001 From: amhsirak Date: Wed, 22 Jan 2025 19:02:22 +0530 Subject: [PATCH 06/16] chore: notes on db sync in dev mode --- server/src/storage/db.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/server/src/storage/db.ts b/server/src/storage/db.ts index 0aa0dad5..cdd84655 100644 --- a/server/src/storage/db.ts +++ b/server/src/storage/db.ts @@ -31,6 +31,7 @@ export const syncDB = async () => { //setupAssociations(); const isDevelopment = process.env.NODE_ENV === 'development'; // force: true will drop and recreate tables on every run + // Use `alter: true` only in development mode await sequelize.sync({ force: false, alter: isDevelopment From 28568957dc05b30f9b11daeb1107d0e68955ebcd Mon Sep 17 00:00:00 2001 From: amhsirak Date: Wed, 22 Jan 2025 19:05:41 +0530 Subject: [PATCH 07/16] fix: format --- src/components/robot/RecordingsTable.tsx | 27 ++++++++++++++++++++++-- 1 file changed, 25 insertions(+), 2 deletions(-) diff --git a/src/components/robot/RecordingsTable.tsx b/src/components/robot/RecordingsTable.tsx index e7409b89..81e44136 100644 --- a/src/components/robot/RecordingsTable.tsx +++ b/src/components/robot/RecordingsTable.tsx @@ -11,8 +11,31 @@ import TableRow from '@mui/material/TableRow'; import { useEffect } from "react"; import { WorkflowFile } from "maxun-core"; import SearchIcon from '@mui/icons-material/Search'; -import { IconButton, Button, Box, Typography, TextField, MenuItem, Menu, ListItemIcon, ListItemText, CircularProgress, RadioGroup, FormControlLabel, Radio } from "@mui/material"; -import { Schedule, DeleteForever, Edit, PlayCircle, Settings, Power, ContentCopy, MoreHoriz } from "@mui/icons-material"; +import { + IconButton, + Button, + Box, + Typography, + TextField, + MenuItem, + Menu, + ListItemIcon, + ListItemText, + CircularProgress, + RadioGroup, + FormControlLabel, + Radio +} from "@mui/material"; +import { + Schedule, + DeleteForever, + Edit, + PlayCircle, + Settings, + Power, + ContentCopy, + MoreHoriz +} from "@mui/icons-material"; import { useGlobalInfoStore } from "../../context/globalInfo"; import { checkRunsForRecording, deleteRecordingFromStorage, getStoredRecordings } from "../../api/storage"; import { Add } from "@mui/icons-material"; From 57860f17a87f60fd5fc36108f878cacbffd9376e Mon Sep 17 00:00:00 2001 From: amhsirak Date: Wed, 22 Jan 2025 19:07:20 +0530 Subject: [PATCH 08/16] fix: missing Checkbox import --- src/components/robot/RecordingsTable.tsx | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/components/robot/RecordingsTable.tsx b/src/components/robot/RecordingsTable.tsx index 81e44136..bcfaaad4 100644 --- a/src/components/robot/RecordingsTable.tsx +++ b/src/components/robot/RecordingsTable.tsx @@ -24,7 +24,8 @@ import { CircularProgress, RadioGroup, FormControlLabel, - Radio + Radio, + Checkbox, } from "@mui/material"; import { Schedule, From d3f9829643650d7daf918b335e712570244de29f Mon Sep 17 00:00:00 2001 From: amhsirak Date: Wed, 22 Jan 2025 19:08:51 +0530 Subject: [PATCH 09/16] feat: use checkbox instead of radio group --- src/components/robot/RecordingsTable.tsx | 25 +++++++++++++----------- 1 file changed, 14 insertions(+), 11 deletions(-) diff --git a/src/components/robot/RecordingsTable.tsx b/src/components/robot/RecordingsTable.tsx index bcfaaad4..7b5f7c84 100644 --- a/src/components/robot/RecordingsTable.tsx +++ b/src/components/robot/RecordingsTable.tsx @@ -346,17 +346,20 @@ export const RecordingsTable = ({ handleEditRecording, handleRunRecording, handl style={{ marginBottom: '20px', marginTop: '20px' }} /> - {t('recordingtable.modal.login_title')} - setIsLogin(e.target.value === 'yes')} - style={{ marginBottom: '20px' }} - > - } label="Yes" /> - } label="No" /> - + + {t('recordingtable.modal.login_title')} + + setIsLogin(e.target.checked)} + color="primary" + /> + } + label={t('recordingtable.modal.login_title')} + style={{ marginBottom: '20px' }} +/>;