Add margin+padding options for background wrapper

This commit is contained in:
Kuba Orlik 2026-08-10 09:14:52 +02:00
parent 903bf2c016
commit 7cdbff8112
4 changed files with 24 additions and 2 deletions

View File

@ -6,6 +6,10 @@
padding: var(--vertical-padding) 0;
&.background-wrapper--padding-no {
padding: 0;
}
& > * {
grid-column: content;
}

View File

@ -11,6 +11,8 @@ export const background_variants = ["variant1", "variant2"];
const component_arguments = {
variant: new ComponentArguments.Enum(background_variants),
grow_to_screen_height: new ComponentArguments.Boolean(),
padding: new ComponentArguments.Boolean(),
margin: new ComponentArguments.Boolean(),
content: new ComponentArguments.NestedComponent(),
} as const;
@ -28,7 +30,7 @@ export class BackgroundWrapper extends Component<typeof component_arguments> {
}
async toHTML({
args: { variant, content, grow_to_screen_height },
args: { variant, content, grow_to_screen_height, padding, margin },
classes,
jdd_context,
}: ComponentToHTMLArgs<typeof component_arguments>): Promise<string> {
@ -37,7 +39,11 @@ export class BackgroundWrapper extends Component<typeof component_arguments> {
class={[
"background-wrapper",
`background-wrapper--${variant}`,
{ "background-wrapper--grow-height": grow_to_screen_height },
`background-wrapper--padding-${padding ? "yes" : "no"}`,
{
"background-wrapper--grow-height": grow_to_screen_height,
"jdd-no-gap": !margin,
},
...classes,
]}
>

View File

@ -1,4 +1,6 @@
.image-jdd {
display: flex; /* to get rid of added whitespace */
picture {
border-radius: 10px;

View File

@ -80,6 +80,16 @@ body {
& > * {
grid-column: content;
}
& > .jdd-no-gap {
margin-bottom: calc(-1 * var(--row-gap));
margin-top: calc(-1 * var(--row-gap));
&:first-child,
& + & {
margin-top: 0;
}
}
}
.subgrid-layout {