diff --git a/src/lib/components/FieldInline.svelte b/src/lib/components/FieldInline.svelte index 235a1a7b..01bfdf6a 100644 --- a/src/lib/components/FieldInline.svelte +++ b/src/lib/components/FieldInline.svelte @@ -9,16 +9,22 @@ const {...props}: Props = $props() -
- -
- {@render props.input?.()} -
-

- {#if props.info} - {@render props.info?.()} +

+
+ {#if props.label} + {/if} -

+
+ {#if props.input} + {@render props.input()} + {/if} +
+
+ {#if props.info} +

+ {@render props.info()} +

+ {/if}
diff --git a/src/lib/components/InputList.svelte b/src/lib/components/InputList.svelte index 1483d22e..5aba26fd 100644 --- a/src/lib/components/InputList.svelte +++ b/src/lib/components/InputList.svelte @@ -13,7 +13,12 @@ placeholder?: string } - let {value = $bindable(), addLabel, placeholder = "Enter text..."}: Props = $props() + let { + value = $bindable(), + addLabel, + placeholder = "Enter text...", + allowAdd = true, + }: Props & {allowAdd?: boolean} = $props() let draggedIndex: number | null = $state(null) const onChange = (newValue: string[]) => { @@ -72,12 +77,14 @@
{/each} - + {#if allowAdd} + + {/if} diff --git a/src/routes/settings/alerts/+page.svelte b/src/routes/settings/alerts/+page.svelte index 49934829..55bc2a7d 100644 --- a/src/routes/settings/alerts/+page.svelte +++ b/src/routes/settings/alerts/+page.svelte @@ -5,6 +5,7 @@ import {Badge} from "@capawesome/capacitor-badge" import Bell from "@assets/icons/bell.svg?dataurl" import {preventDefault} from "@lib/html" + import FieldInline from "@lib/components/FieldInline.svelte" import Spinner from "@lib/components/Spinner.svelte" import Icon from "@lib/components/Icon.svelte" import Button from "@lib/components/Button.svelte" @@ -63,40 +64,64 @@ {:then { isSupported }} {#if isSupported} -
-

Show badge for unread alerts

- -
+ + {#snippet label()} +

Show badge for unread alerts

+ {/snippet} + {#snippet input()} + + {/snippet} +
{/if} {/await} {#if !Capacitor.isNativePlatform()} -
-

Play sound for new activity

- -
+ + {#snippet label()} +

Play sound for new activity

+ {/snippet} + {#snippet input()} + + {/snippet} +
{/if} -
-

Enable push notifications

- -
+ + {#snippet label()} +

Enable push notifications

+ {/snippet} + {#snippet input()} + + {/snippet} +
Alert Types -
-

Notify me about new activity

- -
-
-

Always notify me when mentioned

- -
-
-

Notify me about new messages

- -
+ + {#snippet label()} +

Notify me about new activity

+ {/snippet} + {#snippet input()} + + {/snippet} +
+ + {#snippet label()} +

Always notify me when mentioned

+ {/snippet} + {#snippet input()} + + {/snippet} +
+ + {#snippet label()} +

Notify me about new messages

+ {/snippet} + {#snippet input()} + + {/snippet} +
diff --git a/src/routes/settings/content/+page.svelte b/src/routes/settings/content/+page.svelte index 3c86cd03..fbae0cb4 100644 --- a/src/routes/settings/content/+page.svelte +++ b/src/routes/settings/content/+page.svelte @@ -11,6 +11,7 @@ import {Router} from "@welshman/router" import {userMuteList, tagPubkey, publishThunk, userBlossomServerList} from "@welshman/app" import NotesMinimalistic from "@assets/icons/notes-minimalistic.svg?dataurl" + import AddCircle from "@assets/icons/add-circle.svg?dataurl" import {preventDefault} from "@lib/html" import Field from "@lib/components/Field.svelte" import FieldInline from "@lib/components/FieldInline.svelte" @@ -28,6 +29,10 @@ blossomServers = getTagValues("server", getListTags($userBlossomServerList)) } + const addServer = () => { + blossomServers = [...blossomServers, ""] + } + const onsubmit = preventDefault(async () => { await publishSettings($state.snapshot(settings)) @@ -104,7 +109,7 @@ {/snippet} {#snippet input()}
Editor Settings - + {#snippet label()}

Send Delay

{/snippet} {#snippet input()} {/snippet} -
+ {#snippet label()}

Media Server

{/snippet} + {#snippet secondary()} + + {/snippet} {#snippet input()} - - {#snippet addLabel()} - Add Server - {/snippet} - + {/snippet} {#snippet info()}

Choose a media server type and url for files you upload to {PLATFORM_NAME}.

diff --git a/src/routes/settings/privacy/+page.svelte b/src/routes/settings/privacy/+page.svelte index 4ab74fa6..4b864bb8 100644 --- a/src/routes/settings/privacy/+page.svelte +++ b/src/routes/settings/privacy/+page.svelte @@ -1,6 +1,7 @@