import { InstagramEmbed } from './instagram-embed';
import type { ControlsMap } from '../../sub-packages/styleguide/src/data/control-types';
/**
* InstagramEmbed Component
*
* Embeds Instagram posts and reels in MDX articles.
* Features:
* - Supports post (/p/) and reel (/reel/) URL formats
* - URL validation for instagram.com
* - Lazy loading for performance
*/
export const meta = {
title: 'MDX/InstagramEmbed',
};
export const controls: ControlsMap = {
url: { type: 'text', default: 'https://www.instagram.com/p/DUlkwjdDdQS/' },
};
/**
* Default - Standard Instagram post URL
*
* Uses the standard instagram.com/p/ format
*/
export const Default = {
args: { url: 'https://www.instagram.com/p/DUlkwjdDdQS/' },
render: ({ url }: { url: string }) => <InstagramEmbed url={url} />,
};
/**
* Reel post format (/reel/)
*/
export const ReelPost = () => <InstagramEmbed url="https://www.instagram.com/reel/DUlkwjdDdQS/" />;
/**
* With custom className
*/
export const WithClassName = () => (
<InstagramEmbed
url="https://www.instagram.com/p/DUlkwjdDdQS/"
className="border-2 border-zd-link"
/>
);
/**
* Multiple embeds in sequence
*/
export const MultipleEmbeds = () => (
<div className="max-w-[800px]">
<h3 className="text-zd-white pb-vgap-sm">Instagram 投稿</h3>
<InstagramEmbed url="https://www.instagram.com/p/DUlkwjdDdQS/" />
<h3 className="text-zd-white pb-vgap-sm">Instagram リール</h3>
<InstagramEmbed url="https://www.instagram.com/reel/DUlkwjdDdQS/" />
</div>
);