show cloud content

This commit is contained in:
SPRINX0\prochazka
2025-05-21 17:09:16 +02:00
parent b553a81d47
commit 590a4ae476
9 changed files with 96 additions and 10 deletions

View File

@@ -0,0 +1,52 @@
<script lang="ts" context="module">
import AppObjectCore from './AppObjectCore.svelte';
export const extractKey = data => data.path;
export const createMatcher =
filter =>
({ title, description }) =>
filterName(filter, title, description);
</script>
<script lang="ts">
import { apiCall } from '../utility/api';
import newQuery from '../query/newQuery';
import { filterName } from 'dbgate-tools';
export let data;
async function handleOpenSqlFile() {
const fileData = await apiCall('cloud/public-file-data', { path: data.path });
newQuery({
initialData: fileData.text,
});
}
function createMenu() {
return [{ text: 'Open', onClick: handleOpenSqlFile }];
}
</script>
<AppObjectCore
{...$$restProps}
{data}
icon={'img sql-file'}
title={data.title}
menu={createMenu}
on:click={handleOpenSqlFile}
>
{#if data.description}
<div class="info">
{data.description}
</div>
{/if}
</AppObjectCore>
<style>
.info {
margin-left: 30px;
margin-right: 5px;
color: var(--theme-font-3);
white-space: nowrap;
}
</style>