mirror of
https://github.com/DeNNiiInc/dbgate.git
synced 2026-04-29 23:53:57 +00:00
perspective - show error, ability to reset filters
This commit is contained in:
@@ -7,13 +7,18 @@
|
|||||||
import debug from 'debug';
|
import debug from 'debug';
|
||||||
import contextMenu from '../utility/contextMenu';
|
import contextMenu from '../utility/contextMenu';
|
||||||
import DataFilterControl from '../datagrid/DataFilterControl.svelte';
|
import DataFilterControl from '../datagrid/DataFilterControl.svelte';
|
||||||
|
import ErrorInfo from '../elements/ErrorInfo.svelte';
|
||||||
|
import FormStyledButton from '../buttons/FormStyledButton.svelte';
|
||||||
|
|
||||||
const dbg = debug('dbgate:PerspectivaTable');
|
const dbg = debug('dbgate:PerspectivaTable');
|
||||||
|
|
||||||
export let root: PerspectiveTreeNode;
|
export let root: PerspectiveTreeNode;
|
||||||
export let loadedCounts;
|
export let loadedCounts;
|
||||||
|
export let setConfig;
|
||||||
|
|
||||||
let dataRows;
|
let dataRows;
|
||||||
let domWrapper;
|
let domWrapper;
|
||||||
|
let errorMessage;
|
||||||
|
|
||||||
async function loadLevelData(node: PerspectiveTreeNode, parentRows: any[], counts) {
|
async function loadLevelData(node: PerspectiveTreeNode, parentRows: any[], counts) {
|
||||||
dbg('load level data', counts);
|
dbg('load level data', counts);
|
||||||
@@ -79,10 +84,15 @@
|
|||||||
// console.log('LOADING', node);
|
// console.log('LOADING', node);
|
||||||
if (!node) return;
|
if (!node) return;
|
||||||
const rows = [];
|
const rows = [];
|
||||||
await loadLevelData(node, rows, counts);
|
try {
|
||||||
dataRows = rows;
|
await loadLevelData(node, rows, counts);
|
||||||
|
dataRows = rows;
|
||||||
dbg('display rows', rows);
|
dbg('display rows', rows);
|
||||||
|
errorMessage = null;
|
||||||
|
} catch (err) {
|
||||||
|
errorMessage = err.message;
|
||||||
|
dataRows = null;
|
||||||
|
}
|
||||||
// console.log('DISPLAY ROWS', rows);
|
// console.log('DISPLAY ROWS', rows);
|
||||||
// const rows = await node.loadLevelData();
|
// const rows = await node.loadLevelData();
|
||||||
// for (const child of node.childNodes) {
|
// for (const child of node.childNodes) {
|
||||||
@@ -168,6 +178,22 @@
|
|||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
{/if}
|
{/if}
|
||||||
|
|
||||||
|
{#if errorMessage}
|
||||||
|
<ErrorInfo message={errorMessage} />
|
||||||
|
|
||||||
|
<FormStyledButton
|
||||||
|
value="Reset filter"
|
||||||
|
on:click={() =>
|
||||||
|
setConfig(
|
||||||
|
cfg => ({
|
||||||
|
...cfg,
|
||||||
|
filters: {},
|
||||||
|
}),
|
||||||
|
true
|
||||||
|
)}
|
||||||
|
/>
|
||||||
|
{/if}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<style>
|
<style>
|
||||||
|
|||||||
@@ -85,7 +85,7 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<svelte:fragment slot="2">
|
<svelte:fragment slot="2">
|
||||||
<PerspectiveTable {root} {loadedCounts} />
|
<PerspectiveTable {root} {loadedCounts} {setConfig} />
|
||||||
</svelte:fragment>
|
</svelte:fragment>
|
||||||
</HorizontalSplitter>
|
</HorizontalSplitter>
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user