@mantine-bites/lightbox 1.1.0 → 1.3.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/README.md +1 -1
- package/dist/cjs/Lightbox.cjs +16 -11
- package/dist/cjs/Lightbox.cjs.map +1 -1
- package/dist/cjs/components/LightboxCaption.cjs +30 -0
- package/dist/cjs/components/LightboxCaption.cjs.map +1 -0
- package/dist/cjs/components/LightboxControls.cjs +11 -1
- package/dist/cjs/components/LightboxControls.cjs.map +1 -1
- package/dist/cjs/components/LightboxRoot.cjs +14 -1
- package/dist/cjs/components/LightboxRoot.cjs.map +1 -1
- package/dist/cjs/components/LightboxSlide.cjs +39 -28
- package/dist/cjs/components/LightboxSlide.cjs.map +1 -1
- package/dist/cjs/components/LightboxSlides.cjs +10 -0
- package/dist/cjs/components/LightboxSlides.cjs.map +1 -1
- package/dist/cjs/components/LightboxThumbnails.cjs +8 -4
- package/dist/cjs/components/LightboxThumbnails.cjs.map +1 -1
- package/dist/cjs/components/LightboxThumbnailsButton.cjs +41 -0
- package/dist/cjs/components/LightboxThumbnailsButton.cjs.map +1 -0
- package/dist/cjs/components/icons/HideThumbnails.cjs +28 -0
- package/dist/cjs/components/icons/HideThumbnails.cjs.map +1 -0
- package/dist/cjs/components/icons/ShowThumbnails.cjs +28 -0
- package/dist/cjs/components/icons/ShowThumbnails.cjs.map +1 -0
- package/dist/cjs/context/LightboxContext.cjs.map +1 -1
- package/dist/cjs/hooks/useScrollButtons.cjs +22 -0
- package/dist/cjs/hooks/useScrollButtons.cjs.map +1 -0
- package/dist/cjs/index.cjs +2 -0
- package/dist/cjs/index.cjs.map +1 -1
- package/dist/cjs/styles/Lightbox.module.css.cjs +1 -1
- package/dist/esm/Lightbox.mjs +16 -11
- package/dist/esm/Lightbox.mjs.map +1 -1
- package/dist/esm/components/LightboxCaption.mjs +28 -0
- package/dist/esm/components/LightboxCaption.mjs.map +1 -0
- package/dist/esm/components/LightboxControls.mjs +11 -1
- package/dist/esm/components/LightboxControls.mjs.map +1 -1
- package/dist/esm/components/LightboxRoot.mjs +15 -2
- package/dist/esm/components/LightboxRoot.mjs.map +1 -1
- package/dist/esm/components/LightboxSlide.mjs +41 -30
- package/dist/esm/components/LightboxSlide.mjs.map +1 -1
- package/dist/esm/components/LightboxSlides.mjs +11 -1
- package/dist/esm/components/LightboxSlides.mjs.map +1 -1
- package/dist/esm/components/LightboxThumbnails.mjs +8 -4
- package/dist/esm/components/LightboxThumbnails.mjs.map +1 -1
- package/dist/esm/components/LightboxThumbnailsButton.mjs +39 -0
- package/dist/esm/components/LightboxThumbnailsButton.mjs.map +1 -0
- package/dist/esm/components/icons/HideThumbnails.mjs +26 -0
- package/dist/esm/components/icons/HideThumbnails.mjs.map +1 -0
- package/dist/esm/components/icons/ShowThumbnails.mjs +26 -0
- package/dist/esm/components/icons/ShowThumbnails.mjs.map +1 -0
- package/dist/esm/context/LightboxContext.mjs.map +1 -1
- package/dist/esm/hooks/useScrollButtons.mjs +20 -0
- package/dist/esm/hooks/useScrollButtons.mjs.map +1 -0
- package/dist/esm/index.mjs +1 -0
- package/dist/esm/index.mjs.map +1 -1
- package/dist/esm/styles/Lightbox.module.css.mjs +1 -1
- package/dist/styles.css +1 -1
- package/dist/styles.layer.css +1 -1
- package/dist/types/Lightbox.d.ts +7 -2
- package/dist/types/Lightbox.d.ts.map +1 -1
- package/dist/types/__tests__/LightboxCaption.test.d.ts +2 -0
- package/dist/types/__tests__/LightboxCaption.test.d.ts.map +1 -0
- package/dist/types/components/LightboxCaption.d.ts +19 -0
- package/dist/types/components/LightboxCaption.d.ts.map +1 -0
- package/dist/types/components/LightboxControls.d.ts.map +1 -1
- package/dist/types/components/LightboxRoot.d.ts +4 -1
- package/dist/types/components/LightboxRoot.d.ts.map +1 -1
- package/dist/types/components/LightboxSlide.d.ts.map +1 -1
- package/dist/types/components/LightboxSlides.d.ts +3 -1
- package/dist/types/components/LightboxSlides.d.ts.map +1 -1
- package/dist/types/components/LightboxThumbnails.d.ts +3 -1
- package/dist/types/components/LightboxThumbnails.d.ts.map +1 -1
- package/dist/types/components/LightboxThumbnailsButton.d.ts +17 -0
- package/dist/types/components/LightboxThumbnailsButton.d.ts.map +1 -0
- package/dist/types/components/icons/HideThumbnails.d.ts +3 -0
- package/dist/types/components/icons/HideThumbnails.d.ts.map +1 -0
- package/dist/types/components/icons/ShowThumbnails.d.ts +3 -0
- package/dist/types/components/icons/ShowThumbnails.d.ts.map +1 -0
- package/dist/types/context/LightboxContext.d.ts +2 -0
- package/dist/types/context/LightboxContext.d.ts.map +1 -1
- package/dist/types/hooks/useScrollButtons.d.ts +6 -0
- package/dist/types/hooks/useScrollButtons.d.ts.map +1 -0
- package/dist/types/index.d.mts +2 -0
- package/dist/types/index.d.ts +2 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/stories/Lightbox.story.d.ts +17 -0
- package/dist/types/stories/Lightbox.story.d.ts.map +1 -1
- package/package.json +2 -1
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
'use strict';
|
|
3
|
+
|
|
4
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
5
|
+
|
|
6
|
+
const ShowThumbnails = (props) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
7
|
+
"svg",
|
|
8
|
+
{
|
|
9
|
+
"aria-hidden": "true",
|
|
10
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
11
|
+
width: "16",
|
|
12
|
+
height: "16",
|
|
13
|
+
viewBox: "0 0 24 24",
|
|
14
|
+
fill: "none",
|
|
15
|
+
stroke: "currentColor",
|
|
16
|
+
strokeWidth: "2",
|
|
17
|
+
strokeLinecap: "round",
|
|
18
|
+
strokeLinejoin: "round",
|
|
19
|
+
...props,
|
|
20
|
+
children: [
|
|
21
|
+
/* @__PURE__ */ jsxRuntime.jsx("rect", { x: "2", y: "14", width: "20", height: "6", rx: "1" }),
|
|
22
|
+
/* @__PURE__ */ jsxRuntime.jsx("rect", { x: "2", y: "4", width: "20", height: "8", rx: "1" })
|
|
23
|
+
]
|
|
24
|
+
}
|
|
25
|
+
);
|
|
26
|
+
|
|
27
|
+
exports.ShowThumbnails = ShowThumbnails;
|
|
28
|
+
//# sourceMappingURL=ShowThumbnails.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ShowThumbnails.cjs","sources":["../../../../src/components/icons/ShowThumbnails.tsx"],"sourcesContent":["import type { SVGProps } from \"react\";\n\nexport const ShowThumbnails = (props: SVGProps<SVGSVGElement>) => (\n\t<svg\n\t\taria-hidden=\"true\"\n\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\twidth=\"16\"\n\t\theight=\"16\"\n\t\tviewBox=\"0 0 24 24\"\n\t\tfill=\"none\"\n\t\tstroke=\"currentColor\"\n\t\tstrokeWidth=\"2\"\n\t\tstrokeLinecap=\"round\"\n\t\tstrokeLinejoin=\"round\"\n\t\t{...props}\n\t>\n\t\t<rect x=\"2\" y=\"14\" width=\"20\" height=\"6\" rx=\"1\" />\n\t\t<rect x=\"2\" y=\"4\" width=\"20\" height=\"8\" rx=\"1\" />\n\t</svg>\n);\n"],"names":["jsxs","jsx"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LightboxContext.cjs","sources":["../../../src/context/LightboxContext.ts"],"sourcesContent":["import { createSafeContext, type GetStylesApi } from \"@mantine/core\";\nimport type { EmblaCarouselType } from \"embla-carousel\";\nimport type { PointerEvent as ReactPointerEvent, RefObject } from \"react\";\nimport type { LightboxRootFactory } from \"../components/LightboxRoot.js\";\nimport type { ZoomOffset } from \"../utils/zoom.js\";\n\nexport interface LightboxContext {\n\tgetStyles: GetStylesApi<LightboxRootFactory>;\n\topened: boolean;\n\tcurrentIndex: number;\n\tslideCount: number | null;\n\tslidesEmblaRef: RefObject<EmblaCarouselType | null>;\n\tthumbnailsEmblaRef: RefObject<EmblaCarouselType | null>;\n\tsetCurrentIndex: (index: number) => void;\n\tsetSlideCount: (count: number | null) => void;\n\tonClose: () => void;\n\tonOutsideClick: () => void;\n\tonThumbnailClick: (index: number) => void;\n\tonScrollPrev: () => void;\n\tonScrollNext: () => void;\n\torientation: \"horizontal\" | \"vertical\";\n\t// AutoPlay\n\tcanAutoPlay: boolean;\n\tisPlaying: boolean;\n\ttoggleAutoPlay: () => void;\n\tonSlidesEmblaApi: (embla: EmblaCarouselType) => void;\n\t// Fullscreen\n\twithFullscreen: boolean;\n\tisFullscreen: boolean;\n\ttoggleFullscreen: () => void;\n\t// Zoom\n\twithZoom: boolean;\n\tisZoomed: boolean;\n\tisZoomedRef: RefObject<boolean>;\n\tisDraggingZoom: boolean;\n\tcanZoomCurrent: boolean;\n\tzoomOffset: ZoomOffset;\n\tzoomScale: number;\n\tactiveZoomContainerRef: RefObject<HTMLDivElement | null>;\n\ttoggleZoom: () => void;\n\tupdateCanZoomAvailability: () => void;\n\thandleZoomPointerDown: (event: ReactPointerEvent<HTMLDivElement>) => void;\n\thandleZoomPointerMove: (event: ReactPointerEvent<HTMLDivElement>) => void;\n\thandleZoomPointerEnd: (event: ReactPointerEvent<HTMLDivElement>) => void;\n}\n\nexport const [LightboxProvider, useLightboxContext] =\n\tcreateSafeContext<LightboxContext>(\n\t\t\"Lightbox component was not found in the tree\",\n\t);\n"],"names":["createSafeContext"],"mappings":";;;;;AAEY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAgB,CAAA,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAkB,CAAC,GAAGA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAiB,CAAA;AACvE,CAAA,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACF,CAAA,CAAA;;;"}
|
|
1
|
+
{"version":3,"file":"LightboxContext.cjs","sources":["../../../src/context/LightboxContext.ts"],"sourcesContent":["import { createSafeContext, type GetStylesApi } from \"@mantine/core\";\nimport type { EmblaCarouselType } from \"embla-carousel\";\nimport type { PointerEvent as ReactPointerEvent, RefObject } from \"react\";\nimport type { LightboxRootFactory } from \"../components/LightboxRoot.js\";\nimport type { ZoomOffset } from \"../utils/zoom.js\";\n\nexport interface LightboxContext {\n\tgetStyles: GetStylesApi<LightboxRootFactory>;\n\topened: boolean;\n\tcurrentIndex: number;\n\tinitialSlideRef: RefObject<number>;\n\tslideCount: number | null;\n\tslidesEmblaRef: RefObject<EmblaCarouselType | null>;\n\tthumbnailsEmblaRef: RefObject<EmblaCarouselType | null>;\n\tsetCurrentIndex: (index: number) => void;\n\tsetSlideCount: (count: number | null) => void;\n\tonClose: () => void;\n\tonOutsideClick: () => void;\n\tonThumbnailClick: (index: number) => void;\n\tslidesEmblaApi: EmblaCarouselType | null;\n\tonScrollPrev: () => void;\n\tonScrollNext: () => void;\n\torientation: \"horizontal\" | \"vertical\";\n\t// AutoPlay\n\tcanAutoPlay: boolean;\n\tisPlaying: boolean;\n\ttoggleAutoPlay: () => void;\n\tonSlidesEmblaApi: (embla: EmblaCarouselType) => void;\n\t// Fullscreen\n\twithFullscreen: boolean;\n\tisFullscreen: boolean;\n\ttoggleFullscreen: () => void;\n\t// Zoom\n\twithZoom: boolean;\n\tisZoomed: boolean;\n\tisZoomedRef: RefObject<boolean>;\n\tisDraggingZoom: boolean;\n\tcanZoomCurrent: boolean;\n\tzoomOffset: ZoomOffset;\n\tzoomScale: number;\n\tactiveZoomContainerRef: RefObject<HTMLDivElement | null>;\n\ttoggleZoom: () => void;\n\tupdateCanZoomAvailability: () => void;\n\thandleZoomPointerDown: (event: ReactPointerEvent<HTMLDivElement>) => void;\n\thandleZoomPointerMove: (event: ReactPointerEvent<HTMLDivElement>) => void;\n\thandleZoomPointerEnd: (event: ReactPointerEvent<HTMLDivElement>) => void;\n}\n\nexport const [LightboxProvider, useLightboxContext] =\n\tcreateSafeContext<LightboxContext>(\n\t\t\"Lightbox component was not found in the tree\",\n\t);\n"],"names":["createSafeContext"],"mappings":";;;;;AAEY,CAAA,CAAA,CAAA,CAAA,CAAA,CAAC,CAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAgB,CAAA,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAkB,CAAC,GAAGA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAiB,CAAA;AACvE,CAAA,CAAE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACF,CAAA,CAAA;;;"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
'use strict';
|
|
3
|
+
|
|
4
|
+
var React = require('react');
|
|
5
|
+
|
|
6
|
+
const useScrollButtons = (emblaApi) => {
|
|
7
|
+
const [prevBtnDisabled, setPrevBtnDisabled] = React.useState(true);
|
|
8
|
+
const [nextBtnDisabled, setNextBtnDisabled] = React.useState(true);
|
|
9
|
+
const onSelect = React.useCallback((api) => {
|
|
10
|
+
setPrevBtnDisabled(!api.canScrollPrev());
|
|
11
|
+
setNextBtnDisabled(!api.canScrollNext());
|
|
12
|
+
}, []);
|
|
13
|
+
React.useEffect(() => {
|
|
14
|
+
if (!emblaApi) return;
|
|
15
|
+
onSelect(emblaApi);
|
|
16
|
+
emblaApi.on("select", onSelect).on("reInit", onSelect);
|
|
17
|
+
}, [emblaApi, onSelect]);
|
|
18
|
+
return { prevBtnDisabled, nextBtnDisabled };
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
exports.useScrollButtons = useScrollButtons;
|
|
22
|
+
//# sourceMappingURL=useScrollButtons.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useScrollButtons.cjs","sources":["../../../src/hooks/useScrollButtons.ts"],"sourcesContent":["import type { EmblaCarouselType } from \"embla-carousel\";\nimport { useCallback, useEffect, useState } from \"react\";\n\nexport const useScrollButtons = (emblaApi: EmblaCarouselType | null) => {\n\tconst [prevBtnDisabled, setPrevBtnDisabled] = useState(true);\n\tconst [nextBtnDisabled, setNextBtnDisabled] = useState(true);\n\n\tconst onSelect = useCallback((api: EmblaCarouselType) => {\n\t\tsetPrevBtnDisabled(!api.canScrollPrev());\n\t\tsetNextBtnDisabled(!api.canScrollNext());\n\t}, []);\n\n\tuseEffect(() => {\n\t\tif (!emblaApi) return;\n\n\t\tonSelect(emblaApi);\n\t\temblaApi.on(\"select\", onSelect).on(\"reInit\", onSelect);\n\t}, [emblaApi, onSelect]);\n\n\treturn { prevBtnDisabled, nextBtnDisabled };\n};\n"],"names":["useState","useCallback","useEffect"],"mappings":"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"}
|
package/dist/cjs/index.cjs
CHANGED
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
'use strict';
|
|
3
3
|
|
|
4
4
|
var LightboxAutoplayButton = require('./components/LightboxAutoplayButton.cjs');
|
|
5
|
+
var LightboxCaption = require('./components/LightboxCaption.cjs');
|
|
5
6
|
var LightboxCloseButton = require('./components/LightboxCloseButton.cjs');
|
|
6
7
|
var LightboxControls = require('./components/LightboxControls.cjs');
|
|
7
8
|
var LightboxCounter = require('./components/LightboxCounter.cjs');
|
|
@@ -19,6 +20,7 @@ var Lightbox = require('./Lightbox.cjs');
|
|
|
19
20
|
|
|
20
21
|
|
|
21
22
|
exports.LightboxAutoplayButton = LightboxAutoplayButton.LightboxAutoplayButton;
|
|
23
|
+
exports.LightboxCaption = LightboxCaption.LightboxCaption;
|
|
22
24
|
exports.LightboxCloseButton = LightboxCloseButton.LightboxCloseButton;
|
|
23
25
|
exports.LightboxControls = LightboxControls.LightboxControls;
|
|
24
26
|
exports.LightboxCounter = LightboxCounter.LightboxCounter;
|
package/dist/cjs/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
'use strict';
|
|
3
3
|
|
|
4
|
-
var classes = {"root":"me_4f1afa9a","slides":"me_f5ce649a","slidesViewport":"me_7f838760","slidesContainer":"me_b5439507","control":"me_7b06f0a5","slide":"me_9450faf9","thumbnails":"me_411d1cbf","thumbnailsViewport":"me_3a7e4a85","thumbnailsContainer":"me_59a13682","thumbnail":"me_3be82a34","thumbnailButton":"me_a9abc686","zoomContainer":"me_dfd5db36","zoomContent":"me_2ed9ec6e","toolbar":"me_fe5b16c3","counter":"me_7b66e144"};
|
|
4
|
+
var classes = {"root":"me_4f1afa9a","slides":"me_f5ce649a","slidesViewport":"me_7f838760","slidesContainer":"me_b5439507","control":"me_7b06f0a5","slide":"me_9450faf9","thumbnails":"me_411d1cbf","thumbnailsViewport":"me_3a7e4a85","thumbnailsContainer":"me_59a13682","thumbnail":"me_3be82a34","thumbnailButton":"me_a9abc686","zoomContainer":"me_dfd5db36","zoomContent":"me_2ed9ec6e","toolbar":"me_fe5b16c3","counter":"me_7b66e144","caption":"me_633f252e"};
|
|
5
5
|
|
|
6
6
|
module.exports = classes;
|
|
7
7
|
//# sourceMappingURL=Lightbox.module.css.cjs.map
|
package/dist/esm/Lightbox.mjs
CHANGED
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
3
3
|
import { factory, useProps, Image } from '@mantine/core';
|
|
4
4
|
import { LightboxAutoplayButton } from './components/LightboxAutoplayButton.mjs';
|
|
5
|
+
import { LightboxCaption } from './components/LightboxCaption.mjs';
|
|
5
6
|
import { LightboxCloseButton } from './components/LightboxCloseButton.mjs';
|
|
6
7
|
import { LightboxControls } from './components/LightboxControls.mjs';
|
|
7
8
|
import { LightboxCounter } from './components/LightboxCounter.mjs';
|
|
@@ -40,17 +41,20 @@ const Lightbox = factory((_props, ref) => {
|
|
|
40
41
|
withToolbar && /* @__PURE__ */ jsx(LightboxToolbar, {}),
|
|
41
42
|
withCounter && /* @__PURE__ */ jsx(LightboxCounter, { ...counterProps }),
|
|
42
43
|
withControls && /* @__PURE__ */ jsx(LightboxControls, { ...controlsProps }),
|
|
43
|
-
/* @__PURE__ */ jsx(LightboxSlides, { ...slidesProps, children: images.map((img) => /* @__PURE__ */
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
44
|
+
/* @__PURE__ */ jsx(LightboxSlides, { ...slidesProps, children: images.map((img) => /* @__PURE__ */ jsxs(LightboxSlide, { children: [
|
|
45
|
+
/* @__PURE__ */ jsx(
|
|
46
|
+
Image,
|
|
47
|
+
{
|
|
48
|
+
src: img.src,
|
|
49
|
+
fallbackSrc: img.fallbackSrc,
|
|
50
|
+
alt: img.alt ?? "",
|
|
51
|
+
width: img.width,
|
|
52
|
+
height: img.height,
|
|
53
|
+
...slideImageProps
|
|
54
|
+
}
|
|
55
|
+
),
|
|
56
|
+
img.caption && /* @__PURE__ */ jsx(LightboxCaption, { children: img.caption })
|
|
57
|
+
] }, img.src)) }),
|
|
54
58
|
withThumbnails && /* @__PURE__ */ jsx(LightboxThumbnails, { ...thumbnailsProps, children: images.map((img) => /* @__PURE__ */ jsx(LightboxThumbnail, { children: /* @__PURE__ */ jsx(
|
|
55
59
|
Image,
|
|
56
60
|
{
|
|
@@ -71,6 +75,7 @@ Lightbox.Counter = LightboxCounter;
|
|
|
71
75
|
Lightbox.Controls = LightboxControls;
|
|
72
76
|
Lightbox.Slides = LightboxSlides;
|
|
73
77
|
Lightbox.Slide = LightboxSlide;
|
|
78
|
+
Lightbox.Caption = LightboxCaption;
|
|
74
79
|
Lightbox.Thumbnails = LightboxThumbnails;
|
|
75
80
|
Lightbox.Thumbnail = LightboxThumbnail;
|
|
76
81
|
Lightbox.CloseButton = LightboxCloseButton;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Lightbox.mjs","sources":["../../src/Lightbox.tsx"],"sourcesContent":["import {\n\ttype Factory,\n\tfactory,\n\tImage,\n\ttype ImageProps,\n\tuseProps,\n} from \"@mantine/core\";\nimport { LightboxAutoplayButton } from \"./components/LightboxAutoplayButton.js\";\nimport { LightboxCloseButton } from \"./components/LightboxCloseButton.js\";\nimport {\n\tLightboxControls,\n\ttype LightboxControlsProps,\n} from \"./components/LightboxControls.js\";\nimport {\n\tLightboxCounter,\n\ttype LightboxCounterProps,\n} from \"./components/LightboxCounter.js\";\nimport { LightboxFullscreenButton } from \"./components/LightboxFullscreenButton.js\";\nimport {\n\tLightboxRoot,\n\ttype LightboxRootProps,\n} from \"./components/LightboxRoot.js\";\nimport { LightboxSlide } from \"./components/LightboxSlide.js\";\nimport {\n\tLightboxSlides,\n\ttype LightboxSlidesProps,\n} from \"./components/LightboxSlides.js\";\nimport { LightboxThumbnail } from \"./components/LightboxThumbnail.js\";\nimport {\n\tLightboxThumbnails,\n\ttype LightboxThumbnailsProps,\n} from \"./components/LightboxThumbnails.js\";\nimport { LightboxToolbar } from \"./components/LightboxToolbar.js\";\nimport { LightboxZoomButton } from \"./components/LightboxZoomButton.js\";\n\ntype LightboxImageBaseProps = Omit<\n\tImageProps,\n\t| \"src\"\n\t| \"fallbackSrc\"\n\t| \"fit\"\n\t| \"w\"\n\t| \"width\"\n\t| \"h\"\n\t| \"height\"\n\t| \"miw\"\n\t| \"minWidth\"\n\t| \"mih\"\n\t| \"minHeight\"\n\t| \"maw\"\n\t| \"maxWidth\"\n\t| \"mah\"\n\t| \"maxHeight\"\n>;\n\nexport type LightboxImageProps = LightboxImageBaseProps & {\n\tcomponent?: any;\n\trenderRoot?: (props: any) => React.ReactNode;\n};\n\nexport interface LightboxImageData {\n\t/** URL for the slide image */\n\tsrc: string;\n\t/** URL used as a fallback if the slide image cannot be loaded */\n\tfallbackSrc?: string;\n\t/** Alt text for the slide image */\n\talt?: string;\n\t/** URL for the thumbnail image, falls back to `src` if omitted */\n\tthumbnailSrc?: string;\n\t/** URL used as a fallback if the thumbnail image cannot be loaded */\n\tfallbackThumbnailSrc?: string;\n\t/** Alt text for the thumbnail image, falls back to `alt` if omitted */\n\tthumbnailAlt?: string;\n\t/** Pre-defined width of the image, only applicable when using next/image */\n\twidth?: number;\n\t/** Pre-defined height of the image, only applicable when using next/image */\n\theight?: number;\n}\n\nexport interface LightboxProps extends Omit<LightboxRootProps, \"children\"> {\n\t/** Array of images to display */\n\timages: LightboxImageData[];\n\t/** Show toolbar (zoom, fullscreen, close buttons), `true` by default */\n\twithToolbar?: boolean;\n\t/** Show prev/next navigation controls, `true` by default */\n\twithControls?: boolean;\n\t/** Show thumbnail strip, `true` by default */\n\twithThumbnails?: boolean;\n\t/** Show slide counter, `true` by default */\n\twithCounter?: boolean;\n\t/** Props passed to the slides carousel (`LightboxSlides`) */\n\tslidesProps?: Pick<\n\t\tLightboxSlidesProps,\n\t\t\"initialSlide\" | \"emblaOptions\" | \"emblaPlugins\"\n\t>;\n\t/** Props passed to the thumbnails carousel (`LightboxThumbnails`) */\n\tthumbnailsProps?: Pick<LightboxThumbnailsProps, \"emblaOptions\">;\n\t/** Props passed to the prev/next controls (`LightboxControls`) */\n\tcontrolsProps?: Pick<LightboxControlsProps, \"size\">;\n\t/** Props passed to the slide counter (`LightboxCounter`) */\n\tcounterProps?: Pick<LightboxCounterProps, \"formatter\">;\n\t/** Props passed to the slide `Image` component */\n\tslideImageProps?: LightboxImageProps;\n\t/** Props passed to the thumbnail `Image` component */\n\tthumbnailImageProps?: LightboxImageProps;\n}\n\nexport type LightboxFactory = Factory<{\n\tprops: LightboxProps;\n\tref: HTMLDivElement;\n\tstaticComponents: {\n\t\tRoot: typeof LightboxRoot;\n\t\tToolbar: typeof LightboxToolbar;\n\t\tCounter: typeof LightboxCounter;\n\t\tControls: typeof LightboxControls;\n\t\tSlides: typeof LightboxSlides;\n\t\tSlide: typeof LightboxSlide;\n\t\tThumbnails: typeof LightboxThumbnails;\n\t\tThumbnail: typeof LightboxThumbnail;\n\t\tCloseButton: typeof LightboxCloseButton;\n\t\tZoomButton: typeof LightboxZoomButton;\n\t\tFullscreenButton: typeof LightboxFullscreenButton;\n\t\tAutoplayButton: typeof LightboxAutoplayButton;\n\t};\n}>;\n\nconst defaultProps = {\n\twithToolbar: true,\n\twithControls: true,\n\twithThumbnails: true,\n\twithCounter: true,\n} satisfies Partial<LightboxProps>;\n\nexport const Lightbox = factory<LightboxFactory>((_props, ref) => {\n\tconst props = useProps(\"Lightbox\", defaultProps, _props);\n\n\tconst {\n\t\timages,\n\t\twithToolbar,\n\t\twithControls,\n\t\twithThumbnails,\n\t\twithCounter,\n\t\tslidesProps,\n\t\tthumbnailsProps,\n\t\tcontrolsProps,\n\t\tcounterProps,\n\t\tslideImageProps,\n\t\tthumbnailImageProps,\n\t\t...rootProps\n\t} = props;\n\n\treturn (\n\t\t<LightboxRoot ref={ref} {...rootProps}>\n\t\t\t{withToolbar && <LightboxToolbar />}\n\t\t\t{withCounter && <LightboxCounter {...counterProps} />}\n\t\t\t{withControls && <LightboxControls {...controlsProps} />}\n\t\t\t<LightboxSlides {...slidesProps}>\n\t\t\t\t{images.map((img) => (\n\t\t\t\t\t<LightboxSlide key={img.src}>\n\t\t\t\t\t\t<Image\n\t\t\t\t\t\t\tsrc={img.src}\n\t\t\t\t\t\t\tfallbackSrc={img.fallbackSrc}\n\t\t\t\t\t\t\talt={img.alt ?? \"\"}\n\t\t\t\t\t\t\twidth={img.width}\n\t\t\t\t\t\t\theight={img.height}\n\t\t\t\t\t\t\t{...slideImageProps}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</LightboxSlide>\n\t\t\t\t))}\n\t\t\t</LightboxSlides>\n\t\t\t{withThumbnails && (\n\t\t\t\t<LightboxThumbnails {...thumbnailsProps}>\n\t\t\t\t\t{images.map((img) => (\n\t\t\t\t\t\t<LightboxThumbnail key={img.src}>\n\t\t\t\t\t\t\t<Image\n\t\t\t\t\t\t\t\tsrc={img.thumbnailSrc ?? img.src}\n\t\t\t\t\t\t\t\tfallbackSrc={img.fallbackThumbnailSrc}\n\t\t\t\t\t\t\t\talt={img.thumbnailAlt ?? img.alt ?? \"\"}\n\t\t\t\t\t\t\t\twidth={img.width}\n\t\t\t\t\t\t\t\theight={img.height}\n\t\t\t\t\t\t\t\t{...thumbnailImageProps}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</LightboxThumbnail>\n\t\t\t\t\t))}\n\t\t\t\t</LightboxThumbnails>\n\t\t\t)}\n\t\t</LightboxRoot>\n\t);\n});\n\nLightbox.displayName = \"Lightbox\";\n\nLightbox.Root = LightboxRoot;\nLightbox.Toolbar = LightboxToolbar;\nLightbox.Counter = LightboxCounter;\nLightbox.Controls = LightboxControls;\nLightbox.Slides = LightboxSlides;\nLightbox.Slide = LightboxSlide;\nLightbox.Thumbnails = LightboxThumbnails;\nLightbox.Thumbnail = LightboxThumbnail;\nLightbox.CloseButton = LightboxCloseButton;\nLightbox.ZoomButton = LightboxZoomButton;\nLightbox.FullscreenButton = LightboxFullscreenButton;\nLightbox.AutoplayButton = LightboxAutoplayButton;\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Lightbox.mjs","sources":["../../src/Lightbox.tsx"],"sourcesContent":["import {\n\ttype Factory,\n\tfactory,\n\tImage,\n\ttype ImageProps,\n\tuseProps,\n} from \"@mantine/core\";\nimport { LightboxAutoplayButton } from \"./components/LightboxAutoplayButton.js\";\nimport { LightboxCaption } from \"./components/LightboxCaption.js\";\nimport { LightboxCloseButton } from \"./components/LightboxCloseButton.js\";\nimport {\n\tLightboxControls,\n\ttype LightboxControlsProps,\n} from \"./components/LightboxControls.js\";\nimport {\n\tLightboxCounter,\n\ttype LightboxCounterProps,\n} from \"./components/LightboxCounter.js\";\nimport { LightboxFullscreenButton } from \"./components/LightboxFullscreenButton.js\";\nimport {\n\tLightboxRoot,\n\ttype LightboxRootProps,\n} from \"./components/LightboxRoot.js\";\nimport { LightboxSlide } from \"./components/LightboxSlide.js\";\nimport {\n\tLightboxSlides,\n\ttype LightboxSlidesProps,\n} from \"./components/LightboxSlides.js\";\nimport { LightboxThumbnail } from \"./components/LightboxThumbnail.js\";\nimport {\n\tLightboxThumbnails,\n\ttype LightboxThumbnailsProps,\n} from \"./components/LightboxThumbnails.js\";\nimport { LightboxToolbar } from \"./components/LightboxToolbar.js\";\nimport { LightboxZoomButton } from \"./components/LightboxZoomButton.js\";\n\ntype LightboxImageBaseProps = Omit<\n\tImageProps,\n\t| \"src\"\n\t| \"fallbackSrc\"\n\t| \"fit\"\n\t| \"w\"\n\t| \"width\"\n\t| \"h\"\n\t| \"height\"\n\t| \"miw\"\n\t| \"minWidth\"\n\t| \"mih\"\n\t| \"minHeight\"\n\t| \"maw\"\n\t| \"maxWidth\"\n\t| \"mah\"\n\t| \"maxHeight\"\n>;\n\nexport type LightboxImageProps = LightboxImageBaseProps & {\n\tcomponent?: any;\n\trenderRoot?: (props: any) => React.ReactNode;\n};\n\nexport interface LightboxImageData {\n\t/** URL for the slide image */\n\tsrc: string;\n\t/** URL used as a fallback if the slide image cannot be loaded */\n\tfallbackSrc?: string;\n\t/** Alt text for the slide image */\n\talt?: string;\n\t/** Optional caption displayed below the slide image */\n\tcaption?: React.ReactNode;\n\t/** URL for the thumbnail image, falls back to `src` if omitted */\n\tthumbnailSrc?: string;\n\t/** URL used as a fallback if the thumbnail image cannot be loaded */\n\tfallbackThumbnailSrc?: string;\n\t/** Alt text for the thumbnail image, falls back to `alt` if omitted */\n\tthumbnailAlt?: string;\n\t/** Pre-defined width of the image, only applicable when using next/image */\n\twidth?: number;\n\t/** Pre-defined height of the image, only applicable when using next/image */\n\theight?: number;\n}\n\nexport interface LightboxProps extends Omit<LightboxRootProps, \"children\"> {\n\t/** Array of images to display */\n\timages: LightboxImageData[];\n\t/** Show toolbar (zoom, fullscreen, close buttons), `true` by default */\n\twithToolbar?: boolean;\n\t/** Show prev/next navigation controls, `true` by default */\n\twithControls?: boolean;\n\t/** Show thumbnail strip, `true` by default */\n\twithThumbnails?: boolean;\n\t/** Show slide counter, `true` by default */\n\twithCounter?: boolean;\n\t/** Props passed to the slides carousel (`LightboxSlides`) */\n\tslidesProps?: Pick<\n\t\tLightboxSlidesProps,\n\t\t\"initialSlide\" | \"emblaOptions\" | \"emblaPlugins\" | \"getEmblaApi\"\n\t>;\n\t/** Props passed to the thumbnails carousel (`LightboxThumbnails`) */\n\tthumbnailsProps?: Pick<\n\t\tLightboxThumbnailsProps,\n\t\t\"emblaOptions\" | \"getEmblaApi\"\n\t>;\n\t/** Props passed to the prev/next controls (`LightboxControls`) */\n\tcontrolsProps?: Pick<LightboxControlsProps, \"size\">;\n\t/** Props passed to the slide counter (`LightboxCounter`) */\n\tcounterProps?: Pick<LightboxCounterProps, \"formatter\">;\n\t/** Props passed to the slide `Image` component */\n\tslideImageProps?: LightboxImageProps;\n\t/** Props passed to the thumbnail `Image` component */\n\tthumbnailImageProps?: LightboxImageProps;\n}\n\nexport type LightboxFactory = Factory<{\n\tprops: LightboxProps;\n\tref: HTMLDivElement;\n\tstaticComponents: {\n\t\tRoot: typeof LightboxRoot;\n\t\tToolbar: typeof LightboxToolbar;\n\t\tCounter: typeof LightboxCounter;\n\t\tControls: typeof LightboxControls;\n\t\tSlides: typeof LightboxSlides;\n\t\tSlide: typeof LightboxSlide;\n\t\tCaption: typeof LightboxCaption;\n\t\tThumbnails: typeof LightboxThumbnails;\n\t\tThumbnail: typeof LightboxThumbnail;\n\t\tCloseButton: typeof LightboxCloseButton;\n\t\tZoomButton: typeof LightboxZoomButton;\n\t\tFullscreenButton: typeof LightboxFullscreenButton;\n\t\tAutoplayButton: typeof LightboxAutoplayButton;\n\t};\n}>;\n\nconst defaultProps = {\n\twithToolbar: true,\n\twithControls: true,\n\twithThumbnails: true,\n\twithCounter: true,\n} satisfies Partial<LightboxProps>;\n\nexport const Lightbox = factory<LightboxFactory>((_props, ref) => {\n\tconst props = useProps(\"Lightbox\", defaultProps, _props);\n\n\tconst {\n\t\timages,\n\t\twithToolbar,\n\t\twithControls,\n\t\twithThumbnails,\n\t\twithCounter,\n\t\tslidesProps,\n\t\tthumbnailsProps,\n\t\tcontrolsProps,\n\t\tcounterProps,\n\t\tslideImageProps,\n\t\tthumbnailImageProps,\n\t\t...rootProps\n\t} = props;\n\n\treturn (\n\t\t<LightboxRoot ref={ref} {...rootProps}>\n\t\t\t{withToolbar && <LightboxToolbar />}\n\t\t\t{withCounter && <LightboxCounter {...counterProps} />}\n\t\t\t{withControls && <LightboxControls {...controlsProps} />}\n\t\t\t<LightboxSlides {...slidesProps}>\n\t\t\t\t{images.map((img) => (\n\t\t\t\t\t<LightboxSlide key={img.src}>\n\t\t\t\t\t\t<Image\n\t\t\t\t\t\t\tsrc={img.src}\n\t\t\t\t\t\t\tfallbackSrc={img.fallbackSrc}\n\t\t\t\t\t\t\talt={img.alt ?? \"\"}\n\t\t\t\t\t\t\twidth={img.width}\n\t\t\t\t\t\t\theight={img.height}\n\t\t\t\t\t\t\t{...slideImageProps}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t{img.caption && <LightboxCaption>{img.caption}</LightboxCaption>}\n\t\t\t\t\t</LightboxSlide>\n\t\t\t\t))}\n\t\t\t</LightboxSlides>\n\t\t\t{withThumbnails && (\n\t\t\t\t<LightboxThumbnails {...thumbnailsProps}>\n\t\t\t\t\t{images.map((img) => (\n\t\t\t\t\t\t<LightboxThumbnail key={img.src}>\n\t\t\t\t\t\t\t<Image\n\t\t\t\t\t\t\t\tsrc={img.thumbnailSrc ?? img.src}\n\t\t\t\t\t\t\t\tfallbackSrc={img.fallbackThumbnailSrc}\n\t\t\t\t\t\t\t\talt={img.thumbnailAlt ?? img.alt ?? \"\"}\n\t\t\t\t\t\t\t\twidth={img.width}\n\t\t\t\t\t\t\t\theight={img.height}\n\t\t\t\t\t\t\t\t{...thumbnailImageProps}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</LightboxThumbnail>\n\t\t\t\t\t))}\n\t\t\t\t</LightboxThumbnails>\n\t\t\t)}\n\t\t</LightboxRoot>\n\t);\n});\n\nLightbox.displayName = \"Lightbox\";\n\nLightbox.Root = LightboxRoot;\nLightbox.Toolbar = LightboxToolbar;\nLightbox.Counter = LightboxCounter;\nLightbox.Controls = LightboxControls;\nLightbox.Slides = LightboxSlides;\nLightbox.Slide = LightboxSlide;\nLightbox.Caption = LightboxCaption;\nLightbox.Thumbnails = LightboxThumbnails;\nLightbox.Thumbnail = LightboxThumbnail;\nLightbox.CloseButton = LightboxCloseButton;\nLightbox.ZoomButton = LightboxZoomButton;\nLightbox.FullscreenButton = LightboxFullscreenButton;\nLightbox.AutoplayButton = LightboxAutoplayButton;\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx } from 'react/jsx-runtime';
|
|
3
|
+
import { factory, useProps, Box } from '@mantine/core';
|
|
4
|
+
import { useLightboxContext } from '../context/LightboxContext.mjs';
|
|
5
|
+
import classes from '../styles/Lightbox.module.css.mjs';
|
|
6
|
+
|
|
7
|
+
const LightboxCaption = factory(
|
|
8
|
+
(_props, ref) => {
|
|
9
|
+
const props = useProps("LightboxCaption", null, _props);
|
|
10
|
+
const { className, style, classNames, styles, vars, children, ...others } = props;
|
|
11
|
+
const { getStyles } = useLightboxContext();
|
|
12
|
+
return /* @__PURE__ */ jsx(
|
|
13
|
+
Box,
|
|
14
|
+
{
|
|
15
|
+
ref,
|
|
16
|
+
"data-lightbox-caption": true,
|
|
17
|
+
...getStyles("caption", { className, style, classNames, styles }),
|
|
18
|
+
...others,
|
|
19
|
+
children
|
|
20
|
+
}
|
|
21
|
+
);
|
|
22
|
+
}
|
|
23
|
+
);
|
|
24
|
+
LightboxCaption.displayName = "LightboxCaption";
|
|
25
|
+
LightboxCaption.classes = classes;
|
|
26
|
+
|
|
27
|
+
export { LightboxCaption };
|
|
28
|
+
//# sourceMappingURL=LightboxCaption.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LightboxCaption.mjs","sources":["../../../src/components/LightboxCaption.tsx"],"sourcesContent":["import {\n\tBox,\n\ttype BoxProps,\n\ttype CompoundStylesApiProps,\n\ttype ElementProps,\n\ttype Factory,\n\tfactory,\n\tuseProps,\n} from \"@mantine/core\";\nimport { useLightboxContext } from \"../context/LightboxContext.js\";\nimport classes from \"../styles/Lightbox.module.css\";\n\nexport type LightboxCaptionStylesNames = \"caption\";\n\nexport interface LightboxCaptionProps\n\textends BoxProps,\n\t\tCompoundStylesApiProps<LightboxCaptionFactory>,\n\t\tElementProps<\"div\"> {\n\t/** Caption displayed below the slide image */\n\tchildren?: React.ReactNode;\n}\n\nexport type LightboxCaptionFactory = Factory<{\n\tprops: LightboxCaptionProps;\n\tref: HTMLDivElement;\n\tstylesNames: LightboxCaptionStylesNames;\n\tcompound: true;\n}>;\n\nexport const LightboxCaption = factory<LightboxCaptionFactory>(\n\t(_props, ref) => {\n\t\tconst props = useProps(\"LightboxCaption\", null, _props);\n\n\t\tconst { className, style, classNames, styles, vars, children, ...others } =\n\t\t\tprops;\n\n\t\tconst { getStyles } = useLightboxContext();\n\n\t\treturn (\n\t\t\t<Box\n\t\t\t\tref={ref}\n\t\t\t\tdata-lightbox-caption\n\t\t\t\t{...getStyles(\"caption\", { className, style, classNames, styles })}\n\t\t\t\t{...others}\n\t\t\t>\n\t\t\t\t{children}\n\t\t\t</Box>\n\t\t);\n\t},\n);\n\nLightboxCaption.displayName = \"LightboxCaption\";\nLightboxCaption.classes = classes;\n"],"names":[],"mappings":"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"}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
|
|
3
3
|
import { factory, useProps, useDirection, UnstyledButton, AccordionChevron, rem } from '@mantine/core';
|
|
4
4
|
import { useLightboxContext } from '../context/LightboxContext.mjs';
|
|
5
|
+
import { useScrollButtons } from '../hooks/useScrollButtons.mjs';
|
|
5
6
|
import classes from '../styles/Lightbox.module.css.mjs';
|
|
6
7
|
|
|
7
8
|
const defaultProps = {
|
|
@@ -11,7 +12,14 @@ const LightboxControls = factory(
|
|
|
11
12
|
(_props, _ref) => {
|
|
12
13
|
const props = useProps("LightboxControls", defaultProps, _props);
|
|
13
14
|
const { classNames, styles, size } = props;
|
|
14
|
-
const {
|
|
15
|
+
const {
|
|
16
|
+
onScrollPrev,
|
|
17
|
+
onScrollNext,
|
|
18
|
+
getStyles,
|
|
19
|
+
orientation,
|
|
20
|
+
slidesEmblaApi
|
|
21
|
+
} = useLightboxContext();
|
|
22
|
+
const { prevBtnDisabled, nextBtnDisabled } = useScrollButtons(slidesEmblaApi);
|
|
15
23
|
const { dir } = useDirection();
|
|
16
24
|
const prevRotation = orientation === "horizontal" ? 90 * (dir === "ltr" ? 1 : -1) : -180;
|
|
17
25
|
const nextRotation = orientation === "horizontal" ? 90 * (dir === "ltr" ? -1 : 1) : 0;
|
|
@@ -26,6 +34,7 @@ const LightboxControls = factory(
|
|
|
26
34
|
}),
|
|
27
35
|
"data-direction": "prev",
|
|
28
36
|
"aria-label": "Previous slide",
|
|
37
|
+
disabled: prevBtnDisabled,
|
|
29
38
|
onClick: onScrollPrev,
|
|
30
39
|
children: /* @__PURE__ */ jsx(
|
|
31
40
|
AccordionChevron,
|
|
@@ -47,6 +56,7 @@ const LightboxControls = factory(
|
|
|
47
56
|
}),
|
|
48
57
|
"data-direction": "next",
|
|
49
58
|
"aria-label": "Next slide",
|
|
59
|
+
disabled: nextBtnDisabled,
|
|
50
60
|
onClick: onScrollNext,
|
|
51
61
|
children: /* @__PURE__ */ jsx(
|
|
52
62
|
AccordionChevron,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LightboxControls.mjs","sources":["../../../src/components/LightboxControls.tsx"],"sourcesContent":["import {\n\tAccordionChevron,\n\ttype CompoundStylesApiProps,\n\ttype Factory,\n\tfactory,\n\trem,\n\tUnstyledButton,\n\tuseDirection,\n\tuseProps,\n} from \"@mantine/core\";\nimport { useLightboxContext } from \"../context/LightboxContext.js\";\nimport classes from \"../styles/Lightbox.module.css\";\n\nexport type LightboxControlsStylesNames = \"control\";\n\nexport interface LightboxControlsProps\n\textends CompoundStylesApiProps<LightboxControlsFactory> {\n\t/** Size of the prev/next navigation buttons in px, `36` by default */\n\tsize?: number;\n}\n\nconst defaultProps = {\n\tsize: 36,\n} satisfies Partial<LightboxControlsProps>;\n\nexport type LightboxControlsFactory = Factory<{\n\tprops: LightboxControlsProps;\n\tref: HTMLElement;\n\tstylesNames: LightboxControlsStylesNames;\n\tcompound: true;\n}>;\n\nexport const LightboxControls = factory<LightboxControlsFactory>(\n\t(_props, _ref) => {\n\t\tconst props = useProps(\"LightboxControls\", defaultProps, _props);\n\n\t\tconst { classNames, styles, size } = props;\n\n\t\tconst { onScrollPrev, onScrollNext, getStyles, orientation } =\n\t\t\tuseLightboxContext();\n\n\t\tconst { dir } = useDirection();\n\n\t\tconst prevRotation =\n\t\t\torientation === \"horizontal\" ? 90 * (dir === \"ltr\" ? 1 : -1) : -180;\n\t\tconst nextRotation =\n\t\t\torientation === \"horizontal\" ? 90 * (dir === \"ltr\" ? -1 : 1) : 0;\n\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<UnstyledButton\n\t\t\t\t\t{...getStyles(\"control\", {\n\t\t\t\t\t\tstyle: { \"--lightbox-control-size\": rem(size) },\n\t\t\t\t\t\tclassNames,\n\t\t\t\t\t\tstyles,\n\t\t\t\t\t})}\n\t\t\t\t\tdata-direction=\"prev\"\n\t\t\t\t\taria-label=\"Previous slide\"\n\t\t\t\t\tonClick={onScrollPrev}\n\t\t\t\t>\n\t\t\t\t\t<AccordionChevron\n\t\t\t\t\t\tstyle={{ transform: `rotate(${prevRotation}deg)` }}\n\t\t\t\t\t/>\n\t\t\t\t</UnstyledButton>\n\t\t\t\t<UnstyledButton\n\t\t\t\t\t{...getStyles(\"control\", {\n\t\t\t\t\t\tstyle: {\n\t\t\t\t\t\t\t\"--lightbox-control-size\": rem(size),\n\t\t\t\t\t\t} as React.CSSProperties,\n\t\t\t\t\t\tclassNames,\n\t\t\t\t\t\tstyles,\n\t\t\t\t\t})}\n\t\t\t\t\tdata-direction=\"next\"\n\t\t\t\t\taria-label=\"Next slide\"\n\t\t\t\t\tonClick={onScrollNext}\n\t\t\t\t>\n\t\t\t\t\t<AccordionChevron\n\t\t\t\t\t\tstyle={{ transform: `rotate(${nextRotation}deg)` }}\n\t\t\t\t\t/>\n\t\t\t\t</UnstyledButton>\n\t\t\t</>\n\t\t);\n\t},\n);\n\nLightboxControls.classes = classes;\n\nLightboxControls.displayName = \"LightboxControls\";\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"LightboxControls.mjs","sources":["../../../src/components/LightboxControls.tsx"],"sourcesContent":["import {\n\tAccordionChevron,\n\ttype CompoundStylesApiProps,\n\ttype Factory,\n\tfactory,\n\trem,\n\tUnstyledButton,\n\tuseDirection,\n\tuseProps,\n} from \"@mantine/core\";\nimport { useLightboxContext } from \"../context/LightboxContext.js\";\nimport { useScrollButtons } from \"../hooks/useScrollButtons.js\";\nimport classes from \"../styles/Lightbox.module.css\";\n\nexport type LightboxControlsStylesNames = \"control\";\n\nexport interface LightboxControlsProps\n\textends CompoundStylesApiProps<LightboxControlsFactory> {\n\t/** Size of the prev/next navigation buttons in px, `36` by default */\n\tsize?: number;\n}\n\nconst defaultProps = {\n\tsize: 36,\n} satisfies Partial<LightboxControlsProps>;\n\nexport type LightboxControlsFactory = Factory<{\n\tprops: LightboxControlsProps;\n\tref: HTMLElement;\n\tstylesNames: LightboxControlsStylesNames;\n\tcompound: true;\n}>;\n\nexport const LightboxControls = factory<LightboxControlsFactory>(\n\t(_props, _ref) => {\n\t\tconst props = useProps(\"LightboxControls\", defaultProps, _props);\n\n\t\tconst { classNames, styles, size } = props;\n\n\t\tconst {\n\t\t\tonScrollPrev,\n\t\t\tonScrollNext,\n\t\t\tgetStyles,\n\t\t\torientation,\n\t\t\tslidesEmblaApi,\n\t\t} = useLightboxContext();\n\n\t\tconst { prevBtnDisabled, nextBtnDisabled } =\n\t\t\tuseScrollButtons(slidesEmblaApi);\n\n\t\tconst { dir } = useDirection();\n\n\t\tconst prevRotation =\n\t\t\torientation === \"horizontal\" ? 90 * (dir === \"ltr\" ? 1 : -1) : -180;\n\t\tconst nextRotation =\n\t\t\torientation === \"horizontal\" ? 90 * (dir === \"ltr\" ? -1 : 1) : 0;\n\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<UnstyledButton\n\t\t\t\t\t{...getStyles(\"control\", {\n\t\t\t\t\t\tstyle: { \"--lightbox-control-size\": rem(size) },\n\t\t\t\t\t\tclassNames,\n\t\t\t\t\t\tstyles,\n\t\t\t\t\t})}\n\t\t\t\t\tdata-direction=\"prev\"\n\t\t\t\t\taria-label=\"Previous slide\"\n\t\t\t\t\tdisabled={prevBtnDisabled}\n\t\t\t\t\tonClick={onScrollPrev}\n\t\t\t\t>\n\t\t\t\t\t<AccordionChevron\n\t\t\t\t\t\tstyle={{ transform: `rotate(${prevRotation}deg)` }}\n\t\t\t\t\t/>\n\t\t\t\t</UnstyledButton>\n\t\t\t\t<UnstyledButton\n\t\t\t\t\t{...getStyles(\"control\", {\n\t\t\t\t\t\tstyle: {\n\t\t\t\t\t\t\t\"--lightbox-control-size\": rem(size),\n\t\t\t\t\t\t} as React.CSSProperties,\n\t\t\t\t\t\tclassNames,\n\t\t\t\t\t\tstyles,\n\t\t\t\t\t})}\n\t\t\t\t\tdata-direction=\"next\"\n\t\t\t\t\taria-label=\"Next slide\"\n\t\t\t\t\tdisabled={nextBtnDisabled}\n\t\t\t\t\tonClick={onScrollNext}\n\t\t\t\t>\n\t\t\t\t\t<AccordionChevron\n\t\t\t\t\t\tstyle={{ transform: `rotate(${nextRotation}deg)` }}\n\t\t\t\t\t/>\n\t\t\t\t</UnstyledButton>\n\t\t\t</>\n\t\t);\n\t},\n);\n\nLightboxControls.classes = classes;\n\nLightboxControls.displayName = \"LightboxControls\";\n"],"names":[],"mappings":"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"}
|
|
@@ -2,12 +2,13 @@
|
|
|
2
2
|
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
3
3
|
import { getDefaultZIndex, factory, useProps, useStyles, OptionalPortal, RemoveScroll, Transition, Overlay, Box } from '@mantine/core';
|
|
4
4
|
import { useFocusTrap, useMergedRef, useFocusReturn, useFullscreen, useHotkeys } from '@mantine/hooks';
|
|
5
|
-
import { useRef, useState,
|
|
5
|
+
import { useRef, useState, useCallback, useEffect } from 'react';
|
|
6
6
|
import { LightboxProvider } from '../context/LightboxContext.mjs';
|
|
7
7
|
import { useAutoPlay } from '../hooks/useAutoPlay.mjs';
|
|
8
8
|
import { useZoom } from '../hooks/useZoom.mjs';
|
|
9
9
|
import classes from '../styles/Lightbox.module.css.mjs';
|
|
10
10
|
import { LightboxAutoplayButton } from './LightboxAutoplayButton.mjs';
|
|
11
|
+
import { LightboxCaption } from './LightboxCaption.mjs';
|
|
11
12
|
import { LightboxCloseButton } from './LightboxCloseButton.mjs';
|
|
12
13
|
import { LightboxControls } from './LightboxControls.mjs';
|
|
13
14
|
import { LightboxCounter } from './LightboxCounter.mjs';
|
|
@@ -86,8 +87,10 @@ const LightboxRoot = factory((_props, ref) => {
|
|
|
86
87
|
useFocusReturn({ opened, shouldReturnFocus: returnFocus });
|
|
87
88
|
const slidesEmblaRef = useRef(null);
|
|
88
89
|
const thumbnailsEmblaRef = useRef(null);
|
|
90
|
+
const initialSlideRef = useRef(0);
|
|
89
91
|
const [currentIndex, setCurrentIndex] = useState(0);
|
|
90
92
|
const [slideCount, setSlideCount] = useState(null);
|
|
93
|
+
const [slidesEmblaApi, setSlidesEmblaApi] = useState(null);
|
|
91
94
|
const {
|
|
92
95
|
isZoomed,
|
|
93
96
|
isZoomedRef,
|
|
@@ -110,6 +113,13 @@ const LightboxRoot = factory((_props, ref) => {
|
|
|
110
113
|
notifyAutoPlayInteraction,
|
|
111
114
|
handleEmblaApiForAutoPlay
|
|
112
115
|
} = useAutoPlay();
|
|
116
|
+
const handleSlidesEmblaApi = useCallback(
|
|
117
|
+
(embla) => {
|
|
118
|
+
setSlidesEmblaApi(embla);
|
|
119
|
+
handleEmblaApiForAutoPlay(embla);
|
|
120
|
+
},
|
|
121
|
+
[handleEmblaApiForAutoPlay]
|
|
122
|
+
);
|
|
113
123
|
const { fullscreen: isFullscreen, toggle: toggleFullscreen } = useFullscreen();
|
|
114
124
|
useEffect(() => {
|
|
115
125
|
if (opened || typeof document === "undefined" || !document.fullscreenElement || typeof document.exitFullscreen !== "function") {
|
|
@@ -186,18 +196,20 @@ const LightboxRoot = factory((_props, ref) => {
|
|
|
186
196
|
slideCount,
|
|
187
197
|
slidesEmblaRef,
|
|
188
198
|
thumbnailsEmblaRef,
|
|
199
|
+
initialSlideRef,
|
|
189
200
|
setCurrentIndex: handleSlideChange,
|
|
190
201
|
setSlideCount,
|
|
191
202
|
onClose,
|
|
192
203
|
onOutsideClick: handleOutsideClick,
|
|
193
204
|
onThumbnailClick: handleThumbnailClick,
|
|
205
|
+
slidesEmblaApi,
|
|
194
206
|
onScrollPrev: handleScrollPrev,
|
|
195
207
|
onScrollNext: handleScrollNext,
|
|
196
208
|
orientation,
|
|
197
209
|
canAutoPlay,
|
|
198
210
|
isPlaying,
|
|
199
211
|
toggleAutoPlay,
|
|
200
|
-
onSlidesEmblaApi:
|
|
212
|
+
onSlidesEmblaApi: handleSlidesEmblaApi,
|
|
201
213
|
withFullscreen,
|
|
202
214
|
isFullscreen,
|
|
203
215
|
toggleFullscreen,
|
|
@@ -249,6 +261,7 @@ LightboxRoot.Slides = LightboxSlides;
|
|
|
249
261
|
LightboxRoot.Thumbnails = LightboxThumbnails;
|
|
250
262
|
LightboxRoot.Thumbnail = LightboxThumbnail;
|
|
251
263
|
LightboxRoot.Slide = LightboxSlide;
|
|
264
|
+
LightboxRoot.Caption = LightboxCaption;
|
|
252
265
|
LightboxRoot.CloseButton = LightboxCloseButton;
|
|
253
266
|
LightboxRoot.ZoomButton = LightboxZoomButton;
|
|
254
267
|
LightboxRoot.FullscreenButton = LightboxFullscreenButton;
|