Enhance database export functionality and update CSS styles

This commit is contained in:
2026-03-13 21:57:43 +01:00
parent d5bfefefd1
commit f5f1b76bfb
2 changed files with 35 additions and 3 deletions

View File

@@ -1443,11 +1443,16 @@ export default function App() {
const handleExportDatabase = useCallback(async () => {
setDbExportStatus(null);
const destinationPath = await save({
const selectedPath = await save({
defaultPath: buildDatabaseExportFilename(),
filters: [{ name: "SQLite Database", extensions: ["db", "sqlite"] }]
});
if (!destinationPath) return;
if (!selectedPath) return;
const destinationPath =
selectedPath.endsWith(".db") || selectedPath.endsWith(".sqlite")
? selectedPath
: `${selectedPath}.db`;
setDbExporting(true);
let snapshotPath: string | null = null;

View File

@@ -1061,6 +1061,8 @@ body:not([data-theme="light"]) .markdown-preview {
inset: 0;
display: grid;
place-items: center;
padding: 16px;
overflow: auto;
z-index: 30;
}
@@ -1073,7 +1075,8 @@ body:not([data-theme="light"]) .markdown-preview {
.settings-panel {
position: relative;
z-index: 1;
width: min(420px, 92vw);
width: min(420px, calc(100vw - 32px));
max-height: calc(100vh - 32px);
padding: 20px;
border-radius: 16px;
background: var(--bg-elevated);
@@ -1082,6 +1085,7 @@ body:not([data-theme="light"]) .markdown-preview {
display: flex;
flex-direction: column;
gap: 16px;
overflow: hidden;
}
.settings-panel__header {
@@ -1094,6 +1098,16 @@ body:not([data-theme="light"]) .markdown-preview {
font-size: 1.1rem;
}
.settings-panel__body {
display: flex;
flex-direction: column;
gap: 16px;
min-height: 0;
overflow-y: auto;
padding-right: 4px;
margin-right: -4px;
}
.settings-panel__section {
display: flex;
flex-direction: column;
@@ -1160,6 +1174,19 @@ body:not([data-theme="light"]) .markdown-preview {
color: var(--muted);
}
.settings-panel__status {
font-size: 0.8rem;
word-break: break-word;
}
.settings-panel__status--success {
color: var(--ink);
}
.settings-panel__status--error {
color: #d36b6b;
}
body[data-theme="light"] .editor__textarea-wrap:focus-within {
border-color: var(--accent-strong);
}