37 lines
1.4 KiB
TypeScript
37 lines
1.4 KiB
TypeScript
// Empty-slot presentation copied from investidor's AdvertisementSlot.
|
||
// Preserve the original reserved spaces without importing its advertising backend or tracking.
|
||
export function AdvertisementSlot({
|
||
position,
|
||
className = '',
|
||
}: {
|
||
page: string;
|
||
position: string;
|
||
slot?: string;
|
||
limit?: number;
|
||
fallbackToUnslotted?: boolean;
|
||
className?: string;
|
||
}) {
|
||
const placement = position === 'top' ? 'article.top' : 'article.bottom';
|
||
return (
|
||
<aside
|
||
aria-label={`Espaço de publicidade ${placement}`}
|
||
className={`mx-auto flex w-full items-center justify-center overflow-hidden border border-dashed border-slate-300 bg-slate-50/80 text-center ${className}`}
|
||
style={{ aspectRatio: '970 / 250', maxWidth: '970px' }}
|
||
data-ad-placement={placement}
|
||
data-ad-state="empty"
|
||
>
|
||
<div className="px-4 py-6">
|
||
<p className="text-[10px] font-semibold tracking-[0.2em] text-slate-400 uppercase">
|
||
Publicidade
|
||
</p>
|
||
<p className="mt-1 text-xs text-slate-500">
|
||
Espaço disponível para publicidade
|
||
</p>
|
||
<p className="mt-1 text-[10px] text-slate-400">
|
||
970 × 250px · {placement}
|
||
</p>
|
||
</div>
|
||
</aside>
|
||
);
|
||
}
|