|
| 1 | +import type { Meta, StoryObj } from '@storybook/react'; |
| 2 | +import { CloudinaryVideo } from './CloudinaryVideo'; |
| 3 | +import { Cloudinary } from '@cloudinary/url-gen'; |
| 4 | +import { byRadius } from "@cloudinary/url-gen/actions/roundCorners"; |
| 5 | +import { trim } from "@cloudinary/url-gen/actions/videoEdit"; |
| 6 | +import { blackwhite } from '@cloudinary/url-gen/actions/effect'; |
| 7 | +import { videoCodec } from '@cloudinary/url-gen/actions/transcode'; |
| 8 | +import { h264 } from '@cloudinary/url-gen/qualifiers/videoCodec'; |
| 9 | +import { baseline } from '@cloudinary/url-gen/qualifiers/videoCodecProfile'; |
| 10 | +import { vcl31 } from '@cloudinary/url-gen/qualifiers/videoCodecLevel'; |
| 11 | +import { scale } from '@cloudinary/url-gen/actions/resize'; |
| 12 | + |
| 13 | +const meta: Meta<typeof CloudinaryVideo>= { |
| 14 | + component: CloudinaryVideo, |
| 15 | +}; |
| 16 | + |
| 17 | +export default meta; |
| 18 | +type Story = StoryObj<typeof CloudinaryVideo>; |
| 19 | + |
| 20 | +export const VersionV3: Story = { |
| 21 | + args: { |
| 22 | + src: 'https://res.cloudinary.com/demo/video/upload/dog.mp4', |
| 23 | + resize: { height: 333 }, |
| 24 | + roundCorners: 20, |
| 25 | + duration: '1%', |
| 26 | + startOffset: 0, |
| 27 | + videoCodec: 'h264', |
| 28 | + videoProps: { |
| 29 | + loop: true, |
| 30 | + autoPlay: true, |
| 31 | + muted: true |
| 32 | + } |
| 33 | + } |
| 34 | +}; |
| 35 | + |
| 36 | +const cloudinary = new Cloudinary({ |
| 37 | + cloud: { |
| 38 | + cloudName: 'demo' |
| 39 | + } |
| 40 | +}); |
| 41 | +const cloudinaryVideoObject = cloudinary.video('dog.mp4') |
| 42 | + .effect(blackwhite()) |
| 43 | + .resize(scale().height(333)) |
| 44 | + .videoEdit(trim().duration("1p")) |
| 45 | + .roundCorners(byRadius(20)) |
| 46 | + .transcode( |
| 47 | + videoCodec( |
| 48 | + h264() |
| 49 | + .profile(baseline()) |
| 50 | + .level(vcl31()) |
| 51 | + ) |
| 52 | + ); |
| 53 | + |
| 54 | +export const VersionV2: Story = { |
| 55 | + args: { |
| 56 | + cldVid: cloudinaryVideoObject, |
| 57 | + loop: true, |
| 58 | + autoPlay: true, |
| 59 | + muted: true |
| 60 | + } |
| 61 | +} |
0 commit comments