@playcanvas/blocks
Version:
High level abstract 3D primitives for React
15 lines • 1.05 kB
JavaScript
"use client";
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
import { MaximizeIcon, MinimizeIcon } from "lucide-react";
import { Button } from "../components/ui/button";
import { useAssetViewer } from "./splat-viewer-context";
import { TooltipTrigger, TooltipContent, Tooltip } from "../components/ui/tooltip";
const FullScreenToggleIcon = ({ isFullscreen }) => {
return isFullscreen ? _jsx(MinimizeIcon, {}) : _jsx(MaximizeIcon, {});
};
function FullScreenButton({ variant = "ghost" }) {
const { isFullscreen, toggleFullscreen } = useAssetViewer();
return (_jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { asChild: true, children: _jsx(Button, { className: "cursor-pointer pointer-events-auto", variant: variant, size: "icon", onClick: toggleFullscreen, children: _jsx(FullScreenToggleIcon, { isFullscreen: isFullscreen }) }) }), _jsx(TooltipContent, { sideOffset: 4, children: isFullscreen ? "Exit Fullscreen" : "Enter Fullscreen" })] }));
}
export { FullScreenButton };
//# sourceMappingURL=full-screen-button.js.map