{"version":3,"file":"processFavouritePortals-cd5579e5.js","sources":["../../../resources/js/app/components/FavoriteButton.jsx","../../../resources/js/app/components/FavoriteButtonDetail.jsx","../../../resources/js/app/widgets/Favourite/processFavouritePortals.jsx"],"sourcesContent":["import React, {useContext, useEffect} from \"react\";\nimport {GlobalContext} from \"../contexts/GlobalContext.jsx\";\nimport {setFavorites} from \"../contexts/actions/global.jsx\";\nimport {styled} from \"@mui/material/styles\";\nimport {COLOR_BORDER_GREY, COLOR_BORDER_LIGHT_GREY} from \"../../themes/colors.jsx\";\nexport default function FavoriteButton({data, ...props}) {\n const context = useContext(GlobalContext);\n\n const id = data;\n const checked = !!context.favorites[id];\n\n return (\n \n )\n}\n\nconst Button = styled('button')`\n position: relative;\n bottom: 0;\n padding-left: 15px;\n padding-right: 15px;\n border: 1px ${COLOR_BORDER_GREY} solid;\n border-radius: 50%;\n width: 52px;\n height: 52px;\n background-color: transparent;\n & > svg {\n width: 20px;\n }\n`\n","import React, {useContext, useEffect} from \"react\";\nimport {GlobalContext} from \"../contexts/GlobalContext.jsx\";\nimport {setFavorites} from \"../contexts/actions/global.jsx\";\nimport {styled} from \"@mui/material/styles\";\nimport {COLOR_BORDER_GREY} from \"../../themes/colors.jsx\";\nimport useIsMobile from \"./hooks/common/useIsMobile.jsx\";\nexport default function FavoriteButtonDetail({data, ...props}) {\n const context = useContext(GlobalContext);\n const {isMobile} = useIsMobile(500);\n\n const id = data;\n const checked = !!context.favorites[id];\n\n const ButtonElement = isMobile ? Button : ButtonSimple;\n\n return (\n {\n event.preventDefault();\n context.favorites[id] = !context.favorites?.[id];\n Object.keys(context.favorites).forEach((k) => !context.favorites[k] && delete context.favorites[k])\n context.dispatch(setFavorites({...context.favorites}))\n }}\n {...props}\n {...(isMobile ? {} : {className: 'btn btn-outlined'})}\n >\n {isMobile ? (\n \n ) :\n checked ? 'Remove from Favorites' : 'Add to Favorites'\n }\n \n )\n}\n\nconst ButtonSimple = styled('a')`\n`\n\nconst Button = styled('a')`\n position: relative;\n bottom: 0;\n padding-left: 15px;\n padding-right: 15px;\n border: 1px ${COLOR_BORDER_GREY} solid;\n border-radius: 50%;\n width: 52px;\n height: 52px;\n background-color: transparent;\n & > svg {\n width: 20px;\n }\n`\n","import {createPortal} from \"react-dom\";\nimport FavoriteButton from \"../../components/FavoriteButton.jsx\";\nimport React from \"react\";\nimport FavoriteButtonDetail from \"../../components/FavoriteButtonDetail.jsx\";\n\nexport default function processFavouritePortals(updatedPortals = [], detail = false) {\n const collection = document.getElementsByClassName(\"favourite-button\");\n\n for (let i = 0; i < collection.length; i++) {\n\n if (collection[i].hasAttribute('processed')) {\n continue;\n }\n collection[i].innerHTML = '';\n const attributes = Object.fromEntries(\n Array.from(collection[i].attributes).map(\n ({name, value}) => ([name, value])\n )\n )\n for (const attribute in attributes) {\n if (attribute === 'class') {\n continue;\n }\n collection[i].removeAttribute(attribute)\n }\n\n updatedPortals.push(\n createPortal(\n detail ? : ,\n collection[i]\n )\n )\n collection[i].setAttribute('processed', true)\n }\n return updatedPortals;\n}\n"],"names":["FavoriteButton","data","props","context","useContext","GlobalContext","id","checked","React","Button","event","_a","k","setFavorites","styled","COLOR_BORDER_GREY","FavoriteButtonDetail","isMobile","useIsMobile","ButtonElement","ButtonSimple","processFavouritePortals","updatedPortals","detail","collection","i","attributes","name","value","attribute","createPortal"],"mappings":"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"}