From bffae34b3ef14d45cbd6c28c77707a33ad4855b8 Mon Sep 17 00:00:00 2001 From: Yusur Princeps Date: Sun, 16 Nov 2025 09:56:19 +0100 Subject: [PATCH 1/4] log server name at startup --- package.json | 2 +- vite.config.ts | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/package.json b/package.json index 1850e2d..4fcf124 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "@yusurko/vigil", "private": true, - "version": "0.1.0-dev43", + "version": "0.1.0-dev45", "type": "module", "scripts": { "dev": "vite dev", diff --git a/vite.config.ts b/vite.config.ts index d4a751f..27a639f 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -4,6 +4,8 @@ import { configDotenv } from 'dotenv'; configDotenv(); +console.info(`server name is ${process.env.SERVER_NAME}`); + export default defineConfig({ plugins: [sveltekit()], server: { From 76b946d55c089362436eb26bb26546884871c727 Mon Sep 17 00:00:00 2001 From: Yusur Princeps Date: Fri, 21 Nov 2025 10:15:50 +0100 Subject: [PATCH 2/4] style changes + add desktop footer + add terms & stuff --- package.json | 2 +- src/lib/Centered.svelte | 5 +++-- src/lib/DesktopFooter.svelte | 29 +++++++++++++++++++++++++++++ src/lib/FeedPost.svelte | 3 ++- src/lib/FullPost.svelte | 3 ++- src/routes/+layout.svelte | 3 +++ src/routes/privacy/+page.svelte | 13 +++++++++++++ src/routes/privacy/+page.ts | 19 +++++++++++++++++++ src/routes/rules/+page.svelte | 13 +++++++++++++ src/routes/rules/+page.ts | 19 +++++++++++++++++++ src/routes/terms/+page.svelte | 13 +++++++++++++ src/routes/terms/+page.ts | 19 +++++++++++++++++++ src/routes/user/[id]/+page.ts | 2 -- 13 files changed, 136 insertions(+), 7 deletions(-) create mode 100644 src/lib/DesktopFooter.svelte create mode 100644 src/routes/privacy/+page.svelte create mode 100644 src/routes/privacy/+page.ts create mode 100644 src/routes/rules/+page.svelte create mode 100644 src/routes/rules/+page.ts create mode 100644 src/routes/terms/+page.svelte create mode 100644 src/routes/terms/+page.ts diff --git a/package.json b/package.json index 4fcf124..c6d1159 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "@yusurko/vigil", "private": true, - "version": "0.1.0-dev45", + "version": "0.1.0-dev46", "type": "module", "scripts": { "dev": "vite dev", diff --git a/src/lib/Centered.svelte b/src/lib/Centered.svelte index 9a66bad..ab3b8c4 100644 --- a/src/lib/Centered.svelte +++ b/src/lib/Centered.svelte @@ -1,14 +1,15 @@ -
+
{@render children () }
diff --git a/src/lib/DesktopFooter.svelte b/src/lib/DesktopFooter.svelte new file mode 100644 index 0000000..57f3cd0 --- /dev/null +++ b/src/lib/DesktopFooter.svelte @@ -0,0 +1,29 @@ + + + +

© 2021-2025 Sakuragasaki46.

+ +
+ + \ No newline at end of file diff --git a/src/lib/FeedPost.svelte b/src/lib/FeedPost.svelte index 8b0f0aa..2308372 100644 --- a/src/lib/FeedPost.svelte +++ b/src/lib/FeedPost.svelte @@ -30,10 +30,11 @@ let { id, title, content = "", votes, my_vote, comment_count } = post; .post-frame { padding-inline-start: 2em; position: relative; + min-height: 7em; } .message-stats { position: absolute; - inset-inline-start: 0; + inset-inline-start: -6px; top: 0; width: 2em; display: flex; diff --git a/src/lib/FullPost.svelte b/src/lib/FullPost.svelte index f3a6e63..e409136 100644 --- a/src/lib/FullPost.svelte +++ b/src/lib/FullPost.svelte @@ -81,12 +81,13 @@ let { title, id, content = '', to, votes, my_vote, comment_count } = post; } .message-stats { position: absolute; - inset-inline-start: 0; + inset-inline-start: -6px; top: 0; width: 2em; display: flex; flex-direction: column; justify-content: flex-start; align-items: center; + margin-inline-end: 6px; } \ No newline at end of file diff --git a/src/routes/+layout.svelte b/src/routes/+layout.svelte index 7579dd9..7e2c6df 100644 --- a/src/routes/+layout.svelte +++ b/src/routes/+layout.svelte @@ -9,6 +9,7 @@ import type { ServerHealth, UserEntry } from '$lib/backend'; import { getFlash } from 'sveltekit-flash-message'; import { page } from "$app/state"; import FlashMessage from '$lib/FlashMessage.svelte'; + import DesktopFooter from '$lib/DesktopFooter.svelte'; let { data, children } : { data: {me: UserEntry}, @@ -53,6 +54,8 @@ let colorThemeCls = $derived(`color-scheme-${colorScheme} color-theme-${colorThe {@render children()} + +
diff --git a/src/routes/privacy/+page.svelte b/src/routes/privacy/+page.svelte new file mode 100644 index 0000000..ead73ca --- /dev/null +++ b/src/routes/privacy/+page.svelte @@ -0,0 +1,13 @@ + + +
+

Privacy Policy

+ + +
\ No newline at end of file diff --git a/src/routes/privacy/+page.ts b/src/routes/privacy/+page.ts new file mode 100644 index 0000000..3bb565d --- /dev/null +++ b/src/routes/privacy/+page.ts @@ -0,0 +1,19 @@ +import { backend } from '$lib/backend.js'; +import { error } from '@sveltejs/kit'; + + + +export async function load(event) { + + const resp = await backend.withEvent(event).fetch('about/privacy'); + + if(resp.status === 404) { + error(404); + } + + const respJ = await resp.json(); + + const { content } = respJ; + + return { content }; +} \ No newline at end of file diff --git a/src/routes/rules/+page.svelte b/src/routes/rules/+page.svelte new file mode 100644 index 0000000..c3c7572 --- /dev/null +++ b/src/routes/rules/+page.svelte @@ -0,0 +1,13 @@ + + +
+

Community Guidelines

+ + +
\ No newline at end of file diff --git a/src/routes/rules/+page.ts b/src/routes/rules/+page.ts new file mode 100644 index 0000000..09dfac7 --- /dev/null +++ b/src/routes/rules/+page.ts @@ -0,0 +1,19 @@ +import { backend } from '$lib/backend.js'; +import { error } from '@sveltejs/kit'; + + + +export async function load(event) { + + const resp = await backend.withEvent(event).fetch('about/rules'); + + if(resp.status === 404) { + error(404); + } + + const respJ = await resp.json(); + + const { content } = respJ; + + return { content }; +} \ No newline at end of file diff --git a/src/routes/terms/+page.svelte b/src/routes/terms/+page.svelte new file mode 100644 index 0000000..9505e26 --- /dev/null +++ b/src/routes/terms/+page.svelte @@ -0,0 +1,13 @@ + + +
+

Terms of Service

+ + +
\ No newline at end of file diff --git a/src/routes/terms/+page.ts b/src/routes/terms/+page.ts new file mode 100644 index 0000000..85b2c4c --- /dev/null +++ b/src/routes/terms/+page.ts @@ -0,0 +1,19 @@ +import { backend } from '$lib/backend.js'; +import { error } from '@sveltejs/kit'; + + + +export async function load(event) { + + const resp = await backend.withEvent(event).fetch('about/terms'); + + if(resp.status === 404) { + error(404); + } + + const respJ = await resp.json(); + + const { content } = respJ; + + return { content }; +} \ No newline at end of file diff --git a/src/routes/user/[id]/+page.ts b/src/routes/user/[id]/+page.ts index 9b53c98..0752520 100644 --- a/src/routes/user/[id]/+page.ts +++ b/src/routes/user/[id]/+page.ts @@ -10,8 +10,6 @@ export async function load(event) { if(resp.status === 404) { error(404); } - - const respJ = await resp.json(); From 9fd5be2815eb76cdc8303891642c1148e972549b Mon Sep 17 00:00:00 2001 From: Yusur Princeps Date: Sat, 22 Nov 2025 09:41:19 +0100 Subject: [PATCH 3/4] style changes --- src/lib/Feed.svelte | 5 ++--- src/lib/MobileFooter.svelte | 2 +- src/lib/PostMeta.svelte | 6 ++++++ src/lib/SLayout.svelte | 12 +++++++++--- 4 files changed, 18 insertions(+), 7 deletions(-) diff --git a/src/lib/Feed.svelte b/src/lib/Feed.svelte index 1873346..dd989a1 100644 --- a/src/lib/Feed.svelte +++ b/src/lib/Feed.svelte @@ -19,12 +19,11 @@ \ No newline at end of file diff --git a/src/lib/SLayout.svelte b/src/lib/SLayout.svelte index a7bec54..4d0211c 100644 --- a/src/lib/SLayout.svelte +++ b/src/lib/SLayout.svelte @@ -28,12 +28,12 @@ let mobiRightActive = $state(false); grid-template-areas: ". title ." "left center right"; - margin: 1em 2em; + padding: 1em 2em; position: relative; } -.layout-left { grid-area: left; padding-right: 1em; } -.layout-right { grid-area: right; padding-left: 1em; } +.layout-left { grid-area: left; padding-inline-end: 1em; } +.layout-right { grid-area: right; padding-inline-start: 1em; } .layout-content { grid-area: center; } .layout-title { grid-area: title; text-align: center; font-size: 1.4em; } @@ -86,6 +86,8 @@ let mobiRightActive = $state(false); "center center center"; grid-template-columns: 2em auto 2em; + + padding: 1em .5em; } .layout-left, .layout-right { display: none; } @@ -107,6 +109,10 @@ let mobiRightActive = $state(false); right: 0; } + .layout-content { + font-size: .9em; + } + } From 3cf9e024c09e30e36cdb02995ea7d448b850b821 Mon Sep 17 00:00:00 2001 From: Yusur Princeps Date: Sun, 30 Nov 2025 23:35:05 +0100 Subject: [PATCH 4/4] try to fix search to no avail, add submit form to /create --- package.json | 2 +- src/lib/BigSearchInput.svelte | 2 +- src/routes/create/+page.server.ts | 43 +++++++++++++++++++++++++++++++ src/routes/create/+page.svelte | 8 +++--- src/routes/login/+page.server.ts | 2 +- src/routes/search/+page.server.ts | 7 ++--- src/routes/search/+page.svelte | 17 ++++++++---- 7 files changed, 65 insertions(+), 16 deletions(-) create mode 100644 src/routes/create/+page.server.ts diff --git a/package.json b/package.json index c6d1159..bba4968 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "@yusurko/vigil", "private": true, - "version": "0.1.0-dev46", + "version": "0.1.0-dev47", "type": "module", "scripts": { "dev": "vite dev", diff --git a/src/lib/BigSearchInput.svelte b/src/lib/BigSearchInput.svelte index 2334ffb..053b4c2 100644 --- a/src/lib/BigSearchInput.svelte +++ b/src/lib/BigSearchInput.svelte @@ -1,6 +1,6 @@ diff --git a/src/routes/create/+page.server.ts b/src/routes/create/+page.server.ts new file mode 100644 index 0000000..2d172ce --- /dev/null +++ b/src/routes/create/+page.server.ts @@ -0,0 +1,43 @@ +import { backend } from '$lib/backend.js'; +import { redirect } from 'sveltekit-flash-message/server'; + +export const actions = { + + async default (event) { + const { request }= event; + + const data = await request.formData(); + const guildName = ''+data.get('to'); + const title = data.get('title'); + const content = data.get('content'); + const privacy = +(data.get('privacy') || 0); + + const backend2 = await backend.withEvent(event).oath(); + const resp = await backend2.submitJson(`guild/@${encodeURIComponent(guildName)}`, { + title, content, privacy + }) + + const { status } = resp; + const respData = await resp.json(); + + if ([200, 204].indexOf(status) < 0) { + // error + console.log(`/create: status ${status}`); + switch(status) { + case 403: + case 404: + redirect({ + message: respData.error + }, event); + break; + default: + redirect({message: `Unknown error (HTTP ${status})`}, event); + break; + } + } else { + const { id: myId } = respData; + + redirect(303, "/=" + myId); + } + } +}; \ No newline at end of file diff --git a/src/routes/create/+page.svelte b/src/routes/create/+page.svelte index af0029c..00a33fa 100644 --- a/src/routes/create/+page.svelte +++ b/src/routes/create/+page.svelte @@ -1,4 +1,5 @@ {#if me} -
+

Posting as @{me.username}