@lukeashford/aurelius 2.6.0 → 2.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.mts CHANGED
@@ -39,6 +39,7 @@ interface CardMediaProps extends React.HTMLAttributes<HTMLDivElement> {
39
39
  alt?: string;
40
40
  aspect?: 'video' | 'square' | 'wide';
41
41
  position?: 'top' | 'bottom';
42
+ isVideo?: boolean;
42
43
  }
43
44
  declare const Card: React.ForwardRefExoticComponent<CardProps & React.RefAttributes<HTMLDivElement>> & {
44
45
  Header: React.ForwardRefExoticComponent<CardHeaderProps & React.RefAttributes<HTMLDivElement>>;
@@ -571,6 +572,25 @@ interface ImageCardProps extends Omit<CardProps, 'title'> {
571
572
  }
572
573
  declare const ImageCard: React.ForwardRefExoticComponent<ImageCardProps & React.RefAttributes<HTMLDivElement>>;
573
574
 
575
+ type VideoAspectRatioPreset = 'video' | 'cinema' | 'square';
576
+ type VideoAspectRatio = VideoAspectRatioPreset | `${number}/${number}`;
577
+ interface VideoCardProps extends Omit<CardProps, 'title'> {
578
+ src: string;
579
+ title?: React.ReactNode;
580
+ subtitle?: React.ReactNode;
581
+ aspectRatio?: VideoAspectRatio;
582
+ playing?: boolean;
583
+ controls?: boolean;
584
+ light?: boolean | string;
585
+ volume?: number;
586
+ muted?: boolean;
587
+ loop?: boolean;
588
+ mediaClassName?: string;
589
+ contentClassName?: string;
590
+ playerProps?: any;
591
+ }
592
+ declare const VideoCard: React.ForwardRefExoticComponent<VideoCardProps & React.RefAttributes<HTMLDivElement>>;
593
+
574
594
  type SectionHeadingLevel = 'h2' | 'h3';
575
595
  interface SectionHeadingProps extends React.HTMLAttributes<HTMLHeadingElement> {
576
596
  level?: SectionHeadingLevel;
@@ -589,4 +609,4 @@ declare const SectionHeading: React.ForwardRefExoticComponent<SectionHeadingProp
589
609
 
590
610
  declare const version = "2.0.0";
591
611
 
592
- export { Accordion, AccordionContent, type AccordionContentProps, AccordionItem, type AccordionItemProps, type AccordionProps, AccordionTrigger, type AccordionTriggerProps, Alert, AlertDialog, type AlertDialogProps, type AlertProps, type AlertVariant, type AspectRatio, type AspectRatioPreset, Avatar, type AvatarProps, type AvatarSize, Badge, type BadgeProps, type BadgeVariant, BrandIcon, type BrandIconProps, type BrandIconSize, type BrandIconVariant, Breadcrumb, BreadcrumbItem, type BreadcrumbItemProps, BreadcrumbLink, type BreadcrumbLinkProps, type BreadcrumbProps, Button, type ButtonProps, type ButtonSize, type ButtonVariant, Card, type CardBodyProps, type CardFooterProps, type CardHeaderProps, type CardMediaProps, type CardProps, type CardVariant, ChatHistory, type ChatHistoryItem, type ChatHistoryProps, Checkbox, type CheckboxProps, Col, type ColOffset, type ColOrder, type ColProps, type ColSpan, ColorSwatch, type ColorSwatchProps, ConfirmDialog, type ConfirmDialogProps, Container, type ContainerProps, type ContainerSize, Divider, type DividerProps, Drawer, type DrawerPosition, type DrawerProps, HelperText, type HelperTextProps, ImageCard, type ImageCardProps, Input, type InputAddonProps, type InputElementProps, InputGroup, type InputGroupProps, InputLeftAddon, InputLeftElement, type InputProps, InputRightAddon, InputRightElement, InputWrapper, type InputWrapperProps, Label, type LabelProps, List, ListItem, type ListItemProps, ListItemText, type ListItemTextProps, type ListProps, ListSubheader, type ListSubheaderProps, MarkdownContent, type MarkdownContentProps, Menu, MenuContent, type MenuContentProps, MenuItem, type MenuItemProps, MenuLabel, type MenuProps, MenuSeparator, MenuTrigger, type MenuTriggerProps, Message, type MessageProps, type MessageVariant, Modal, type ModalProps, Navbar, NavbarBrand, type NavbarBrandProps, NavbarContent, type NavbarContentProps, NavbarDivider, NavbarItem, type NavbarItemProps, NavbarLink, type NavbarLinkProps, type NavbarProps, Pagination, type PaginationProps, Popover, type PopoverAlign, type PopoverPosition, type PopoverProps, Progress, type ProgressProps, PromptDialog, type PromptDialogProps, Radio, type RadioProps, Row, type RowAlign, type RowGutter, type RowJustify, type RowProps, SectionHeading, type SectionHeadingLevel, type SectionHeadingProps, Select, type SelectOption, type SelectProps, Skeleton, type SkeletonProps, Slider, type SliderProps, Spinner, type SpinnerProps, Stack, type StackDirection, type StackGap, type StackProps, type Step, type StepStatus, Stepper, type StepperProps, StreamingCursor, type StreamingCursorProps, Switch, type SwitchProps, Tab, TabList, type TabListProps, TabPanel, type TabPanelProps, type TabProps, Table, TableBody, type TableBodyProps, TableCaption, type TableCaptionProps, TableCell, type TableCellProps, TableFooter, type TableFooterProps, TableHead, type TableHeadProps, TableHeader, type TableHeaderProps, type TableProps, TableRow, type TableRowProps, Tabs, type TabsProps, Textarea, type TextareaProps, type ToastData, type ToastPosition, ToastProvider, type ToastProviderProps, type ToastVariant, Tooltip, type TooltipProps, useToast, version };
612
+ export { Accordion, AccordionContent, type AccordionContentProps, AccordionItem, type AccordionItemProps, type AccordionProps, AccordionTrigger, type AccordionTriggerProps, Alert, AlertDialog, type AlertDialogProps, type AlertProps, type AlertVariant, type AspectRatio, type AspectRatioPreset, Avatar, type AvatarProps, type AvatarSize, Badge, type BadgeProps, type BadgeVariant, BrandIcon, type BrandIconProps, type BrandIconSize, type BrandIconVariant, Breadcrumb, BreadcrumbItem, type BreadcrumbItemProps, BreadcrumbLink, type BreadcrumbLinkProps, type BreadcrumbProps, Button, type ButtonProps, type ButtonSize, type ButtonVariant, Card, type CardBodyProps, type CardFooterProps, type CardHeaderProps, type CardMediaProps, type CardProps, type CardVariant, ChatHistory, type ChatHistoryItem, type ChatHistoryProps, Checkbox, type CheckboxProps, Col, type ColOffset, type ColOrder, type ColProps, type ColSpan, ColorSwatch, type ColorSwatchProps, ConfirmDialog, type ConfirmDialogProps, Container, type ContainerProps, type ContainerSize, Divider, type DividerProps, Drawer, type DrawerPosition, type DrawerProps, HelperText, type HelperTextProps, ImageCard, type ImageCardProps, Input, type InputAddonProps, type InputElementProps, InputGroup, type InputGroupProps, InputLeftAddon, InputLeftElement, type InputProps, InputRightAddon, InputRightElement, InputWrapper, type InputWrapperProps, Label, type LabelProps, List, ListItem, type ListItemProps, ListItemText, type ListItemTextProps, type ListProps, ListSubheader, type ListSubheaderProps, MarkdownContent, type MarkdownContentProps, Menu, MenuContent, type MenuContentProps, MenuItem, type MenuItemProps, MenuLabel, type MenuProps, MenuSeparator, MenuTrigger, type MenuTriggerProps, Message, type MessageProps, type MessageVariant, Modal, type ModalProps, Navbar, NavbarBrand, type NavbarBrandProps, NavbarContent, type NavbarContentProps, NavbarDivider, NavbarItem, type NavbarItemProps, NavbarLink, type NavbarLinkProps, type NavbarProps, Pagination, type PaginationProps, Popover, type PopoverAlign, type PopoverPosition, type PopoverProps, Progress, type ProgressProps, PromptDialog, type PromptDialogProps, Radio, type RadioProps, Row, type RowAlign, type RowGutter, type RowJustify, type RowProps, SectionHeading, type SectionHeadingLevel, type SectionHeadingProps, Select, type SelectOption, type SelectProps, Skeleton, type SkeletonProps, Slider, type SliderProps, Spinner, type SpinnerProps, Stack, type StackDirection, type StackGap, type StackProps, type Step, type StepStatus, Stepper, type StepperProps, StreamingCursor, type StreamingCursorProps, Switch, type SwitchProps, Tab, TabList, type TabListProps, TabPanel, type TabPanelProps, type TabProps, Table, TableBody, type TableBodyProps, TableCaption, type TableCaptionProps, TableCell, type TableCellProps, TableFooter, type TableFooterProps, TableHead, type TableHeadProps, TableHeader, type TableHeaderProps, type TableProps, TableRow, type TableRowProps, Tabs, type TabsProps, Textarea, type TextareaProps, type ToastData, type ToastPosition, ToastProvider, type ToastProviderProps, type ToastVariant, Tooltip, type TooltipProps, type VideoAspectRatio, type VideoAspectRatioPreset, VideoCard, type VideoCardProps, useToast, version };
package/dist/index.d.ts CHANGED
@@ -39,6 +39,7 @@ interface CardMediaProps extends React.HTMLAttributes<HTMLDivElement> {
39
39
  alt?: string;
40
40
  aspect?: 'video' | 'square' | 'wide';
41
41
  position?: 'top' | 'bottom';
42
+ isVideo?: boolean;
42
43
  }
43
44
  declare const Card: React.ForwardRefExoticComponent<CardProps & React.RefAttributes<HTMLDivElement>> & {
44
45
  Header: React.ForwardRefExoticComponent<CardHeaderProps & React.RefAttributes<HTMLDivElement>>;
@@ -571,6 +572,25 @@ interface ImageCardProps extends Omit<CardProps, 'title'> {
571
572
  }
572
573
  declare const ImageCard: React.ForwardRefExoticComponent<ImageCardProps & React.RefAttributes<HTMLDivElement>>;
573
574
 
575
+ type VideoAspectRatioPreset = 'video' | 'cinema' | 'square';
576
+ type VideoAspectRatio = VideoAspectRatioPreset | `${number}/${number}`;
577
+ interface VideoCardProps extends Omit<CardProps, 'title'> {
578
+ src: string;
579
+ title?: React.ReactNode;
580
+ subtitle?: React.ReactNode;
581
+ aspectRatio?: VideoAspectRatio;
582
+ playing?: boolean;
583
+ controls?: boolean;
584
+ light?: boolean | string;
585
+ volume?: number;
586
+ muted?: boolean;
587
+ loop?: boolean;
588
+ mediaClassName?: string;
589
+ contentClassName?: string;
590
+ playerProps?: any;
591
+ }
592
+ declare const VideoCard: React.ForwardRefExoticComponent<VideoCardProps & React.RefAttributes<HTMLDivElement>>;
593
+
574
594
  type SectionHeadingLevel = 'h2' | 'h3';
575
595
  interface SectionHeadingProps extends React.HTMLAttributes<HTMLHeadingElement> {
576
596
  level?: SectionHeadingLevel;
@@ -589,4 +609,4 @@ declare const SectionHeading: React.ForwardRefExoticComponent<SectionHeadingProp
589
609
 
590
610
  declare const version = "2.0.0";
591
611
 
592
- export { Accordion, AccordionContent, type AccordionContentProps, AccordionItem, type AccordionItemProps, type AccordionProps, AccordionTrigger, type AccordionTriggerProps, Alert, AlertDialog, type AlertDialogProps, type AlertProps, type AlertVariant, type AspectRatio, type AspectRatioPreset, Avatar, type AvatarProps, type AvatarSize, Badge, type BadgeProps, type BadgeVariant, BrandIcon, type BrandIconProps, type BrandIconSize, type BrandIconVariant, Breadcrumb, BreadcrumbItem, type BreadcrumbItemProps, BreadcrumbLink, type BreadcrumbLinkProps, type BreadcrumbProps, Button, type ButtonProps, type ButtonSize, type ButtonVariant, Card, type CardBodyProps, type CardFooterProps, type CardHeaderProps, type CardMediaProps, type CardProps, type CardVariant, ChatHistory, type ChatHistoryItem, type ChatHistoryProps, Checkbox, type CheckboxProps, Col, type ColOffset, type ColOrder, type ColProps, type ColSpan, ColorSwatch, type ColorSwatchProps, ConfirmDialog, type ConfirmDialogProps, Container, type ContainerProps, type ContainerSize, Divider, type DividerProps, Drawer, type DrawerPosition, type DrawerProps, HelperText, type HelperTextProps, ImageCard, type ImageCardProps, Input, type InputAddonProps, type InputElementProps, InputGroup, type InputGroupProps, InputLeftAddon, InputLeftElement, type InputProps, InputRightAddon, InputRightElement, InputWrapper, type InputWrapperProps, Label, type LabelProps, List, ListItem, type ListItemProps, ListItemText, type ListItemTextProps, type ListProps, ListSubheader, type ListSubheaderProps, MarkdownContent, type MarkdownContentProps, Menu, MenuContent, type MenuContentProps, MenuItem, type MenuItemProps, MenuLabel, type MenuProps, MenuSeparator, MenuTrigger, type MenuTriggerProps, Message, type MessageProps, type MessageVariant, Modal, type ModalProps, Navbar, NavbarBrand, type NavbarBrandProps, NavbarContent, type NavbarContentProps, NavbarDivider, NavbarItem, type NavbarItemProps, NavbarLink, type NavbarLinkProps, type NavbarProps, Pagination, type PaginationProps, Popover, type PopoverAlign, type PopoverPosition, type PopoverProps, Progress, type ProgressProps, PromptDialog, type PromptDialogProps, Radio, type RadioProps, Row, type RowAlign, type RowGutter, type RowJustify, type RowProps, SectionHeading, type SectionHeadingLevel, type SectionHeadingProps, Select, type SelectOption, type SelectProps, Skeleton, type SkeletonProps, Slider, type SliderProps, Spinner, type SpinnerProps, Stack, type StackDirection, type StackGap, type StackProps, type Step, type StepStatus, Stepper, type StepperProps, StreamingCursor, type StreamingCursorProps, Switch, type SwitchProps, Tab, TabList, type TabListProps, TabPanel, type TabPanelProps, type TabProps, Table, TableBody, type TableBodyProps, TableCaption, type TableCaptionProps, TableCell, type TableCellProps, TableFooter, type TableFooterProps, TableHead, type TableHeadProps, TableHeader, type TableHeaderProps, type TableProps, TableRow, type TableRowProps, Tabs, type TabsProps, Textarea, type TextareaProps, type ToastData, type ToastPosition, ToastProvider, type ToastProviderProps, type ToastVariant, Tooltip, type TooltipProps, useToast, version };
612
+ export { Accordion, AccordionContent, type AccordionContentProps, AccordionItem, type AccordionItemProps, type AccordionProps, AccordionTrigger, type AccordionTriggerProps, Alert, AlertDialog, type AlertDialogProps, type AlertProps, type AlertVariant, type AspectRatio, type AspectRatioPreset, Avatar, type AvatarProps, type AvatarSize, Badge, type BadgeProps, type BadgeVariant, BrandIcon, type BrandIconProps, type BrandIconSize, type BrandIconVariant, Breadcrumb, BreadcrumbItem, type BreadcrumbItemProps, BreadcrumbLink, type BreadcrumbLinkProps, type BreadcrumbProps, Button, type ButtonProps, type ButtonSize, type ButtonVariant, Card, type CardBodyProps, type CardFooterProps, type CardHeaderProps, type CardMediaProps, type CardProps, type CardVariant, ChatHistory, type ChatHistoryItem, type ChatHistoryProps, Checkbox, type CheckboxProps, Col, type ColOffset, type ColOrder, type ColProps, type ColSpan, ColorSwatch, type ColorSwatchProps, ConfirmDialog, type ConfirmDialogProps, Container, type ContainerProps, type ContainerSize, Divider, type DividerProps, Drawer, type DrawerPosition, type DrawerProps, HelperText, type HelperTextProps, ImageCard, type ImageCardProps, Input, type InputAddonProps, type InputElementProps, InputGroup, type InputGroupProps, InputLeftAddon, InputLeftElement, type InputProps, InputRightAddon, InputRightElement, InputWrapper, type InputWrapperProps, Label, type LabelProps, List, ListItem, type ListItemProps, ListItemText, type ListItemTextProps, type ListProps, ListSubheader, type ListSubheaderProps, MarkdownContent, type MarkdownContentProps, Menu, MenuContent, type MenuContentProps, MenuItem, type MenuItemProps, MenuLabel, type MenuProps, MenuSeparator, MenuTrigger, type MenuTriggerProps, Message, type MessageProps, type MessageVariant, Modal, type ModalProps, Navbar, NavbarBrand, type NavbarBrandProps, NavbarContent, type NavbarContentProps, NavbarDivider, NavbarItem, type NavbarItemProps, NavbarLink, type NavbarLinkProps, type NavbarProps, Pagination, type PaginationProps, Popover, type PopoverAlign, type PopoverPosition, type PopoverProps, Progress, type ProgressProps, PromptDialog, type PromptDialogProps, Radio, type RadioProps, Row, type RowAlign, type RowGutter, type RowJustify, type RowProps, SectionHeading, type SectionHeadingLevel, type SectionHeadingProps, Select, type SelectOption, type SelectProps, Skeleton, type SkeletonProps, Slider, type SliderProps, Spinner, type SpinnerProps, Stack, type StackDirection, type StackGap, type StackProps, type Step, type StepStatus, Stepper, type StepperProps, StreamingCursor, type StreamingCursorProps, Switch, type SwitchProps, Tab, TabList, type TabListProps, TabPanel, type TabPanelProps, type TabProps, Table, TableBody, type TableBodyProps, TableCaption, type TableCaptionProps, TableCell, type TableCellProps, TableFooter, type TableFooterProps, TableHead, type TableHeadProps, TableHeader, type TableHeaderProps, type TableProps, TableRow, type TableRowProps, Tabs, type TabsProps, Textarea, type TextareaProps, type ToastData, type ToastPosition, ToastProvider, type ToastProviderProps, type ToastVariant, Tooltip, type TooltipProps, type VideoAspectRatio, type VideoAspectRatioPreset, VideoCard, type VideoCardProps, useToast, version };
package/dist/index.js CHANGED
@@ -111,6 +111,7 @@ __export(index_exports, {
111
111
  Textarea: () => Textarea,
112
112
  ToastProvider: () => ToastProvider,
113
113
  Tooltip: () => Tooltip,
114
+ VideoCard: () => VideoCard,
114
115
  useToast: () => useToast,
115
116
  version: () => version
116
117
  });
@@ -120,8 +121,10 @@ module.exports = __toCommonJS(index_exports);
120
121
  var import_react = __toESM(require("react"));
121
122
 
122
123
  // src/utils/cx.ts
123
- function cx(...classes) {
124
- return classes.filter(Boolean).join(" ");
124
+ var import_tailwind_merge = require("tailwind-merge");
125
+ var import_clsx = require("clsx");
126
+ function cx(...inputs) {
127
+ return (0, import_tailwind_merge.twMerge)((0, import_clsx.clsx)(inputs));
125
128
  }
126
129
 
127
130
  // src/components/Button.tsx
@@ -194,6 +197,7 @@ Input.displayName = "Input";
194
197
 
195
198
  // src/components/Card.tsx
196
199
  var import_react3 = __toESM(require("react"));
200
+ var import_react_player = __toESM(require("react-player"));
197
201
  var import_lucide_react = require("lucide-react");
198
202
  var VARIANT_STYLES = {
199
203
  default: "bg-charcoal shadow-sm border border-gold/30",
@@ -227,7 +231,13 @@ var CardBase = import_react3.default.forwardRef(
227
231
  ...props
228
232
  },
229
233
  children,
230
- selected && /* @__PURE__ */ import_react3.default.createElement("div", { className: "absolute top-3 right-3 flex items-center justify-center h-6 w-6 rounded-full bg-gold text-obsidian" }, /* @__PURE__ */ import_react3.default.createElement(import_lucide_react.Check, { className: "h-4 w-4" }))
234
+ selected && /* @__PURE__ */ import_react3.default.createElement(
235
+ "div",
236
+ {
237
+ className: "absolute top-3 right-3 flex items-center justify-center h-6 w-6 rounded-full bg-gold text-obsidian"
238
+ },
239
+ /* @__PURE__ */ import_react3.default.createElement(import_lucide_react.Check, { className: "h-4 w-4" })
240
+ )
231
241
  );
232
242
  }
233
243
  );
@@ -277,7 +287,16 @@ var CardFooter = import_react3.default.forwardRef(
277
287
  );
278
288
  CardFooter.displayName = "CardFooter";
279
289
  var CardMedia = import_react3.default.forwardRef(
280
- ({ src, alt = "", aspect = "video", position = "top", className, children, ...props }, ref) => {
290
+ ({
291
+ src,
292
+ alt = "",
293
+ aspect = "video",
294
+ position = "top",
295
+ isVideo = false,
296
+ className,
297
+ children,
298
+ ...props
299
+ }, ref) => {
281
300
  const aspectClass = {
282
301
  video: "aspect-video",
283
302
  square: "aspect-square",
@@ -288,7 +307,7 @@ var CardMedia = import_react3.default.forwardRef(
288
307
  {
289
308
  ref,
290
309
  className: cx(
291
- "overflow-hidden",
310
+ "overflow-hidden relative",
292
311
  aspectClass,
293
312
  position === "top" && "border-b border-ash",
294
313
  position === "bottom" && "border-t border-ash",
@@ -296,7 +315,16 @@ var CardMedia = import_react3.default.forwardRef(
296
315
  ),
297
316
  ...props
298
317
  },
299
- src ? /* @__PURE__ */ import_react3.default.createElement("img", { src, alt, className: "w-full h-full object-cover" }) : children
318
+ src ? isVideo ? /* @__PURE__ */ import_react3.default.createElement(
319
+ import_react_player.default,
320
+ {
321
+ src,
322
+ width: "100%",
323
+ height: "100%",
324
+ className: "absolute top-0 left-0",
325
+ controls: true
326
+ }
327
+ ) : /* @__PURE__ */ import_react3.default.createElement("img", { src, alt, className: "w-full h-full object-cover" }) : children
300
328
  );
301
329
  }
302
330
  );
@@ -3410,21 +3438,91 @@ var ImageCard = import_react45.default.forwardRef(
3410
3438
  },
3411
3439
  overlay
3412
3440
  )
3413
- ), (title || subtitle || children) && /* @__PURE__ */ import_react45.default.createElement("div", { className: cx("px-4 pt-4", contentClassName) }, title && /* @__PURE__ */ import_react45.default.createElement("h4", { className: "text-lg font-semibold leading-tight" }, title), subtitle && /* @__PURE__ */ import_react45.default.createElement("p", { className: "text-sm text-silver leading-normal" }, subtitle), children));
3441
+ ), (title || subtitle || children) && /* @__PURE__ */ import_react45.default.createElement("div", { className: cx("px-4 py-4", contentClassName) }, title && /* @__PURE__ */ import_react45.default.createElement("h4", { className: "text-lg font-semibold leading-tight" }, title), subtitle && /* @__PURE__ */ import_react45.default.createElement("p", { className: "text-sm text-silver leading-normal" }, subtitle), children));
3414
3442
  }
3415
3443
  );
3416
3444
  ImageCard.displayName = "ImageCard";
3417
3445
 
3418
- // src/components/SectionHeading.tsx
3446
+ // src/components/VideoCard.tsx
3419
3447
  var import_react46 = __toESM(require("react"));
3448
+ var import_react_player2 = __toESM(require("react-player"));
3449
+ var ASPECT_RATIO_PRESETS2 = {
3450
+ video: "16 / 9",
3451
+ cinema: "21 / 9",
3452
+ square: "1 / 1"
3453
+ };
3454
+ function resolveAspectRatio2(ratio) {
3455
+ if (ratio in ASPECT_RATIO_PRESETS2) {
3456
+ return ASPECT_RATIO_PRESETS2[ratio];
3457
+ }
3458
+ return ratio.replace("/", " / ");
3459
+ }
3460
+ var VideoCard = import_react46.default.forwardRef(
3461
+ ({
3462
+ src,
3463
+ title,
3464
+ subtitle,
3465
+ aspectRatio = "video",
3466
+ playing = false,
3467
+ controls = true,
3468
+ light = false,
3469
+ volume,
3470
+ muted = false,
3471
+ loop = false,
3472
+ mediaClassName,
3473
+ contentClassName,
3474
+ className,
3475
+ children,
3476
+ playerProps,
3477
+ ...props
3478
+ }, ref) => {
3479
+ const hasAspectRatio = aspectRatio !== void 0;
3480
+ return /* @__PURE__ */ import_react46.default.createElement(Card, { ref, className: cx("p-0 overflow-hidden group w-full", className), ...props }, /* @__PURE__ */ import_react46.default.createElement(
3481
+ "div",
3482
+ {
3483
+ className: cx(
3484
+ "relative bg-black overflow-hidden",
3485
+ mediaClassName
3486
+ ),
3487
+ style: { aspectRatio: resolveAspectRatio2(aspectRatio) }
3488
+ },
3489
+ /* @__PURE__ */ import_react46.default.createElement(
3490
+ import_react_player2.default,
3491
+ {
3492
+ src,
3493
+ playing,
3494
+ controls,
3495
+ light,
3496
+ volume,
3497
+ muted,
3498
+ loop,
3499
+ width: "100%",
3500
+ height: "100%",
3501
+ className: "absolute top-0 left-0",
3502
+ ...playerProps
3503
+ }
3504
+ )
3505
+ ), (title || subtitle || children) && /* @__PURE__ */ import_react46.default.createElement("div", { className: cx("px-4 py-4", contentClassName) }, title && /* @__PURE__ */ import_react46.default.createElement("h4", { className: "text-lg font-semibold leading-tight" }, title), subtitle && /* @__PURE__ */ import_react46.default.createElement(
3506
+ "p",
3507
+ {
3508
+ className: "text-sm text-silver leading-normal mt-1"
3509
+ },
3510
+ subtitle
3511
+ ), children));
3512
+ }
3513
+ );
3514
+ VideoCard.displayName = "VideoCard";
3515
+
3516
+ // src/components/SectionHeading.tsx
3517
+ var import_react47 = __toESM(require("react"));
3420
3518
  var levelStyles = {
3421
3519
  h2: "text-2xl mb-4",
3422
3520
  h3: "text-xl mb-3"
3423
3521
  };
3424
- var SectionHeading = import_react46.default.forwardRef(
3522
+ var SectionHeading = import_react47.default.forwardRef(
3425
3523
  ({ level = "h2", children, className, ...rest }, ref) => {
3426
3524
  const Component = level;
3427
- return /* @__PURE__ */ import_react46.default.createElement(
3525
+ return /* @__PURE__ */ import_react47.default.createElement(
3428
3526
  Component,
3429
3527
  {
3430
3528
  ref,
@@ -3526,6 +3624,7 @@ var version = "2.0.0";
3526
3624
  Textarea,
3527
3625
  ToastProvider,
3528
3626
  Tooltip,
3627
+ VideoCard,
3529
3628
  useToast,
3530
3629
  version
3531
3630
  });