feat: harden shared platform contracts

This commit is contained in:
2026-07-30 14:26:36 +02:00
parent 6970bf7457
commit 9b88ae388b
24 changed files with 2034 additions and 57 deletions

View File

@@ -1,4 +1,4 @@
import type { HTMLAttributes, ReactNode } from "react";
import { forwardRef, type HTMLAttributes, type ReactNode } from "react";
export type PageScrollViewportProps = Omit<
HTMLAttributes<HTMLDivElement>,
@@ -7,17 +7,22 @@ export type PageScrollViewportProps = Omit<
children: ReactNode;
};
export default function PageScrollViewport({
children,
className = "",
...props
}: PageScrollViewportProps) {
return (
<div
{...props}
className={["page-scroll-viewport", className].filter(Boolean).join(" ")}
>
{children}
</div>
);
}
const PageScrollViewport = forwardRef<HTMLDivElement, PageScrollViewportProps>(
function PageScrollViewport({
children,
className = "",
...props
}, ref) {
return (
<div
{...props}
ref={ref}
className={["page-scroll-viewport", className].filter(Boolean).join(" ")}
>
{children}
</div>
);
}
);
export default PageScrollViewport;