From 0b02d12c104b269c2e337cb1fd3b15216b310c83 Mon Sep 17 00:00:00 2001 From: Florian <45694132+flo-bit@users.noreply.github.com> Date: Sat, 24 Jan 2026 11:48:01 +0100 Subject: [PATCH] add settings to section card --- .../SectionCard/EditingSectionCard.svelte | 7 +- src/lib/cards/SectionCard/SectionCard.svelte | 8 +- .../SectionCard/SectionCardSettings.svelte | 175 ++++++++++++++++++ src/lib/cards/SectionCard/index.ts | 24 ++- 4 files changed, 210 insertions(+), 4 deletions(-) create mode 100644 src/lib/cards/SectionCard/SectionCardSettings.svelte diff --git a/src/lib/cards/SectionCard/EditingSectionCard.svelte b/src/lib/cards/SectionCard/EditingSectionCard.svelte index 448d7e6..f1575f4 100644 --- a/src/lib/cards/SectionCard/EditingSectionCard.svelte +++ b/src/lib/cards/SectionCard/EditingSectionCard.svelte @@ -1,5 +1,6 @@
diff --git a/src/lib/cards/SectionCard/SectionCard.svelte b/src/lib/cards/SectionCard/SectionCard.svelte index 8e6eea0..4e67e9b 100644 --- a/src/lib/cards/SectionCard/SectionCard.svelte +++ b/src/lib/cards/SectionCard/SectionCard.svelte @@ -1,6 +1,7 @@
{item.cardData.text}
diff --git a/src/lib/cards/SectionCard/SectionCardSettings.svelte b/src/lib/cards/SectionCard/SectionCardSettings.svelte new file mode 100644 index 0000000..cc04b4e --- /dev/null +++ b/src/lib/cards/SectionCard/SectionCardSettings.svelte @@ -0,0 +1,175 @@ + + +
+ { + return item.cardData.verticalAlign ?? 'center'; + }, + (value) => { + if (!value) return; + item.cardData.verticalAlign = value; + } + } + > + + + + + + + { + return item.cardData.textAlign ?? 'left'; + }, + (value) => { + if (!value) return; + item.cardData.textAlign = value; + } + } + > + + + + + +
+ + +
+
diff --git a/src/lib/cards/SectionCard/index.ts b/src/lib/cards/SectionCard/index.ts index 0cd7253..0fb965b 100644 --- a/src/lib/cards/SectionCard/index.ts +++ b/src/lib/cards/SectionCard/index.ts @@ -2,6 +2,7 @@ import { COLUMNS } from '$lib'; import type { CardDefinition } from '../types'; import EditingSectionCard from './EditingSectionCard.svelte'; import SectionCard from './SectionCard.svelte'; +import SectionCardSettings from './SectionCardSettings.svelte'; export const SectionCardDefinition = { type: 'section', @@ -10,7 +11,9 @@ export const SectionCardDefinition = { createNew: (card) => { card.cardType = 'section'; card.cardData = { - text: 'hello world' + text: 'hello world', + verticalAlign: 'bottom', + textSize: 1 }; card.h = 1; @@ -22,5 +25,22 @@ export const SectionCardDefinition = { defaultColor: 'transparent', maxH: 1, - canResize: false + canResize: false, + settingsComponent: SectionCardSettings } as CardDefinition & { type: 'section' }; + + + +export const textAlignClasses: Record = { + left: '', + center: 'text-center justify-center', + right: 'text-end justify-end' +}; + +export const verticalAlignClasses: Record = { + top: 'items-stretch', + center: 'items-center-safe', + bottom: 'items-end-safe' +}; + +export const textSizeClasses = ['text-lg', 'text-2xl', 'text-4xl', 'text-6xl']; -- 2.51.2