не работает связка рендеринг процесса с главным файлом electron js
Есть главный код:
const { app, BrowserWindow, ipcMain } = require('electron');
const path = require('path');
const sqlite3 = require('sqlite3').verbose();
let db;
function createMainWindow() {
const mainWindow = new BrowserWindow({
title: 'x',
width: 1280,
height: 720,
icon: `${__dirname}/assets/icon_logo.png`,
resizable: false,
titleBarStyle: 'hidden',
titleBarOverlay: {
color: '#1D2229',
symbolColor: '#EEF5FF'
},
webPreferences: {
nodeIntegration: true
}
});
db = new sqlite3.Database('passwords.db');
db.run('CREATE TABLE IF NOT EXISTS passwords (password TEXT)');
mainWindow.loadFile(path.join(__dirname, './renderer/x.html'));
ipcMain.on('save-password', (event, password) => {
const stmt = db.prepare('INSERT INTO passwords (password) VALUES (?)');
stmt.run(password);
stmt.finalize();
event.reply('password-saved', true);
});
}
app.whenReady().then(createMainWindow);
app.on('before-quit', () => {
if (db) {
db.close((err) => {
if (err) {
console.error('Error closing database:', err.message);
} else {
console.log('Database closed');
}
});
}
});
app.on('window-all-closed', () => {
if (process.platform !== 'darwin') app.quit();
});
и рендеринг процесс:
document.getElementById('set-continue').addEventListener('click', function() {
var password = document.getElementById('set-password').value;
var repeatPassword = document.getElementById('repeat-password').value;
var repeatPasswordError = document.getElementById('repeat-password-error');
if (password !== repeatPassword) {
repeatPasswordError.style.display = 'block';
repeatPasswordError.textContent = "Enter the same password!";
return;
}
var hasDigit = /[0-9]/.test(password);
var hasLowerCase = /[a-z]/.test(password);
var hasUpperCase = /[A-Z]/.test(password);
var hasSpecialChar = /[!@#$%^&*]/.test(password);
if (!hasDigit || !hasLowerCase || !hasUpperCase || !hasSpecialChar) {
var messageElement = document.getElementById('password-message');
messageElement.style.display = 'block';
setTimeout(function() {
messageElement.style.display = 'none';
}, 7500);
return;
}
const ipcRenderer = require('electron').ipcRenderer;
ipcRenderer.send('save-password', password);
window.location.href = 'y.html';
});
по логике при нажатии на кнопку должен отправляться запрос о сохранении пароля в бд и переход на др страницу, но ничего не происходит, как так?