Files
windmill/frontend/src/lib/components/OauthExtraParams.svelte
T
Ruben Fiszel 01277f4d3b feat: add custom oauth support (#2336)
* custom oauth

* all

* revert ee changes

* fix frontend
2023-09-26 11:56:02 +02:00

51 lines
1.2 KiB
Svelte

<script lang="ts">
import { faMinus, faPlus } from '@fortawesome/free-solid-svg-icons'
import Icon from 'svelte-awesome'
import { Button } from './common'
export let extra_params: Record<string, string> = {}
let extra_params_vec: [string, string][] = Object.entries(extra_params)
function sync() {
extra_params = Object.fromEntries(extra_params_vec)
}
</script>
{#each extra_params_vec as o}
<div class="flex flex-row max-w-md mb-2">
<input type="text" on:keyup={sync} bind:value={o[0]} />
<input type="text" on:keyup={sync} bind:value={o[1]} />
<Button
variant="border"
color="red"
size="xs"
btnClasses="mx-6"
on:click={() => {
extra_params_vec = extra_params_vec.filter((e) => e[0] != o[0])
sync()
}}
>
<Icon data={faMinus} />
</Button>
</div>
{/each}
<div class="flex items-center mt-1">
<Button
variant="border"
color="blue"
hover="yo"
size="sm"
endIcon={{ icon: faPlus }}
on:click={() => {
extra_params_vec = extra_params_vec.concat([['key', 'value']])
sync()
}}
>
Add item
</Button>
<span class="ml-2 text-sm text-tertiary">
({(extra_params_vec ?? []).length} item{(extra_params_vec ?? []).length > 1 ? 's' : ''})
</span>
</div>