pro-gallery 5.0.147 → 5.0.148-92e43fa2271d8efb585e9751459d9cf348ad0bc7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/components/gallery/proGallery/galleryContainer.js +1 -0
- package/dist/cjs/components/gallery/proGallery/galleryContainer.js.map +1 -1
- package/dist/cjs/components/gallery/proGallery/navigationPanel.js +2 -2
- package/dist/cjs/components/gallery/proGallery/navigationPanel.js.map +1 -1
- package/dist/esm/components/gallery/proGallery/galleryContainer.js +1 -0
- package/dist/esm/components/gallery/proGallery/galleryContainer.js.map +1 -1
- package/dist/esm/components/gallery/proGallery/navigationPanel.js +2 -2
- package/dist/esm/components/gallery/proGallery/navigationPanel.js.map +1 -1
- package/dist/esm-types/components/gallery/proGallery/galleryContainer.d.ts.map +1 -1
- package/dist/esm-types/components/gallery/proGallery/navigationPanel.d.ts.map +1 -1
- package/dist/tsconfig-cjs.tsbuildinfo +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/types/components/gallery/proGallery/galleryContainer.d.ts.map +1 -1
- package/dist/types/components/gallery/proGallery/navigationPanel.d.ts.map +1 -1
- package/package.json +5 -5
|
@@ -309,6 +309,7 @@ class GalleryContainer extends react_1.default.Component {
|
|
|
309
309
|
this.galleryStructure = pro_layouts_1.ItemsHelper.convertToGalleryItems(structure, {
|
|
310
310
|
// TODO use same objects in the memory when the galleryItems are changed
|
|
311
311
|
thumbnailSize: options[pro_gallery_lib_1.optionsMap.layoutParams.thumbnails.size],
|
|
312
|
+
thumbnailRatio: options[pro_gallery_lib_1.optionsMap.layoutParams.thumbnails.ratio] || 1,
|
|
312
313
|
sharpParams: options.sharpParams,
|
|
313
314
|
createMediaUrl,
|
|
314
315
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"galleryContainer.js","sourceRoot":"","sources":["../../../../../src/components/gallery/proGallery/galleryContainer.js"],"names":[],"mappings":"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","sourcesContent":["import React from 'react';\nimport {\n GALLERY_CONSTS,\n window,\n utils,\n isEditMode,\n isSEOMode,\n isPreviewMode,\n isSiteMode,\n optionsMap,\n windowWrapper,\n} from 'pro-gallery-lib';\nimport { ItemsHelper } from 'pro-layouts';\nimport GalleryView from './galleryView.js';\nimport SlideshowView from './slideshowView.js';\nimport { scrollToItemImp, scrollToGroupImp, haltScroll } from '../../helpers/scrollHelper.js';\nimport ScrollIndicator from './galleryScrollIndicator.js';\nimport { createCssLayouts } from '../../helpers/cssLayoutsHelper.js';\nimport { cssScrollHelper } from '../../helpers/cssScrollHelper.js';\nimport MediaScrollHelperWrapper from '../../helpers/mediaScrollHelper/mediaScrollHelperWrapper.js';\nimport findNeighborItem from '../../helpers/layoutUtils.js';\nimport { isGalleryInViewport, Deferred } from './galleryHelpers.js';\n// dummy\n\nexport class GalleryContainer extends React.Component {\n constructor(props) {\n super(props);\n if (utils.isVerbose()) {\n console.count('[OOISSR] galleryContainer constructor', window.isMock);\n }\n this.getMoreItemsIfNeeded = this.getMoreItemsIfNeeded.bind(this);\n this.setGotFirstScrollIfNeeded = this.setGotFirstScrollIfNeeded.bind(this);\n this.toggleLoadMoreItems = this.toggleLoadMoreItems.bind(this);\n this.scrollToItem = this.scrollToItem.bind(this);\n this.scrollToGroup = this.scrollToGroup.bind(this);\n this.eventsListener = this.eventsListener.bind(this);\n this.onGalleryScroll = this.onGalleryScroll.bind(this);\n this.getVisibleItems = this.getVisibleItems.bind(this);\n this.findNeighborItem = this.findNeighborItem.bind(this);\n this.setCurrentSlideshowViewIdx = this.setCurrentSlideshowViewIdx.bind(this);\n this.getIsScrollLessGallery = this.getIsScrollLessGallery.bind(this);\n this.onMouseEnter = this.onMouseEnter.bind(this);\n this.onMouseLeave = this.onMouseLeave.bind(this);\n this.mediaScrollHelper = new MediaScrollHelperWrapper([\n {\n getPlayTrigger: (options) => options.behaviourParams_item_video_playTrigger,\n onSetPlayingIdx: (idx) => this.setState({ playingVideoIdx: idx }),\n supportedItemsFilter: (item) =>\n item.type === 'video' ||\n (item.type === 'image' && (item.id.includes('_placeholder') || item.isVideoPlaceholder)),\n },\n {\n getPlayTrigger: (options) => options.behaviourParams_item_threeDimensionalScene_playTrigger,\n onSetPlayingIdx: (idx) => this.setState({ playing3DIdx: idx }),\n supportedItemsFilter: (item) => item.type === '3d',\n },\n ]);\n const initialState = {\n scrollPosition: {\n top: 0,\n left: 0,\n },\n showMoreClickedAtLeastOnce: false,\n initialGalleryHeight: undefined,\n needToHandleShowMoreClick: false,\n gotFirstScrollEvent: props.activeIndex >= 0,\n playingVideoIdx: -1,\n playing3DIdx: -1,\n viewComponent: null,\n firstUserInteractionExecuted: false,\n isInHover: false,\n isInViewport: true,\n scrollingElement: this.getScrollingElement(),\n };\n\n this.state = initialState;\n this.layoutCss = [];\n\n this.initialGalleryState = {};\n try {\n const galleryState = this.propsToState(props);\n if (Object.keys(galleryState).length > 0) {\n this.initialGalleryState = galleryState;\n }\n } catch (_e) {\n console.warn('Cannot create initial state from props', _e);\n }\n\n this.state = {\n ...initialState,\n ...this.initialGalleryState,\n };\n\n //not sure if there needs to be a handleNEwGalleryStructure here with the intial state. currently looks like not\n }\n initializeScrollPosition() {\n if (this.props.activeIndex > 0) {\n this.scrollToItem(this.props.activeIndex, false, true, 0);\n const currentItem = this.galleryStructure.items[this.props.activeIndex];\n this.onGalleryScroll(currentItem.offset);\n } else if (this.props.activeIndex === undefined) {\n this.onGalleryScroll({ top: window.scrollY });\n }\n }\n\n isScrollingUnavailable(height, viewportHeight) {\n const extraPadding = 300;\n if (this.isVerticalGallery()) {\n // If here then the vertical scrolling is what matters\n return height <= viewportHeight + extraPadding;\n } else {\n // If here it's the horizontal scrolling that matters\n return this.state.structure.width < this.state.container.width + extraPadding;\n }\n }\n\n // This function runs if site is scroll-less => tries to fetch gallery's items, -- called from didMount only! --\n async getMoreItemsIfScrollIsDisabled(height, viewportHeight) {\n //there can be no scroll to trigger getMoreItems, but there could be more items\n if (this.isScrollingUnavailable(height, viewportHeight)) {\n const lastItemsCount = this.state.items.length;\n // Trying to get more items\n this.getMoreItemsIfNeeded(0).then(() => {\n // No need to continue calling if no items are left to fetch\n if (this.state.items.length > lastItemsCount) {\n const { body, documentElement: html } = document;\n const viewportHeight = window.innerHeight;\n const height = Math.max(\n body.scrollHeight,\n body.offsetHeight,\n html.clientHeight,\n html.scrollHeight,\n html.offsetHeight\n );\n this.getMoreItemsIfScrollIsDisabled(height, viewportHeight);\n }\n });\n }\n }\n\n componentDidMount() {\n windowWrapper.stopUsingMock();\n const { body, documentElement: html } = document;\n const viewportHeight = window.innerHeight;\n const height = Math.max(\n body.scrollHeight,\n body.offsetHeight,\n html.clientHeight,\n html.scrollHeight,\n html.offsetHeight\n );\n this.initializeScrollPosition();\n this.getMoreItemsIfScrollIsDisabled(height, viewportHeight);\n this.handleNewGalleryStructure();\n this.eventsListener(GALLERY_CONSTS.events.APP_LOADED, {});\n this.mediaScrollHelper.initializePlayState();\n\n try {\n if (typeof window.CustomEvent === 'function') {\n this.currentHoverChangeEvent = new CustomEvent('current_hover_change');\n } else {\n //IE (new CustomEvent is not supported in IE)\n this.currentHoverChangeEvent = window.document.createEvent('CustomEvent'); // MUST be 'CustomEvent'\n this.currentHoverChangeEvent.initCustomEvent('current_hover_change', false, false, null);\n }\n } catch (e) {\n console.error(\"could not create 'current_hover_change' customEvent. Error =\", e);\n }\n\n if (this.props.id) {\n this.currentHoverChangeEvent.galleryId = this.props.id;\n }\n }\n\n UNSAFE_componentWillReceiveProps(nextProps) {\n if (!this.currentHoverChangeEvent.galleryId && nextProps.id) {\n this.currentHoverChangeEvent.galleryId = nextProps.id;\n }\n if (this.props.activeIndex !== nextProps.activeIndex && nextProps.activeIndex !== this.currentSlideshowViewIdx) {\n this.scrollToItem(nextProps.activeIndex, false, true, 0);\n }\n\n const reCreateGallery = () => {\n const galleryState = this.propsToState(nextProps);\n if (Object.keys(galleryState).length > 0) {\n this.setState(galleryState, this.handleNewGalleryStructure);\n }\n };\n\n const getSignificantProps = (props) => {\n const { id, options, container, items, isInDisplay, isPrerenderMode } = props;\n return { id, options, container, items, isInDisplay, isPrerenderMode };\n };\n\n if (this.reCreateGalleryTimer) {\n clearTimeout(this.reCreateGalleryTimer);\n }\n\n let hasPropsChanged = true;\n try {\n const currentSignificantProps = getSignificantProps(this.props);\n const nextSignificantProps = getSignificantProps(nextProps);\n hasPropsChanged = JSON.stringify(currentSignificantProps) !== JSON.stringify(nextSignificantProps);\n if (utils.isVerbose() && hasPropsChanged) {\n console.log('New props arrived', utils.printableObjectsDiff(currentSignificantProps, nextSignificantProps));\n }\n } catch (e) {\n console.error('Cannot compare props', e);\n }\n\n if (hasPropsChanged) {\n reCreateGallery();\n if (this.props.isInDisplay !== nextProps.isInDisplay) {\n this.handleNavigation(nextProps.isInDisplay);\n }\n } else {\n //this is a hack, because in fullwidth, new props arrive without any changes\n // this.reCreateGalleryTimer = setTimeout(reCreateGallery, 1000);\n }\n }\n\n handleNavigation(isInDisplay) {\n if (!isInDisplay) {\n this.mediaScrollHelper.stop();\n }\n }\n\n handleNewGalleryStructure() {\n //should be called AFTER new state is set\n const { container, needToHandleShowMoreClick, initialGalleryHeight } = this.state;\n const isInfinite = this.containerInfiniteGrowthDirection() === 'vertical';\n let updatedHeight = false;\n const needToUpdateHeightNotInfinite = !isInfinite && needToHandleShowMoreClick;\n if (needToUpdateHeightNotInfinite) {\n const showMoreContainerHeight = 138; //according to the scss\n updatedHeight = container.height + (initialGalleryHeight - showMoreContainerHeight);\n }\n const options = this.props.options;\n const numOfItems = this.state.items.length;\n const layoutHeight = updatedHeight || this.props.container.height;\n const layoutItems = this.props.structure.items;\n const isFixedHorizontlaGalleryRatio =\n this.containerInfiniteGrowthDirection() === 'horizontal' &&\n this.state.options[optionsMap.layoutParams.structure.galleryRatio.value] > 0;\n\n const onGalleryChangeData = {\n numOfItems,\n container,\n options,\n layoutHeight,\n layoutItems,\n isInfinite,\n isFixedHorizontlaGalleryRatio,\n updatedHeight,\n };\n if (utils.isVerbose()) {\n console.log('handleNewGalleryStructure', onGalleryChangeData);\n }\n this.eventsListener(GALLERY_CONSTS.events.GALLERY_CHANGE, onGalleryChangeData);\n\n if (needToHandleShowMoreClick) {\n this.setState({ needToHandleShowMoreClick: false });\n }\n }\n\n isVerticalGallery() {\n return (\n this.state.options[optionsMap.layoutParams.structure.scrollDirection] ===\n GALLERY_CONSTS[optionsMap.layoutParams.structure.scrollDirection].VERTICAL\n );\n }\n //dummy v5 TODO\n getIsScrollLessGallery(options) {\n const slideAnimation = options[optionsMap.behaviourParams.gallery.horizontal.slideAnimation];\n const scrollDirection = options[optionsMap.layoutParams.structure.scrollDirection];\n return (\n scrollDirection === GALLERY_CONSTS[optionsMap.layoutParams.structure.scrollDirection].HORIZONTAL &&\n slideAnimation !== GALLERY_CONSTS[optionsMap.behaviourParams.gallery.horizontal.slideAnimation].SCROLL\n );\n }\n\n getVisibleItems(items, container, isPrerenderMode) {\n const { gotFirstScrollEvent } = this.state;\n const scrollY = this.state?.scrollPosition?.top || 0;\n const { galleryHeight, scrollBase, galleryWidth } = container;\n if (\n isPrerenderMode || // (used to be isSSR, had a hydrate bug, isPrerenderMode is the way to go in terms of hydrate issues)\n isSEOMode() ||\n isEditMode() ||\n gotFirstScrollEvent ||\n scrollY > 0 ||\n isPreviewMode() ||\n this.props.activeIndex > 0\n ) {\n return items;\n }\n\n let visibleItems = items;\n try {\n const windowHeight = window.innerHeight;\n const isInfinite = this.isVerticalGallery() && this.containerInfiniteGrowthDirection() === 'vertical';\n const galleryBottom = isInfinite ? Infinity : scrollBase + galleryHeight;\n const windowBottom = scrollY + windowHeight;\n const maxItemTop = Math.min(galleryBottom, windowBottom) - scrollBase;\n if (maxItemTop < 0) {\n //gallery is below the fold\n visibleItems = [];\n } else if (this.isVerticalGallery()) {\n visibleItems = items.filter((item) => item.offset.top < maxItemTop);\n } else {\n visibleItems = items.filter((item) => item.left <= galleryWidth + 20);\n }\n if (visibleItems.length < 2 && visibleItems.length < items.length) {\n //dont render less then 2 items (otherwise slide show Arrow will be removed)\n visibleItems = items.slice(0, 2);\n }\n } catch (e) {\n console.error('Could not calculate visible items, returning original items', e);\n visibleItems = items;\n }\n return visibleItems;\n }\n\n propsToState({ items, options, structure, container, id, createMediaUrl, isPrerenderMode }) {\n items = items || this.props.items;\n options = options || this.props.options;\n container = container || this.props.container;\n structure = structure || this.props.structure;\n id = id || this.props.id;\n createMediaUrl = createMediaUrl || this.props.createMediaUrl;\n\n this.galleryStructure = ItemsHelper.convertToGalleryItems(structure, {\n // TODO use same objects in the memory when the galleryItems are changed\n thumbnailSize: options[optionsMap.layoutParams.thumbnails.size],\n sharpParams: options.sharpParams,\n createMediaUrl,\n });\n\n // // ------------ TODO. This is using GalleryItem and I am leaving it here for now ---------- //\n\n const shouldUseScrollCss =\n !isSEOMode() && (isEditMode() || this.state.gotFirstScrollEvent || this.state.showMoreClickedAtLeastOnce);\n if (shouldUseScrollCss) {\n this.getScrollCss({\n id,\n items: this.galleryStructure.galleryItems,\n options,\n container: container,\n });\n }\n /**\n * @type {import('../../helpers/mediaScrollHelper/types').ScrollHelperGalleryData}\n */\n const scrollHelperNewGalleryStructure = {\n galleryStructure: this.galleryStructure,\n galleryWidth: container.galleryWidth,\n scrollBase: container.scrollBase,\n options: options,\n isSSR: utils.isSSR(),\n };\n\n this.mediaScrollHelper.updateGalleryStructure(scrollHelperNewGalleryStructure);\n\n const layoutParams = {\n items: items,\n container,\n options,\n gotScrollEvent: true,\n };\n\n this.createCssLayoutsIfNeeded(layoutParams);\n this.createDynamicStyles(options[optionsMap.behaviourParams.item.overlay.backgroundColor], isPrerenderMode);\n\n const newState = {\n items,\n options,\n container,\n structure,\n scrollingElement: this.getScrollingElement(),\n };\n return newState;\n }\n\n getScrollingElement() {\n const horizontal = () =>\n window.document.querySelector(`#pro-gallery-${this.props.id} #gallery-horizontal-scroll-${this.props.id}`);\n const vertical = this.props.scrollingElement ? () => this.props.scrollingElement : () => window;\n return { vertical, horizontal };\n }\n\n scrollToItem(\n itemIdx,\n fixedScroll,\n isManual,\n durationInMS = 0,\n scrollMarginCorrection,\n isContinuousScrolling = false\n ) {\n if (itemIdx >= 0) {\n if (!this.state.gotFirstScrollEvent) {\n this.setState({\n gotFirstScrollEvent: true,\n });\n }\n if (this.getIsScrollLessGallery(this.state.options)) {\n return;\n }\n const scrollingElement = this.state.scrollingElement;\n const horizontalElement = scrollingElement.horizontal();\n try {\n const scrollParams = {\n scrollMarginCorrection,\n isRTL:\n this.state.options[optionsMap.behaviourParams.gallery.layoutDirection] ===\n GALLERY_CONSTS[optionsMap.behaviourParams.gallery.layoutDirection].RIGHT_TO_LEFT,\n scrollDirection: this.state.options[optionsMap.layoutParams.structure.scrollDirection],\n galleryWidth: this.state.container.galleryWidth,\n galleryHeight: this.state.container.galleryHeight,\n top: 0,\n items: this.galleryStructure.items,\n totalWidth: this.galleryStructure.width,\n itemIdx,\n fixedScroll,\n isManual,\n scrollingElement,\n horizontalElement,\n durationInMS,\n slideTransition: this.state.options[optionsMap.behaviourParams.gallery.horizontal.slideTransition],\n isContinuousScrolling,\n autoSlideshowContinuousSpeed:\n this.state.options[optionsMap.behaviourParams.gallery.horizontal.autoSlide.speed],\n itemSpacing: this.state.options[optionsMap.layoutParams.structure.itemSpacing],\n };\n this.eventsListener(GALLERY_CONSTS.events.GALLERY_NAVIGATION_START, {\n current: 'scrollToItem',\n scrollParams,\n });\n this.currentScrollData = scrollToItemImp(scrollParams);\n return this.currentScrollData.scrollDeffered.promise.then(() => {\n this.currentScrollData = null;\n });\n } catch (e) {\n console.error(\n 'error:',\n e,\n ' pro-gallery, scrollToItem, cannot get scrollParams, ',\n 'isEditMode =',\n isEditMode(),\n ' isPreviewMode =',\n isPreviewMode(),\n ' isSiteMode =',\n isSiteMode(),\n ' this.state.options =',\n this.state.options,\n ' this.state.container =',\n this.state.container,\n ' this.galleryStructure =',\n this.galleryStructure\n );\n }\n }\n }\n scrollToGroup(\n groupIdx,\n fixedScroll,\n isManual,\n durationInMS = 0,\n scrollMarginCorrection,\n isContinuousScrolling = false\n ) {\n if (groupIdx >= 0) {\n const scrollingElement = this.state.scrollingElement;\n const horizontalElement = scrollingElement.horizontal();\n try {\n const scrollParams = {\n scrollMarginCorrection,\n isRTL:\n this.state.options[optionsMap.behaviourParams.gallery.layoutDirection] ===\n GALLERY_CONSTS[optionsMap.behaviourParams.gallery.layoutDirection].RIGHT_TO_LEFT,\n scrollDirection: this.state.options[optionsMap.layoutParams.structure.scrollDirection],\n galleryWidth: this.state.container.galleryWidth,\n galleryHeight: this.state.container.galleryHeight,\n top: 0,\n groups: this.galleryStructure.groups,\n totalWidth: this.galleryStructure.width,\n groupIdx,\n fixedScroll,\n isManual,\n scrollingElement,\n horizontalElement,\n durationInMS,\n slideTransition: this.state.options[optionsMap.behaviourParams.gallery.horizontal.slideTransition],\n isContinuousScrolling,\n autoSlideshowContinuousSpeed:\n this.state.options[optionsMap.behaviourParams.gallery.horizontal.autoSlide.speed],\n itemSpacing: this.state.options[optionsMap.layoutParams.structure.itemSpacing],\n };\n this.eventsListener(GALLERY_CONSTS.events.GALLERY_NAVIGATION_START, {\n current: 'scrollToGroup',\n scrollParams,\n });\n this.currentScrollData = scrollToGroupImp(scrollParams);\n return this.currentScrollData.scrollDeffered.promise.then(() => {\n this.currentScrollData = null;\n });\n } catch (e) {\n console.error(\n 'error:',\n e,\n ' pro-gallery, scrollToGroup, cannot get scrollParams, ',\n 'isEditMode =',\n isEditMode(),\n ' isPreviewMode =',\n isPreviewMode(),\n ' isSiteMode =',\n isSiteMode(),\n ' this.state.options =',\n this.state.options,\n ' this.state.container =',\n this.state.container,\n ' this.galleryStructure =',\n this.galleryStructure\n );\n }\n }\n }\n\n containerInfiniteGrowthDirection(options = false) {\n const _options = options || this.props.options;\n // return the direction in which the gallery can grow on it's own (aka infinite scroll)\n const { showMoreClickedAtLeastOnce } = this.state;\n\n const scrollDirection = _options[optionsMap.layoutParams.structure.scrollDirection];\n if (scrollDirection === GALLERY_CONSTS[optionsMap.layoutParams.structure.scrollDirection].HORIZONTAL) {\n return 'horizontal';\n } else if (this.props.options[optionsMap.behaviourParams.gallery.vertical.loadMore.enable]) {\n //vertical gallery with showMore button enabled\n if (\n showMoreClickedAtLeastOnce &&\n _options[optionsMap.behaviourParams.gallery.vertical.loadMore.amount] ===\n GALLERY_CONSTS[optionsMap.behaviourParams.gallery.vertical.loadMore.amount].ALL\n ) {\n return 'vertical';\n } else {\n return 'none';\n }\n } else {\n return 'vertical';\n }\n }\n\n onGalleryScroll(scrollPosition) {\n if (this.props.isInDisplay) {\n this.eventsListener(GALLERY_CONSTS.events.GALLERY_SCROLLED, scrollPosition);\n }\n }\n\n updateVisibility = () => {\n const isInViewport = isGalleryInViewport({\n container: this.props.container,\n scrollTop: this.state.scrollPosition.top,\n });\n if (this.state.isInViewport !== isInViewport) {\n this.setState({\n isInViewport,\n });\n }\n };\n setVisibilityIfNeeded = (prevProps, prevState) => {\n const { container } = this.props;\n const { scrollPosition } = this.state;\n if (\n container.scrollBase !== prevProps.container.scrollBase ||\n scrollPosition.top !== prevState.scrollPosition.top\n ) {\n this.updateVisibility();\n }\n };\n componentDidUpdate(prevProps, prevState) {\n // in order to update when container is available\n this.setVisibilityIfNeeded(prevProps, prevState);\n if (this.props.isPrerenderMode !== prevProps.isPrerenderMode) {\n const { body, documentElement: html } = document;\n const viewportHeight = window.innerHeight;\n const height = Math.max(\n body.scrollHeight,\n body.offsetHeight,\n html.clientHeight,\n html.scrollHeight,\n html.offsetHeight\n );\n this.getMoreItemsIfScrollIsDisabled(height, viewportHeight);\n }\n }\n\n createDynamicStyles(overlayBackground, isPrerenderMode) {\n const useSSROpacity = isPrerenderMode && !this.props.settings.disableSSROpacity;\n this.dynamicStyles = `\n ${!useSSROpacity ? '' : `#pro-gallery-${this.props.id} .gallery-item-container { opacity: 0 }`}\n ${\n !overlayBackground\n ? ''\n : `#pro-gallery-${this.props.id} .gallery-item-hover::before { background: ${overlayBackground} !important}`\n }\n `.trim();\n }\n\n createCssLayoutsIfNeeded(layoutParams) {\n const { settings = {} } = this.props;\n const { avoidInlineStyles } = settings;\n if (avoidInlineStyles) {\n this.layoutCss = createCssLayouts({\n layoutParams,\n isMobile: utils.isMobile(),\n id: this.props.id,\n galleryItems: this.galleryStructure.galleryItems,\n });\n }\n }\n\n getScrollCss({ id, items, options, container }) {\n this.scrollCss = cssScrollHelper.calcScrollCss({\n items,\n options,\n id,\n container,\n });\n }\n\n toggleLoadMoreItems() {\n this.eventsListener(GALLERY_CONSTS.events.LOAD_MORE_CLICKED, this.galleryStructure.galleryItems);\n const showMoreClickedAtLeastOnce = true;\n const needToHandleShowMoreClick = true;\n //before clicking \"load more\" at the first time\n if (!this.state.showMoreClickedAtLeastOnce) {\n this.getScrollCss({\n id: this.props.id,\n items: this.galleryStructure.galleryItems,\n options: this.state.options,\n container: this.state.container,\n });\n const initialGalleryHeight = this.state.container.height; //container.height before clicking \"load more\" at the first time\n this.setState(\n {\n showMoreClickedAtLeastOnce,\n initialGalleryHeight,\n needToHandleShowMoreClick,\n },\n () => {\n this.handleNewGalleryStructure();\n }\n );\n } else {\n //from second click\n this.setState(\n {\n needToHandleShowMoreClick,\n },\n () => {\n this.handleNewGalleryStructure();\n }\n );\n }\n }\n\n setGotFirstScrollIfNeeded() {\n if (!this.state.gotFirstScrollEvent) {\n this.getScrollCss({\n id: this.props.id,\n items: this.galleryStructure.galleryItems,\n options: this.state.options,\n container: this.state.container,\n });\n this.setState({\n gotFirstScrollEvent: true,\n });\n }\n }\n\n setCurrentSlideshowViewIdx(idx) {\n this.currentSlideshowViewIdx = idx;\n }\n\n simulateHorizontalScrollToItem(item) {\n item?.offset && this.onGalleryScroll({ left: item.offset.left });\n }\n\n eventsListener(eventName, eventData, event) {\n this.mediaScrollHelper.handleEvent({\n eventName,\n eventData,\n });\n if (eventName === GALLERY_CONSTS.events.HOVER_SET) {\n this.currentHoverChangeEvent.currentHoverIdx = eventData;\n window.dispatchEvent(this.currentHoverChangeEvent);\n }\n if (eventName === GALLERY_CONSTS.events.CURRENT_ITEM_CHANGED) {\n this.setCurrentSlideshowViewIdx(eventData.idx);\n if (this.getIsScrollLessGallery(this.state.options)) {\n this.simulateHorizontalScrollToItem(this.galleryStructure.items[eventData.idx]);\n }\n }\n if (!this.state.firstUserInteractionExecuted) {\n switch (eventName) {\n case GALLERY_CONSTS.events.HOVER_SET:\n case GALLERY_CONSTS.events.LOAD_MORE_CLICKED:\n case GALLERY_CONSTS.events.ITEM_ACTION_TRIGGERED:\n this.setState({ firstUserInteractionExecuted: true });\n break;\n }\n }\n if (typeof this.props.eventsListener === 'function') {\n switch (eventName) {\n case GALLERY_CONSTS.events.ITEM_ACTION_TRIGGERED:\n case GALLERY_CONSTS.events.ITEM_CLICKED:\n setTimeout(this.props.eventsListener(eventName, eventData, event), 0);\n break;\n default:\n this.props.eventsListener(eventName, eventData, event);\n }\n }\n\n if (eventName === GALLERY_CONSTS.events.GALLERY_SCROLLED) {\n this.mediaScrollHelper.onScroll(eventData);\n const newScrollPosition = {\n ...this.state.scrollPosition,\n ...eventData,\n };\n this.setState({ scrollPosition: newScrollPosition });\n }\n }\n\n getMoreItemsIfNeeded(scrollPos) {\n if (this.deferredGettingMoreItems?.isPending) {\n // Already getting more items so do nothing\n } else {\n this.deferredGettingMoreItems = new Deferred();\n\n if (\n !(\n this.galleryStructure &&\n this.galleryStructure.galleryItems &&\n this.galleryStructure.galleryItems.length > 0 &&\n this.state.items &&\n this.state.options &&\n this.state.container\n )\n ) {\n // No items are fetched -> reject\n this.deferredGettingMoreItems.reject();\n } else {\n //more items can be fetched from the server\n //TODO - add support for horizontal galleries\n const scrollDirection = this.state.options[optionsMap.layoutParams.structure.scrollDirection];\n const galleryEnd =\n this.galleryStructure[\n scrollDirection === GALLERY_CONSTS[optionsMap.layoutParams.structure.scrollDirection].HORIZONTAL\n ? 'width'\n : 'height'\n ] +\n (scrollDirection === GALLERY_CONSTS[optionsMap.layoutParams.structure.scrollDirection].HORIZONTAL\n ? 0\n : this.state.container.scrollBase);\n const screenSize =\n window[\n scrollDirection === GALLERY_CONSTS[optionsMap.layoutParams.structure.scrollDirection].HORIZONTAL\n ? 'innerWidth'\n : 'innerHeight'\n ];\n const scrollEnd = scrollPos + screenSize;\n const getItemsDistance = scrollPos ? 3 * screenSize : 0; //first scrollPos is 0 falsy. dont load before a scroll happened.\n\n if (galleryEnd < getItemsDistance + scrollEnd) {\n //only when the last item turns visible we should try getting more items\n this.eventsListener(GALLERY_CONSTS.events.NEED_MORE_ITEMS, this.state.items.length);\n setTimeout(() => {\n //wait a bit before allowing more items to be fetched - ugly hack before promises still not working\n this.deferredGettingMoreItems.resolve();\n }, 2000);\n } else {\n // No items are fetched -> reject\n this.deferredGettingMoreItems.reject();\n }\n }\n }\n return this.deferredGettingMoreItems.promise.catch(() => {});\n }\n\n canRender() {\n const can = this.props.container && this.props.options && this.state.items;\n if (!can && utils.isVerbose()) {\n console.log(\n 'PROGALLERY [CAN_RENDER] GalleryContainer',\n can,\n this.props.container,\n this.props.options,\n this.state.items\n );\n }\n return can;\n }\n\n onMouseEnter() {\n if (\n this.currentScrollData?.isContinuousScrolling &&\n this.state.options[optionsMap.behaviourParams.gallery.horizontal.autoSlide.pauseOnHover]\n ) {\n haltScroll(this.currentScrollData);\n }\n this.setState({ isInHover: true });\n }\n\n onMouseLeave() {\n this.setState({ isInHover: false });\n }\n\n findNeighborItem = (itemIdx, dir) => findNeighborItem(itemIdx, dir, this.state.structure.items); // REFACTOR BLUEPRINTS - this makes the function in the layouter irrelevant (unless the layouter is used as a stand alone with this function, maybe the layouter needs to be split for bundle size as well...)\n\n render() {\n if (!this.canRender()) {\n return null;\n }\n\n const ViewComponent =\n this.props.options[optionsMap.layoutParams.structure.scrollDirection] ===\n GALLERY_CONSTS[optionsMap.layoutParams.structure.scrollDirection].HORIZONTAL\n ? SlideshowView\n : GalleryView;\n\n if (utils.isVerbose()) {\n console.count('PROGALLERY [COUNTS] - GalleryContainer (render)');\n console.log('PROGALLERY [RENDER] - GalleryContainer', this.props.container.scrollBase, {\n props: this.props,\n items: this.state.items,\n });\n }\n\n const displayShowMore = this.containerInfiniteGrowthDirection() === 'none';\n return (\n <div\n data-key=\"pro-gallery-inner-container\"\n key=\"pro-gallery-inner-container\"\n className={this.props.isPrerenderMode ? 'pro-gallery-prerender' : ''}\n onMouseEnter={this.onMouseEnter}\n onMouseLeave={this.onMouseLeave}\n ref={(e) => (this.galleryContainerRef = e)}\n tabIndex={-1}\n >\n <ScrollIndicator\n id={this.props.id}\n galleryScrollDirection={this.props.options[optionsMap.layoutParams.structure.scrollDirection]}\n isRTL={\n this.props.options[optionsMap.behaviourParams.gallery.layoutDirection] ===\n GALLERY_CONSTS[optionsMap.behaviourParams.gallery.layoutDirection].RIGHT_TO_LEFT\n }\n totalWidth={this.galleryStructure.width}\n scrollBase={this.props.container.scrollBase}\n scrollingElement={this.state.scrollingElement}\n getMoreItemsIfNeeded={this.getMoreItemsIfNeeded}\n setGotFirstScrollIfNeeded={this.setGotFirstScrollIfNeeded}\n onScroll={this.onGalleryScroll}\n />\n <ViewComponent\n isInDisplay={this.props.isInDisplay}\n isInViewport={this.state.isInViewport}\n isPrerenderMode={this.props.isPrerenderMode}\n scrollingElement={this.state.scrollingElement}\n totalItemsCount={this.props.totalItemsCount} //the items passed in the props might not be all the items\n renderedItemsCount={this.props.renderedItemsCount}\n getMoreItemsIfNeeded={this.getMoreItemsIfNeeded}\n gotFirstScrollEvent={this.state.gotFirstScrollEvent}\n setGotFirstScrollIfNeeded={this.setGotFirstScrollIfNeeded}\n items={this.state.items}\n getVisibleItems={this.getVisibleItems}\n galleryStructure={this.galleryStructure}\n options={this.props.options}\n container={this.props.container}\n settings={this.props.settings}\n displayShowMore={displayShowMore}\n id={this.props.id}\n activeIndex={this.props.activeIndex || 0}\n customComponents={this.props.customComponents}\n playingVideoIdx={this.state.playingVideoIdx}\n playing3DIdx={this.state.playing3DIdx}\n noFollowForSEO={this.props.noFollowForSEO}\n proGalleryRegionLabel={this.props.proGalleryRegionLabel}\n proGalleryRole={this.props.proGalleryRole}\n firstUserInteractionExecuted={this.state.firstUserInteractionExecuted}\n isGalleryInHover={this.state.isInHover}\n enableExperimentalFeatures={this.props.enableExperimentalFeatures}\n galleryContainerRef={this.galleryContainerRef}\n outOfViewComponent={this.outOfViewComponent}\n virtualizationSettings={this.props.virtualizationSettings}\n galleryContainerId={`pro-gallery-container-${this.props.id}`}\n scrollTop={this.state?.scrollPosition?.top}\n isScrollLessGallery={this.getIsScrollLessGallery(this.state.options)}\n disableItemFocus={this.props.disableItemFocus}\n actions={{\n ...this.props.actions,\n findNeighborItem: this.findNeighborItem,\n toggleLoadMoreItems: this.toggleLoadMoreItems,\n eventsListener: this.eventsListener,\n setWixHeight: () => {},\n scrollToItem: this.scrollToItem,\n scrollToGroup: this.scrollToGroup,\n }}\n {...this.props.gallery}\n />\n <div data-key=\"items-styles\" key=\"items-styles\" style={{ display: 'none' }}>\n {(this.layoutCss || []).filter(Boolean).map((css, idx) => (\n <style id={`layoutCss-${idx}`} key={`layoutCss-${idx}`} dangerouslySetInnerHTML={{ __html: css }} />\n ))}\n {(this.scrollCss || []).filter(Boolean).map((css, idx) => (\n <style id={`scrollCss_${idx}`} key={`scrollCss_${idx}`} dangerouslySetInnerHTML={{ __html: css }} />\n ))}\n {!!this.dynamicStyles && <style dangerouslySetInnerHTML={{ __html: this.dynamicStyles }} />}\n </div>\n {this.props.proGalleryRole === 'application' && (\n <span ref={(e) => (this.outOfViewComponent = e)} tabIndex={-1} className=\"sr-only out-of-view-component\">\n {this.props.translations?.Accessibility_Left_Gallery}\n </span>\n )}\n </div>\n );\n }\n}\n\nexport default GalleryContainer;\n/* eslint-enable prettier/prettier */\n"]}
|
|
1
|
+
{"version":3,"file":"galleryContainer.js","sourceRoot":"","sources":["../../../../../src/components/gallery/proGallery/galleryContainer.js"],"names":[],"mappings":"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","sourcesContent":["import React from 'react';\nimport {\n GALLERY_CONSTS,\n window,\n utils,\n isEditMode,\n isSEOMode,\n isPreviewMode,\n isSiteMode,\n optionsMap,\n windowWrapper,\n} from 'pro-gallery-lib';\nimport { ItemsHelper } from 'pro-layouts';\nimport GalleryView from './galleryView.js';\nimport SlideshowView from './slideshowView.js';\nimport { scrollToItemImp, scrollToGroupImp, haltScroll } from '../../helpers/scrollHelper.js';\nimport ScrollIndicator from './galleryScrollIndicator.js';\nimport { createCssLayouts } from '../../helpers/cssLayoutsHelper.js';\nimport { cssScrollHelper } from '../../helpers/cssScrollHelper.js';\nimport MediaScrollHelperWrapper from '../../helpers/mediaScrollHelper/mediaScrollHelperWrapper.js';\nimport findNeighborItem from '../../helpers/layoutUtils.js';\nimport { isGalleryInViewport, Deferred } from './galleryHelpers.js';\n// dummy\n\nexport class GalleryContainer extends React.Component {\n constructor(props) {\n super(props);\n if (utils.isVerbose()) {\n console.count('[OOISSR] galleryContainer constructor', window.isMock);\n }\n this.getMoreItemsIfNeeded = this.getMoreItemsIfNeeded.bind(this);\n this.setGotFirstScrollIfNeeded = this.setGotFirstScrollIfNeeded.bind(this);\n this.toggleLoadMoreItems = this.toggleLoadMoreItems.bind(this);\n this.scrollToItem = this.scrollToItem.bind(this);\n this.scrollToGroup = this.scrollToGroup.bind(this);\n this.eventsListener = this.eventsListener.bind(this);\n this.onGalleryScroll = this.onGalleryScroll.bind(this);\n this.getVisibleItems = this.getVisibleItems.bind(this);\n this.findNeighborItem = this.findNeighborItem.bind(this);\n this.setCurrentSlideshowViewIdx = this.setCurrentSlideshowViewIdx.bind(this);\n this.getIsScrollLessGallery = this.getIsScrollLessGallery.bind(this);\n this.onMouseEnter = this.onMouseEnter.bind(this);\n this.onMouseLeave = this.onMouseLeave.bind(this);\n this.mediaScrollHelper = new MediaScrollHelperWrapper([\n {\n getPlayTrigger: (options) => options.behaviourParams_item_video_playTrigger,\n onSetPlayingIdx: (idx) => this.setState({ playingVideoIdx: idx }),\n supportedItemsFilter: (item) =>\n item.type === 'video' ||\n (item.type === 'image' && (item.id.includes('_placeholder') || item.isVideoPlaceholder)),\n },\n {\n getPlayTrigger: (options) => options.behaviourParams_item_threeDimensionalScene_playTrigger,\n onSetPlayingIdx: (idx) => this.setState({ playing3DIdx: idx }),\n supportedItemsFilter: (item) => item.type === '3d',\n },\n ]);\n const initialState = {\n scrollPosition: {\n top: 0,\n left: 0,\n },\n showMoreClickedAtLeastOnce: false,\n initialGalleryHeight: undefined,\n needToHandleShowMoreClick: false,\n gotFirstScrollEvent: props.activeIndex >= 0,\n playingVideoIdx: -1,\n playing3DIdx: -1,\n viewComponent: null,\n firstUserInteractionExecuted: false,\n isInHover: false,\n isInViewport: true,\n scrollingElement: this.getScrollingElement(),\n };\n\n this.state = initialState;\n this.layoutCss = [];\n\n this.initialGalleryState = {};\n try {\n const galleryState = this.propsToState(props);\n if (Object.keys(galleryState).length > 0) {\n this.initialGalleryState = galleryState;\n }\n } catch (_e) {\n console.warn('Cannot create initial state from props', _e);\n }\n\n this.state = {\n ...initialState,\n ...this.initialGalleryState,\n };\n\n //not sure if there needs to be a handleNEwGalleryStructure here with the intial state. currently looks like not\n }\n initializeScrollPosition() {\n if (this.props.activeIndex > 0) {\n this.scrollToItem(this.props.activeIndex, false, true, 0);\n const currentItem = this.galleryStructure.items[this.props.activeIndex];\n this.onGalleryScroll(currentItem.offset);\n } else if (this.props.activeIndex === undefined) {\n this.onGalleryScroll({ top: window.scrollY });\n }\n }\n\n isScrollingUnavailable(height, viewportHeight) {\n const extraPadding = 300;\n if (this.isVerticalGallery()) {\n // If here then the vertical scrolling is what matters\n return height <= viewportHeight + extraPadding;\n } else {\n // If here it's the horizontal scrolling that matters\n return this.state.structure.width < this.state.container.width + extraPadding;\n }\n }\n\n // This function runs if site is scroll-less => tries to fetch gallery's items, -- called from didMount only! --\n async getMoreItemsIfScrollIsDisabled(height, viewportHeight) {\n //there can be no scroll to trigger getMoreItems, but there could be more items\n if (this.isScrollingUnavailable(height, viewportHeight)) {\n const lastItemsCount = this.state.items.length;\n // Trying to get more items\n this.getMoreItemsIfNeeded(0).then(() => {\n // No need to continue calling if no items are left to fetch\n if (this.state.items.length > lastItemsCount) {\n const { body, documentElement: html } = document;\n const viewportHeight = window.innerHeight;\n const height = Math.max(\n body.scrollHeight,\n body.offsetHeight,\n html.clientHeight,\n html.scrollHeight,\n html.offsetHeight\n );\n this.getMoreItemsIfScrollIsDisabled(height, viewportHeight);\n }\n });\n }\n }\n\n componentDidMount() {\n windowWrapper.stopUsingMock();\n const { body, documentElement: html } = document;\n const viewportHeight = window.innerHeight;\n const height = Math.max(\n body.scrollHeight,\n body.offsetHeight,\n html.clientHeight,\n html.scrollHeight,\n html.offsetHeight\n );\n this.initializeScrollPosition();\n this.getMoreItemsIfScrollIsDisabled(height, viewportHeight);\n this.handleNewGalleryStructure();\n this.eventsListener(GALLERY_CONSTS.events.APP_LOADED, {});\n this.mediaScrollHelper.initializePlayState();\n\n try {\n if (typeof window.CustomEvent === 'function') {\n this.currentHoverChangeEvent = new CustomEvent('current_hover_change');\n } else {\n //IE (new CustomEvent is not supported in IE)\n this.currentHoverChangeEvent = window.document.createEvent('CustomEvent'); // MUST be 'CustomEvent'\n this.currentHoverChangeEvent.initCustomEvent('current_hover_change', false, false, null);\n }\n } catch (e) {\n console.error(\"could not create 'current_hover_change' customEvent. Error =\", e);\n }\n\n if (this.props.id) {\n this.currentHoverChangeEvent.galleryId = this.props.id;\n }\n }\n\n UNSAFE_componentWillReceiveProps(nextProps) {\n if (!this.currentHoverChangeEvent.galleryId && nextProps.id) {\n this.currentHoverChangeEvent.galleryId = nextProps.id;\n }\n if (this.props.activeIndex !== nextProps.activeIndex && nextProps.activeIndex !== this.currentSlideshowViewIdx) {\n this.scrollToItem(nextProps.activeIndex, false, true, 0);\n }\n\n const reCreateGallery = () => {\n const galleryState = this.propsToState(nextProps);\n if (Object.keys(galleryState).length > 0) {\n this.setState(galleryState, this.handleNewGalleryStructure);\n }\n };\n\n const getSignificantProps = (props) => {\n const { id, options, container, items, isInDisplay, isPrerenderMode } = props;\n return { id, options, container, items, isInDisplay, isPrerenderMode };\n };\n\n if (this.reCreateGalleryTimer) {\n clearTimeout(this.reCreateGalleryTimer);\n }\n\n let hasPropsChanged = true;\n try {\n const currentSignificantProps = getSignificantProps(this.props);\n const nextSignificantProps = getSignificantProps(nextProps);\n hasPropsChanged = JSON.stringify(currentSignificantProps) !== JSON.stringify(nextSignificantProps);\n if (utils.isVerbose() && hasPropsChanged) {\n console.log('New props arrived', utils.printableObjectsDiff(currentSignificantProps, nextSignificantProps));\n }\n } catch (e) {\n console.error('Cannot compare props', e);\n }\n\n if (hasPropsChanged) {\n reCreateGallery();\n if (this.props.isInDisplay !== nextProps.isInDisplay) {\n this.handleNavigation(nextProps.isInDisplay);\n }\n } else {\n //this is a hack, because in fullwidth, new props arrive without any changes\n // this.reCreateGalleryTimer = setTimeout(reCreateGallery, 1000);\n }\n }\n\n handleNavigation(isInDisplay) {\n if (!isInDisplay) {\n this.mediaScrollHelper.stop();\n }\n }\n\n handleNewGalleryStructure() {\n //should be called AFTER new state is set\n const { container, needToHandleShowMoreClick, initialGalleryHeight } = this.state;\n const isInfinite = this.containerInfiniteGrowthDirection() === 'vertical';\n let updatedHeight = false;\n const needToUpdateHeightNotInfinite = !isInfinite && needToHandleShowMoreClick;\n if (needToUpdateHeightNotInfinite) {\n const showMoreContainerHeight = 138; //according to the scss\n updatedHeight = container.height + (initialGalleryHeight - showMoreContainerHeight);\n }\n const options = this.props.options;\n const numOfItems = this.state.items.length;\n const layoutHeight = updatedHeight || this.props.container.height;\n const layoutItems = this.props.structure.items;\n const isFixedHorizontlaGalleryRatio =\n this.containerInfiniteGrowthDirection() === 'horizontal' &&\n this.state.options[optionsMap.layoutParams.structure.galleryRatio.value] > 0;\n\n const onGalleryChangeData = {\n numOfItems,\n container,\n options,\n layoutHeight,\n layoutItems,\n isInfinite,\n isFixedHorizontlaGalleryRatio,\n updatedHeight,\n };\n if (utils.isVerbose()) {\n console.log('handleNewGalleryStructure', onGalleryChangeData);\n }\n this.eventsListener(GALLERY_CONSTS.events.GALLERY_CHANGE, onGalleryChangeData);\n\n if (needToHandleShowMoreClick) {\n this.setState({ needToHandleShowMoreClick: false });\n }\n }\n\n isVerticalGallery() {\n return (\n this.state.options[optionsMap.layoutParams.structure.scrollDirection] ===\n GALLERY_CONSTS[optionsMap.layoutParams.structure.scrollDirection].VERTICAL\n );\n }\n //dummy v5 TODO\n getIsScrollLessGallery(options) {\n const slideAnimation = options[optionsMap.behaviourParams.gallery.horizontal.slideAnimation];\n const scrollDirection = options[optionsMap.layoutParams.structure.scrollDirection];\n return (\n scrollDirection === GALLERY_CONSTS[optionsMap.layoutParams.structure.scrollDirection].HORIZONTAL &&\n slideAnimation !== GALLERY_CONSTS[optionsMap.behaviourParams.gallery.horizontal.slideAnimation].SCROLL\n );\n }\n\n getVisibleItems(items, container, isPrerenderMode) {\n const { gotFirstScrollEvent } = this.state;\n const scrollY = this.state?.scrollPosition?.top || 0;\n const { galleryHeight, scrollBase, galleryWidth } = container;\n if (\n isPrerenderMode || // (used to be isSSR, had a hydrate bug, isPrerenderMode is the way to go in terms of hydrate issues)\n isSEOMode() ||\n isEditMode() ||\n gotFirstScrollEvent ||\n scrollY > 0 ||\n isPreviewMode() ||\n this.props.activeIndex > 0\n ) {\n return items;\n }\n\n let visibleItems = items;\n try {\n const windowHeight = window.innerHeight;\n const isInfinite = this.isVerticalGallery() && this.containerInfiniteGrowthDirection() === 'vertical';\n const galleryBottom = isInfinite ? Infinity : scrollBase + galleryHeight;\n const windowBottom = scrollY + windowHeight;\n const maxItemTop = Math.min(galleryBottom, windowBottom) - scrollBase;\n if (maxItemTop < 0) {\n //gallery is below the fold\n visibleItems = [];\n } else if (this.isVerticalGallery()) {\n visibleItems = items.filter((item) => item.offset.top < maxItemTop);\n } else {\n visibleItems = items.filter((item) => item.left <= galleryWidth + 20);\n }\n if (visibleItems.length < 2 && visibleItems.length < items.length) {\n //dont render less then 2 items (otherwise slide show Arrow will be removed)\n visibleItems = items.slice(0, 2);\n }\n } catch (e) {\n console.error('Could not calculate visible items, returning original items', e);\n visibleItems = items;\n }\n return visibleItems;\n }\n\n propsToState({ items, options, structure, container, id, createMediaUrl, isPrerenderMode }) {\n items = items || this.props.items;\n options = options || this.props.options;\n container = container || this.props.container;\n structure = structure || this.props.structure;\n id = id || this.props.id;\n createMediaUrl = createMediaUrl || this.props.createMediaUrl;\n\n this.galleryStructure = ItemsHelper.convertToGalleryItems(structure, {\n // TODO use same objects in the memory when the galleryItems are changed\n thumbnailSize: options[optionsMap.layoutParams.thumbnails.size],\n thumbnailRatio: options[optionsMap.layoutParams.thumbnails.ratio] || 1,\n sharpParams: options.sharpParams,\n createMediaUrl,\n });\n\n // // ------------ TODO. This is using GalleryItem and I am leaving it here for now ---------- //\n\n const shouldUseScrollCss =\n !isSEOMode() && (isEditMode() || this.state.gotFirstScrollEvent || this.state.showMoreClickedAtLeastOnce);\n if (shouldUseScrollCss) {\n this.getScrollCss({\n id,\n items: this.galleryStructure.galleryItems,\n options,\n container: container,\n });\n }\n /**\n * @type {import('../../helpers/mediaScrollHelper/types').ScrollHelperGalleryData}\n */\n const scrollHelperNewGalleryStructure = {\n galleryStructure: this.galleryStructure,\n galleryWidth: container.galleryWidth,\n scrollBase: container.scrollBase,\n options: options,\n isSSR: utils.isSSR(),\n };\n\n this.mediaScrollHelper.updateGalleryStructure(scrollHelperNewGalleryStructure);\n\n const layoutParams = {\n items: items,\n container,\n options,\n gotScrollEvent: true,\n };\n\n this.createCssLayoutsIfNeeded(layoutParams);\n this.createDynamicStyles(options[optionsMap.behaviourParams.item.overlay.backgroundColor], isPrerenderMode);\n\n const newState = {\n items,\n options,\n container,\n structure,\n scrollingElement: this.getScrollingElement(),\n };\n return newState;\n }\n\n getScrollingElement() {\n const horizontal = () =>\n window.document.querySelector(`#pro-gallery-${this.props.id} #gallery-horizontal-scroll-${this.props.id}`);\n const vertical = this.props.scrollingElement ? () => this.props.scrollingElement : () => window;\n return { vertical, horizontal };\n }\n\n scrollToItem(\n itemIdx,\n fixedScroll,\n isManual,\n durationInMS = 0,\n scrollMarginCorrection,\n isContinuousScrolling = false\n ) {\n if (itemIdx >= 0) {\n if (!this.state.gotFirstScrollEvent) {\n this.setState({\n gotFirstScrollEvent: true,\n });\n }\n if (this.getIsScrollLessGallery(this.state.options)) {\n return;\n }\n const scrollingElement = this.state.scrollingElement;\n const horizontalElement = scrollingElement.horizontal();\n try {\n const scrollParams = {\n scrollMarginCorrection,\n isRTL:\n this.state.options[optionsMap.behaviourParams.gallery.layoutDirection] ===\n GALLERY_CONSTS[optionsMap.behaviourParams.gallery.layoutDirection].RIGHT_TO_LEFT,\n scrollDirection: this.state.options[optionsMap.layoutParams.structure.scrollDirection],\n galleryWidth: this.state.container.galleryWidth,\n galleryHeight: this.state.container.galleryHeight,\n top: 0,\n items: this.galleryStructure.items,\n totalWidth: this.galleryStructure.width,\n itemIdx,\n fixedScroll,\n isManual,\n scrollingElement,\n horizontalElement,\n durationInMS,\n slideTransition: this.state.options[optionsMap.behaviourParams.gallery.horizontal.slideTransition],\n isContinuousScrolling,\n autoSlideshowContinuousSpeed:\n this.state.options[optionsMap.behaviourParams.gallery.horizontal.autoSlide.speed],\n itemSpacing: this.state.options[optionsMap.layoutParams.structure.itemSpacing],\n };\n this.eventsListener(GALLERY_CONSTS.events.GALLERY_NAVIGATION_START, {\n current: 'scrollToItem',\n scrollParams,\n });\n this.currentScrollData = scrollToItemImp(scrollParams);\n return this.currentScrollData.scrollDeffered.promise.then(() => {\n this.currentScrollData = null;\n });\n } catch (e) {\n console.error(\n 'error:',\n e,\n ' pro-gallery, scrollToItem, cannot get scrollParams, ',\n 'isEditMode =',\n isEditMode(),\n ' isPreviewMode =',\n isPreviewMode(),\n ' isSiteMode =',\n isSiteMode(),\n ' this.state.options =',\n this.state.options,\n ' this.state.container =',\n this.state.container,\n ' this.galleryStructure =',\n this.galleryStructure\n );\n }\n }\n }\n scrollToGroup(\n groupIdx,\n fixedScroll,\n isManual,\n durationInMS = 0,\n scrollMarginCorrection,\n isContinuousScrolling = false\n ) {\n if (groupIdx >= 0) {\n const scrollingElement = this.state.scrollingElement;\n const horizontalElement = scrollingElement.horizontal();\n try {\n const scrollParams = {\n scrollMarginCorrection,\n isRTL:\n this.state.options[optionsMap.behaviourParams.gallery.layoutDirection] ===\n GALLERY_CONSTS[optionsMap.behaviourParams.gallery.layoutDirection].RIGHT_TO_LEFT,\n scrollDirection: this.state.options[optionsMap.layoutParams.structure.scrollDirection],\n galleryWidth: this.state.container.galleryWidth,\n galleryHeight: this.state.container.galleryHeight,\n top: 0,\n groups: this.galleryStructure.groups,\n totalWidth: this.galleryStructure.width,\n groupIdx,\n fixedScroll,\n isManual,\n scrollingElement,\n horizontalElement,\n durationInMS,\n slideTransition: this.state.options[optionsMap.behaviourParams.gallery.horizontal.slideTransition],\n isContinuousScrolling,\n autoSlideshowContinuousSpeed:\n this.state.options[optionsMap.behaviourParams.gallery.horizontal.autoSlide.speed],\n itemSpacing: this.state.options[optionsMap.layoutParams.structure.itemSpacing],\n };\n this.eventsListener(GALLERY_CONSTS.events.GALLERY_NAVIGATION_START, {\n current: 'scrollToGroup',\n scrollParams,\n });\n this.currentScrollData = scrollToGroupImp(scrollParams);\n return this.currentScrollData.scrollDeffered.promise.then(() => {\n this.currentScrollData = null;\n });\n } catch (e) {\n console.error(\n 'error:',\n e,\n ' pro-gallery, scrollToGroup, cannot get scrollParams, ',\n 'isEditMode =',\n isEditMode(),\n ' isPreviewMode =',\n isPreviewMode(),\n ' isSiteMode =',\n isSiteMode(),\n ' this.state.options =',\n this.state.options,\n ' this.state.container =',\n this.state.container,\n ' this.galleryStructure =',\n this.galleryStructure\n );\n }\n }\n }\n\n containerInfiniteGrowthDirection(options = false) {\n const _options = options || this.props.options;\n // return the direction in which the gallery can grow on it's own (aka infinite scroll)\n const { showMoreClickedAtLeastOnce } = this.state;\n\n const scrollDirection = _options[optionsMap.layoutParams.structure.scrollDirection];\n if (scrollDirection === GALLERY_CONSTS[optionsMap.layoutParams.structure.scrollDirection].HORIZONTAL) {\n return 'horizontal';\n } else if (this.props.options[optionsMap.behaviourParams.gallery.vertical.loadMore.enable]) {\n //vertical gallery with showMore button enabled\n if (\n showMoreClickedAtLeastOnce &&\n _options[optionsMap.behaviourParams.gallery.vertical.loadMore.amount] ===\n GALLERY_CONSTS[optionsMap.behaviourParams.gallery.vertical.loadMore.amount].ALL\n ) {\n return 'vertical';\n } else {\n return 'none';\n }\n } else {\n return 'vertical';\n }\n }\n\n onGalleryScroll(scrollPosition) {\n if (this.props.isInDisplay) {\n this.eventsListener(GALLERY_CONSTS.events.GALLERY_SCROLLED, scrollPosition);\n }\n }\n\n updateVisibility = () => {\n const isInViewport = isGalleryInViewport({\n container: this.props.container,\n scrollTop: this.state.scrollPosition.top,\n });\n if (this.state.isInViewport !== isInViewport) {\n this.setState({\n isInViewport,\n });\n }\n };\n setVisibilityIfNeeded = (prevProps, prevState) => {\n const { container } = this.props;\n const { scrollPosition } = this.state;\n if (\n container.scrollBase !== prevProps.container.scrollBase ||\n scrollPosition.top !== prevState.scrollPosition.top\n ) {\n this.updateVisibility();\n }\n };\n componentDidUpdate(prevProps, prevState) {\n // in order to update when container is available\n this.setVisibilityIfNeeded(prevProps, prevState);\n if (this.props.isPrerenderMode !== prevProps.isPrerenderMode) {\n const { body, documentElement: html } = document;\n const viewportHeight = window.innerHeight;\n const height = Math.max(\n body.scrollHeight,\n body.offsetHeight,\n html.clientHeight,\n html.scrollHeight,\n html.offsetHeight\n );\n this.getMoreItemsIfScrollIsDisabled(height, viewportHeight);\n }\n }\n\n createDynamicStyles(overlayBackground, isPrerenderMode) {\n const useSSROpacity = isPrerenderMode && !this.props.settings.disableSSROpacity;\n this.dynamicStyles = `\n ${!useSSROpacity ? '' : `#pro-gallery-${this.props.id} .gallery-item-container { opacity: 0 }`}\n ${\n !overlayBackground\n ? ''\n : `#pro-gallery-${this.props.id} .gallery-item-hover::before { background: ${overlayBackground} !important}`\n }\n `.trim();\n }\n\n createCssLayoutsIfNeeded(layoutParams) {\n const { settings = {} } = this.props;\n const { avoidInlineStyles } = settings;\n if (avoidInlineStyles) {\n this.layoutCss = createCssLayouts({\n layoutParams,\n isMobile: utils.isMobile(),\n id: this.props.id,\n galleryItems: this.galleryStructure.galleryItems,\n });\n }\n }\n\n getScrollCss({ id, items, options, container }) {\n this.scrollCss = cssScrollHelper.calcScrollCss({\n items,\n options,\n id,\n container,\n });\n }\n\n toggleLoadMoreItems() {\n this.eventsListener(GALLERY_CONSTS.events.LOAD_MORE_CLICKED, this.galleryStructure.galleryItems);\n const showMoreClickedAtLeastOnce = true;\n const needToHandleShowMoreClick = true;\n //before clicking \"load more\" at the first time\n if (!this.state.showMoreClickedAtLeastOnce) {\n this.getScrollCss({\n id: this.props.id,\n items: this.galleryStructure.galleryItems,\n options: this.state.options,\n container: this.state.container,\n });\n const initialGalleryHeight = this.state.container.height; //container.height before clicking \"load more\" at the first time\n this.setState(\n {\n showMoreClickedAtLeastOnce,\n initialGalleryHeight,\n needToHandleShowMoreClick,\n },\n () => {\n this.handleNewGalleryStructure();\n }\n );\n } else {\n //from second click\n this.setState(\n {\n needToHandleShowMoreClick,\n },\n () => {\n this.handleNewGalleryStructure();\n }\n );\n }\n }\n\n setGotFirstScrollIfNeeded() {\n if (!this.state.gotFirstScrollEvent) {\n this.getScrollCss({\n id: this.props.id,\n items: this.galleryStructure.galleryItems,\n options: this.state.options,\n container: this.state.container,\n });\n this.setState({\n gotFirstScrollEvent: true,\n });\n }\n }\n\n setCurrentSlideshowViewIdx(idx) {\n this.currentSlideshowViewIdx = idx;\n }\n\n simulateHorizontalScrollToItem(item) {\n item?.offset && this.onGalleryScroll({ left: item.offset.left });\n }\n\n eventsListener(eventName, eventData, event) {\n this.mediaScrollHelper.handleEvent({\n eventName,\n eventData,\n });\n if (eventName === GALLERY_CONSTS.events.HOVER_SET) {\n this.currentHoverChangeEvent.currentHoverIdx = eventData;\n window.dispatchEvent(this.currentHoverChangeEvent);\n }\n if (eventName === GALLERY_CONSTS.events.CURRENT_ITEM_CHANGED) {\n this.setCurrentSlideshowViewIdx(eventData.idx);\n if (this.getIsScrollLessGallery(this.state.options)) {\n this.simulateHorizontalScrollToItem(this.galleryStructure.items[eventData.idx]);\n }\n }\n if (!this.state.firstUserInteractionExecuted) {\n switch (eventName) {\n case GALLERY_CONSTS.events.HOVER_SET:\n case GALLERY_CONSTS.events.LOAD_MORE_CLICKED:\n case GALLERY_CONSTS.events.ITEM_ACTION_TRIGGERED:\n this.setState({ firstUserInteractionExecuted: true });\n break;\n }\n }\n if (typeof this.props.eventsListener === 'function') {\n switch (eventName) {\n case GALLERY_CONSTS.events.ITEM_ACTION_TRIGGERED:\n case GALLERY_CONSTS.events.ITEM_CLICKED:\n setTimeout(this.props.eventsListener(eventName, eventData, event), 0);\n break;\n default:\n this.props.eventsListener(eventName, eventData, event);\n }\n }\n\n if (eventName === GALLERY_CONSTS.events.GALLERY_SCROLLED) {\n this.mediaScrollHelper.onScroll(eventData);\n const newScrollPosition = {\n ...this.state.scrollPosition,\n ...eventData,\n };\n this.setState({ scrollPosition: newScrollPosition });\n }\n }\n\n getMoreItemsIfNeeded(scrollPos) {\n if (this.deferredGettingMoreItems?.isPending) {\n // Already getting more items so do nothing\n } else {\n this.deferredGettingMoreItems = new Deferred();\n\n if (\n !(\n this.galleryStructure &&\n this.galleryStructure.galleryItems &&\n this.galleryStructure.galleryItems.length > 0 &&\n this.state.items &&\n this.state.options &&\n this.state.container\n )\n ) {\n // No items are fetched -> reject\n this.deferredGettingMoreItems.reject();\n } else {\n //more items can be fetched from the server\n //TODO - add support for horizontal galleries\n const scrollDirection = this.state.options[optionsMap.layoutParams.structure.scrollDirection];\n const galleryEnd =\n this.galleryStructure[\n scrollDirection === GALLERY_CONSTS[optionsMap.layoutParams.structure.scrollDirection].HORIZONTAL\n ? 'width'\n : 'height'\n ] +\n (scrollDirection === GALLERY_CONSTS[optionsMap.layoutParams.structure.scrollDirection].HORIZONTAL\n ? 0\n : this.state.container.scrollBase);\n const screenSize =\n window[\n scrollDirection === GALLERY_CONSTS[optionsMap.layoutParams.structure.scrollDirection].HORIZONTAL\n ? 'innerWidth'\n : 'innerHeight'\n ];\n const scrollEnd = scrollPos + screenSize;\n const getItemsDistance = scrollPos ? 3 * screenSize : 0; //first scrollPos is 0 falsy. dont load before a scroll happened.\n\n if (galleryEnd < getItemsDistance + scrollEnd) {\n //only when the last item turns visible we should try getting more items\n this.eventsListener(GALLERY_CONSTS.events.NEED_MORE_ITEMS, this.state.items.length);\n setTimeout(() => {\n //wait a bit before allowing more items to be fetched - ugly hack before promises still not working\n this.deferredGettingMoreItems.resolve();\n }, 2000);\n } else {\n // No items are fetched -> reject\n this.deferredGettingMoreItems.reject();\n }\n }\n }\n return this.deferredGettingMoreItems.promise.catch(() => {});\n }\n\n canRender() {\n const can = this.props.container && this.props.options && this.state.items;\n if (!can && utils.isVerbose()) {\n console.log(\n 'PROGALLERY [CAN_RENDER] GalleryContainer',\n can,\n this.props.container,\n this.props.options,\n this.state.items\n );\n }\n return can;\n }\n\n onMouseEnter() {\n if (\n this.currentScrollData?.isContinuousScrolling &&\n this.state.options[optionsMap.behaviourParams.gallery.horizontal.autoSlide.pauseOnHover]\n ) {\n haltScroll(this.currentScrollData);\n }\n this.setState({ isInHover: true });\n }\n\n onMouseLeave() {\n this.setState({ isInHover: false });\n }\n\n findNeighborItem = (itemIdx, dir) => findNeighborItem(itemIdx, dir, this.state.structure.items); // REFACTOR BLUEPRINTS - this makes the function in the layouter irrelevant (unless the layouter is used as a stand alone with this function, maybe the layouter needs to be split for bundle size as well...)\n\n render() {\n if (!this.canRender()) {\n return null;\n }\n\n const ViewComponent =\n this.props.options[optionsMap.layoutParams.structure.scrollDirection] ===\n GALLERY_CONSTS[optionsMap.layoutParams.structure.scrollDirection].HORIZONTAL\n ? SlideshowView\n : GalleryView;\n\n if (utils.isVerbose()) {\n console.count('PROGALLERY [COUNTS] - GalleryContainer (render)');\n console.log('PROGALLERY [RENDER] - GalleryContainer', this.props.container.scrollBase, {\n props: this.props,\n items: this.state.items,\n });\n }\n\n const displayShowMore = this.containerInfiniteGrowthDirection() === 'none';\n return (\n <div\n data-key=\"pro-gallery-inner-container\"\n key=\"pro-gallery-inner-container\"\n className={this.props.isPrerenderMode ? 'pro-gallery-prerender' : ''}\n onMouseEnter={this.onMouseEnter}\n onMouseLeave={this.onMouseLeave}\n ref={(e) => (this.galleryContainerRef = e)}\n tabIndex={-1}\n >\n <ScrollIndicator\n id={this.props.id}\n galleryScrollDirection={this.props.options[optionsMap.layoutParams.structure.scrollDirection]}\n isRTL={\n this.props.options[optionsMap.behaviourParams.gallery.layoutDirection] ===\n GALLERY_CONSTS[optionsMap.behaviourParams.gallery.layoutDirection].RIGHT_TO_LEFT\n }\n totalWidth={this.galleryStructure.width}\n scrollBase={this.props.container.scrollBase}\n scrollingElement={this.state.scrollingElement}\n getMoreItemsIfNeeded={this.getMoreItemsIfNeeded}\n setGotFirstScrollIfNeeded={this.setGotFirstScrollIfNeeded}\n onScroll={this.onGalleryScroll}\n />\n <ViewComponent\n isInDisplay={this.props.isInDisplay}\n isInViewport={this.state.isInViewport}\n isPrerenderMode={this.props.isPrerenderMode}\n scrollingElement={this.state.scrollingElement}\n totalItemsCount={this.props.totalItemsCount} //the items passed in the props might not be all the items\n renderedItemsCount={this.props.renderedItemsCount}\n getMoreItemsIfNeeded={this.getMoreItemsIfNeeded}\n gotFirstScrollEvent={this.state.gotFirstScrollEvent}\n setGotFirstScrollIfNeeded={this.setGotFirstScrollIfNeeded}\n items={this.state.items}\n getVisibleItems={this.getVisibleItems}\n galleryStructure={this.galleryStructure}\n options={this.props.options}\n container={this.props.container}\n settings={this.props.settings}\n displayShowMore={displayShowMore}\n id={this.props.id}\n activeIndex={this.props.activeIndex || 0}\n customComponents={this.props.customComponents}\n playingVideoIdx={this.state.playingVideoIdx}\n playing3DIdx={this.state.playing3DIdx}\n noFollowForSEO={this.props.noFollowForSEO}\n proGalleryRegionLabel={this.props.proGalleryRegionLabel}\n proGalleryRole={this.props.proGalleryRole}\n firstUserInteractionExecuted={this.state.firstUserInteractionExecuted}\n isGalleryInHover={this.state.isInHover}\n enableExperimentalFeatures={this.props.enableExperimentalFeatures}\n galleryContainerRef={this.galleryContainerRef}\n outOfViewComponent={this.outOfViewComponent}\n virtualizationSettings={this.props.virtualizationSettings}\n galleryContainerId={`pro-gallery-container-${this.props.id}`}\n scrollTop={this.state?.scrollPosition?.top}\n isScrollLessGallery={this.getIsScrollLessGallery(this.state.options)}\n disableItemFocus={this.props.disableItemFocus}\n actions={{\n ...this.props.actions,\n findNeighborItem: this.findNeighborItem,\n toggleLoadMoreItems: this.toggleLoadMoreItems,\n eventsListener: this.eventsListener,\n setWixHeight: () => {},\n scrollToItem: this.scrollToItem,\n scrollToGroup: this.scrollToGroup,\n }}\n {...this.props.gallery}\n />\n <div data-key=\"items-styles\" key=\"items-styles\" style={{ display: 'none' }}>\n {(this.layoutCss || []).filter(Boolean).map((css, idx) => (\n <style id={`layoutCss-${idx}`} key={`layoutCss-${idx}`} dangerouslySetInnerHTML={{ __html: css }} />\n ))}\n {(this.scrollCss || []).filter(Boolean).map((css, idx) => (\n <style id={`scrollCss_${idx}`} key={`scrollCss_${idx}`} dangerouslySetInnerHTML={{ __html: css }} />\n ))}\n {!!this.dynamicStyles && <style dangerouslySetInnerHTML={{ __html: this.dynamicStyles }} />}\n </div>\n {this.props.proGalleryRole === 'application' && (\n <span ref={(e) => (this.outOfViewComponent = e)} tabIndex={-1} className=\"sr-only out-of-view-component\">\n {this.props.translations?.Accessibility_Left_Gallery}\n </span>\n )}\n </div>\n );\n }\n}\n\nexport default GalleryContainer;\n/* eslint-enable prettier/prettier */\n"]}
|
|
@@ -18,7 +18,7 @@ class NavigationPanel extends react_1.default.Component {
|
|
|
18
18
|
createThumbnails({ navigationPanelPosition, thumbnailAlignment, options, galleryStructure, settings }) {
|
|
19
19
|
const clearedGalleryItems = pro_gallery_lib_1.thumbnailsLogic.clearGalleryItems(this.props.items, this.props.galleryStructure.galleryItems);
|
|
20
20
|
const activeIndex = pro_gallery_lib_1.utils.inRange(this.props.activeIndex, clearedGalleryItems.length);
|
|
21
|
-
const { horizontalThumbnails, items, thumbnailsMargins, thumbnailsStyle, activeIndexOffsetMemory } = pro_gallery_lib_1.thumbnailsLogic.getThumbnailsData({
|
|
21
|
+
const { horizontalThumbnails, items, thumbnailsMargins, thumbnailsStyle, activeIndexOffsetMemory, thumbnailWidth, thumbnailHeight, } = pro_gallery_lib_1.thumbnailsLogic.getThumbnailsData({
|
|
22
22
|
items: this.props.items,
|
|
23
23
|
activeIndex,
|
|
24
24
|
options,
|
|
@@ -44,7 +44,7 @@ class NavigationPanel extends react_1.default.Component {
|
|
|
44
44
|
})), "data-hook": "gallery-thumbnails" },
|
|
45
45
|
react_1.default.createElement("div", { "data-hook": "gallery-thumbnails-column", className: 'galleryColumn', key: 'thumbnails-column', style: Object.assign({}, thumbnailsStyle) }, items.map(({ thumbnailItem, location, idx }) => {
|
|
46
46
|
const highlighted = idx === activeIndex % clearedGalleryItems.length;
|
|
47
|
-
const itemStyle = Object.assign(Object.assign({ width:
|
|
47
|
+
const itemStyle = Object.assign(Object.assign({ width: thumbnailWidth, height: thumbnailHeight, overflow: 'hidden', backgroundImage: `url(${thumbnailItem.createUrl(pro_gallery_lib_1.GALLERY_CONSTS.urlSizes.THUMBNAIL, pro_gallery_lib_1.GALLERY_CONSTS.urlTypes.HIGH_RES)})` }, location), (this.props.isPrerenderMode ? { opacity: 0 } : {}));
|
|
48
48
|
return (react_1.default.createElement("div", { key: 'thumbnail-' + thumbnailItem.id + (Number.isInteger(idx) ? '-' + idx : ''), className: 'thumbnailItem ' +
|
|
49
49
|
'thumbnail-' +
|
|
50
50
|
thumbnailItem.idx +
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"navigationPanel.js","sourceRoot":"","sources":["../../../../../src/components/gallery/proGallery/navigationPanel.js"],"names":[],"mappings":"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","sourcesContent":["import React from 'react';\nimport { GALLERY_CONSTS, optionsMap, utils, thumbnailsLogic } from 'pro-gallery-lib';\nimport { GalleryUI } from '../../item/media/GalleryUI.js';\n\nimport TextItem from '../../item/textItem.js';\n\nconst ENTER_KEY = 'Enter';\n\nclass NavigationPanel extends React.Component {\n constructor(props) {\n super(props);\n this.scrollToThumbnail = this.scrollToThumbnail.bind(this);\n }\n\n scrollToThumbnail(itemIdx) {\n this.props.navigationToIdxCB(itemIdx);\n }\n\n createThumbnails({ navigationPanelPosition, thumbnailAlignment, options, galleryStructure, settings }) {\n const clearedGalleryItems = thumbnailsLogic.clearGalleryItems(\n this.props.items,\n this.props.galleryStructure.galleryItems\n );\n const activeIndex = utils.inRange(this.props.activeIndex, clearedGalleryItems.length);\n\n const { horizontalThumbnails, items, thumbnailsMargins, thumbnailsStyle, activeIndexOffsetMemory } =\n thumbnailsLogic.getThumbnailsData({\n items: this.props.items,\n activeIndex,\n options,\n galleryStructure,\n thumbnailAlignment,\n containerHeight: this.props.container.height,\n containerWidth: this.props.container.width,\n activeIndexOffsetMemory: this.activeIndexOffsetMemory,\n prevActiveIndex: this.prevActiveIndex,\n });\n\n this.prevActiveIndex = activeIndex;\n this.activeIndexOffsetMemory = activeIndexOffsetMemory;\n\n return (\n <div\n className={\n 'pro-gallery inline-styles thumbnails-gallery ' +\n (this.props.domOrder ? 'thumbnails-gallery-' + this.props.domOrder : '') +\n (horizontalThumbnails ? ' one-row hide-scrollbars ' : '') +\n (options[optionsMap.behaviourParams.gallery.layoutDirection] ===\n GALLERY_CONSTS[optionsMap.behaviourParams.gallery.layoutDirection].RIGHT_TO_LEFT\n ? ' rtl '\n : ' ltr ') +\n (settings?.isAccessible ? ' accessible ' : '')\n }\n style={{\n ...(this.props.isPrerenderMode ? { display: 'block' } : {}),\n width: thumbnailsStyle.width,\n height: thumbnailsStyle.height,\n ...thumbnailsMargins,\n ...getNavigationPanelOnGalleryPositionStyles({\n galleryThumbnailsAlignment: thumbnailAlignment,\n navigationPanelPosition,\n }),\n }}\n data-hook=\"gallery-thumbnails\"\n >\n <div\n data-hook=\"gallery-thumbnails-column\"\n className={'galleryColumn'}\n key={'thumbnails-column'}\n style={{ ...thumbnailsStyle }}\n >\n {items.map(({ thumbnailItem, location, idx }) => {\n const highlighted = idx === activeIndex % clearedGalleryItems.length;\n const itemStyle = {\n width: options[optionsMap.layoutParams.thumbnails.size],\n height: options[optionsMap.layoutParams.thumbnails.size],\n overflow: 'hidden',\n backgroundImage: `url(${thumbnailItem.createUrl(\n GALLERY_CONSTS.urlSizes.THUMBNAIL,\n GALLERY_CONSTS.urlTypes.HIGH_RES\n )})`,\n ...location,\n ...(this.props.isPrerenderMode ? { opacity: 0 } : {}),\n };\n return (\n <div\n key={'thumbnail-' + thumbnailItem.id + (Number.isInteger(idx) ? '-' + idx : '')}\n className={\n 'thumbnailItem ' +\n 'thumbnail-' +\n thumbnailItem.idx +\n (highlighted\n ? ' pro-gallery-thumbnails-highlighted pro-gallery-highlight' +\n (utils.isMobile() ? ' pro-gallery-mobile-indicator' : '')\n : '')\n }\n data-key={thumbnailItem.id}\n style={itemStyle}\n onClick={() => this.scrollToThumbnail(idx)}\n tabIndex={0}\n onKeyDown={(e) => {\n if (e.key === ENTER_KEY) {\n this.scrollToThumbnail(idx);\n }\n }}\n >\n {thumbnailItem.type === 'video' &&\n options[optionsMap.behaviourParams.item.video.enableThumbnailsPlayButton] && (\n <GalleryUI type={'videoPlayButton'} size={'28'} />\n )}\n {thumbnailItem.type === '3d' &&\n options[optionsMap.behaviourParams.item.threeDimensionalScene.enableThumbnailsPlayButton] && (\n <GalleryUI type={'rotateArrow'} size={'28'} />\n )}\n\n {thumbnailItem.type === 'text' ? (\n <TextItem\n {...this.props}\n {...thumbnailItem.renderProps()}\n options={{\n ...options,\n [optionsMap.layoutParams.crop.method]: GALLERY_CONSTS[optionsMap.layoutParams.crop.method].FILL,\n [optionsMap.layoutParams.crop.enable]: true,\n }}\n actions={{}}\n imageDimensions={{\n ...itemStyle,\n marginTop: 0,\n marginLeft: 0,\n }}\n style={{\n ...thumbnailItem.renderProps().style,\n ...itemStyle,\n }}\n />\n ) : null}\n </div>\n );\n })}\n </div>\n </div>\n );\n }\n\n //-----------------------------------------| RENDER |--------------------------------------------//\n\n render() {\n const navigationRelevantProps = {\n navigationPanelPosition: this.props.options[optionsMap.layoutParams.thumbnails.position],\n thumbnailAlignment: this.props.options[optionsMap.layoutParams.thumbnails.alignment],\n options: this.props.options,\n galleryStructure: this.props.galleryStructure,\n settings: this.props.settings,\n };\n\n return this.createThumbnails(navigationRelevantProps);\n }\n}\n\nconst getHorizontalNavigationPanelDimensions = ({ width, height, galleryHeight, navigationPanelPosition }) => {\n if (navigationPanelPosition === GALLERY_CONSTS[optionsMap.layoutParams.thumbnails.position].ON_GALLERY) {\n return {};\n } else {\n return { width: width, height: height - galleryHeight };\n }\n};\nconst getVerticalNavigationPanelDimensions = ({ width, height, galleryWidth, navigationPanelPosition }) => {\n if (navigationPanelPosition === GALLERY_CONSTS[optionsMap.layoutParams.thumbnails.position].ON_GALLERY) {\n return {};\n } else {\n return { width: width - galleryWidth, height: height };\n }\n};\nconst getCustomNavigationPanelDimensions = ({\n galleryHeight,\n galleryWidth,\n height,\n width,\n galleryThumbnailsAlignment,\n navigationPanelPosition,\n}) => {\n switch (galleryThumbnailsAlignment) {\n case GALLERY_CONSTS[optionsMap.layoutParams.thumbnails.alignment].TOP:\n return getHorizontalNavigationPanelDimensions(\n { galleryHeight, galleryWidth, height, width, navigationPanelPosition },\n false\n );\n case GALLERY_CONSTS[optionsMap.layoutParams.thumbnails.alignment].BOTTOM:\n return getHorizontalNavigationPanelDimensions(\n { galleryHeight, galleryWidth, height, width, navigationPanelPosition },\n true\n );\n case GALLERY_CONSTS[optionsMap.layoutParams.thumbnails.alignment].RIGHT:\n case GALLERY_CONSTS[optionsMap.layoutParams.thumbnails.alignment].LEFT:\n return getVerticalNavigationPanelDimensions({\n galleryHeight,\n galleryWidth,\n height,\n width,\n navigationPanelPosition,\n });\n default:\n return false;\n }\n};\n\nexport const getCustomNavigationPanelInlineStyles = ({\n galleryHeight,\n galleryWidth,\n height,\n width,\n galleryThumbnailsAlignment,\n navigationPanelPosition,\n}) => {\n return {\n ...getCustomNavigationPanelDimensions({\n galleryHeight,\n galleryWidth,\n height,\n width,\n galleryThumbnailsAlignment,\n navigationPanelPosition,\n }),\n ...getNavigationPanelOnGalleryPositionStyles({\n galleryThumbnailsAlignment,\n navigationPanelPosition,\n }),\n overflow: 'hidden',\n float: 'left',\n };\n};\n\nconst getNavigationPanelOnGalleryPositionStyles = ({ galleryThumbnailsAlignment, navigationPanelPosition }) => {\n if (navigationPanelPosition === GALLERY_CONSTS[optionsMap.layoutParams.thumbnails.position].ON_GALLERY) {\n let onGalleryStyles = { position: 'absolute' };\n onGalleryStyles[galleryThumbnailsAlignment.toLowerCase()] = 0;\n return onGalleryStyles;\n }\n};\n\nexport default NavigationPanel;\n"]}
|
|
1
|
+
{"version":3,"file":"navigationPanel.js","sourceRoot":"","sources":["../../../../../src/components/gallery/proGallery/navigationPanel.js"],"names":[],"mappings":"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","sourcesContent":["import React from 'react';\nimport { GALLERY_CONSTS, optionsMap, utils, thumbnailsLogic } from 'pro-gallery-lib';\nimport { GalleryUI } from '../../item/media/GalleryUI.js';\n\nimport TextItem from '../../item/textItem.js';\n\nconst ENTER_KEY = 'Enter';\n\nclass NavigationPanel extends React.Component {\n constructor(props) {\n super(props);\n this.scrollToThumbnail = this.scrollToThumbnail.bind(this);\n }\n\n scrollToThumbnail(itemIdx) {\n this.props.navigationToIdxCB(itemIdx);\n }\n\n createThumbnails({ navigationPanelPosition, thumbnailAlignment, options, galleryStructure, settings }) {\n const clearedGalleryItems = thumbnailsLogic.clearGalleryItems(\n this.props.items,\n this.props.galleryStructure.galleryItems\n );\n const activeIndex = utils.inRange(this.props.activeIndex, clearedGalleryItems.length);\n\n const {\n horizontalThumbnails,\n items,\n thumbnailsMargins,\n thumbnailsStyle,\n activeIndexOffsetMemory,\n thumbnailWidth,\n thumbnailHeight,\n } = thumbnailsLogic.getThumbnailsData({\n items: this.props.items,\n activeIndex,\n options,\n galleryStructure,\n thumbnailAlignment,\n containerHeight: this.props.container.height,\n containerWidth: this.props.container.width,\n activeIndexOffsetMemory: this.activeIndexOffsetMemory,\n prevActiveIndex: this.prevActiveIndex,\n });\n\n this.prevActiveIndex = activeIndex;\n this.activeIndexOffsetMemory = activeIndexOffsetMemory;\n\n return (\n <div\n className={\n 'pro-gallery inline-styles thumbnails-gallery ' +\n (this.props.domOrder ? 'thumbnails-gallery-' + this.props.domOrder : '') +\n (horizontalThumbnails ? ' one-row hide-scrollbars ' : '') +\n (options[optionsMap.behaviourParams.gallery.layoutDirection] ===\n GALLERY_CONSTS[optionsMap.behaviourParams.gallery.layoutDirection].RIGHT_TO_LEFT\n ? ' rtl '\n : ' ltr ') +\n (settings?.isAccessible ? ' accessible ' : '')\n }\n style={{\n ...(this.props.isPrerenderMode ? { display: 'block' } : {}),\n width: thumbnailsStyle.width,\n height: thumbnailsStyle.height,\n ...thumbnailsMargins,\n ...getNavigationPanelOnGalleryPositionStyles({\n galleryThumbnailsAlignment: thumbnailAlignment,\n navigationPanelPosition,\n }),\n }}\n data-hook=\"gallery-thumbnails\"\n >\n <div\n data-hook=\"gallery-thumbnails-column\"\n className={'galleryColumn'}\n key={'thumbnails-column'}\n style={{ ...thumbnailsStyle }}\n >\n {items.map(({ thumbnailItem, location, idx }) => {\n const highlighted = idx === activeIndex % clearedGalleryItems.length;\n const itemStyle = {\n width: thumbnailWidth,\n height: thumbnailHeight,\n overflow: 'hidden',\n backgroundImage: `url(${thumbnailItem.createUrl(\n GALLERY_CONSTS.urlSizes.THUMBNAIL,\n GALLERY_CONSTS.urlTypes.HIGH_RES\n )})`,\n ...location,\n ...(this.props.isPrerenderMode ? { opacity: 0 } : {}),\n };\n return (\n <div\n key={'thumbnail-' + thumbnailItem.id + (Number.isInteger(idx) ? '-' + idx : '')}\n className={\n 'thumbnailItem ' +\n 'thumbnail-' +\n thumbnailItem.idx +\n (highlighted\n ? ' pro-gallery-thumbnails-highlighted pro-gallery-highlight' +\n (utils.isMobile() ? ' pro-gallery-mobile-indicator' : '')\n : '')\n }\n data-key={thumbnailItem.id}\n style={itemStyle}\n onClick={() => this.scrollToThumbnail(idx)}\n tabIndex={0}\n onKeyDown={(e) => {\n if (e.key === ENTER_KEY) {\n this.scrollToThumbnail(idx);\n }\n }}\n >\n {thumbnailItem.type === 'video' &&\n options[optionsMap.behaviourParams.item.video.enableThumbnailsPlayButton] && (\n <GalleryUI type={'videoPlayButton'} size={'28'} />\n )}\n {thumbnailItem.type === '3d' &&\n options[optionsMap.behaviourParams.item.threeDimensionalScene.enableThumbnailsPlayButton] && (\n <GalleryUI type={'rotateArrow'} size={'28'} />\n )}\n\n {thumbnailItem.type === 'text' ? (\n <TextItem\n {...this.props}\n {...thumbnailItem.renderProps()}\n options={{\n ...options,\n [optionsMap.layoutParams.crop.method]: GALLERY_CONSTS[optionsMap.layoutParams.crop.method].FILL,\n [optionsMap.layoutParams.crop.enable]: true,\n }}\n actions={{}}\n imageDimensions={{\n ...itemStyle,\n marginTop: 0,\n marginLeft: 0,\n }}\n style={{\n ...thumbnailItem.renderProps().style,\n ...itemStyle,\n }}\n />\n ) : null}\n </div>\n );\n })}\n </div>\n </div>\n );\n }\n\n //-----------------------------------------| RENDER |--------------------------------------------//\n\n render() {\n const navigationRelevantProps = {\n navigationPanelPosition: this.props.options[optionsMap.layoutParams.thumbnails.position],\n thumbnailAlignment: this.props.options[optionsMap.layoutParams.thumbnails.alignment],\n options: this.props.options,\n galleryStructure: this.props.galleryStructure,\n settings: this.props.settings,\n };\n\n return this.createThumbnails(navigationRelevantProps);\n }\n}\n\nconst getHorizontalNavigationPanelDimensions = ({ width, height, galleryHeight, navigationPanelPosition }) => {\n if (navigationPanelPosition === GALLERY_CONSTS[optionsMap.layoutParams.thumbnails.position].ON_GALLERY) {\n return {};\n } else {\n return { width: width, height: height - galleryHeight };\n }\n};\nconst getVerticalNavigationPanelDimensions = ({ width, height, galleryWidth, navigationPanelPosition }) => {\n if (navigationPanelPosition === GALLERY_CONSTS[optionsMap.layoutParams.thumbnails.position].ON_GALLERY) {\n return {};\n } else {\n return { width: width - galleryWidth, height: height };\n }\n};\nconst getCustomNavigationPanelDimensions = ({\n galleryHeight,\n galleryWidth,\n height,\n width,\n galleryThumbnailsAlignment,\n navigationPanelPosition,\n}) => {\n switch (galleryThumbnailsAlignment) {\n case GALLERY_CONSTS[optionsMap.layoutParams.thumbnails.alignment].TOP:\n return getHorizontalNavigationPanelDimensions(\n { galleryHeight, galleryWidth, height, width, navigationPanelPosition },\n false\n );\n case GALLERY_CONSTS[optionsMap.layoutParams.thumbnails.alignment].BOTTOM:\n return getHorizontalNavigationPanelDimensions(\n { galleryHeight, galleryWidth, height, width, navigationPanelPosition },\n true\n );\n case GALLERY_CONSTS[optionsMap.layoutParams.thumbnails.alignment].RIGHT:\n case GALLERY_CONSTS[optionsMap.layoutParams.thumbnails.alignment].LEFT:\n return getVerticalNavigationPanelDimensions({\n galleryHeight,\n galleryWidth,\n height,\n width,\n navigationPanelPosition,\n });\n default:\n return false;\n }\n};\n\nexport const getCustomNavigationPanelInlineStyles = ({\n galleryHeight,\n galleryWidth,\n height,\n width,\n galleryThumbnailsAlignment,\n navigationPanelPosition,\n}) => {\n return {\n ...getCustomNavigationPanelDimensions({\n galleryHeight,\n galleryWidth,\n height,\n width,\n galleryThumbnailsAlignment,\n navigationPanelPosition,\n }),\n ...getNavigationPanelOnGalleryPositionStyles({\n galleryThumbnailsAlignment,\n navigationPanelPosition,\n }),\n overflow: 'hidden',\n float: 'left',\n };\n};\n\nconst getNavigationPanelOnGalleryPositionStyles = ({ galleryThumbnailsAlignment, navigationPanelPosition }) => {\n if (navigationPanelPosition === GALLERY_CONSTS[optionsMap.layoutParams.thumbnails.position].ON_GALLERY) {\n let onGalleryStyles = { position: 'absolute' };\n onGalleryStyles[galleryThumbnailsAlignment.toLowerCase()] = 0;\n return onGalleryStyles;\n }\n};\n\nexport default NavigationPanel;\n"]}
|
|
@@ -305,6 +305,7 @@ export class GalleryContainer extends React.Component {
|
|
|
305
305
|
this.galleryStructure = ItemsHelper.convertToGalleryItems(structure, {
|
|
306
306
|
// TODO use same objects in the memory when the galleryItems are changed
|
|
307
307
|
thumbnailSize: options[optionsMap.layoutParams.thumbnails.size],
|
|
308
|
+
thumbnailRatio: options[optionsMap.layoutParams.thumbnails.ratio] || 1,
|
|
308
309
|
sharpParams: options.sharpParams,
|
|
309
310
|
createMediaUrl,
|
|
310
311
|
});
|