* clean plate * npm i * log in e2e * global setup login * set license key * Revert "set license key" This reverts commit86d5db2c48. * create datatable test * fix wrong pg_creds * data table + db manager e2e test * DbManagerPage class * small refactor * create resource test + improvements * text db manager in resources * Factor test logic in classes * refactoring * refacto * alter table test * alter table e2e test * set schema in test * nits * fix wrong schema var * Correct setup and parallelization * reducedMotion * tests passing headless ! * bigger timeout * start e2e docker compose * e2e runs on all databases * nit test uid fix * refactp * stash * Better Workspace Storage settings * minio setup * nit * nit * super nit * Permission settings in modal * badge indicator * Fetch alter table metadata much faster * Upgrade duckdb to 1.4.3 * Ducklake tests * Disable transactional DDL for Ducklake (bug on their side) * git ignore env * bigquery tests passes * getJsonEnv * load coldef in parallel * Make Bigquery schema fetching much faster * makeLoadTableMetaDataQuery for entire db in bigquery * refactor getDbSchemas to avoid assignment side effect * fix col def * Better loading state mgmt * snowflake * fix snowflake primary keys * Test CI * fix setTimeout type * remove type node * test e2e ci * Revert "test e2e ci" This reverts commitbf98a755dc. * remove ci * fix snowflake pk query in alternate schemas * nit wait for coldefs * nit snowflake * Snowflake fk fix * UNPROCESSABLE_ENTITY instead of INTERNAL_ERROR * nits * fix alter pk in snowflake * yet other fixes * snowflake tests pass * nits
93 lines
2.2 KiB
Svelte
93 lines
2.2 KiB
Svelte
<script lang="ts">
|
|
import { createEventDispatcher } from 'svelte'
|
|
import { Button, Drawer } from './common'
|
|
import DrawerContent from './common/drawer/DrawerContent.svelte'
|
|
|
|
import AppConnectInner from './AppConnectInner.svelte'
|
|
import DarkModeObserver from './DarkModeObserver.svelte'
|
|
|
|
export let expressOAuthSetup = false
|
|
|
|
let drawer: Drawer
|
|
let resourceType = ''
|
|
let step = 1
|
|
let disabled = false
|
|
let isGoogleSignin = false
|
|
let manual = true
|
|
|
|
let appConnectInner: AppConnectInner | undefined = undefined
|
|
|
|
let rtToLoad: string | undefined = ''
|
|
export async function open(rt?: string) {
|
|
rtToLoad = rt
|
|
drawer.openDrawer?.()
|
|
}
|
|
|
|
$: appConnectInner && onRtToLoadChange(rtToLoad)
|
|
|
|
function onRtToLoadChange(rtToLoad: string | undefined) {
|
|
appConnectInner?.open(rtToLoad)
|
|
}
|
|
|
|
const dispatch = createEventDispatcher()
|
|
|
|
let darkMode: boolean = false
|
|
</script>
|
|
|
|
<DarkModeObserver bind:darkMode />
|
|
|
|
<Drawer
|
|
bind:this={drawer}
|
|
on:close={() => {
|
|
step = 1
|
|
dispatch('close')
|
|
}}
|
|
size="800px"
|
|
>
|
|
<DrawerContent
|
|
title="Add a resource"
|
|
id="add-resource-drawer"
|
|
on:close={drawer.closeDrawer}
|
|
tooltip="Resources represent connections to third party systems. Learn more on how to integrate external APIs."
|
|
documentationLink="https://www.windmill.dev/docs/integrations/integrations_on_windmill"
|
|
>
|
|
<AppConnectInner
|
|
bind:this={appConnectInner}
|
|
bind:step
|
|
bind:resourceType
|
|
bind:isGoogleSignin
|
|
bind:disabled
|
|
bind:manual
|
|
on:close={drawer?.closeDrawer}
|
|
on:refresh
|
|
express={expressOAuthSetup}
|
|
/>
|
|
{#snippet actions()}
|
|
<div class="flex gap-1">
|
|
{#if step > 1}
|
|
<Button variant="default" on:click={appConnectInner?.back ?? (() => {})}>Back</Button>
|
|
{/if}
|
|
{#if isGoogleSignin}
|
|
<button {disabled} on:click={appConnectInner?.next}>
|
|
<img
|
|
class="h-10 w-auto object-contain"
|
|
src={darkMode ? '/google_signin_dark.png' : '/google_signin_light.png'}
|
|
alt="Google sign-in"
|
|
/>
|
|
</button>
|
|
{:else}
|
|
<Button variant="accent" {disabled} on:click={appConnectInner?.next ?? (() => {})}>
|
|
{#if step == 2 && !manual}
|
|
Connect
|
|
{:else if step == 1}
|
|
Next
|
|
{:else}
|
|
Save
|
|
{/if}
|
|
</Button>
|
|
{/if}
|
|
</div>
|
|
{/snippet}
|
|
</DrawerContent>
|
|
</Drawer>
|