@mantine-bites/lightbox 1.0.0-beta.1 → 1.0.0-beta.10
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 +3 -4
- package/dist/cjs/Lightbox.cjs +38 -242
- package/dist/cjs/Lightbox.cjs.map +1 -1
- package/dist/cjs/Lightbox.context-value.cjs +47 -0
- package/dist/cjs/Lightbox.context-value.cjs.map +1 -0
- package/dist/cjs/Lightbox.context.cjs.map +1 -1
- package/dist/cjs/Lightbox.defaults.cjs +29 -0
- package/dist/cjs/Lightbox.defaults.cjs.map +1 -0
- package/dist/cjs/Lightbox.module.css.cjs +1 -1
- package/dist/cjs/LightboxSlide.cjs +72 -5
- package/dist/cjs/LightboxSlide.cjs.map +1 -1
- package/dist/cjs/LightboxSlide.context.cjs +12 -0
- package/dist/cjs/LightboxSlide.context.cjs.map +1 -0
- package/dist/cjs/components/EnterFullscreen.cjs +30 -0
- package/dist/cjs/components/EnterFullscreen.cjs.map +1 -0
- package/dist/cjs/components/ExitFullscreen.cjs +30 -0
- package/dist/cjs/components/ExitFullscreen.cjs.map +1 -0
- package/dist/cjs/components/LightboxAutoplayButton.cjs +43 -0
- package/dist/cjs/components/LightboxAutoplayButton.cjs.map +1 -0
- package/dist/cjs/components/LightboxCarousel.cjs +29 -0
- package/dist/cjs/components/LightboxCarousel.cjs.map +1 -0
- package/dist/cjs/components/LightboxCarouselSlide.context.cjs +12 -0
- package/dist/cjs/components/LightboxCarouselSlide.context.cjs.map +1 -0
- package/dist/cjs/components/LightboxCloseButton.cjs +33 -0
- package/dist/cjs/components/LightboxCloseButton.cjs.map +1 -0
- package/dist/cjs/components/LightboxContent.cjs +38 -0
- package/dist/cjs/components/LightboxContent.cjs.map +1 -0
- package/dist/cjs/components/LightboxControls.cjs +68 -0
- package/dist/cjs/components/LightboxControls.cjs.map +1 -0
- package/dist/cjs/components/LightboxCounter.cjs +34 -0
- package/dist/cjs/components/LightboxCounter.cjs.map +1 -0
- package/dist/cjs/components/LightboxFullscreenButton.cjs +41 -0
- package/dist/cjs/components/LightboxFullscreenButton.cjs.map +1 -0
- package/dist/cjs/components/LightboxOverlay.cjs +40 -0
- package/dist/cjs/components/LightboxOverlay.cjs.map +1 -0
- package/dist/cjs/components/LightboxPreset.cjs +32 -0
- package/dist/cjs/components/LightboxPreset.cjs.map +1 -0
- package/dist/cjs/components/LightboxRoot.cjs +260 -0
- package/dist/cjs/components/LightboxRoot.cjs.map +1 -0
- package/dist/cjs/components/LightboxSlide.cjs +154 -0
- package/dist/cjs/components/LightboxSlide.cjs.map +1 -0
- package/dist/cjs/components/LightboxSlide.context.cjs +12 -0
- package/dist/cjs/components/LightboxSlide.context.cjs.map +1 -0
- package/dist/cjs/components/LightboxSlides.cjs +108 -0
- package/dist/cjs/components/LightboxSlides.cjs.map +1 -0
- package/dist/cjs/components/LightboxThumbnail.cjs +40 -0
- package/dist/cjs/components/LightboxThumbnail.cjs.map +1 -0
- package/dist/cjs/components/LightboxThumbnail.context.cjs +12 -0
- package/dist/cjs/components/LightboxThumbnail.context.cjs.map +1 -0
- package/dist/cjs/components/LightboxThumbnails.cjs +121 -0
- package/dist/cjs/components/LightboxThumbnails.cjs.map +1 -0
- package/dist/cjs/components/LightboxToolbar.cjs +94 -0
- package/dist/cjs/components/LightboxToolbar.cjs.map +1 -0
- package/dist/cjs/components/LightboxZoomButton.cjs +39 -0
- package/dist/cjs/components/LightboxZoomButton.cjs.map +1 -0
- package/dist/cjs/components/Pause.cjs +28 -0
- package/dist/cjs/components/Pause.cjs.map +1 -0
- package/dist/cjs/components/Play.cjs +22 -0
- package/dist/cjs/components/Play.cjs.map +1 -0
- package/dist/cjs/components/QuestionMark.cjs +28 -0
- package/dist/cjs/components/QuestionMark.cjs.map +1 -0
- package/dist/cjs/components/ZoomIn.cjs +30 -0
- package/dist/cjs/components/ZoomIn.cjs.map +1 -0
- package/dist/cjs/components/ZoomOut.cjs +29 -0
- package/dist/cjs/components/ZoomOut.cjs.map +1 -0
- package/dist/cjs/components/icons/EnterFullscreen.cjs +30 -0
- package/dist/cjs/components/icons/EnterFullscreen.cjs.map +1 -0
- package/dist/cjs/components/icons/ExitFullscreen.cjs +30 -0
- package/dist/cjs/components/icons/ExitFullscreen.cjs.map +1 -0
- package/dist/cjs/components/icons/Pause.cjs +28 -0
- package/dist/cjs/components/icons/Pause.cjs.map +1 -0
- package/dist/cjs/components/icons/Play.cjs +22 -0
- package/dist/cjs/components/icons/Play.cjs.map +1 -0
- package/dist/cjs/components/icons/ZoomIn.cjs +30 -0
- package/dist/cjs/components/icons/ZoomIn.cjs.map +1 -0
- package/dist/cjs/components/icons/ZoomOut.cjs +29 -0
- package/dist/cjs/components/icons/ZoomOut.cjs.map +1 -0
- package/dist/cjs/context/LightboxContext.cjs +12 -0
- package/dist/cjs/context/LightboxContext.cjs.map +1 -0
- package/dist/cjs/context/LightboxSlideContext.cjs +12 -0
- package/dist/cjs/context/LightboxSlideContext.cjs.map +1 -0
- package/dist/cjs/context/LightboxThumbnailContext.cjs +12 -0
- package/dist/cjs/context/LightboxThumbnailContext.cjs.map +1 -0
- package/dist/cjs/hooks/useAutoPlay.cjs +77 -0
- package/dist/cjs/hooks/useAutoPlay.cjs.map +1 -0
- package/dist/cjs/hooks/useCarouselOptions.cjs +30 -0
- package/dist/cjs/hooks/useCarouselOptions.cjs.map +1 -0
- package/dist/cjs/hooks/useFullscreen.cjs +39 -0
- package/dist/cjs/hooks/useFullscreen.cjs.map +1 -0
- package/dist/cjs/hooks/useKeyboardNavigation.cjs +29 -0
- package/dist/cjs/hooks/useKeyboardNavigation.cjs.map +1 -0
- package/dist/cjs/hooks/useLightbox.cjs +116 -0
- package/dist/cjs/hooks/useLightbox.cjs.map +1 -0
- package/dist/cjs/hooks/useLightboxRootOptions.cjs +20 -0
- package/dist/cjs/hooks/useLightboxRootOptions.cjs.map +1 -0
- package/dist/cjs/hooks/useSlideInteractions.cjs +94 -0
- package/dist/cjs/hooks/useSlideInteractions.cjs.map +1 -0
- package/dist/cjs/hooks/useThumbnails.cjs +61 -0
- package/dist/cjs/hooks/useThumbnails.cjs.map +1 -0
- package/dist/cjs/hooks/useZoom.cjs +264 -0
- package/dist/cjs/hooks/useZoom.cjs.map +1 -0
- package/dist/cjs/index.cjs +26 -2
- package/dist/cjs/index.cjs.map +1 -1
- package/dist/cjs/styles/Lightbox.module.css.cjs +7 -0
- package/dist/cjs/styles/Lightbox.module.css.cjs.map +1 -0
- package/dist/cjs/utils/fullscreen.cjs +41 -0
- package/dist/cjs/utils/fullscreen.cjs.map +1 -0
- package/dist/cjs/utils/pointer.cjs +50 -0
- package/dist/cjs/utils/pointer.cjs.map +1 -0
- package/dist/cjs/utils/zoom.cjs +91 -0
- package/dist/cjs/utils/zoom.cjs.map +1 -0
- package/dist/esm/Lightbox.context-value.mjs +45 -0
- package/dist/esm/Lightbox.context-value.mjs.map +1 -0
- package/dist/esm/Lightbox.context.mjs.map +1 -1
- package/dist/esm/Lightbox.defaults.mjs +27 -0
- package/dist/esm/Lightbox.defaults.mjs.map +1 -0
- package/dist/esm/Lightbox.mjs +40 -244
- package/dist/esm/Lightbox.mjs.map +1 -1
- package/dist/esm/Lightbox.module.css.mjs +1 -1
- package/dist/esm/LightboxSlide.context.mjs +9 -0
- package/dist/esm/LightboxSlide.context.mjs.map +1 -0
- package/dist/esm/LightboxSlide.mjs +73 -6
- package/dist/esm/LightboxSlide.mjs.map +1 -1
- package/dist/esm/components/EnterFullscreen.mjs +28 -0
- package/dist/esm/components/EnterFullscreen.mjs.map +1 -0
- package/dist/esm/components/ExitFullscreen.mjs +28 -0
- package/dist/esm/components/ExitFullscreen.mjs.map +1 -0
- package/dist/esm/components/LightboxAutoplayButton.mjs +41 -0
- package/dist/esm/components/LightboxAutoplayButton.mjs.map +1 -0
- package/dist/esm/components/LightboxCarousel.mjs +27 -0
- package/dist/esm/components/LightboxCarousel.mjs.map +1 -0
- package/dist/esm/components/LightboxCarouselSlide.context.mjs +9 -0
- package/dist/esm/components/LightboxCarouselSlide.context.mjs.map +1 -0
- package/dist/esm/components/LightboxCloseButton.mjs +31 -0
- package/dist/esm/components/LightboxCloseButton.mjs.map +1 -0
- package/dist/esm/components/LightboxContent.mjs +36 -0
- package/dist/esm/components/LightboxContent.mjs.map +1 -0
- package/dist/esm/components/LightboxControls.mjs +66 -0
- package/dist/esm/components/LightboxControls.mjs.map +1 -0
- package/dist/esm/components/LightboxCounter.mjs +32 -0
- package/dist/esm/components/LightboxCounter.mjs.map +1 -0
- package/dist/esm/components/LightboxFullscreenButton.mjs +39 -0
- package/dist/esm/components/LightboxFullscreenButton.mjs.map +1 -0
- package/dist/esm/components/LightboxOverlay.mjs +38 -0
- package/dist/esm/components/LightboxOverlay.mjs.map +1 -0
- package/dist/esm/components/LightboxPreset.mjs +30 -0
- package/dist/esm/components/LightboxPreset.mjs.map +1 -0
- package/dist/esm/components/LightboxRoot.mjs +258 -0
- package/dist/esm/components/LightboxRoot.mjs.map +1 -0
- package/dist/esm/components/LightboxSlide.context.mjs +9 -0
- package/dist/esm/components/LightboxSlide.context.mjs.map +1 -0
- package/dist/esm/components/LightboxSlide.mjs +152 -0
- package/dist/esm/components/LightboxSlide.mjs.map +1 -0
- package/dist/esm/components/LightboxSlides.mjs +106 -0
- package/dist/esm/components/LightboxSlides.mjs.map +1 -0
- package/dist/esm/components/LightboxThumbnail.context.mjs +9 -0
- package/dist/esm/components/LightboxThumbnail.context.mjs.map +1 -0
- package/dist/esm/components/LightboxThumbnail.mjs +38 -0
- package/dist/esm/components/LightboxThumbnail.mjs.map +1 -0
- package/dist/esm/components/LightboxThumbnails.mjs +119 -0
- package/dist/esm/components/LightboxThumbnails.mjs.map +1 -0
- package/dist/esm/components/LightboxToolbar.mjs +92 -0
- package/dist/esm/components/LightboxToolbar.mjs.map +1 -0
- package/dist/esm/components/LightboxZoomButton.mjs +37 -0
- package/dist/esm/components/LightboxZoomButton.mjs.map +1 -0
- package/dist/esm/components/Pause.mjs +26 -0
- package/dist/esm/components/Pause.mjs.map +1 -0
- package/dist/esm/components/Play.mjs +20 -0
- package/dist/esm/components/Play.mjs.map +1 -0
- package/dist/esm/components/QuestionMark.mjs +26 -0
- package/dist/esm/components/QuestionMark.mjs.map +1 -0
- package/dist/esm/components/ZoomIn.mjs +28 -0
- package/dist/esm/components/ZoomIn.mjs.map +1 -0
- package/dist/esm/components/ZoomOut.mjs +27 -0
- package/dist/esm/components/ZoomOut.mjs.map +1 -0
- package/dist/esm/components/icons/EnterFullscreen.mjs +28 -0
- package/dist/esm/components/icons/EnterFullscreen.mjs.map +1 -0
- package/dist/esm/components/icons/ExitFullscreen.mjs +28 -0
- package/dist/esm/components/icons/ExitFullscreen.mjs.map +1 -0
- package/dist/esm/components/icons/Pause.mjs +26 -0
- package/dist/esm/components/icons/Pause.mjs.map +1 -0
- package/dist/esm/components/icons/Play.mjs +20 -0
- package/dist/esm/components/icons/Play.mjs.map +1 -0
- package/dist/esm/components/icons/ZoomIn.mjs +28 -0
- package/dist/esm/components/icons/ZoomIn.mjs.map +1 -0
- package/dist/esm/components/icons/ZoomOut.mjs +27 -0
- package/dist/esm/components/icons/ZoomOut.mjs.map +1 -0
- package/dist/esm/context/LightboxContext.mjs +9 -0
- package/dist/esm/context/LightboxContext.mjs.map +1 -0
- package/dist/esm/context/LightboxSlideContext.mjs +9 -0
- package/dist/esm/context/LightboxSlideContext.mjs.map +1 -0
- package/dist/esm/context/LightboxThumbnailContext.mjs +9 -0
- package/dist/esm/context/LightboxThumbnailContext.mjs.map +1 -0
- package/dist/esm/hooks/useAutoPlay.mjs +75 -0
- package/dist/esm/hooks/useAutoPlay.mjs.map +1 -0
- package/dist/esm/hooks/useCarouselOptions.mjs +28 -0
- package/dist/esm/hooks/useCarouselOptions.mjs.map +1 -0
- package/dist/esm/hooks/useFullscreen.mjs +37 -0
- package/dist/esm/hooks/useFullscreen.mjs.map +1 -0
- package/dist/esm/hooks/useKeyboardNavigation.mjs +27 -0
- package/dist/esm/hooks/useKeyboardNavigation.mjs.map +1 -0
- package/dist/esm/hooks/useLightbox.mjs +114 -0
- package/dist/esm/hooks/useLightbox.mjs.map +1 -0
- package/dist/esm/hooks/useLightboxRootOptions.mjs +18 -0
- package/dist/esm/hooks/useLightboxRootOptions.mjs.map +1 -0
- package/dist/esm/hooks/useSlideInteractions.mjs +92 -0
- package/dist/esm/hooks/useSlideInteractions.mjs.map +1 -0
- package/dist/esm/hooks/useThumbnails.mjs +59 -0
- package/dist/esm/hooks/useThumbnails.mjs.map +1 -0
- package/dist/esm/hooks/useZoom.mjs +262 -0
- package/dist/esm/hooks/useZoom.mjs.map +1 -0
- package/dist/esm/index.mjs +13 -1
- package/dist/esm/index.mjs.map +1 -1
- package/dist/esm/styles/Lightbox.module.css.mjs +5 -0
- package/dist/esm/styles/Lightbox.module.css.mjs.map +1 -0
- package/dist/esm/utils/fullscreen.mjs +36 -0
- package/dist/esm/utils/fullscreen.mjs.map +1 -0
- package/dist/esm/utils/pointer.mjs +41 -0
- package/dist/esm/utils/pointer.mjs.map +1 -0
- package/dist/esm/utils/zoom.mjs +82 -0
- package/dist/esm/utils/zoom.mjs.map +1 -0
- package/dist/styles.css +1 -1
- package/dist/styles.layer.css +1 -1
- package/dist/types/Lightbox.context-value.d.ts +16 -0
- package/dist/types/Lightbox.context-value.d.ts.map +1 -0
- package/dist/types/Lightbox.context.d.ts +29 -0
- package/dist/types/Lightbox.context.d.ts.map +1 -1
- package/dist/types/Lightbox.d.ts +53 -35
- package/dist/types/Lightbox.d.ts.map +1 -1
- package/dist/types/Lightbox.defaults.d.ts +24 -0
- package/dist/types/Lightbox.defaults.d.ts.map +1 -0
- package/dist/types/Lightbox.story.d.ts +5 -5
- package/dist/types/Lightbox.story.d.ts.map +1 -1
- package/dist/types/LightboxSlide.context.d.ts +8 -0
- package/dist/types/LightboxSlide.context.d.ts.map +1 -0
- package/dist/types/LightboxSlide.d.ts +0 -3
- package/dist/types/LightboxSlide.d.ts.map +1 -1
- package/dist/types/__tests__/Lightbox.test.d.ts +2 -0
- package/dist/types/__tests__/Lightbox.test.d.ts.map +1 -0
- package/dist/types/__tests__/LightboxSimple.test.d.ts +2 -0
- package/dist/types/__tests__/LightboxSimple.test.d.ts.map +1 -0
- package/dist/types/__tests__/pointer.test.d.ts +2 -0
- package/dist/types/__tests__/pointer.test.d.ts.map +1 -0
- package/dist/types/__tests__/zoom.test.d.ts +2 -0
- package/dist/types/__tests__/zoom.test.d.ts.map +1 -0
- package/dist/types/components/EnterFullscreen.d.ts +3 -0
- package/dist/types/components/EnterFullscreen.d.ts.map +1 -0
- package/dist/types/components/ExitFullscreen.d.ts +3 -0
- package/dist/types/components/ExitFullscreen.d.ts.map +1 -0
- package/dist/types/components/LightboxAutoplayButton.d.ts +17 -0
- package/dist/types/components/LightboxAutoplayButton.d.ts.map +1 -0
- package/dist/types/components/LightboxCarousel.d.ts +6 -0
- package/dist/types/components/LightboxCarousel.d.ts.map +1 -0
- package/dist/types/components/LightboxCarouselSlide.context.d.ts +10 -0
- package/dist/types/components/LightboxCarouselSlide.context.d.ts.map +1 -0
- package/dist/types/components/LightboxCloseButton.d.ts +17 -0
- package/dist/types/components/LightboxCloseButton.d.ts.map +1 -0
- package/dist/types/components/LightboxContent.d.ts +14 -0
- package/dist/types/components/LightboxContent.d.ts.map +1 -0
- package/dist/types/components/LightboxControls.d.ts +19 -0
- package/dist/types/components/LightboxControls.d.ts.map +1 -0
- package/dist/types/components/LightboxCounter.d.ts +19 -0
- package/dist/types/components/LightboxCounter.d.ts.map +1 -0
- package/dist/types/components/LightboxFullscreenButton.d.ts +17 -0
- package/dist/types/components/LightboxFullscreenButton.d.ts.map +1 -0
- package/dist/types/components/LightboxOverlay.d.ts +4 -0
- package/dist/types/components/LightboxOverlay.d.ts.map +1 -0
- package/dist/types/components/LightboxPreset.d.ts +10 -0
- package/dist/types/components/LightboxPreset.d.ts.map +1 -0
- package/dist/types/components/LightboxRoot.d.ts +80 -0
- package/dist/types/components/LightboxRoot.d.ts.map +1 -0
- package/dist/types/components/LightboxSlide.context.d.ts +8 -0
- package/dist/types/components/LightboxSlide.context.d.ts.map +1 -0
- package/dist/types/components/LightboxSlide.d.ts +17 -0
- package/dist/types/components/LightboxSlide.d.ts.map +1 -0
- package/dist/types/components/LightboxSlides.d.ts +24 -0
- package/dist/types/components/LightboxSlides.d.ts.map +1 -0
- package/dist/types/components/LightboxThumbnail.context.d.ts +8 -0
- package/dist/types/components/LightboxThumbnail.context.d.ts.map +1 -0
- package/dist/types/components/LightboxThumbnail.d.ts +17 -0
- package/dist/types/components/LightboxThumbnail.d.ts.map +1 -0
- package/dist/types/components/LightboxThumbnails.d.ts +20 -0
- package/dist/types/components/LightboxThumbnails.d.ts.map +1 -0
- package/dist/types/components/LightboxToolbar.d.ts +17 -0
- package/dist/types/components/LightboxToolbar.d.ts.map +1 -0
- package/dist/types/components/LightboxZoomButton.d.ts +17 -0
- package/dist/types/components/LightboxZoomButton.d.ts.map +1 -0
- package/dist/types/components/Pause.d.ts +3 -0
- package/dist/types/components/Pause.d.ts.map +1 -0
- package/dist/types/components/Play.d.ts +3 -0
- package/dist/types/components/Play.d.ts.map +1 -0
- package/dist/types/components/QuestionMark.d.ts +3 -0
- package/dist/types/components/QuestionMark.d.ts.map +1 -0
- package/dist/types/components/ZoomIn.d.ts +3 -0
- package/dist/types/components/ZoomIn.d.ts.map +1 -0
- package/dist/types/components/ZoomOut.d.ts +3 -0
- package/dist/types/components/ZoomOut.d.ts.map +1 -0
- package/dist/types/components/icons/EnterFullscreen.d.ts +3 -0
- package/dist/types/components/icons/EnterFullscreen.d.ts.map +1 -0
- package/dist/types/components/icons/ExitFullscreen.d.ts +3 -0
- package/dist/types/components/icons/ExitFullscreen.d.ts.map +1 -0
- package/dist/types/components/icons/Pause.d.ts +3 -0
- package/dist/types/components/icons/Pause.d.ts.map +1 -0
- package/dist/types/components/icons/Play.d.ts +3 -0
- package/dist/types/components/icons/Play.d.ts.map +1 -0
- package/dist/types/components/icons/ZoomIn.d.ts +3 -0
- package/dist/types/components/icons/ZoomIn.d.ts.map +1 -0
- package/dist/types/components/icons/ZoomOut.d.ts +3 -0
- package/dist/types/components/icons/ZoomOut.d.ts.map +1 -0
- package/dist/types/context/LightboxContext.d.ts +46 -0
- package/dist/types/context/LightboxContext.d.ts.map +1 -0
- package/dist/types/context/LightboxSlideContext.d.ts +8 -0
- package/dist/types/context/LightboxSlideContext.d.ts.map +1 -0
- package/dist/types/context/LightboxThumbnailContext.d.ts +8 -0
- package/dist/types/context/LightboxThumbnailContext.d.ts.map +1 -0
- package/dist/types/hooks/useAutoPlay.d.ts +11 -0
- package/dist/types/hooks/useAutoPlay.d.ts.map +1 -0
- package/dist/types/hooks/useAutoPlay.test.d.ts +2 -0
- package/dist/types/hooks/useAutoPlay.test.d.ts.map +1 -0
- package/dist/types/hooks/useCarouselOptions.d.ts +20 -0
- package/dist/types/hooks/useCarouselOptions.d.ts.map +1 -0
- package/dist/types/hooks/useFullscreen.d.ts +11 -0
- package/dist/types/hooks/useFullscreen.d.ts.map +1 -0
- package/dist/types/hooks/useKeyboardNavigation.d.ts +10 -0
- package/dist/types/hooks/useKeyboardNavigation.d.ts.map +1 -0
- package/dist/types/hooks/useLightbox.d.ts +30 -0
- package/dist/types/hooks/useLightbox.d.ts.map +1 -0
- package/dist/types/hooks/useLightboxRootOptions.d.ts +12 -0
- package/dist/types/hooks/useLightboxRootOptions.d.ts.map +1 -0
- package/dist/types/hooks/useSlideInteractions.d.ts +26 -0
- package/dist/types/hooks/useSlideInteractions.d.ts.map +1 -0
- package/dist/types/hooks/useThumbnails.d.ts +15 -0
- package/dist/types/hooks/useThumbnails.d.ts.map +1 -0
- package/dist/types/hooks/useZoom.d.ts +24 -0
- package/dist/types/hooks/useZoom.d.ts.map +1 -0
- package/dist/types/index.d.mts +27 -3
- package/dist/types/index.d.ts +27 -3
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/stories/Lightbox.story.d.ts +11 -0
- package/dist/types/stories/Lightbox.story.d.ts.map +1 -0
- package/dist/types/utils/fullscreen.d.ts +21 -0
- package/dist/types/utils/fullscreen.d.ts.map +1 -0
- package/dist/types/utils/pointer.d.ts +63 -0
- package/dist/types/utils/pointer.d.ts.map +1 -0
- package/dist/types/utils/zoom.d.ts +69 -0
- package/dist/types/utils/zoom.d.ts.map +1 -0
- package/dist/types/utils/zoom.test.d.ts +2 -0
- package/dist/types/utils/zoom.test.d.ts.map +1 -0
- package/package.json +2 -3
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"zoom.mjs","sources":["../../../src/utils/zoom.ts"],"sourcesContent":["/** Pixel offset representing a translation applied to a zoomed image. */\nexport interface ZoomOffset {\n\t/** Horizontal translation in pixels. */\n\tx: number;\n\t/** Vertical translation in pixels. */\n\ty: number;\n}\n\n/** Default zoom scale applied when zooming in on an image. */\nexport const DEFAULT_ZOOM_SCALE = 2;\n\n/** Zero-offset value representing no translation on a zoomed image. */\nexport const ZERO_ZOOM_OFFSET: ZoomOffset = { x: 0, y: 0 };\n\ninterface ClampZoomOffsetInput {\n\tcontainerWidth: number;\n\tcontainerHeight: number;\n\timageWidth: number;\n\timageHeight: number;\n\tzoomScale: number;\n\tnextX: number;\n\tnextY: number;\n}\n\ninterface InitialZoomOffsetInput {\n\tcontainerRect: DOMRect;\n\timageRect: DOMRect;\n\tzoomScale: number;\n\tpointerClientX: number;\n\tpointerClientY: number;\n}\n\n/**\n * Clamps a proposed zoom pan offset so the image cannot be panned beyond its\n * edges relative to the container at the given zoom scale.\n */\nexport const clampZoomOffset = ({\n\tcontainerWidth,\n\tcontainerHeight,\n\timageWidth,\n\timageHeight,\n\tzoomScale,\n\tnextX,\n\tnextY,\n}: ClampZoomOffsetInput): ZoomOffset => {\n\tconst scaledWidth = imageWidth * zoomScale;\n\tconst scaledHeight = imageHeight * zoomScale;\n\tconst maxX = Math.max(0, (scaledWidth - containerWidth) / 2);\n\tconst maxY = Math.max(0, (scaledHeight - containerHeight) / 2);\n\n\treturn {\n\t\tx: Math.min(Math.max(nextX, -maxX), maxX),\n\t\ty: Math.min(Math.max(nextY, -maxY), maxY),\n\t};\n};\n\n/**\n * Calculates the initial pan offset when zooming so the clicked/tapped point\n * moves toward the viewport center, then clamps it to valid pan bounds.\n */\nexport const getInitialZoomOffset = ({\n\tcontainerRect,\n\timageRect,\n\tzoomScale,\n\tpointerClientX,\n\tpointerClientY,\n}: InitialZoomOffsetInput): ZoomOffset => {\n\tconst centerX = containerRect.left + containerRect.width / 2;\n\tconst centerY = containerRect.top + containerRect.height / 2;\n\tconst rawOffsetX = -(pointerClientX - centerX) * zoomScale;\n\tconst rawOffsetY = -(pointerClientY - centerY) * zoomScale;\n\n\treturn clampZoomOffset({\n\t\tcontainerWidth: containerRect.width,\n\t\tcontainerHeight: containerRect.height,\n\t\timageWidth: imageRect.width,\n\t\timageHeight: imageRect.height,\n\t\tzoomScale,\n\t\tnextX: rawOffsetX,\n\t\tnextY: rawOffsetY,\n\t});\n};\n\n/**\n * Returns a CSS `transform` string that applies the zoom pan offset and scale.\n * When not zoomed, returns identity values regardless of the stored offset.\n */\nexport const getZoomTransform = ({\n\tisZoomed,\n\toffset,\n\tscale,\n}: {\n\tisZoomed: boolean;\n\toffset: ZoomOffset;\n\tscale: number;\n}) =>\n\t`translate(${isZoomed ? offset.x : 0}px, ${isZoomed ? offset.y : 0}px) scale(${\n\t\tisZoomed ? scale : 1\n\t})`;\n\nconst RESOLUTION_EPSILON = 1.01;\n\nconst getImageMeasurements = (image: HTMLImageElement) => {\n\tconst rect = image.getBoundingClientRect();\n\treturn {\n\t\tnaturalWidth: image.naturalWidth,\n\t\tnaturalHeight: image.naturalHeight,\n\t\trenderedWidth: rect.width,\n\t\trenderedHeight: rect.height,\n\t};\n};\n\n/**\n * Returns the maximum zoom scale at which the image would still be rendered at\n * its native resolution (1:1 pixel ratio). Falls back to `DEFAULT_ZOOM_SCALE`\n * when image dimensions are unavailable.\n */\nexport const getImageMaxZoomScale = (image: HTMLImageElement) => {\n\tconst { naturalWidth, naturalHeight, renderedWidth, renderedHeight } =\n\t\tgetImageMeasurements(image);\n\n\tif (!naturalWidth || !naturalHeight || !renderedWidth || !renderedHeight) {\n\t\treturn DEFAULT_ZOOM_SCALE;\n\t}\n\n\treturn Math.min(naturalWidth / renderedWidth, naturalHeight / renderedHeight);\n};\n\n/**\n * Calculates the zoom scale that should be applied when the user triggers a\n * zoom action. Prefers a scale that fills the container viewport; falls back to\n * the native-resolution scale or `DEFAULT_ZOOM_SCALE` when the image is small.\n */\nexport const getTargetZoomScale = ({\n\timage,\n\tcontainerWidth,\n\tcontainerHeight,\n}: {\n\timage: HTMLImageElement;\n\tcontainerWidth: number;\n\tcontainerHeight: number;\n}) => {\n\tconst { renderedWidth, renderedHeight } = getImageMeasurements(image);\n\tconst fillWidthScale =\n\t\trenderedWidth > 0 ? containerWidth / renderedWidth : DEFAULT_ZOOM_SCALE;\n\tconst fillHeightScale =\n\t\trenderedHeight > 0 ? containerHeight / renderedHeight : DEFAULT_ZOOM_SCALE;\n\tconst fillViewportScale = Math.max(fillWidthScale, fillHeightScale);\n\tconst maxZoomScale = getImageMaxZoomScale(image);\n\tconst fallbackStepScale = Math.min(maxZoomScale, DEFAULT_ZOOM_SCALE);\n\tconst targetScale =\n\t\tfillViewportScale > 1 ? fillViewportScale : fallbackStepScale;\n\n\treturn Math.max(1, Math.min(maxZoomScale, targetScale));\n};\n\n/**\n * Returns `true` if the image has sufficient resolution to be meaningfully\n * zoomed (i.e. its max zoom scale exceeds the resolution epsilon threshold).\n */\nexport const canZoomImageElement = (image: HTMLImageElement) =>\n\tgetImageMaxZoomScale(image) > RESOLUTION_EPSILON;\n"],"names":[],"mappings":"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"}
|
package/dist/styles.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
.me_4f1afa9a{color:var(--
|
|
1
|
+
.me_4f1afa9a{color:var(--mantine-color-white);display:flex;flex-direction:column;height:100dvh;inset:0;position:fixed;width:100dvw;z-index:200}.me_f5ce649a{flex:1;min-height:0;overflow:hidden;position:relative}.me_7f838760{height:100%;overflow:hidden}.me_b5439507{display:flex;height:100%}.me_4f1afa9a[data-orientation=vertical] .me_b5439507{flex-direction:column}.me_7b06f0a5{align-items:center;background-color:var(--mantine-color-white);border-radius:var(--lightbox-control-size);display:flex;justify-content:center;min-height:var(--lightbox-control-size);min-width:var(--lightbox-control-size);pointer-events:all;position:absolute;top:calc(50% - var(--lightbox-thumbnails-height, 0px)/2);transform:translateY(-50%);z-index:1}[data-mantine-color-scheme=dark] .me_7b06f0a5{background-color:var(--mantine-color-dark-5)}.me_7b06f0a5{color:var(--mantine-color-black)}[data-mantine-color-scheme=dark] .me_7b06f0a5{color:var(--mantine-color-white)}.me_7b06f0a5{border:1px solid var(--mantine-color-gray-3);box-shadow:var(--mantine-shadow-md)}[data-mantine-color-scheme=dark] .me_7b06f0a5{border:1px solid var(--mantine-color-dark-4)}.me_7b06f0a5{transition:background-color .1s ease,border-color .1s ease}@media (hover:hover){.me_7b06f0a5:hover{background-color:var(--mantine-color-gray-1)}[data-mantine-color-scheme=dark] .me_7b06f0a5:hover{background-color:var(--mantine-color-dark-4)}.me_7b06f0a5:hover{border-color:var(--mantine-color-gray-4)}[data-mantine-color-scheme=dark] .me_7b06f0a5:hover{border-color:var(--mantine-color-dark-3)}}@media (hover:none){.me_7b06f0a5:active{background-color:var(--mantine-color-gray-1)}[data-mantine-color-scheme=dark] .me_7b06f0a5:active{background-color:var(--mantine-color-dark-4)}.me_7b06f0a5:active{border-color:var(--mantine-color-gray-4)}[data-mantine-color-scheme=dark] .me_7b06f0a5:active{border-color:var(--mantine-color-dark-3)}}.me_7b06f0a5[data-direction=prev]{left:var(--mantine-spacing-md)}.me_7b06f0a5[data-direction=next]{right:var(--mantine-spacing-md)}.me_4f1afa9a[data-orientation=vertical] .me_7b06f0a5[data-direction=prev]{left:50%;right:auto;top:var(--mantine-spacing-md);transform:translateX(-50%)}.me_4f1afa9a[data-orientation=vertical] .me_7b06f0a5[data-direction=next]{inset:auto auto calc(var(--mantine-spacing-md) + var(--lightbox-thumbnails-height, 0px)) 50%;transform:translateX(-50%)}.me_9450faf9{flex:0 0 100%;height:100%;line-height:1}.me_411d1cbf{max-width:100%;padding:var(--mantine-spacing-md)}.me_3a7e4a85{overflow:hidden;width:100%}.me_59a13682{align-items:stretch;display:flex;justify-content:center}.me_59a13682[data-overflow]{justify-content:flex-start}.me_3be82a34{flex:0 0 auto;margin-right:var(--mantine-spacing-xs)}.me_3be82a34:last-child{margin-right:0}.me_a9abc686{border:2px solid transparent;border-radius:var(--mantine-radius-sm);cursor:pointer;flex-shrink:0;font-size:0;height:76px;line-height:1;opacity:.5;overflow:hidden;position:relative;transition:opacity .15s ease,border-color .15s ease;width:94px}.me_a9abc686 img{height:100%;max-height:100%;max-width:100%;object-fit:cover;width:100%}.me_a9abc686[aria-current]{border-color:var(--mantine-primary-color-filled);opacity:1}.me_dfd5db36{align-items:center;display:flex;height:100%;justify-content:center;line-height:1;overflow:hidden;width:100%}.me_dfd5db36 img{height:auto;max-height:100%;max-width:100%;object-fit:contain;width:auto}.me_dfd5db36[data-zoom-enabled] img{cursor:zoom-in}.me_dfd5db36[data-zoom-enabled][data-zoomed] img{cursor:zoom-out}.me_dfd5db36[data-zoom-enabled][data-can-zoom=false] img{cursor:default}.me_2ed9ec6e{align-items:center;display:flex;height:100%;justify-content:center;transform-origin:center;transition:transform .15s ease;width:100%;will-change:transform}.me_dfd5db36[data-dragging] .me_2ed9ec6e{transition:none}.me_fe5b16c3{right:var(--mantine-spacing-md)}.me_7b66e144,.me_fe5b16c3{position:absolute;top:var(--mantine-spacing-md);z-index:1}.me_7b66e144{color:var(--mantine-color-white);font-weight:500;left:var(--mantine-spacing-md);user-select:none}
|
package/dist/styles.layer.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
@layer mantine {.me_4f1afa9a{color:var(--
|
|
1
|
+
@layer mantine {.me_4f1afa9a{color:var(--mantine-color-white);display:flex;flex-direction:column;height:100dvh;inset:0;position:fixed;width:100dvw;z-index:200}.me_f5ce649a{flex:1;min-height:0;overflow:hidden;position:relative}.me_7f838760{height:100%;overflow:hidden}.me_b5439507{display:flex;height:100%}.me_4f1afa9a[data-orientation=vertical] .me_b5439507{flex-direction:column}.me_7b06f0a5{align-items:center;background-color:var(--mantine-color-white);border-radius:var(--lightbox-control-size);display:flex;justify-content:center;min-height:var(--lightbox-control-size);min-width:var(--lightbox-control-size);pointer-events:all;position:absolute;top:calc(50% - var(--lightbox-thumbnails-height, 0px)/2);transform:translateY(-50%);z-index:1}[data-mantine-color-scheme=dark] .me_7b06f0a5{background-color:var(--mantine-color-dark-5)}.me_7b06f0a5{color:var(--mantine-color-black)}[data-mantine-color-scheme=dark] .me_7b06f0a5{color:var(--mantine-color-white)}.me_7b06f0a5{border:1px solid var(--mantine-color-gray-3);box-shadow:var(--mantine-shadow-md)}[data-mantine-color-scheme=dark] .me_7b06f0a5{border:1px solid var(--mantine-color-dark-4)}.me_7b06f0a5{transition:background-color .1s ease,border-color .1s ease}@media (hover:hover){.me_7b06f0a5:hover{background-color:var(--mantine-color-gray-1)}[data-mantine-color-scheme=dark] .me_7b06f0a5:hover{background-color:var(--mantine-color-dark-4)}.me_7b06f0a5:hover{border-color:var(--mantine-color-gray-4)}[data-mantine-color-scheme=dark] .me_7b06f0a5:hover{border-color:var(--mantine-color-dark-3)}}@media (hover:none){.me_7b06f0a5:active{background-color:var(--mantine-color-gray-1)}[data-mantine-color-scheme=dark] .me_7b06f0a5:active{background-color:var(--mantine-color-dark-4)}.me_7b06f0a5:active{border-color:var(--mantine-color-gray-4)}[data-mantine-color-scheme=dark] .me_7b06f0a5:active{border-color:var(--mantine-color-dark-3)}}.me_7b06f0a5[data-direction=prev]{left:var(--mantine-spacing-md)}.me_7b06f0a5[data-direction=next]{right:var(--mantine-spacing-md)}.me_4f1afa9a[data-orientation=vertical] .me_7b06f0a5[data-direction=prev]{left:50%;right:auto;top:var(--mantine-spacing-md);transform:translateX(-50%)}.me_4f1afa9a[data-orientation=vertical] .me_7b06f0a5[data-direction=next]{inset:auto auto calc(var(--mantine-spacing-md) + var(--lightbox-thumbnails-height, 0px)) 50%;transform:translateX(-50%)}.me_9450faf9{flex:0 0 100%;height:100%;line-height:1}.me_411d1cbf{max-width:100%;padding:var(--mantine-spacing-md)}.me_3a7e4a85{overflow:hidden;width:100%}.me_59a13682{align-items:stretch;display:flex;justify-content:center}.me_59a13682[data-overflow]{justify-content:flex-start}.me_3be82a34{flex:0 0 auto;margin-right:var(--mantine-spacing-xs)}.me_3be82a34:last-child{margin-right:0}.me_a9abc686{border:2px solid transparent;border-radius:var(--mantine-radius-sm);cursor:pointer;flex-shrink:0;font-size:0;height:76px;line-height:1;opacity:.5;overflow:hidden;position:relative;transition:opacity .15s ease,border-color .15s ease;width:94px}.me_a9abc686 img{height:100%;max-height:100%;max-width:100%;object-fit:cover;width:100%}.me_a9abc686[aria-current]{border-color:var(--mantine-primary-color-filled);opacity:1}.me_dfd5db36{align-items:center;display:flex;height:100%;justify-content:center;line-height:1;overflow:hidden;width:100%}.me_dfd5db36 img{height:auto;max-height:100%;max-width:100%;object-fit:contain;width:auto}.me_dfd5db36[data-zoom-enabled] img{cursor:zoom-in}.me_dfd5db36[data-zoom-enabled][data-zoomed] img{cursor:zoom-out}.me_dfd5db36[data-zoom-enabled][data-can-zoom=false] img{cursor:default}.me_2ed9ec6e{align-items:center;display:flex;height:100%;justify-content:center;transform-origin:center;transition:transform .15s ease;width:100%;will-change:transform}.me_dfd5db36[data-dragging] .me_2ed9ec6e{transition:none}.me_fe5b16c3{right:var(--mantine-spacing-md)}.me_7b66e144,.me_fe5b16c3{position:absolute;top:var(--mantine-spacing-md);z-index:1}.me_7b66e144{color:var(--mantine-color-white);font-weight:500;left:var(--mantine-spacing-md);user-select:none}}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { GetStylesApi, OverlayProps } from "@mantine/core";
|
|
2
|
+
import type { CSSProperties } from "react";
|
|
3
|
+
import type { UseLightboxOutput } from "./hooks/useLightbox.js";
|
|
4
|
+
import type { LightboxContext } from "./Lightbox.context.js";
|
|
5
|
+
import type { LightboxFactory } from "./Lightbox.js";
|
|
6
|
+
interface BuildLightboxContextValueInput {
|
|
7
|
+
getStyles: GetStylesApi<LightboxFactory>;
|
|
8
|
+
transitionStyles: CSSProperties;
|
|
9
|
+
overlayProps: OverlayProps;
|
|
10
|
+
onClose: () => void;
|
|
11
|
+
withZoom: boolean | undefined;
|
|
12
|
+
lightbox: UseLightboxOutput;
|
|
13
|
+
}
|
|
14
|
+
export declare function buildLightboxContextValue({ getStyles, transitionStyles, overlayProps, onClose, withZoom, lightbox, }: BuildLightboxContextValueInput): LightboxContext;
|
|
15
|
+
export {};
|
|
16
|
+
//# sourceMappingURL=Lightbox.context-value.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Lightbox.context-value.d.ts","sourceRoot":"","sources":["../../src/Lightbox.context-value.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAChE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAC3C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAErD,UAAU,8BAA8B;IACvC,SAAS,EAAE,YAAY,CAAC,eAAe,CAAC,CAAC;IACzC,gBAAgB,EAAE,aAAa,CAAC;IAChC,YAAY,EAAE,YAAY,CAAC;IAC3B,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,QAAQ,EAAE,OAAO,GAAG,SAAS,CAAC;IAC9B,QAAQ,EAAE,iBAAiB,CAAC;CAC5B;AAED,wBAAgB,yBAAyB,CAAC,EACzC,SAAS,EACT,gBAAgB,EAChB,YAAY,EACZ,OAAO,EACP,QAAQ,EACR,QAAQ,GACR,EAAE,8BAA8B,GAAG,eAAe,CAiClD"}
|
|
@@ -1,7 +1,36 @@
|
|
|
1
1
|
import { type GetStylesApi } from "@mantine/core";
|
|
2
|
+
import type { EmblaCarouselType } from "embla-carousel";
|
|
3
|
+
import type { PointerEvent as ReactPointerEvent, RefObject } from "react";
|
|
2
4
|
import type { LightboxFactory } from "./Lightbox.js";
|
|
5
|
+
import type { ZoomOffset } from "./utils/zoom.js";
|
|
3
6
|
export interface LightboxContext {
|
|
4
7
|
getStyles: GetStylesApi<LightboxFactory>;
|
|
8
|
+
opened: boolean;
|
|
9
|
+
currentIndex: number;
|
|
10
|
+
slideCount: number | null;
|
|
11
|
+
slidesEmblaRef: RefObject<EmblaCarouselType | null>;
|
|
12
|
+
thumbnailsEmblaRef: RefObject<EmblaCarouselType | null>;
|
|
13
|
+
setCurrentIndex: (index: number) => void;
|
|
14
|
+
setSlideCount: (count: number | null) => void;
|
|
15
|
+
onClose: () => void;
|
|
16
|
+
onOutsideClick: () => void;
|
|
17
|
+
onThumbnailClick: (index: number) => void;
|
|
18
|
+
onScrollPrev: () => void;
|
|
19
|
+
onScrollNext: () => void;
|
|
20
|
+
orientation: "horizontal" | "vertical";
|
|
21
|
+
withZoom: boolean;
|
|
22
|
+
isZoomed: boolean;
|
|
23
|
+
isZoomedRef: RefObject<boolean>;
|
|
24
|
+
isDraggingZoom: boolean;
|
|
25
|
+
canZoomCurrent: boolean;
|
|
26
|
+
zoomOffset: ZoomOffset;
|
|
27
|
+
zoomScale: number;
|
|
28
|
+
activeZoomContainerRef: RefObject<HTMLDivElement | null>;
|
|
29
|
+
toggleZoom: () => void;
|
|
30
|
+
updateCanZoomAvailability: () => void;
|
|
31
|
+
handleZoomPointerDown: (event: ReactPointerEvent<HTMLDivElement>) => void;
|
|
32
|
+
handleZoomPointerMove: (event: ReactPointerEvent<HTMLDivElement>) => void;
|
|
33
|
+
handleZoomPointerEnd: (event: ReactPointerEvent<HTMLDivElement>) => void;
|
|
5
34
|
}
|
|
6
35
|
export declare const LightboxProvider: ({ children, value }: {
|
|
7
36
|
value: LightboxContext;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Lightbox.context.d.ts","sourceRoot":"","sources":["../../src/Lightbox.context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,KAAK,YAAY,EAAE,MAAM,eAAe,CAAC;AACrE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"Lightbox.context.d.ts","sourceRoot":"","sources":["../../src/Lightbox.context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,KAAK,YAAY,EAAE,MAAM,eAAe,CAAC;AACrE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,KAAK,EAAE,YAAY,IAAI,iBAAiB,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAC1E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAElD,MAAM,WAAW,eAAe;IAC/B,SAAS,EAAE,YAAY,CAAC,eAAe,CAAC,CAAC;IACzC,MAAM,EAAE,OAAO,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,cAAc,EAAE,SAAS,CAAC,iBAAiB,GAAG,IAAI,CAAC,CAAC;IACpD,kBAAkB,EAAE,SAAS,CAAC,iBAAiB,GAAG,IAAI,CAAC,CAAC;IACxD,eAAe,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IAC9C,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,gBAAgB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1C,YAAY,EAAE,MAAM,IAAI,CAAC;IACzB,YAAY,EAAE,MAAM,IAAI,CAAC;IACzB,WAAW,EAAE,YAAY,GAAG,UAAU,CAAC;IAEvC,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;IAClB,WAAW,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC;IAChC,cAAc,EAAE,OAAO,CAAC;IACxB,cAAc,EAAE,OAAO,CAAC;IACxB,UAAU,EAAE,UAAU,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,sBAAsB,EAAE,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IACzD,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,yBAAyB,EAAE,MAAM,IAAI,CAAC;IACtC,qBAAqB,EAAE,CAAC,KAAK,EAAE,iBAAiB,CAAC,cAAc,CAAC,KAAK,IAAI,CAAC;IAC1E,qBAAqB,EAAE,CAAC,KAAK,EAAE,iBAAiB,CAAC,cAAc,CAAC,KAAK,IAAI,CAAC;IAC1E,oBAAoB,EAAE,CAAC,KAAK,EAAE,iBAAiB,CAAC,cAAc,CAAC,KAAK,IAAI,CAAC;CACzE;AAED,eAAO,MAAO,gBAAgB;;;+CAAE,kBAAkB,uBAGhD,CAAC"}
|
package/dist/types/Lightbox.d.ts
CHANGED
|
@@ -1,56 +1,74 @@
|
|
|
1
|
-
import { type
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
};
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
/**
|
|
1
|
+
import { type Factory } from "@mantine/core";
|
|
2
|
+
import { LightboxAutoplayButton } from "./components/LightboxAutoplayButton.js";
|
|
3
|
+
import { LightboxCloseButton } from "./components/LightboxCloseButton.js";
|
|
4
|
+
import { LightboxControls, type LightboxControlsProps } from "./components/LightboxControls.js";
|
|
5
|
+
import { LightboxCounter, type LightboxCounterProps } from "./components/LightboxCounter.js";
|
|
6
|
+
import { LightboxFullscreenButton } from "./components/LightboxFullscreenButton.js";
|
|
7
|
+
import { LightboxRoot, type LightboxRootProps } from "./components/LightboxRoot.js";
|
|
8
|
+
import { LightboxSlide } from "./components/LightboxSlide.js";
|
|
9
|
+
import { LightboxSlides, type LightboxSlidesProps } from "./components/LightboxSlides.js";
|
|
10
|
+
import { LightboxThumbnail } from "./components/LightboxThumbnail.js";
|
|
11
|
+
import { LightboxThumbnails, type LightboxThumbnailsProps } from "./components/LightboxThumbnails.js";
|
|
12
|
+
import { LightboxToolbar } from "./components/LightboxToolbar.js";
|
|
13
|
+
import { LightboxZoomButton } from "./components/LightboxZoomButton.js";
|
|
14
|
+
export interface LightboxImageData {
|
|
15
|
+
src: string;
|
|
16
|
+
alt?: string;
|
|
17
|
+
}
|
|
18
|
+
export interface LightboxProps extends Omit<LightboxRootProps, "children"> {
|
|
19
|
+
/** Array of images to display */
|
|
20
|
+
images: LightboxImageData[];
|
|
21
|
+
/** Show toolbar (zoom, fullscreen, close buttons), `true` by default */
|
|
22
|
+
withToolbar?: boolean;
|
|
23
|
+
/** Show prev/next navigation controls, `true` by default */
|
|
20
24
|
withControls?: boolean;
|
|
21
25
|
/** Show thumbnail strip, `true` by default */
|
|
22
26
|
withThumbnails?: boolean;
|
|
23
27
|
/** Show slide counter, `true` by default */
|
|
24
28
|
withCounter?: boolean;
|
|
25
|
-
/**
|
|
26
|
-
|
|
27
|
-
/**
|
|
28
|
-
|
|
29
|
-
/**
|
|
30
|
-
|
|
31
|
-
/**
|
|
32
|
-
|
|
33
|
-
/** Custom previous control icon */
|
|
34
|
-
previousControlIcon?: ReactNode;
|
|
35
|
-
/** Custom next control icon */
|
|
36
|
-
nextControlIcon?: ReactNode;
|
|
29
|
+
/** Props passed to the slides carousel (`LightboxSlides`) */
|
|
30
|
+
slidesProps?: Pick<LightboxSlidesProps, "initialSlide" | "emblaOptions" | "emblaPlugins">;
|
|
31
|
+
/** Props passed to the thumbnails carousel (`LightboxThumbnails`) */
|
|
32
|
+
thumbnailsProps?: Pick<LightboxThumbnailsProps, "emblaOptions">;
|
|
33
|
+
/** Props passed to the prev/next controls (`LightboxControls`) */
|
|
34
|
+
controlsProps?: Pick<LightboxControlsProps, "size">;
|
|
35
|
+
/** Props passed to the slide counter (`LightboxCounter`) */
|
|
36
|
+
counterProps?: Pick<LightboxCounterProps, "formatter">;
|
|
37
37
|
}
|
|
38
38
|
export type LightboxFactory = Factory<{
|
|
39
39
|
props: LightboxProps;
|
|
40
40
|
ref: HTMLDivElement;
|
|
41
|
-
stylesNames: LightboxStylesNames;
|
|
42
|
-
vars: LightboxCssVariables;
|
|
43
41
|
staticComponents: {
|
|
42
|
+
Root: typeof LightboxRoot;
|
|
43
|
+
Toolbar: typeof LightboxToolbar;
|
|
44
|
+
Counter: typeof LightboxCounter;
|
|
45
|
+
Controls: typeof LightboxControls;
|
|
46
|
+
Slides: typeof LightboxSlides;
|
|
44
47
|
Slide: typeof LightboxSlide;
|
|
48
|
+
Thumbnails: typeof LightboxThumbnails;
|
|
49
|
+
Thumbnail: typeof LightboxThumbnail;
|
|
50
|
+
CloseButton: typeof LightboxCloseButton;
|
|
51
|
+
ZoomButton: typeof LightboxZoomButton;
|
|
52
|
+
FullscreenButton: typeof LightboxFullscreenButton;
|
|
53
|
+
AutoplayButton: typeof LightboxAutoplayButton;
|
|
45
54
|
};
|
|
46
55
|
}>;
|
|
47
56
|
export declare const Lightbox: import("@mantine/core").MantineComponent<{
|
|
48
57
|
props: LightboxProps;
|
|
49
58
|
ref: HTMLDivElement;
|
|
50
|
-
stylesNames: LightboxStylesNames;
|
|
51
|
-
vars: LightboxCssVariables;
|
|
52
59
|
staticComponents: {
|
|
60
|
+
Root: typeof LightboxRoot;
|
|
61
|
+
Toolbar: typeof LightboxToolbar;
|
|
62
|
+
Counter: typeof LightboxCounter;
|
|
63
|
+
Controls: typeof LightboxControls;
|
|
64
|
+
Slides: typeof LightboxSlides;
|
|
53
65
|
Slide: typeof LightboxSlide;
|
|
66
|
+
Thumbnails: typeof LightboxThumbnails;
|
|
67
|
+
Thumbnail: typeof LightboxThumbnail;
|
|
68
|
+
CloseButton: typeof LightboxCloseButton;
|
|
69
|
+
ZoomButton: typeof LightboxZoomButton;
|
|
70
|
+
FullscreenButton: typeof LightboxFullscreenButton;
|
|
71
|
+
AutoplayButton: typeof LightboxAutoplayButton;
|
|
54
72
|
};
|
|
55
73
|
}>;
|
|
56
74
|
//# sourceMappingURL=Lightbox.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Lightbox.d.ts","sourceRoot":"","sources":["../../src/Lightbox.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Lightbox.d.ts","sourceRoot":"","sources":["../../src/Lightbox.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
export declare const LIGHTBOX_DEFAULT_PROPS: {
|
|
2
|
+
readonly closeOnClickOutside: true;
|
|
3
|
+
readonly keepMounted: false;
|
|
4
|
+
readonly trapFocus: true;
|
|
5
|
+
readonly lockScroll: true;
|
|
6
|
+
readonly returnFocus: true;
|
|
7
|
+
readonly withinPortal: true;
|
|
8
|
+
readonly controlSize: 36;
|
|
9
|
+
readonly carouselOptions: {};
|
|
10
|
+
readonly thumbnailCarouselOptions: {
|
|
11
|
+
readonly dragFree: true;
|
|
12
|
+
};
|
|
13
|
+
readonly overlayProps: {
|
|
14
|
+
readonly fixed: true;
|
|
15
|
+
readonly backgroundOpacity: 0.9;
|
|
16
|
+
readonly color: "#18181B";
|
|
17
|
+
readonly zIndex: 200;
|
|
18
|
+
};
|
|
19
|
+
readonly transitionProps: {
|
|
20
|
+
readonly transition: "fade";
|
|
21
|
+
readonly duration: 250;
|
|
22
|
+
};
|
|
23
|
+
};
|
|
24
|
+
//# sourceMappingURL=Lightbox.defaults.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Lightbox.defaults.d.ts","sourceRoot":"","sources":["../../src/Lightbox.defaults.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;CAsBzB,CAAC"}
|
|
@@ -2,9 +2,9 @@ declare const _default: {
|
|
|
2
2
|
title: string;
|
|
3
3
|
};
|
|
4
4
|
export default _default;
|
|
5
|
-
export declare
|
|
6
|
-
export declare
|
|
7
|
-
export declare
|
|
8
|
-
export declare
|
|
9
|
-
export declare
|
|
5
|
+
export declare const Default: () => import("react/jsx-runtime").JSX.Element;
|
|
6
|
+
export declare const WithLoop: () => import("react/jsx-runtime").JSX.Element;
|
|
7
|
+
export declare const WithCustomCounter: () => import("react/jsx-runtime").JSX.Element;
|
|
8
|
+
export declare const Vertical: () => import("react/jsx-runtime").JSX.Element;
|
|
9
|
+
export declare const WithAutoplay: () => import("react/jsx-runtime").JSX.Element;
|
|
10
10
|
//# sourceMappingURL=Lightbox.story.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Lightbox.story.d.ts","sourceRoot":"","sources":["../../src/Lightbox.story.tsx"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"Lightbox.story.d.ts","sourceRoot":"","sources":["../../src/Lightbox.story.tsx"],"names":[],"mappings":";;;AAWA,wBAAqC;AAgErC,eAAO,MAAM,OAAO,+CAenB,CAAC;AAEF,eAAO,MAAM,QAAQ,+CAiBpB,CAAC;AAEF,eAAO,MAAM,iBAAiB,+CAe7B,CAAC;AAEF,eAAO,MAAM,QAAQ,+CAepB,CAAC;AAEF,eAAO,MAAM,YAAY,+CAwBxB,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export interface LightboxSlideContext {
|
|
2
|
+
index: number;
|
|
3
|
+
}
|
|
4
|
+
export declare const LightboxSlideProvider: ({ children, value }: {
|
|
5
|
+
value: LightboxSlideContext;
|
|
6
|
+
children: React.ReactNode;
|
|
7
|
+
}) => import("react/jsx-runtime").JSX.Element, useLightboxSlideContext: () => LightboxSlideContext;
|
|
8
|
+
//# sourceMappingURL=LightboxSlide.context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LightboxSlide.context.d.ts","sourceRoot":"","sources":["../../src/LightboxSlide.context.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,oBAAoB;IACpC,KAAK,EAAE,MAAM,CAAC;CACd;AAED,eAAO,MAAO,qBAAqB;;;+CAAE,uBAAuB,4BAG1D,CAAC"}
|
|
@@ -1,9 +1,6 @@
|
|
|
1
1
|
import { type BoxProps, type CompoundStylesApiProps, type ElementProps, type Factory } from "@mantine/core";
|
|
2
|
-
import type { ReactNode } from "react";
|
|
3
2
|
export type LightboxSlideStylesNames = "slide";
|
|
4
3
|
export interface LightboxSlideProps extends BoxProps, CompoundStylesApiProps<LightboxSlideFactory>, ElementProps<"div"> {
|
|
5
|
-
/** Thumbnail content for this slide, shows a placeholder if omitted */
|
|
6
|
-
thumbnail?: ReactNode;
|
|
7
4
|
}
|
|
8
5
|
export type LightboxSlideFactory = Factory<{
|
|
9
6
|
props: LightboxSlideProps;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LightboxSlide.d.ts","sourceRoot":"","sources":["../../src/LightboxSlide.tsx"],"names":[],"mappings":"AACA,OAAO,
|
|
1
|
+
{"version":3,"file":"LightboxSlide.d.ts","sourceRoot":"","sources":["../../src/LightboxSlide.tsx"],"names":[],"mappings":"AACA,OAAO,EAEN,KAAK,QAAQ,EACb,KAAK,sBAAsB,EAC3B,KAAK,YAAY,EACjB,KAAK,OAAO,EAGZ,MAAM,eAAe,CAAC;AAOvB,MAAM,MAAM,wBAAwB,GAAG,OAAO,CAAC;AAE/C,MAAM,WAAW,kBAChB,SAAQ,QAAQ,EACf,sBAAsB,CAAC,oBAAoB,CAAC,EAC5C,YAAY,CAAC,KAAK,CAAC;CAAG;AAExB,MAAM,MAAM,oBAAoB,GAAG,OAAO,CAAC;IAC1C,KAAK,EAAE,kBAAkB,CAAC;IAC1B,GAAG,EAAE,cAAc,CAAC;IACpB,WAAW,EAAE,wBAAwB,CAAC;IACtC,QAAQ,EAAE,IAAI,CAAC;CACf,CAAC,CAAC;AAEH,eAAO,MAAM,aAAa;WANlB,kBAAkB;SACpB,cAAc;iBACN,wBAAwB;cAC3B,IAAI;EAiFb,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Lightbox.test.d.ts","sourceRoot":"","sources":["../../../src/__tests__/Lightbox.test.tsx"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LightboxSimple.test.d.ts","sourceRoot":"","sources":["../../../src/__tests__/LightboxSimple.test.tsx"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pointer.test.d.ts","sourceRoot":"","sources":["../../../src/__tests__/pointer.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"zoom.test.d.ts","sourceRoot":"","sources":["../../../src/__tests__/zoom.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EnterFullscreen.d.ts","sourceRoot":"","sources":["../../../src/components/EnterFullscreen.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAEtC,eAAO,MAAM,eAAe,GAAI,OAAO,QAAQ,CAAC,aAAa,CAAC,4CAmB7D,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ExitFullscreen.d.ts","sourceRoot":"","sources":["../../../src/components/ExitFullscreen.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAEtC,eAAO,MAAM,cAAc,GAAI,OAAO,QAAQ,CAAC,aAAa,CAAC,4CAmB5D,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { type BoxProps, type CompoundStylesApiProps, type ElementProps, type Factory } from "@mantine/core";
|
|
2
|
+
export type LightboxAutoplayButtonStylesNames = "autoplayButton";
|
|
3
|
+
export interface LightboxAutoplayButtonProps extends BoxProps, CompoundStylesApiProps<LightboxAutoplayButtonFactory>, ElementProps<"button"> {
|
|
4
|
+
}
|
|
5
|
+
export type LightboxAutoplayButtonFactory = Factory<{
|
|
6
|
+
props: LightboxAutoplayButtonProps;
|
|
7
|
+
ref: HTMLButtonElement;
|
|
8
|
+
stylesNames: LightboxAutoplayButtonStylesNames;
|
|
9
|
+
compound: true;
|
|
10
|
+
}>;
|
|
11
|
+
export declare const LightboxAutoplayButton: import("@mantine/core").MantineComponent<{
|
|
12
|
+
props: LightboxAutoplayButtonProps;
|
|
13
|
+
ref: HTMLButtonElement;
|
|
14
|
+
stylesNames: LightboxAutoplayButtonStylesNames;
|
|
15
|
+
compound: true;
|
|
16
|
+
}>;
|
|
17
|
+
//# sourceMappingURL=LightboxAutoplayButton.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LightboxAutoplayButton.d.ts","sourceRoot":"","sources":["../../../src/components/LightboxAutoplayButton.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEN,KAAK,QAAQ,EACb,KAAK,sBAAsB,EAC3B,KAAK,YAAY,EACjB,KAAK,OAAO,EAGZ,MAAM,eAAe,CAAC;AAMvB,MAAM,MAAM,iCAAiC,GAAG,gBAAgB,CAAC;AAEjE,MAAM,WAAW,2BAChB,SAAQ,QAAQ,EACf,sBAAsB,CAAC,6BAA6B,CAAC,EACrD,YAAY,CAAC,QAAQ,CAAC;CAAG;AAE3B,MAAM,MAAM,6BAA6B,GAAG,OAAO,CAAC;IACnD,KAAK,EAAE,2BAA2B,CAAC;IACnC,GAAG,EAAE,iBAAiB,CAAC;IACvB,WAAW,EAAE,iCAAiC,CAAC;IAC/C,QAAQ,EAAE,IAAI,CAAC;CACf,CAAC,CAAC;AAEH,eAAO,MAAM,sBAAsB;WAN3B,2BAA2B;SAC7B,iBAAiB;iBACT,iCAAiC;cACpC,IAAI;EAmCd,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { ReactNode } from "react";
|
|
2
|
+
export interface LightboxCarouselProps {
|
|
3
|
+
children?: ReactNode;
|
|
4
|
+
}
|
|
5
|
+
export declare function LightboxCarousel(props: LightboxCarouselProps): import("react/jsx-runtime").JSX.Element;
|
|
6
|
+
//# sourceMappingURL=LightboxCarousel.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LightboxCarousel.d.ts","sourceRoot":"","sources":["../../../src/components/LightboxCarousel.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGvC,MAAM,WAAW,qBAAqB;IACrC,QAAQ,CAAC,EAAE,SAAS,CAAC;CACrB;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,2CAoB5D"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
interface LightboxCarouselSlideContextValue {
|
|
2
|
+
index: number;
|
|
3
|
+
isActive: boolean;
|
|
4
|
+
}
|
|
5
|
+
export declare const LightboxCarouselSlideProvider: ({ children, value }: {
|
|
6
|
+
value: LightboxCarouselSlideContextValue;
|
|
7
|
+
children: React.ReactNode;
|
|
8
|
+
}) => import("react/jsx-runtime").JSX.Element, useLightboxCarouselSlideContext: () => LightboxCarouselSlideContextValue;
|
|
9
|
+
export {};
|
|
10
|
+
//# sourceMappingURL=LightboxCarouselSlide.context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LightboxCarouselSlide.context.d.ts","sourceRoot":"","sources":["../../../src/components/LightboxCarouselSlide.context.ts"],"names":[],"mappings":"AAEA,UAAU,iCAAiC;IAC1C,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,OAAO,CAAC;CAClB;AAED,eAAO,MAAO,6BAA6B;;;+CAAE,+BAA+B,yCAG1E,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { type BoxProps, type CompoundStylesApiProps, type ElementProps, type Factory } from "@mantine/core";
|
|
2
|
+
export type LightboxCloseButtonStylesNames = "closeButton";
|
|
3
|
+
export interface LightboxCloseButtonProps extends BoxProps, CompoundStylesApiProps<LightboxCloseButtonFactory>, ElementProps<"button"> {
|
|
4
|
+
}
|
|
5
|
+
export type LightboxCloseButtonFactory = Factory<{
|
|
6
|
+
props: LightboxCloseButtonProps;
|
|
7
|
+
ref: HTMLButtonElement;
|
|
8
|
+
stylesNames: LightboxCloseButtonStylesNames;
|
|
9
|
+
compound: true;
|
|
10
|
+
}>;
|
|
11
|
+
export declare const LightboxCloseButton: import("@mantine/core").MantineComponent<{
|
|
12
|
+
props: LightboxCloseButtonProps;
|
|
13
|
+
ref: HTMLButtonElement;
|
|
14
|
+
stylesNames: LightboxCloseButtonStylesNames;
|
|
15
|
+
compound: true;
|
|
16
|
+
}>;
|
|
17
|
+
//# sourceMappingURL=LightboxCloseButton.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LightboxCloseButton.d.ts","sourceRoot":"","sources":["../../../src/components/LightboxCloseButton.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEN,KAAK,QAAQ,EAEb,KAAK,sBAAsB,EAC3B,KAAK,YAAY,EACjB,KAAK,OAAO,EAGZ,MAAM,eAAe,CAAC;AAIvB,MAAM,MAAM,8BAA8B,GAAG,aAAa,CAAC;AAE3D,MAAM,WAAW,wBAChB,SAAQ,QAAQ,EACf,sBAAsB,CAAC,0BAA0B,CAAC,EAClD,YAAY,CAAC,QAAQ,CAAC;CAAG;AAE3B,MAAM,MAAM,0BAA0B,GAAG,OAAO,CAAC;IAChD,KAAK,EAAE,wBAAwB,CAAC;IAChC,GAAG,EAAE,iBAAiB,CAAC;IACvB,WAAW,EAAE,8BAA8B,CAAC;IAC5C,QAAQ,EAAE,IAAI,CAAC;CACf,CAAC,CAAC;AAEH,eAAO,MAAM,mBAAmB;WANxB,wBAAwB;SAC1B,iBAAiB;iBACT,8BAA8B;cACjC,IAAI;EAyBd,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { type BoxProps, type ElementProps, type TransitionOverride } from "@mantine/core";
|
|
2
|
+
import type { ReactNode } from "react";
|
|
3
|
+
export interface LightboxContentProps extends BoxProps, ElementProps<"div"> {
|
|
4
|
+
/**
|
|
5
|
+
* Transition applied to the content panel, merged with
|
|
6
|
+
* `{ transition: 'fade', duration: 250 }` by default.
|
|
7
|
+
* Note: `mounted` and `keepMounted` within `transitionProps` have no effect —
|
|
8
|
+
* they are controlled by `LightboxRoot`.
|
|
9
|
+
*/
|
|
10
|
+
transitionProps?: TransitionOverride;
|
|
11
|
+
children?: ReactNode;
|
|
12
|
+
}
|
|
13
|
+
export declare function LightboxContent(_props: LightboxContentProps): import("react/jsx-runtime").JSX.Element;
|
|
14
|
+
//# sourceMappingURL=LightboxContent.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LightboxContent.d.ts","sourceRoot":"","sources":["../../../src/components/LightboxContent.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEN,KAAK,QAAQ,EACb,KAAK,YAAY,EAEjB,KAAK,kBAAkB,EAEvB,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGvC,MAAM,WAAW,oBAAqB,SAAQ,QAAQ,EAAE,YAAY,CAAC,KAAK,CAAC;IAC1E;;;;;OAKG;IACH,eAAe,CAAC,EAAE,kBAAkB,CAAC;IACrC,QAAQ,CAAC,EAAE,SAAS,CAAC;CACrB;AAMD,wBAAgB,eAAe,CAAC,MAAM,EAAE,oBAAoB,2CA4B3D"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { type CompoundStylesApiProps, type Factory } from "@mantine/core";
|
|
2
|
+
export type LightboxControlsStylesNames = "control";
|
|
3
|
+
export interface LightboxControlsProps extends CompoundStylesApiProps<LightboxControlsFactory> {
|
|
4
|
+
/** Size of the prev/next navigation buttons in px, `36` by default */
|
|
5
|
+
size?: number;
|
|
6
|
+
}
|
|
7
|
+
export type LightboxControlsFactory = Factory<{
|
|
8
|
+
props: LightboxControlsProps;
|
|
9
|
+
ref: HTMLElement;
|
|
10
|
+
stylesNames: LightboxControlsStylesNames;
|
|
11
|
+
compound: true;
|
|
12
|
+
}>;
|
|
13
|
+
export declare const LightboxControls: import("@mantine/core").MantineComponent<{
|
|
14
|
+
props: LightboxControlsProps;
|
|
15
|
+
ref: HTMLElement;
|
|
16
|
+
stylesNames: LightboxControlsStylesNames;
|
|
17
|
+
compound: true;
|
|
18
|
+
}>;
|
|
19
|
+
//# sourceMappingURL=LightboxControls.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LightboxControls.d.ts","sourceRoot":"","sources":["../../../src/components/LightboxControls.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEN,KAAK,sBAAsB,EAC3B,KAAK,OAAO,EAMZ,MAAM,eAAe,CAAC;AAIvB,MAAM,MAAM,2BAA2B,GAAG,SAAS,CAAC;AAEpD,MAAM,WAAW,qBAChB,SAAQ,sBAAsB,CAAC,uBAAuB,CAAC;IACvD,sEAAsE;IACtE,IAAI,CAAC,EAAE,MAAM,CAAC;CACd;AAMD,MAAM,MAAM,uBAAuB,GAAG,OAAO,CAAC;IAC7C,KAAK,EAAE,qBAAqB,CAAC;IAC7B,GAAG,EAAE,WAAW,CAAC;IACjB,WAAW,EAAE,2BAA2B,CAAC;IACzC,QAAQ,EAAE,IAAI,CAAC;CACf,CAAC,CAAC;AAEH,eAAO,MAAM,gBAAgB;WANrB,qBAAqB;SACvB,WAAW;iBACH,2BAA2B;cAC9B,IAAI;EAsDd,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { type BoxProps, type CompoundStylesApiProps, type Factory } from "@mantine/core";
|
|
2
|
+
export type LightboxCounterStylesNames = "counter";
|
|
3
|
+
export interface LightboxCounterProps extends BoxProps, CompoundStylesApiProps<LightboxCounterFactory> {
|
|
4
|
+
/** Custom formatter for the counter label, `(i, t) => \`${i + 1} / ${t}\`` by default */
|
|
5
|
+
formatter?: (index: number, total: number) => string;
|
|
6
|
+
}
|
|
7
|
+
export type LightboxCounterFactory = Factory<{
|
|
8
|
+
props: LightboxCounterProps;
|
|
9
|
+
ref: HTMLParagraphElement;
|
|
10
|
+
stylesNames: LightboxCounterStylesNames;
|
|
11
|
+
compound: true;
|
|
12
|
+
}>;
|
|
13
|
+
export declare const LightboxCounter: import("@mantine/core").MantineComponent<{
|
|
14
|
+
props: LightboxCounterProps;
|
|
15
|
+
ref: HTMLParagraphElement;
|
|
16
|
+
stylesNames: LightboxCounterStylesNames;
|
|
17
|
+
compound: true;
|
|
18
|
+
}>;
|
|
19
|
+
//# sourceMappingURL=LightboxCounter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LightboxCounter.d.ts","sourceRoot":"","sources":["../../../src/components/LightboxCounter.tsx"],"names":[],"mappings":"AAAA,OAAO,EACN,KAAK,QAAQ,EACb,KAAK,sBAAsB,EAC3B,KAAK,OAAO,EAIZ,MAAM,eAAe,CAAC;AAIvB,MAAM,MAAM,0BAA0B,GAAG,SAAS,CAAC;AAEnD,MAAM,WAAW,oBAChB,SAAQ,QAAQ,EACf,sBAAsB,CAAC,sBAAsB,CAAC;IAC/C,yFAAyF;IACzF,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;CACrD;AAED,MAAM,MAAM,sBAAsB,GAAG,OAAO,CAAC;IAC5C,KAAK,EAAE,oBAAoB,CAAC;IAC5B,GAAG,EAAE,oBAAoB,CAAC;IAC1B,WAAW,EAAE,0BAA0B,CAAC;IACxC,QAAQ,EAAE,IAAI,CAAC;CACf,CAAC,CAAC;AAEH,eAAO,MAAM,eAAe;WANpB,oBAAoB;SACtB,oBAAoB;iBACZ,0BAA0B;cAC7B,IAAI;EA+Bd,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { type BoxProps, type CompoundStylesApiProps, type ElementProps, type Factory } from "@mantine/core";
|
|
2
|
+
export type LightboxFullscreenButtonStylesNames = "fullscreenButton";
|
|
3
|
+
export interface LightboxFullscreenButtonProps extends BoxProps, CompoundStylesApiProps<LightboxFullscreenButtonFactory>, ElementProps<"button"> {
|
|
4
|
+
}
|
|
5
|
+
export type LightboxFullscreenButtonFactory = Factory<{
|
|
6
|
+
props: LightboxFullscreenButtonProps;
|
|
7
|
+
ref: HTMLButtonElement;
|
|
8
|
+
stylesNames: LightboxFullscreenButtonStylesNames;
|
|
9
|
+
compound: true;
|
|
10
|
+
}>;
|
|
11
|
+
export declare const LightboxFullscreenButton: import("@mantine/core").MantineComponent<{
|
|
12
|
+
props: LightboxFullscreenButtonProps;
|
|
13
|
+
ref: HTMLButtonElement;
|
|
14
|
+
stylesNames: LightboxFullscreenButtonStylesNames;
|
|
15
|
+
compound: true;
|
|
16
|
+
}>;
|
|
17
|
+
//# sourceMappingURL=LightboxFullscreenButton.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LightboxFullscreenButton.d.ts","sourceRoot":"","sources":["../../../src/components/LightboxFullscreenButton.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEN,KAAK,QAAQ,EACb,KAAK,sBAAsB,EAC3B,KAAK,YAAY,EACjB,KAAK,OAAO,EAGZ,MAAM,eAAe,CAAC;AAMvB,MAAM,MAAM,mCAAmC,GAAG,kBAAkB,CAAC;AAErE,MAAM,WAAW,6BAChB,SAAQ,QAAQ,EACf,sBAAsB,CAAC,+BAA+B,CAAC,EACvD,YAAY,CAAC,QAAQ,CAAC;CAAG;AAE3B,MAAM,MAAM,+BAA+B,GAAG,OAAO,CAAC;IACrD,KAAK,EAAE,6BAA6B,CAAC;IACrC,GAAG,EAAE,iBAAiB,CAAC;IACvB,WAAW,EAAE,mCAAmC,CAAC;IACjD,QAAQ,EAAE,IAAI,CAAC;CACf,CAAC,CAAC;AAEH,eAAO,MAAM,wBAAwB;WAN7B,6BAA6B;SAC/B,iBAAiB;iBACT,mCAAmC;cACtC,IAAI;EAkCZ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LightboxOverlay.d.ts","sourceRoot":"","sources":["../../../src/components/LightboxOverlay.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEN,KAAK,YAAY,EAGjB,MAAM,eAAe,CAAC;AAGvB,MAAM,MAAM,oBAAoB,GAAG,YAAY,CAAC;AAShD,wBAAgB,eAAe,CAAC,MAAM,EAAE,oBAAoB,2CAwB3D"}
|