saving diagrams

This commit is contained in:
Jan Prochazka
2022-01-16 18:40:10 +01:00
parent 337bccb488
commit 5752eaa2b4
3 changed files with 18 additions and 8 deletions

View File

@@ -86,8 +86,9 @@ module.exports = {
const dir = resolveArchiveFolder(folder.substring('archive:'.length)); const dir = resolveArchiveFolder(folder.substring('archive:'.length));
await fs.writeFile(path.join(dir, file), serialize(format, data)); await fs.writeFile(path.join(dir, file), serialize(format, data));
socket.emitChanged(`archive-files-changed-${folder.substring('archive:'.length)}`); socket.emitChanged(`archive-files-changed-${folder.substring('archive:'.length)}`);
return true;
} else { } else {
if (!hasPermission(`files/${folder}/write`)) return; if (!hasPermission(`files/${folder}/write`)) return false;
const dir = path.join(filesdir(), folder); const dir = path.join(filesdir(), folder);
if (!(await fs.exists(dir))) { if (!(await fs.exists(dir))) {
await fs.mkdir(dir); await fs.mkdir(dir);
@@ -98,6 +99,7 @@ module.exports = {
if (folder == 'shell') { if (folder == 'shell') {
scheduler.reload(); scheduler.reload();
} }
return true;
} }
}, },

View File

@@ -55,6 +55,14 @@
currentConnection: true, currentConnection: true,
}; };
const diagrams: FileTypeHandler = {
icon: 'img diagram',
format: 'json',
tabComponent: 'DiagramTab',
folder: 'diagrams',
currentConnection: true,
};
const HANDLERS = { const HANDLERS = {
sql, sql,
shell, shell,
@@ -62,6 +70,7 @@
charts, charts,
query, query,
sqlite, sqlite,
diagrams,
}; };
export const extractKey = data => data.file; export const extractKey = data => data.file;

View File

@@ -1,10 +1,8 @@
<script lang="ts"> <script lang="ts">
import _ from 'lodash'; import _ from 'lodash';
import AppObjectList from '../appobj/AppObjectList.svelte'; import AppObjectList from '../appobj/AppObjectList.svelte';
import * as savedFileAppObject from '../appobj/SavedFileAppObject.svelte'; import * as savedFileAppObject from '../appobj/SavedFileAppObject.svelte';
import { useFiles } from '../utility/metadataLoaders'; import { useFiles } from '../utility/metadataLoaders';
import WidgetsInnerContainer from './WidgetsInnerContainer.svelte'; import WidgetsInnerContainer from './WidgetsInnerContainer.svelte';
const sqlFiles = useFiles({ folder: 'sql' }); const sqlFiles = useFiles({ folder: 'sql' });
@@ -13,6 +11,7 @@ import { useFiles } from '../utility/metadataLoaders';
const chartFiles = useFiles({ folder: 'charts' }); const chartFiles = useFiles({ folder: 'charts' });
const queryFiles = useFiles({ folder: 'query' }); const queryFiles = useFiles({ folder: 'query' });
const sqliteFiles = useFiles({ folder: 'sqlite' }); const sqliteFiles = useFiles({ folder: 'sqlite' });
const diagramFiles = useFiles({ folder: 'diagrams' });
$: files = [ $: files = [
...($sqlFiles || []), ...($sqlFiles || []),
@@ -21,8 +20,8 @@ import { useFiles } from '../utility/metadataLoaders';
...($chartFiles || []), ...($chartFiles || []),
...($queryFiles || []), ...($queryFiles || []),
...($sqliteFiles || []), ...($sqliteFiles || []),
...($diagramFiles || []),
]; ];
</script> </script>
<WidgetsInnerContainer> <WidgetsInnerContainer>