Skip to content

Commit cfefa00

Browse files
authored
Merge pull request #12549 from Turbo87/svelte-props
svelte: Improve `$props()` usage
2 parents ed66159 + bdba5d0 commit cfefa00

File tree

2 files changed

+8
-8
lines changed

2 files changed

+8
-8
lines changed

svelte/src/lib/components/PageHeader.svelte

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,20 @@
11
<script lang="ts">
22
import type { Snippet } from 'svelte';
3+
import type { HTMLAttributes } from 'svelte/elements';
34
45
// TODO: import LoadingSpinner from './LoadingSpinner.svelte';
56
6-
interface Props {
7+
interface Props extends HTMLAttributes<HTMLDivElement> {
78
title?: string;
89
suffix?: string;
910
showSpinner?: boolean;
1011
children?: Snippet;
11-
[key: string]: unknown;
1212
}
1313
14-
let { title, suffix, showSpinner = false, children, ...others }: Props = $props();
14+
let { title, suffix, showSpinner = false, children, class: className, ...others }: Props = $props();
1515
</script>
1616

17-
<div data-test-page-header class="header" {...others}>
17+
<div data-test-page-header class={['header', className]} {...others}>
1818
{#if children}
1919
{@render children()}
2020
{:else}

svelte/src/lib/components/TextContent.svelte

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,16 @@
11
<script lang="ts">
22
import type { Snippet } from 'svelte';
3+
import type { HTMLAttributes } from 'svelte/elements';
34
4-
interface Props {
5+
interface Props extends HTMLAttributes<HTMLDivElement> {
56
boxed?: boolean;
67
children: Snippet;
7-
[key: string]: unknown;
88
}
99
10-
let { boxed = false, children, ...others }: Props = $props();
10+
let { boxed = false, children, class: className, ...others }: Props = $props();
1111
</script>
1212

13-
<div class="wrapper" class:boxed {...others}>
13+
<div class={['wrapper', className, { boxed }]} {...others}>
1414
{@render children()}
1515
</div>
1616

0 commit comments

Comments
 (0)