Files
at-mintel/packages/ui/src/components/universal/Box.tsx
Marc Mintel 599ca63f06
Some checks failed
Monorepo Pipeline / ⚡ Prioritize Release (push) Successful in 2s
Monorepo Pipeline / 🧪 Test (push) Successful in 1m16s
Monorepo Pipeline / 🧹 Lint (push) Failing after 1m27s
Monorepo Pipeline / 🏗️ Build (push) Failing after 1m29s
Monorepo Pipeline / 🚀 Release (push) Has been skipped
Monorepo Pipeline / 🐳 Build Gatekeeper (Product) (push) Has been skipped
Monorepo Pipeline / 🐳 Build Build-Base (push) Has been skipped
Monorepo Pipeline / 🐳 Build Production Runtime (push) Has been skipped
feat: integrate Universal Design System with Web, Print, and Presentation examples
2026-06-08 17:55:57 +02:00

25 lines
756 B
TypeScript

import React from 'react';
import { View } from '@react-pdf/renderer';
import { motion, HTMLMotionProps } from 'framer-motion';
import { useEnvironment } from '../context/EnvironmentContext';
export interface BoxProps extends HTMLMotionProps<"div"> {
children?: React.ReactNode;
pdfStyle?: any; // Specifically for PDF if Tailwind mapping is not enough
}
export const Box: React.FC<BoxProps> = ({ children, className, style, pdfStyle, ...props }) => {
const env = useEnvironment();
if (env === 'print') {
return <View style={pdfStyle || style}>{children}</View>;
}
// Web and Presentation get Framer Motion by default
return (
<motion.div className={className} style={style} {...props}>
{children}
</motion.div>
);
};