Files
windmill/frontend/src/lib/components/ResourceEditorDrawer.svelte
T
Ruben Fiszel 8166330fc5 internal fix to improve exportability of code in react-sdk (#3978)
* all

* all

* all

* all

* fix

* remove vite config

* remove uncessary app.css

* all

* all

* all

* all

* all
2024-06-26 01:31:24 +02:00

57 lines
1.3 KiB
Svelte

<script lang="ts">
import ResourceEditor from './ResourceEditor.svelte'
import { Button, Drawer } from './common'
import DrawerContent from './common/drawer/DrawerContent.svelte'
import { Save } from 'lucide-svelte'
let drawer: Drawer
let canSave = true
let resource_type: string | undefined = undefined
let resourceEditor: ResourceEditor | undefined = undefined
let path: string | undefined = undefined
let newResource = false
export async function initEdit(p: string): Promise<void> {
resource_type = undefined
newResource = false
path = p
drawer.openDrawer?.()
}
export async function initNew(resourceType: string): Promise<void> {
newResource = true
path = undefined
resource_type = resourceType
drawer.openDrawer?.()
}
</script>
<Drawer bind:this={drawer} size="800px">
<DrawerContent title={path ? 'Edit ' + path : 'Add a resource'} on:close={drawer.closeDrawer}>
<ResourceEditor
{newResource}
{path}
{resource_type}
on:refresh
bind:this={resourceEditor}
bind:canSave
/>
<svelte:fragment slot="actions">
<Button
startIcon={{ icon: Save }}
on:click={() => {
resourceEditor?.editResource()
drawer.closeDrawer()
}}
disabled={!canSave}
>
Save
</Button>
</svelte:fragment>
</DrawerContent>
</Drawer>