{"version":3,"file":"product-item.js","mappings":"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","sources":["webpack://geposit-base/./src/components/ProductItem.tsx","webpack://geposit-base/./src/urlParams.ts"],"sourcesContent":["var __assign = (this && this.__assign) || function () {\r\n __assign = Object.assign || function(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\r\n t[p] = s[p];\r\n }\r\n return t;\r\n };\r\n return __assign.apply(this, arguments);\r\n};\r\nimport { className } from '@empori/util';\r\nimport * as React from 'react';\r\nimport { InitialUrlQueries, UpdateUrlQueries } from '../urlParams';\r\nfunction FaIcon(props) {\r\n var faClass = props.clsName;\r\n if (props.clsAltName) {\r\n faClass += \" \".concat(props.clsAltName);\r\n }\r\n if (props.spin) {\r\n faClass += ' fa-spin';\r\n }\r\n faClass += ' empori-icon';\r\n return React.createElement(\"i\", { className: faClass, style: {}, title: props.title });\r\n}\r\nfunction OneProductItem(props) {\r\n var container = React.useRef(null);\r\n var _a = React.useState(null), parentRect = _a[0], setParentRect = _a[1];\r\n var staticMargin = props.staticMargin;\r\n var _b = React.useState(staticMargin), marginBottom = _b[0], setMarginBottom = _b[1];\r\n React.useEffect(function () {\r\n if (container.current) {\r\n setParentRect(container.current.getBoundingClientRect());\r\n }\r\n var onScroll = function () {\r\n if (container.current) {\r\n setParentRect(container.current.getBoundingClientRect());\r\n }\r\n };\r\n window.addEventListener('scroll', onScroll);\r\n }, [container]);\r\n var handleItemToggle = function (event) {\r\n if (!(props.childProductItems.length > 0)) {\r\n return;\r\n }\r\n props.updateUrl({ itemId: props.contentId });\r\n if (container.current) {\r\n setParentRect(container.current.getBoundingClientRect());\r\n }\r\n };\r\n return (React.createElement(React.Fragment, null,\r\n React.createElement(\"div\", { onClick: handleItemToggle, ref: container, className: className('basic-grid grid-item', {\r\n // eslint-disable-next-line camelcase\r\n grid_item_hover: (props.childProductItems && props.childProductItems.length > 0) ||\r\n (props.btnUrl.name != null &&\r\n props.btnUrl.name !== '' &&\r\n props.btnUrl.name !== undefined),\r\n viewing: props.childProductItems &&\r\n props.childProductItems.length > 0 &&\r\n props.itemToggled,\r\n blocked: props.itemBlocked,\r\n // eslint-disable-next-line camelcase\r\n large_box: props.itemCount <= 2\r\n }, props.invertedCss), style: {\r\n marginBottom: marginBottom,\r\n flex: props.itemCount >= 4\r\n ? \"0 0 calc(100% / \".concat(props.itemCount, \" - 10px)\")\r\n : \"1 0 calc(100% / \".concat(props.itemCount, \" - \").concat(props.elementSpace, \")\"),\r\n paddingBottom: props.btnUrl.name ||\r\n (props.childProductItems && props.childProductItems.length > 0)\r\n ? 32\r\n : 0\r\n } },\r\n React.createElement(\"div\", { className: className('basic-grid-info element-flex') },\r\n props.imageUrl && (React.createElement(\"div\", { className: 'element-flex justify-content-center icon-image' },\r\n React.createElement(\"img\", { className: 'icon-size-image', height: props.itemCount <= 2 ? 120 : 70, src: \"\".concat(props.imageUrl), loading: 'lazy', alt: props.titleText }))),\r\n React.createElement(\"h3\", null, props.titleText),\r\n React.createElement(\"div\", { className: 'empori-news-preamble grid-description-text', dangerouslySetInnerHTML: { __html: props.descriptionText } }),\r\n props.childProductItems && props.childProductItems.length > 0 && (React.createElement(\"div\", { className: 'link-expand' }, props.itemToggled ? (React.createElement(\"div\", { className: 'empori-button text-like', key: 'open' },\r\n React.createElement(\"i\", { className: 'fa-regular fa-times fa-2x' }))) : (React.createElement(\"div\", { className: 'empori-button text-like', key: 'closed' },\r\n React.createElement(\"i\", { className: 'fa-regular fa-angle-down fa-2x' })))))),\r\n props.childProductItems && props.childProductItems.length === 0 && (React.createElement(\"div\", { className: className('link', {\r\n // eslint-disable-next-line camelcase\r\n large_box_link: props.itemCount <= 2\r\n }), style: {\r\n bottom: props.btnUrl.name ? 32 : 10\r\n } },\r\n React.createElement(\"a\", { href: \"\".concat(props.btnUrl.url), className: 'empori-button text-like', title: props.btnUrl.name + ' - ' + props.titleText },\r\n props.btnUrl.name,\r\n ' ',\r\n props.btnUrl.name &&\r\n (props.urlIcon && props.urlIcon.startsWith('/media') ? (React.createElement(\"img\", { src: props.urlIcon, alt: 'icon', height: '16', className: 'icon-picker-image', loading: 'lazy' })) : (React.createElement(FaIcon, { clsName: props.urlIcon }))))))),\r\n props.itemToggled &&\r\n parentRect &&\r\n props.childProductItems &&\r\n props.childProductItems.length > 0 && (React.createElement(ChildProductItems, __assign({}, props, { parentRect: parentRect, setParentMargin: setMarginBottom, closeItem: handleItemToggle })))));\r\n}\r\nexport function ChildProductItems(props) {\r\n if (!props.parentRect || !props.itemToggled) {\r\n return null;\r\n }\r\n var _a = React.useState(0), topPos = _a[0], setTopPos = _a[1];\r\n var staticTopLoss = 20;\r\n var container = React.useRef(null);\r\n var isCardShow = function (item) {\r\n if (item.imageUrl || item.titleText || item.descriptionText) {\r\n return true;\r\n }\r\n else if (window.innerWidth > 540) {\r\n return true;\r\n }\r\n else {\r\n return false;\r\n }\r\n };\r\n React.useEffect(function () {\r\n setTopPos(props.scrollY +\r\n props.parentRect.height +\r\n props.parentRect.top -\r\n staticTopLoss);\r\n }, []);\r\n React.useLayoutEffect(function () {\r\n if (container.current) {\r\n props.setParentMargin(container.current.clientHeight);\r\n }\r\n return function () {\r\n setTopPos(0);\r\n props.setParentMargin(staticTopLoss);\r\n };\r\n }, [container]);\r\n return (React.createElement(\"div\", { ref: container, className: 'grid-expanded-wrapper', style: { top: topPos, left: 0 } },\r\n React.createElement(\"div\", { className: 'container' },\r\n React.createElement(\"div\", { className: 'grid-expanded-content basic-grid-content element-flex information-grid expanded' }, props.childProductItems.map(function (item, index) {\r\n return isCardShow(item) && (React.createElement(\"div\", { key: \"\".concat(item.contentId, \"-\").concat(index++), className: className('basic-grid grid-item', {\r\n // eslint-disable-next-line camelcase\r\n grid_item_hover: (props.childProductItems &&\r\n props.childProductItems.length > 0) ||\r\n (props.btnUrl.name != null &&\r\n props.btnUrl.name !== '' &&\r\n props.btnUrl.name !== undefined),\r\n // eslint-disable-next-line camelcase\r\n large_box: props.itemCount <= 2\r\n }, props.invertedCss), style: {\r\n flex: props.itemCount >= 4\r\n ? \"0 0 calc(100% / \".concat(props.itemCount, \" - 10px)\")\r\n : \"1 0 calc(100% / \".concat(props.itemCount, \" - \").concat(props.elementSpace, \")\"),\r\n paddingBottom: item.btnUrl.name ||\r\n (props.childProductItems &&\r\n props.childProductItems.length > 0)\r\n ? 32\r\n : 0\r\n } },\r\n React.createElement(\"div\", { className: className('basic-grid-info element-flex') },\r\n item.imageUrl && (React.createElement(\"div\", { className: 'element-flex justify-content-center icon-image' },\r\n React.createElement(\"img\", { className: 'icon-size-image', width: 300, height: props.itemCount <= 2 ? 120 : 70, src: \"\".concat(item.imageUrl), loading: 'lazy', alt: item.titleText }))),\r\n React.createElement(\"h3\", null, item.titleText),\r\n React.createElement(\"div\", { className: 'empori-news-preamble grid-description-text', dangerouslySetInnerHTML: { __html: item.descriptionText } }),\r\n props.itemCount >= 4 && (React.createElement(\"a\", { href: \"\".concat(item.btnUrl.url), className: 'empori-button text-like btn-expanded' },\r\n item.btnUrl.name,\r\n ' ',\r\n item.btnUrl.name &&\r\n (props.urlIcon &&\r\n props.urlIcon.startsWith('/media') ? (React.createElement(\"img\", { src: props.urlIcon, alt: 'icon', height: '16', className: 'icon-picker-image', loading: 'lazy' })) : (React.createElement(FaIcon, { clsName: props.urlIcon })))))),\r\n props.itemCount < 4 && (React.createElement(\"div\", { className: className('link', {\r\n // eslint-disable-next-line camelcase\r\n large_box_link: props.itemCount <= 2\r\n }), style: {\r\n bottom: item.btnUrl.name ? 32 : 10\r\n } },\r\n React.createElement(\"a\", { href: \"\".concat(item.btnUrl.url), className: 'empori-button text-like' },\r\n item.btnUrl.name,\r\n ' ',\r\n item.btnUrl.name &&\r\n (props.urlIcon &&\r\n props.urlIcon.startsWith('/media') ? (React.createElement(\"img\", { src: props.urlIcon, alt: 'icon', height: '16', className: 'icon-picker-image', loading: 'lazy' })) : (React.createElement(FaIcon, { clsName: props.urlIcon }))))))));\r\n })))));\r\n}\r\nexport default function ProductItem(props) {\r\n var _a = React.useState(InitialUrlQueries()), viewingParams = _a[0], setViewingParams = _a[1];\r\n var _b = React.useState(0), scrollY = _b[0], setScrollY = _b[1];\r\n var reset = function () {\r\n setViewingParams({ itemId: 0 });\r\n };\r\n var handleUrl = function (query) {\r\n setScrollY(window.scrollY);\r\n if (query.itemId === viewingParams.itemId) {\r\n reset();\r\n return;\r\n }\r\n UpdateUrlQueries(query);\r\n setViewingParams(query);\r\n };\r\n var isSmallScreen = window.innerWidth <= 540;\r\n React.useLayoutEffect(function () {\r\n setScrollY(window.scrollY);\r\n }, []);\r\n var isCardShow = function (item) {\r\n if (item.imageUrl || item.titleText || item.descriptionText) {\r\n return true;\r\n }\r\n else if (window.innerWidth > 540) {\r\n return true;\r\n }\r\n else {\r\n return false;\r\n }\r\n };\r\n return (React.createElement(\"div\", { className: 'basic-grid-content information-grid element-flex' },\r\n props.products.productItems.map(function (item, index) {\r\n return isCardShow(item) && (React.createElement(OneProductItem, { key: \"\".concat(item.titleText, \"-\").concat(index++), itemCount: props.products.itemCount, elementSpace: props.products.elementSpace, invertedCss: props.products.invertedCss, urlIcon: props.products.urlIcon, scrollY: scrollY, contentId: item.contentId, imageUrl: item.imageUrl, titleText: item.titleText, descriptionText: item.descriptionText, btnUrl: item.btnUrl, childProductItems: item.childProductItems, itemToggled: viewingParams.itemId === item.contentId, itemBlocked: viewingParams.itemId > 0 &&\r\n viewingParams.itemId !== item.contentId &&\r\n props.products.productItems.filter(function (x) { return x.childProductItems.length > 0; }).length > 0, updateUrl: handleUrl, staticMargin: props.products.productItems.filter(function (x) { return x.childProductItems.length > 0; }).length > 0\r\n ? 20\r\n : 5 }));\r\n }),\r\n props.products &&\r\n props.products.productItems &&\r\n props.products.productItems.length === 0 && (React.createElement(\"div\", null, \"No Items Selected\"))));\r\n}\r\n","export function InitialUrlQueries() {\r\n var _a;\r\n var query = new URLSearchParams(window.location.search);\r\n return {\r\n itemId: parseInt((_a = query.get('itemId')) !== null && _a !== void 0 ? _a : '0', 10)\r\n };\r\n}\r\nexport function UpdateUrlQueries(params) {\r\n var query = new URLSearchParams();\r\n if (!!params.itemId && params.itemId > 0) {\r\n query.set('itemId', params.itemId.toString());\r\n }\r\n else {\r\n return;\r\n }\r\n window.history.replaceState(params, '', \"\".concat(window.location.pathname, \"?\").concat(query.toString()));\r\n}\r\n"],"names":["__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","this","FaIcon","props","faClass","clsName","clsAltName","concat","spin","className","style","title","OneProductItem","container","_a","parentRect","setParentRect","staticMargin","_b","marginBottom","setMarginBottom","current","getBoundingClientRect","window","addEventListener","handleItemToggle","event","childProductItems","updateUrl","itemId","contentId","onClick","ref","grid_item_hover","btnUrl","name","undefined","viewing","itemToggled","blocked","itemBlocked","large_box","itemCount","invertedCss","flex","elementSpace","paddingBottom","imageUrl","height","src","loading","alt","titleText","dangerouslySetInnerHTML","__html","descriptionText","key","large_box_link","bottom","href","url","urlIcon","startsWith","ChildProductItems","setParentMargin","closeItem","topPos","setTopPos","scrollY","top","clientHeight","left","map","item","index","innerWidth","isCardShow","width","ProductItem","query","URLSearchParams","location","search","parseInt","get","InitialUrlQueries","viewingParams","setViewingParams","setScrollY","handleUrl","params","set","toString","history","replaceState","pathname","UpdateUrlQueries","products","productItems","filter","x"],"sourceRoot":""}