{@render children()}
diff --git a/packages/svelte/src/lib/plugins/Minimap/Minimap.svelte b/packages/svelte/src/lib/plugins/Minimap/Minimap.svelte
index 37283e55..e2a3c4cb 100644
--- a/packages/svelte/src/lib/plugins/Minimap/Minimap.svelte
+++ b/packages/svelte/src/lib/plugins/Minimap/Minimap.svelte
@@ -37,8 +37,8 @@
zoomable = true,
inversePan,
zoomStep,
- style = '',
- class: className
+ class: className,
+ ...rest
}: MiniMapProps = $props();
let store = useStore();
@@ -83,9 +83,10 @@
{#if store.panZoom}
diff --git a/packages/svelte/src/lib/plugins/Minimap/types.ts b/packages/svelte/src/lib/plugins/Minimap/types.ts
index 1ea5bf6b..dd6903de 100644
--- a/packages/svelte/src/lib/plugins/Minimap/types.ts
+++ b/packages/svelte/src/lib/plugins/Minimap/types.ts
@@ -1,5 +1,5 @@
import type { PanelPosition } from '@xyflow/system';
-import type { ClassValue } from 'svelte/elements';
+import type { ClassValue, HTMLAttributes } from 'svelte/elements';
import type { Node } from '$lib/types';
export type GetMiniMapNodeAttribute = (node: Node) => string;
@@ -46,4 +46,4 @@ export type MiniMapProps = {
inversePan?: boolean;
/** Step size for zooming in/out */
zoomStep?: number;
-};
+} & HTMLAttributes;
diff --git a/packages/svelte/src/lib/plugins/NodeResizer/ResizeControl.svelte b/packages/svelte/src/lib/plugins/NodeResizer/ResizeControl.svelte
index 0c21ddf9..ef988071 100644
--- a/packages/svelte/src/lib/plugins/NodeResizer/ResizeControl.svelte
+++ b/packages/svelte/src/lib/plugins/NodeResizer/ResizeControl.svelte
@@ -26,9 +26,9 @@
onResizeStart,
onResize,
onResizeEnd,
- style = '',
class: className,
- children
+ children,
+ ...rest
}: ResizeControlProps = $props();
const store = useStore();
@@ -51,12 +51,6 @@
let positionClassNames = $derived(controlPosition.split('-'));
- let controlStyle = $derived.by(() => {
- let colorStyleProp =
- variant === ResizeControlVariant.Line ? 'border-color' : 'background-color';
- return color ? `${style} ${colorStyleProp}: ${color};` : style;
- });
-
onMount(() => {
if (resizeControlRef) {
resizer = XYResizer({
@@ -116,7 +110,9 @@
{@render children?.()}
diff --git a/packages/svelte/src/lib/plugins/NodeResizer/types.ts b/packages/svelte/src/lib/plugins/NodeResizer/types.ts
index 87934a25..407ffb0f 100644
--- a/packages/svelte/src/lib/plugins/NodeResizer/types.ts
+++ b/packages/svelte/src/lib/plugins/NodeResizer/types.ts
@@ -1,5 +1,5 @@
import type { Snippet } from 'svelte';
-import type { ClassValue } from 'svelte/elements';
+import type { ClassValue, HTMLAttributes } from 'svelte/elements';
import type {
ControlPosition,
ResizeControlVariant,
@@ -44,7 +44,7 @@ export type NodeResizerProps = {
onResize?: OnResize;
/** Callback called when resizing ends */
onResizeEnd?: OnResizeEnd;
-};
+} & HTMLAttributes;
export type ResizeControlProps = Pick<
NodeResizerProps,
@@ -69,7 +69,5 @@ export type ResizeControlProps = Pick<
* @example ResizeControlVariant.Handle, ResizeControlVariant.Line
*/
variant?: ResizeControlVariant;
- class?: ClassValue;
- style?: string;
children?: Snippet;
-};
+} & HTMLAttributes;
diff --git a/packages/svelte/src/lib/utils/index.ts b/packages/svelte/src/lib/utils/index.ts
index ed1aef35..e93ac10f 100644
--- a/packages/svelte/src/lib/utils/index.ts
+++ b/packages/svelte/src/lib/utils/index.ts
@@ -21,3 +21,7 @@ export const isNode = (element: unknown): element
*/
export const isEdge = (element: unknown): element is EdgeType =>
isEdgeBase(element);
+
+export function toPxString(value: number | undefined): string | undefined {
+ return value === undefined ? undefined : `${value}px`;
+}