Files
ant-design/components/_util/ContextIsolator.tsx
lijianan f96282a4f9 refactor: reuse isNonNullable (#55827)
* refactor: reuse isNonNullable

* update
2025-11-23 16:25:26 +08:00

29 lines
684 B
TypeScript

import React from 'react';
import { NoFormStyle } from '../form/context';
import { NoCompactStyle } from '../space/Compact';
import isNonNullable from './isNonNullable';
const ContextIsolator: React.FC<
Readonly<React.PropsWithChildren<Partial<Record<'space' | 'form', boolean>>>>
> = (props) => {
const { space, form, children } = props;
if (!isNonNullable(children)) {
return null;
}
let result: React.ReactNode = children;
if (form) {
result = (
<NoFormStyle override status>
{result}
</NoFormStyle>
);
}
if (space) {
result = <NoCompactStyle>{result}</NoCompactStyle>;
}
return result;
};
export default ContextIsolator;