diff --git a/src/components/Dialog.svelte b/src/components/Dialog.svelte index e27beb8..711b79f 100644 --- a/src/components/Dialog.svelte +++ b/src/components/Dialog.svelte @@ -63,31 +63,6 @@ width: 100%; padding: var(--spacing-md); - > :global(.title) { - position: fixed; - display: flex; - width: calc(100% + 2 * var(--spacing-md)); - margin: calc(var(--spacing-md) * -1); - padding: var(--spacing-md); - background: color-mix(in oklab, black 50%, var(--accent)); - z-index: 99999; - - > :global(.close-button) { - position: absolute; - top: var(--spacing-md); - right: calc( - var(--spacing-md) * 2 + 1.5rem - ); - } - - :global(& + *) { - margin-top: calc( - 1.5rem + - var(--spacing-md) * 3 - ); - } - } - > :global(*:not(:last-child)) { margin-bottom: var(--spacing-sm); } diff --git a/src/components/FoldersListSidebar.svelte b/src/components/FoldersListSidebar.svelte index f383e2c..c4e381f 100644 --- a/src/components/FoldersListSidebar.svelte +++ b/src/components/FoldersListSidebar.svelte @@ -32,7 +32,7 @@ bind:open={isAddingFolder} onClose={newFolderDialogClosed} > -
+

Create Folder

Please enter a name for the new folder:

@@ -63,7 +63,7 @@
{/if} {/each} - isAddingFolder = true} text="Add Folder" /> + isAddingFolder = true} text="Add Folder" />
diff --git a/src/components/LoginWithNostr.svelte b/src/components/LoginWithNostr.svelte index 9a90e2d..250fa1d 100644 --- a/src/components/LoginWithNostr.svelte +++ b/src/components/LoginWithNostr.svelte @@ -1,5 +1,5 @@ diff --git a/src/components/MailboxFolderItems.svelte b/src/components/MailboxFolderItems.svelte index 70ea2c9..16f3e1c 100644 --- a/src/components/MailboxFolderItems.svelte +++ b/src/components/MailboxFolderItems.svelte @@ -7,12 +7,12 @@ import Select from './Select.svelte'; import type { Letter } from '$lib/letter'; import { slide } from 'svelte/transition'; - import IconButton from './IconButton.svelte'; let { letters, foldersList = $bindable<{ id: string; name: string; icon: string }[]>(), - folder = $bindable<{ id: string; name: string; icon: string }>() + folder = $bindable<{ id: string; name: string; icon: string }>(), + moveFolderDialogOpen = $bindable() } = $props(); function formatRange(start, end) { @@ -83,7 +83,6 @@ }); let selectedLetters = $state([]); - let moveFolderDialogOpen = $state(false); let moveFolderName = $state(''); function clickedLetter(letter: Letter) { @@ -125,7 +124,7 @@ {#if letter.stamps}
- + {letter.stamps} sats
{/if} @@ -140,10 +139,10 @@ {/if}
- + {getReadableDate(letter.date)}   - + {getReadableTime(letter.date)}
{letter.preview}
@@ -156,7 +155,7 @@ -
+

Move Letters to Folder

Select a folder to move the selected letters to:

@@ -181,7 +180,7 @@
{#if letter.stamps}
- + {letter.stamps} sats
{/if} @@ -201,14 +200,6 @@
-

- {folder.name} -

- -
- moveFolderDialogOpen = true} text="Move Letters" /> -
-
{#if $groupByStamps} {#each groupedInbox as [range, letters]} @@ -317,12 +308,5 @@ } } } - - .actions { - display: flex; - align-items: center; - gap: var(--spacing-sm); - margin-bottom: var(--spacing-sm); - } } diff --git a/src/components/Notification.svelte b/src/components/Notification.svelte index f28680d..231726e 100644 --- a/src/components/Notification.svelte +++ b/src/components/Notification.svelte @@ -33,6 +33,6 @@
{@render children?.()}
\ No newline at end of file diff --git a/src/lib/base.css b/src/lib/base.css index b81139f..5a182c3 100644 --- a/src/lib/base.css +++ b/src/lib/base.css @@ -49,16 +49,18 @@ --glass-border: color-mix(in srgb, white 12%, transparent); --glass-shadow: rgb(0 0 0 / 0.1); --glass-glow: oklch(67% 0.2 var(--base-hue) / 0.15); - --depth-shadow: 0 8px 32px -8px rgb(0 0 0 / 0.3); + --depth-shadow: 0 10px 30px -10px hsl(var(--base-hue) 30% 5% / 0.3), + 0 4px 6px -4px hsl(var(--base-hue) 30% 5% / 0.2); --noise-filter: url("data:image/svg+xml,%3Csvg width='1000' height='1000' viewBox='0 0 1000 1000' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='4' stitchTiles='stitch' seed='2' result='noise'/%3E%3CfeColorMatrix type='saturate' values='0' in='noise' result='desaturatedNoise'/%3E%3CfeBlend in='SourceGraphic' in2='desaturatedNoise' mode='overlay' result='blend'/%3E%3CfeComposite operator='in' in2='SourceGraphic'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E#noiseFilter"); --gradient-shine: linear-gradient( 135deg, - transparent 25%, - rgb(255 255 255 / 0.1) 50%, - transparent 75% + transparent 20%, + hsl(var(--base-hue) 100% 100% / 0.1) 40%, + transparent 60% ); --base-hue: 200; --accent: oklch(67% 0.2 var(--base-hue)); + --ternary: oklch(25% 0.3 var(--base-hue)); --accent-light: oklch(75% 0.2 var(--base-hue)); --text-primary: oklch(100% 0 0); --text-secondary: oklch(100% 0 0 / 0.7); @@ -478,3 +480,33 @@ } } +.section-title { + position: fixed; + display: flex; + width: calc(100%); + margin: calc(var(--spacing-md) * -1); + padding: var(--spacing-md); + background: var(--ternary); + border: 1px solid var(--accent); + z-index: 99999; + border-top-left-radius: 16px; + border-top-right-radius: 16px; + place-content: center; + align-items: center; + gap: var(--spacing-xs); + + > .close-button { + position: absolute; + top: var(--spacing-md); + right: calc( + var(--spacing-md) * 2 + 1.5rem + ); + } + + & + * { + margin-top: calc( + 1.5rem + + var(--spacing-md) * 3 + ); + } +} \ No newline at end of file diff --git a/src/lib/stores.svelte.ts b/src/lib/stores.svelte.ts index a9c714a..780a47b 100644 --- a/src/lib/stores.svelte.ts +++ b/src/lib/stores.svelte.ts @@ -46,6 +46,9 @@ export const timeFormat = writable( browser ? localStorage.getItem('timeFormat') || 'h:m:s' : 'h:m:s' ); +export let pageTitle = writable('loading'); +export let pageIcon = writable(''); + if (browser) { baseHue.subscribe((value) => { document.documentElement.style.setProperty('--base-hue', value.toString()); diff --git a/src/routes/+layout.svelte b/src/routes/+layout.svelte index 1093d19..b99b0f4 100644 --- a/src/routes/+layout.svelte +++ b/src/routes/+layout.svelte @@ -1,9 +1,12 @@ - sidebarOpen = !sidebarOpen} text="Sidebar" /> +
+ sidebarOpen = !sidebarOpen} text="Sidebar" /> + moveFolderDialogOpen = true} text="Move Letters" /> +
-
+
@@ -95,7 +108,8 @@ If you have letters, they will appear here, please wait...

{:else} - f.id === activeFolder)} {letters} /> + f.id === activeFolder)} {letters} /> {/if}
@@ -103,10 +117,21 @@ \ No newline at end of file diff --git a/src/routes/compose/+page.svelte b/src/routes/compose/+page.svelte index f8cea37..ce32de0 100644 --- a/src/routes/compose/+page.svelte +++ b/src/routes/compose/+page.svelte @@ -1,7 +1,7 @@ -

Settings

- {$activeUser?.npub}