mirror of
https://github.com/dream-pep/koring-launcher.git
synced 2026-09-12 05:45:18 +08:00
Introduce crash monitoring and an OOBE onboarding flow. Adds a crash logger (koring-crash.log), crash-monitor handler/window, preload-crash bridge, crash UI (crash.html, src/crash.tsx, pages/crash) and a debug page. Main process now sets up crash listeners, startup checks (first-launch, .minecraft), and a config reset/factory-reset that removes Koring.yml, koring-auth.json and background cache and can relaunch the app. Exposes config preloading to renderer, adds OOBE pages/layout, confirm dialog store/UI, trims Silk renderer settings, bumps version to 1.0.1 and adds motion dependency, and registers crash.html in Vite. Various related type and config updates included.
78 lines
2.8 KiB
JavaScript
78 lines
2.8 KiB
JavaScript
"use strict";
|
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
if (k2 === undefined) k2 = k;
|
|
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
}
|
|
Object.defineProperty(o, k2, desc);
|
|
}) : (function(o, m, k, k2) {
|
|
if (k2 === undefined) k2 = k;
|
|
o[k2] = m[k];
|
|
}));
|
|
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
}) : function(o, v) {
|
|
o["default"] = v;
|
|
});
|
|
var __importStar = (this && this.__importStar) || (function () {
|
|
var ownKeys = function(o) {
|
|
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
var ar = [];
|
|
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
return ar;
|
|
};
|
|
return ownKeys(o);
|
|
};
|
|
return function (mod) {
|
|
if (mod && mod.__esModule) return mod;
|
|
var result = {};
|
|
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
__setModuleDefault(result, mod);
|
|
return result;
|
|
};
|
|
})();
|
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
};
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
exports.registerConfigHandlers = registerConfigHandlers;
|
|
const electron_1 = __importDefault(require("electron"));
|
|
const { ipcMain, app } = electron_1.default;
|
|
const fs = __importStar(require("fs"));
|
|
const config_1 = require("../config");
|
|
function registerConfigHandlers() {
|
|
ipcMain.handle('config:get', () => {
|
|
try {
|
|
const config = (0, config_1.loadConfig)();
|
|
return { success: true, data: config, error: null };
|
|
}
|
|
catch (e) {
|
|
return { success: false, data: null, error: String(e) };
|
|
}
|
|
});
|
|
ipcMain.handle('config:save', (_event, config) => {
|
|
try {
|
|
(0, config_1.saveConfig)(config);
|
|
return { success: true, data: null, error: null };
|
|
}
|
|
catch (e) {
|
|
return { success: false, data: null, error: String(e) };
|
|
}
|
|
});
|
|
ipcMain.handle('config:reset', () => {
|
|
try {
|
|
const filePath = (0, config_1.configPath)();
|
|
if (fs.existsSync(filePath)) {
|
|
fs.unlinkSync(filePath);
|
|
}
|
|
app.relaunch();
|
|
app.exit(0);
|
|
return { success: true, data: null, error: null };
|
|
}
|
|
catch (e) {
|
|
return { success: false, data: null, error: String(e) };
|
|
}
|
|
});
|
|
}
|