@page-speed/lightbox 0.2.0 → 0.2.1

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.
@@ -0,0 +1,21 @@
1
+ import React from "react";
2
+ interface HorizontalShowcaseLayoutProps {
3
+ content: React.ReactNode;
4
+ chrome: React.ReactNode;
5
+ footer?: React.ReactNode;
6
+ thumbnails?: React.ReactNode;
7
+ height?: string | number;
8
+ maxWidth?: string | number;
9
+ className?: string;
10
+ style?: React.CSSProperties;
11
+ }
12
+ /**
13
+ * Horizontal showcase layout: large content area at top with
14
+ * footer panel below containing caption/metadata on left and
15
+ * thumbnail strip on right.
16
+ *
17
+ * Based on the design mockup showing a large image with
18
+ * caption text on the left and horizontal thumbnail strip on the right.
19
+ */
20
+ export declare function HorizontalShowcaseLayout({ content, chrome, footer, thumbnails, height, maxWidth, className, style, }: HorizontalShowcaseLayoutProps): import("react/jsx-runtime").JSX.Element;
21
+ export {};
@@ -0,0 +1,25 @@
1
+ import React from "react";
2
+ interface VerticalPeekLayoutProps {
3
+ content: React.ReactNode;
4
+ prevContent?: React.ReactNode;
5
+ nextContent?: React.ReactNode;
6
+ chrome: React.ReactNode;
7
+ footer?: React.ReactNode;
8
+ height?: string | number;
9
+ maxWidth?: string | number;
10
+ className?: string;
11
+ style?: React.CSSProperties;
12
+ onPrev?: () => void;
13
+ onNext?: () => void;
14
+ canPrev?: boolean;
15
+ canNext?: boolean;
16
+ }
17
+ /**
18
+ * Vertical peek layout: carousel-style display with adjacent slides
19
+ * visible on the sides. Ideal for portrait/vertical video content.
20
+ *
21
+ * Based on the design mockup showing a centered vertical video with
22
+ * partially visible adjacent slides on left and right sides.
23
+ */
24
+ export declare function VerticalPeekLayout({ content, prevContent, nextContent, chrome, footer, height, maxWidth, className, style, onPrev, onNext, canPrev, canNext, }: VerticalPeekLayoutProps): import("react/jsx-runtime").JSX.Element;
25
+ export {};
@@ -0,0 +1,20 @@
1
+ import { LightboxItem, LightboxThumbnailsConfig } from "../types";
2
+ interface LightboxThumbnailsProps {
3
+ items: LightboxItem[];
4
+ currentIndex: number;
5
+ onSelect: (index: number) => void;
6
+ config?: LightboxThumbnailsConfig;
7
+ className?: string;
8
+ }
9
+ /**
10
+ * Thumbnail navigation component for the lightbox.
11
+ *
12
+ * Supports two variants:
13
+ * - "strip": Horizontal scrollable strip of thumbnails
14
+ * - "grid": Grid layout for sidebar placement
15
+ *
16
+ * Thumbnails use the item's `thumbnail` property if available,
17
+ * falling back to `src` for images.
18
+ */
19
+ export declare function LightboxThumbnails({ items, currentIndex, onSelect, config, className, }: LightboxThumbnailsProps): import("react/jsx-runtime").JSX.Element | null;
20
+ export {};
@@ -2,8 +2,11 @@ export { Lightbox } from "./Lightbox";
2
2
  export { LightboxOverlay } from "./LightboxOverlay";
3
3
  export { LightboxContent } from "./LightboxContent";
4
4
  export { LightboxChrome } from "./LightboxChrome";
5
+ export { LightboxThumbnails } from "./LightboxThumbnails";
5
6
  export { HorizontalLayout } from "./Layouts/HorizontalLayout";
7
+ export { HorizontalShowcaseLayout } from "./Layouts/HorizontalShowcaseLayout";
6
8
  export { VerticalSplitLayout } from "./Layouts/VerticalSplitLayout";
9
+ export { VerticalPeekLayout } from "./Layouts/VerticalPeekLayout";
7
10
  export { CustomSlideLayout } from "./Layouts/CustomSlideLayout";
8
11
  export { FullscreenLayout } from "./Layouts/FullscreenLayout";
9
12
  export { InlineLayout } from "./Layouts/InlineLayout";