Files
DeviceManager/src/lib/serial/TauriSerialDialog.svelte
Thea Schöbl b8b903c5e1 refactor: update to Svelte 5 preview
feat: add charrecorder
feat: dynamic os layouts for CC1
2024-08-01 00:28:38 +02:00

31 lines
641 B
Svelte

<script lang="ts">
let {
ports,
onconfirm,
}: {
ports: SerialPort[];
onconfirm: (port: SerialPort | undefined) => void;
} = $props();
let selected = $state(ports[0]?.getInfo().name);
</script>
<dialog>
{#each ports as port}
{@const info = port.getInfo()}
<label
>{info.product}<input
type="radio"
name="port"
value={info.name}
bind:group={selected}
/></label
>
{/each}
<button onclick={() => onconfirm(undefined)}>Cancel</button>
<button
onclick={() =>
onconfirm(ports.find((it) => it.getInfo().name === selected))}>Ok</button
>
</dialog>