'use client'; import React, { ReactNode, CSSProperties } from 'react'; import { visualWeights, resolveFontSize } from '@newspaperui/theme'; import { clampSpan, cx } from '@newspaperui/utils'; import { useSection } from '../layout/Section'; export interface PullQuoteProps { weight?: 'High' | 'Medium'; span?: number; spanAllColumns?: boolean; // 在多栏 BodyText 内跨所有栏 author?: string; align?: 'left' | 'center'; className?: string; style?: CSSProperties; children: ReactNode; } export const PullQuote: React.FC = ({ weight = 'High', span, spanAllColumns = false, author, align = 'left', className, style, children, }) => { const section = useSection(); const config = visualWeights.PullQuote[weight]!; const cols = span ? clampSpan(span, section.columns) : undefined; return ( ); };