`)\n .join('');\n}","import { getAccess } from './helper/get-access';\n\nconst refs = {\n backdrop: document.querySelector('.backdrop-thumb'),\n closeIcon: document.querySelector('.js-modal-window'),\n galleryWindow: document.querySelector('.js-gallery'),\n}\n\nconst raitings = document.querySelectorAll('.raiting')\n\nrefs.galleryWindow.addEventListener('click', openModal);\n\n// Відкриття модалки\nfunction openModal(e) {\n if (e.target.classList.contains('js-start')) {\n refs.backdrop.classList.remove('is-open');\n document.body.style.overflow = 'hidden';\n\n const liElement = e.target.closest('.js-id');\n\n if (liElement) {\n const id = liElement.dataset.id;\n getExercisesObject(id);\n }\n }\n}\n\n// Закриття модального вікна\nrefs.closeIcon.addEventListener('click', closeModal);\ndocument.addEventListener('keydown', closeModalByEsc);\n\nfunction closeModal(e) {\n refs.backdrop.classList.add('is-open');\n document.body.style.overflow = '';\n\n clearModalContent();\n}\n\nfunction closeModalByEsc(e) {\n if (e.code === 'Escape') {\n refs.backdrop.classList.add('is-open');\n document.body.style.overflow = '';\n clearModalContent();\n }\n}\nrefs.backdrop.addEventListener('click', function (event) {\n if (event.target === this) {\n closeModal();\n }\n});\n\n// Завантаження сторінки\nfunction getExercisesObject(id) {\n getAccess({ typeFilter: 'exercises', id: id })\n .then(({ data }) => {\n const {\n name,\n rating,\n target,\n bodyPart,\n equipment,\n popularity,\n burnedCalories,\n description,\n gifUrl,\n _id,\n } = data;\n\n const modalWindow = document.querySelector('.modal-window');\n modalWindow.setAttribute('data-modal-id', _id);\n\n\n const refs = {\n img: document.querySelector('.js-img'),\n title: document.querySelector('.js-title'),\n raiting: document.querySelector('.js-raiting'),\n targetValue: document.querySelector('.js-target'),\n bodyPartValue: document.querySelector('.js-body-part'),\n equipmentValue: document.querySelector('.js-equipment'),\n popularValue: document.querySelector('.js-popular'),\n caloriesValue: document.querySelector('.js-calories'),\n descriptionValue: document.querySelector('.js-description'),\n };\n\n refs.img.setAttribute('src', gifUrl || './img/picture/energyflow.png');\n refs.title.textContent = name.charAt(0).toUpperCase() + name.slice(1);\n refs.raiting.textContent = rating;\n refs.targetValue.textContent = target;\n refs.bodyPartValue.textContent = bodyPart;\n refs.equipmentValue.textContent = equipment;\n refs.popularValue.textContent = popularity;\n refs.caloriesValue.textContent = burnedCalories;\n refs.descriptionValue.textContent = description;\n\n if (raitings.length > 0) {\n initRatings();\n }\n })\n .catch(err => {\n console.error(err);\n const img = document.querySelector('.js-img');\n img.setAttribute('src', './img/picture/energyflow.png');\n });\n}\n\n// Очіщюємо вміст модалки після закриття\nfunction clearModalContent() {\n const refs = {\n img: document.querySelector('.js-img'),\n title: document.querySelector('.js-title'),\n raiting: document.querySelector('.js-raiting'),\n targetValue: document.querySelector('.js-target'),\n bodyPartValue: document.querySelector('.js-body-part'),\n equipmentValue: document.querySelector('.js-equipment'),\n popularValue: document.querySelector('.js-popular'),\n caloriesValue: document.querySelector('.js-calories'),\n descriptionValue: document.querySelector('.js-description'),\n };\n\n // Встановлюємо пусті значення для всіх елементів модального вікна\n refs.img.setAttribute('src', '');\n refs.title.textContent = '';\n refs.raiting.textContent = '';\n refs.targetValue.textContent = '';\n refs.bodyPartValue.textContent = '';\n refs.equipmentValue.textContent = '';\n refs.popularValue.textContent = '';\n refs.caloriesValue.textContent = '';\n refs.descriptionValue.textContent = '';\n\n // Очищаємо класи зірок рейтингу\n const stars = document.querySelectorAll('.raiting-item .icon-star');\n stars.forEach(star => {\n star.classList.add('non-activ');\n });\n}\n\n// Зірочки\n\nfunction initRatings() {\n let ratingActive, ratingValue;\n\n for (let i = 0; i < raitings.length; i++) {\n const rating = raitings[i];\n initRatings(rating);\n }\n\n function initRatings(rating) {\n initRatingVars(rating);\n\n setRatingActiveWidth();\n }\n\n function initRatingVars(rating) {\n ratingActive = rating.querySelector('.raiting-active');\n ratingValue = rating.getElementsByClassName('raiting-value')[0];\n }\n\n function setRatingActiveWidth(index = ratingValue.innerHTML) {\n const ratingActiveWidth = index / 0.05;\n ratingActive.style.width = `${ratingActiveWidth}%`\n }\n\n}","import { createCardFavorites } from \"./favorities\";\n\nconst storedArrayAdd = JSON.parse(localStorage.getItem('addKeyID')) || [];\nlet cardID;\n\nconst refs = {\n addToFavoritesBtn: document.querySelector('.add-to-favorities'),\n removeFromFavoritesBtn: document.querySelector('.js-remove'),\n idModul: document.querySelector('.js-gallery'),\n}\n\nrefs.idModul.addEventListener('click', getIDModul);\nfunction getIDModul(e) {\n const liElement = e.target.closest('.js-id');\n if (liElement) {\n cardID = liElement.dataset.id;\n\n if (updateLicalStorage().includes(cardID)) {\n refs.removeFromFavoritesBtn.classList.remove('hidden-btn');\n refs.addToFavoritesBtn.classList.add('hidden-btn');\n } else {\n refs.removeFromFavoritesBtn.classList.add('hidden-btn');\n refs.addToFavoritesBtn.classList.remove('hidden-btn');\n }\n }\n}\n\nif (!localStorage.getItem('addKeyID')) {\n const emptyArrayAdd = [];\n localStorage.setItem('addKeyID', JSON.stringify(emptyArrayAdd));\n}\n\nrefs.addToFavoritesBtn.addEventListener('click', () => getIdFavorites(cardID));\n\nfunction getIdFavorites(cardID) {\n refs.removeFromFavoritesBtn.classList.remove('hidden-btn');\n refs.addToFavoritesBtn.classList.add('hidden-btn');\n\n updateGallery(cardID);\n\n storedArrayAdd.push(cardID); // Оновлення масиву storedArrayAdd\n localStorage.setItem('addKeyID', JSON.stringify(storedArrayAdd));\n}\n\nrefs.removeFromFavoritesBtn.addEventListener('click', () => removeIdFavorites(cardID));\n\nfunction removeIdFavorites(cardID) {\n refs.removeFromFavoritesBtn.classList.add('hidden-btn');\n refs.addToFavoritesBtn.classList.remove('hidden-btn');\n updateGallery(cardID);\n\n const cardToRemove = document.querySelector(`.list-favorites-item[data-id=\"${cardID}\"]`);\n if (cardToRemove) {\n cardToRemove.classList.add('animation-items-remove'); // Додаємо клас для анімації видалення\n setTimeout(() => {\n cardToRemove.remove();\n }, 500); // Час, необхідний для виконання анімації\n }\n storedArrayAdd.splice(storedArrayAdd.indexOf(cardID), 1); // Оновлення масиву storedArrayAdd\n localStorage.setItem('addKeyID', JSON.stringify(storedArrayAdd));\n}\n\nfunction updateGallery(cardID) {\n const savedCards = storedArrayAdd.filter(card => card !== cardID);\n localStorage.setItem('addKeyID', JSON.stringify(savedCards));\n\n const cardToRemove = document.querySelector(`.list-favorites-item[data-id=\"${cardID}\"]`);\n if (!cardToRemove) {\n createCardFavorites([cardID])\n }\n}\n\nfunction updateLicalStorage() {\n return localStorage.getItem('addKeyID');\n}"],"names":["refs","toggleModal","disableScroll","homeButtons","favoritesButtons","currentPath","targetPage","button","enableScroll","event","favoritesButton","homeButton","getAccess","filter","limit","page","typeFilter","id","url","axios","error","quoteOfTheDayHelps","getQuote","formattedDate","format","localInfo","author","quote","data","quoteOfTheDay","err","iziToastFunctions","messageInfo","iziToast","icons","savedCardsStorage","savedCards","displayFavoriteCards","showRemoveCards","createCardFavorites","hideRemoveCards","smoothScrollToNextGroup","checkContainerHeight","deleteFavorites","card","cardId","removeFavoriteCard","favoritesItem","container","content","rowsToShow","arr","value","results","dataList","result","markup","createMarkup","favoritesCard","filterCards","name","target","bodyPart","burnedCalories","_id","raitings","openModal","liElement","getExercisesObject","closeModal","closeModalByEsc","clearModalContent","rating","equipment","popularity","description","gifUrl","initRatings","star","ratingActive","ratingValue","i","initRatingVars","setRatingActiveWidth","index","ratingActiveWidth","storedArrayAdd","cardID","getIDModul","updateLicalStorage","emptyArrayAdd","getIdFavorites","updateGallery","removeIdFavorites","cardToRemove"],"mappings":"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"}
\ No newline at end of file
diff --git a/assets/add-to-favorites-5dd64793.js b/assets/modal-window-5ca35ebd.js
similarity index 60%
rename from assets/add-to-favorites-5dd64793.js
rename to assets/modal-window-5ca35ebd.js
index 78fed50..7bb028b 100644
--- a/assets/add-to-favorites-5dd64793.js
+++ b/assets/modal-window-5ca35ebd.js
@@ -1,4 +1,4 @@
-import{a as V,f as O,i as p}from"./vendor-0a7c832e.js";(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const s of document.querySelectorAll('link[rel="modulepreload"]'))n(s);new MutationObserver(s=>{for(const o of s)if(o.type==="childList")for(const a of o.addedNodes)a.tagName==="LINK"&&a.rel==="modulepreload"&&n(a)}).observe(document,{childList:!0,subtree:!0});function r(s){const o={};return s.integrity&&(o.integrity=s.integrity),s.referrerPolicy&&(o.referrerPolicy=s.referrerPolicy),s.crossOrigin==="use-credentials"?o.credentials="include":s.crossOrigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function n(s){if(s.ep)return;s.ep=!0;const o=r(s);fetch(s.href,o)}})();(()=>{const e={openModalBtn:document.querySelector(".burger-menu-open"),closeModalBtn:document.querySelector(".burger-closed"),modal:document.querySelector(".backdrop"),backdrop:document.querySelector(".background-menu")};e.modal.classList.add("is-hidden"),e.openModalBtn.addEventListener("click",function(){t(),r();const s=document.getElementsByClassName("js-main-link-home"),o=document.getElementsByClassName("js-main-link-favorites"),a=window.location.pathname,y="favorites.html";a.endsWith(y)?(console.log("FAVORITES"),Array.from(o).forEach(l=>l.classList.add("active-link")),Array.from(s).forEach(l=>l.classList.remove("active-link"))):(console.log("HOME"),Array.from(s).forEach(l=>l.classList.add("active-link")),Array.from(o).forEach(l=>l.classList.remove("active-link")))}),e.closeModalBtn.addEventListener("click",function(){t(),n()}),e.backdrop.addEventListener("click",function(s){s.target===e.backdrop&&(t(),n())});function t(){e.modal.classList.toggle("is-hidden"),e.backdrop.classList.toggle("hidden")}function r(){document.body.style.overflow="hidden"}function n(){document.body.style.overflow=""}})();const b=document.querySelector(".link-favorites"),w=document.querySelector(".link-home");window.addEventListener("load",()=>{window.location.pathname.endsWith("favorites.html")?(b.classList.add("active-link"),w.classList.remove("active-link")):(w.classList.add("active-link"),b.classList.remove("active-link"))});async function q({filter:e,limit:t,page:r=1,typeFilter:n,id:s=null}){try{const o=s?`https://energyflow.b.goit.study/api/${n}/${s}`:`https://energyflow.b.goit.study/api/${n}`;return await V.get(o,{params:{filter:e,page:r,limit:t,id:s}})}catch(o){console.error(o.message)}}const v={author:"Bruce Lee",quote:"It doesn't matter how slowly you progress. The main thing is that you don't stop."},c={quotePage:document.querySelector(".js-quote"),authorPage:document.querySelector(".js-author"),getDate:localStorage.getItem("dateNow"),storedQuote:JSON.parse(localStorage.getItem("quoteDay"))};function A(){const t=O(new Date,"dd.MM.yyyy");if(setTimeout(()=>{if(c.getDate===t){const r=JSON.parse(localStorage.getItem("quoteDay")),{author:n,quote:s}=r;c.quotePage.textContent=s,c.authorPage.textContent=n}},500),!c.getDate||c.getDate!==t||c.storedQuote){localStorage.setItem("dateNow",t);try{q({typeFilter:"quote"}).then(({data:r})=>{const{author:n,quote:s}=r,o={author:n,quote:s};localStorage.setItem("quoteDay",JSON.stringify(o)),c.quotePage.textContent=s,c.authorPage.textContent=n}).catch(r=>{console.error("Помилка при отриманні цитати:",r),c.quotePage.textContent=v.quote,c.authorPage.textContent=v.author,localStorage.setItem("quoteDay",JSON.stringify(v))})}catch(r){console.error("Помилка при виконанні запиту:",r)}}}A();const T={getInfo(e){p.info({title:"Hello",message:e})},getErrorInfo(e){p.error({title:"Error",message:e})},getSuccessInfo(e){p.success({title:"OK",message:e})}},h="/project-JS-Wizards/assets/sprite-afa54ed9.svg",g={favoritesCard:document.getElementById("favorites-container"),removeCards:document.querySelector(".container-remove-favorites"),deleteButtons:document.querySelectorAll(".button-remove"),galleryWindow:document.querySelector(".js-gallery")};function N(){try{const e=JSON.parse(localStorage.getItem("addKeyID"))||[];D(e)}catch(e){console.log(e),T.getErrorInfo("Wrong operation!!!")}}function D(e){!e||e.length===0?L():(j(e),$(),J()),C()}g.galleryWindow.addEventListener("click",M);function M(e){if(e.target.classList.contains("js-remove-favorites")){const t=e.target.closest(".list-favorites-item");t.classList.add("animation-items-remove"),setTimeout(()=>{const r=t.dataset.id;P(r),t.remove(),(JSON.parse(localStorage.getItem("addKeyID"))||[]).length===0&&L()},500)}}function P(e){let t=JSON.parse(localStorage.getItem("addKeyID"))||[];t=t.filter(r=>r!==e),localStorage.setItem("addKeyID",JSON.stringify(t))}function L(){g.removeCards.classList.remove("is-hidden")}function $(){g.removeCards.classList.add("is-hidden")}function J(){const e=document.querySelector(".scroll");e&&(e.getBoundingClientRect().height,window.scrollBy({top:0,behavior:"smooth"}))}function C(){const e=g.favoritesCard,t=e.querySelector(".list-favorites"),r=4;t&&(Math.ceil(t.children.length/3)>r?e.style.overflowY="scroll":e.style.overflowY="hidden")}window.location.pathname.endsWith("/favorites.html")&&N();function j(e){Promise.all(e.map(t=>q({typeFilter:"exercises",id:t}))).then(t=>{const r=t.map(o=>o.data),n=W(r),s=document.getElementById("favorites-container");if(s){s.insertAdjacentHTML("beforeend",n);const o=document.querySelectorAll(".js-animation");o.forEach(a=>{a.classList.add("animation-items")}),setTimeout(()=>{o.forEach(a=>{a.classList.remove("animation-items")})},500),C()}}).catch(t=>console.error(t))}function W(e){return e.map(({name:t,target:r,bodyPart:n,burnedCalories:s,_id:o})=>`
+import{a as A,f as O,i as p}from"./vendor-0a7c832e.js";(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const s of document.querySelectorAll('link[rel="modulepreload"]'))n(s);new MutationObserver(s=>{for(const o of s)if(o.type==="childList")for(const a of o.addedNodes)a.tagName==="LINK"&&a.rel==="modulepreload"&&n(a)}).observe(document,{childList:!0,subtree:!0});function r(s){const o={};return s.integrity&&(o.integrity=s.integrity),s.referrerPolicy&&(o.referrerPolicy=s.referrerPolicy),s.crossOrigin==="use-credentials"?o.credentials="include":s.crossOrigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function n(s){if(s.ep)return;s.ep=!0;const o=r(s);fetch(s.href,o)}})();(()=>{const e={openModalBtn:document.querySelector(".burger-menu-open"),closeModalBtn:document.querySelector(".burger-closed"),modal:document.querySelector(".backdrop"),backdrop:document.querySelector(".background-menu")};e.modal.classList.add("is-hidden"),e.openModalBtn.addEventListener("click",function(){t(),r();const s=document.getElementsByClassName("js-main-link-home"),o=document.getElementsByClassName("js-main-link-favorites"),a=window.location.pathname,y="favorites.html";a.endsWith(y)?(console.log("FAVORITES"),Array.from(o).forEach(l=>l.classList.add("active-link")),Array.from(s).forEach(l=>l.classList.remove("active-link"))):(console.log("HOME"),Array.from(s).forEach(l=>l.classList.add("active-link")),Array.from(o).forEach(l=>l.classList.remove("active-link")))}),e.closeModalBtn.addEventListener("click",function(){t(),n()}),e.backdrop.addEventListener("click",function(s){s.target===e.backdrop&&(t(),n())});function t(){e.modal.classList.toggle("is-hidden"),e.backdrop.classList.toggle("hidden")}function r(){document.body.style.overflow="hidden"}function n(){document.body.style.overflow=""}})();const b=document.querySelector(".link-favorites"),w=document.querySelector(".link-home");window.addEventListener("load",()=>{window.location.pathname.endsWith("favorites.html")?(b.classList.add("active-link"),w.classList.remove("active-link")):(w.classList.add("active-link"),b.classList.remove("active-link"))});async function q({filter:e,limit:t,page:r=1,typeFilter:n,id:s=null}){try{const o=s?`https://energyflow.b.goit.study/api/${n}/${s}`:`https://energyflow.b.goit.study/api/${n}`;return await A.get(o,{params:{filter:e,page:r,limit:t,id:s}})}catch(o){console.error(o.message)}}const v={author:"Bruce Lee",quote:"It doesn't matter how slowly you progress. The main thing is that you don't stop."},c={quotePage:document.querySelector(".js-quote"),authorPage:document.querySelector(".js-author"),getDate:localStorage.getItem("dateNow"),storedQuote:JSON.parse(localStorage.getItem("quoteDay"))};function T(){const t=O(new Date,"dd.MM.yyyy");if(setTimeout(()=>{if(c.getDate===t){const r=JSON.parse(localStorage.getItem("quoteDay")),{author:n,quote:s}=r;c.quotePage.textContent=s,c.authorPage.textContent=n}},500),!c.getDate||c.getDate!==t||c.storedQuote){localStorage.setItem("dateNow",t);try{q({typeFilter:"quote"}).then(({data:r})=>{const{author:n,quote:s}=r,o={author:n,quote:s};localStorage.setItem("quoteDay",JSON.stringify(o)),c.quotePage.textContent=s,c.authorPage.textContent=n}).catch(r=>{console.error("Помилка при отриманні цитати:",r),c.quotePage.textContent=v.quote,c.authorPage.textContent=v.author,localStorage.setItem("quoteDay",JSON.stringify(v))})}catch(r){console.error("Помилка при виконанні запиту:",r)}}}T();const M={getInfo(e){p.info({title:"Hello",message:e})},getErrorInfo(e){p.error({title:"Error",message:e})},getSuccessInfo(e){p.success({title:"OK",message:e})}},h="/project-JS-Wizards/assets/sprite-afa54ed9.svg",u=JSON.parse(localStorage.getItem("addKeyID"))||[];let f;const i={addToFavoritesBtn:document.querySelector(".add-to-favorities"),removeFromFavoritesBtn:document.querySelector(".js-remove"),idModul:document.querySelector(".js-gallery")};i.idModul.addEventListener("click",N);function N(e){const t=e.target.closest(".js-id");t&&(f=t.dataset.id,D().includes(f)?(i.removeFromFavoritesBtn.classList.remove("hidden-btn"),i.addToFavoritesBtn.classList.add("hidden-btn")):(i.removeFromFavoritesBtn.classList.add("hidden-btn"),i.addToFavoritesBtn.classList.remove("hidden-btn")))}if(!localStorage.getItem("addKeyID")){const e=[];localStorage.setItem("addKeyID",JSON.stringify(e))}i.addToFavoritesBtn.addEventListener("click",()=>P(f));function P(e){i.removeFromFavoritesBtn.classList.remove("hidden-btn"),i.addToFavoritesBtn.classList.add("hidden-btn"),C(e),u.push(e),localStorage.setItem("addKeyID",JSON.stringify(u))}i.removeFromFavoritesBtn.addEventListener("click",()=>L(f));function L(e){i.removeFromFavoritesBtn.classList.add("hidden-btn"),i.addToFavoritesBtn.classList.remove("hidden-btn"),C(e);const t=document.querySelector(`.list-favorites-item[data-id="${e}"]`);t&&(t.classList.add("animation-items-remove"),setTimeout(()=>{t.remove()},500)),u.splice(u.indexOf(e),1),localStorage.setItem("addKeyID",JSON.stringify(u))}function C(e){const t=u.filter(n=>n!==e);localStorage.setItem("addKeyID",JSON.stringify(t)),document.querySelector(`.list-favorites-item[data-id="${e}"]`)||k([e])}function D(){return localStorage.getItem("addKeyID")}const g={favoritesCard:document.getElementById("favorites-container"),removeCards:document.querySelector(".container-remove-favorites"),deleteButtons:document.querySelectorAll(".button-remove"),galleryWindow:document.querySelector(".js-gallery")};function $(){try{const e=JSON.parse(localStorage.getItem("addKeyID"))||[];W(e)}catch(e){console.log(e),M.getErrorInfo("Wrong operation!!!")}}function W(e){!e||e.length===0?j():(k(e),K(),R()),I()}g.galleryWindow.addEventListener("click",J);function J(e){if(e.target.classList.contains("js-remove-favorites")){const t=e.target.closest(".list-favorites-item");t.classList.add("animation-items-remove"),setTimeout(()=>{const r=t.dataset.id;L(r),t.remove(),(JSON.parse(localStorage.getItem("addKeyID"))||[]).length===0&&j()},500)}}function j(){g.removeCards.classList.remove("is-hidden")}function K(){g.removeCards.classList.add("is-hidden")}function R(){const e=document.querySelector(".scroll");e&&(e.getBoundingClientRect().height,window.scrollBy({top:0,behavior:"smooth"}))}function I(){const e=g.favoritesCard,t=e.querySelector(".list-favorites"),r=4;t&&(Math.ceil(t.children.length/3)>r?e.style.overflowY="scroll":e.style.overflowY="hidden")}window.location.pathname.endsWith("/favorites.html")&&$();function k(e){Promise.all(e.map(t=>q({typeFilter:"exercises",id:t}))).then(t=>{const r=t.map(o=>o.data),n=H(r),s=document.getElementById("favorites-container");if(s){s.insertAdjacentHTML("beforeend",n);const o=document.querySelectorAll(".js-animation");o.forEach(a=>{a.classList.add("animation-items")}),setTimeout(()=>{o.forEach(a=>{a.classList.remove("animation-items")})},500),I()}}).catch(t=>console.error(t))}function H(e){return e.map(({name:t,target:r,bodyPart:n,burnedCalories:s,_id:o})=>`
@@ -36,5 +36,5 @@ import{a as V,f as O,i as p}from"./vendor-0a7c832e.js";(function(){const t=docum
${r}
-`).join("")}const m={backdrop:document.querySelector(".backdrop-thumb"),closeIcon:document.querySelector(".js-modal-window"),galleryWindow:document.querySelector(".js-gallery")},S=document.querySelectorAll(".raiting");m.galleryWindow.addEventListener("click",K);function K(e){if(e.target.classList.contains("js-start")){m.backdrop.classList.remove("is-open"),document.body.style.overflow="hidden";const t=e.target.closest(".js-id");if(t){const r=t.dataset.id;H(r)}}}m.closeIcon.addEventListener("click",I);document.addEventListener("keydown",R);function I(e){m.backdrop.classList.add("is-open"),document.body.style.overflow="",k()}function R(e){e.code==="Escape"&&(m.backdrop.classList.add("is-open"),document.body.style.overflow="",k())}m.backdrop.addEventListener("click",function(e){e.target===this&&I()});function H(e){q({typeFilter:"exercises",id:e}).then(({data:t})=>{const{name:r,rating:n,target:s,bodyPart:o,equipment:a,popularity:y,burnedCalories:l,description:E,gifUrl:B,_id:F}=t;document.querySelector(".modal-window").setAttribute("data-modal-id",F);const d={img:document.querySelector(".js-img"),title:document.querySelector(".js-title"),raiting:document.querySelector(".js-raiting"),targetValue:document.querySelector(".js-target"),bodyPartValue:document.querySelector(".js-body-part"),equipmentValue:document.querySelector(".js-equipment"),popularValue:document.querySelector(".js-popular"),caloriesValue:document.querySelector(".js-calories"),descriptionValue:document.querySelector(".js-description")};d.img.setAttribute("src",B||"./img/picture/energyflow.png"),d.title.textContent=r.charAt(0).toUpperCase()+r.slice(1),d.raiting.textContent=n,d.targetValue.textContent=s,d.bodyPartValue.textContent=o,d.equipmentValue.textContent=a,d.popularValue.textContent=y,d.caloriesValue.textContent=l,d.descriptionValue.textContent=E,S.length>0&&z()}).catch(t=>{console.error(t),document.querySelector(".js-img").setAttribute("src","./img/picture/energyflow.png")})}function k(){const e={img:document.querySelector(".js-img"),title:document.querySelector(".js-title"),raiting:document.querySelector(".js-raiting"),targetValue:document.querySelector(".js-target"),bodyPartValue:document.querySelector(".js-body-part"),equipmentValue:document.querySelector(".js-equipment"),popularValue:document.querySelector(".js-popular"),caloriesValue:document.querySelector(".js-calories"),descriptionValue:document.querySelector(".js-description")};e.img.setAttribute("src",""),e.title.textContent="",e.raiting.textContent="",e.targetValue.textContent="",e.bodyPartValue.textContent="",e.equipmentValue.textContent="",e.popularValue.textContent="",e.caloriesValue.textContent="",e.descriptionValue.textContent="",document.querySelectorAll(".raiting-item .icon-star").forEach(r=>{r.classList.add("non-activ")})}function z(){let e,t;for(let o=0;oU(f));function U(e){i.removeFromFavoritesBtn.classList.remove("hidden-btn"),i.addToFavoritesBtn.classList.add("hidden-btn"),x(e),u.push(e),localStorage.setItem("addKeyID",JSON.stringify(u))}i.removeFromFavoritesBtn.addEventListener("click",()=>G(f));function G(e){i.removeFromFavoritesBtn.classList.add("hidden-btn"),i.addToFavoritesBtn.classList.remove("hidden-btn"),x(e);const t=document.querySelector(`.list-favorites-item[data-id="${e}"]`);t&&(t.classList.add("animation-items-remove"),setTimeout(()=>{t.remove()},500)),u.splice(u.indexOf(e),1),localStorage.setItem("addKeyID",JSON.stringify(u))}function x(e){const t=u.filter(n=>n!==e);localStorage.setItem("addKeyID",JSON.stringify(t)),document.querySelector(`.list-favorites-item[data-id="${e}"]`)||j([e])}function Y(){return localStorage.getItem("addKeyID")}export{h as i};
-//# sourceMappingURL=add-to-favorites-5dd64793.js.map
+`).join("")}const m={backdrop:document.querySelector(".backdrop-thumb"),closeIcon:document.querySelector(".js-modal-window"),galleryWindow:document.querySelector(".js-gallery")},S=document.querySelectorAll(".raiting");m.galleryWindow.addEventListener("click",z);function z(e){if(e.target.classList.contains("js-start")){m.backdrop.classList.remove("is-open"),document.body.style.overflow="hidden";const t=e.target.closest(".js-id");if(t){const r=t.dataset.id;U(r)}}}m.closeIcon.addEventListener("click",x);document.addEventListener("keydown",Q);function x(e){m.backdrop.classList.add("is-open"),document.body.style.overflow="",E()}function Q(e){e.code==="Escape"&&(m.backdrop.classList.add("is-open"),document.body.style.overflow="",E())}m.backdrop.addEventListener("click",function(e){e.target===this&&x()});function U(e){q({typeFilter:"exercises",id:e}).then(({data:t})=>{const{name:r,rating:n,target:s,bodyPart:o,equipment:a,popularity:y,burnedCalories:l,description:B,gifUrl:F,_id:V}=t;document.querySelector(".modal-window").setAttribute("data-modal-id",V);const d={img:document.querySelector(".js-img"),title:document.querySelector(".js-title"),raiting:document.querySelector(".js-raiting"),targetValue:document.querySelector(".js-target"),bodyPartValue:document.querySelector(".js-body-part"),equipmentValue:document.querySelector(".js-equipment"),popularValue:document.querySelector(".js-popular"),caloriesValue:document.querySelector(".js-calories"),descriptionValue:document.querySelector(".js-description")};d.img.setAttribute("src",F||"./img/picture/energyflow.png"),d.title.textContent=r.charAt(0).toUpperCase()+r.slice(1),d.raiting.textContent=n,d.targetValue.textContent=s,d.bodyPartValue.textContent=o,d.equipmentValue.textContent=a,d.popularValue.textContent=y,d.caloriesValue.textContent=l,d.descriptionValue.textContent=B,S.length>0&&G()}).catch(t=>{console.error(t),document.querySelector(".js-img").setAttribute("src","./img/picture/energyflow.png")})}function E(){const e={img:document.querySelector(".js-img"),title:document.querySelector(".js-title"),raiting:document.querySelector(".js-raiting"),targetValue:document.querySelector(".js-target"),bodyPartValue:document.querySelector(".js-body-part"),equipmentValue:document.querySelector(".js-equipment"),popularValue:document.querySelector(".js-popular"),caloriesValue:document.querySelector(".js-calories"),descriptionValue:document.querySelector(".js-description")};e.img.setAttribute("src",""),e.title.textContent="",e.raiting.textContent="",e.targetValue.textContent="",e.bodyPartValue.textContent="",e.equipmentValue.textContent="",e.popularValue.textContent="",e.caloriesValue.textContent="",e.descriptionValue.textContent="",document.querySelectorAll(".raiting-item .icon-star").forEach(r=>{r.classList.add("non-activ")})}function G(){let e,t;for(let o=0;o {\n const refs = {\n openModalBtn: document.querySelector('.burger-menu-open'),\n closeModalBtn: document.querySelector('.burger-closed'),\n modal: document.querySelector('.backdrop'),\n backdrop: document.querySelector('.background-menu'),\n };\n\n refs.modal.classList.add('is-hidden');\n\n refs.openModalBtn.addEventListener('click', function () {\n toggleModal();\n disableScroll();\n\n //Для активної лінки\n const homeButtons = document.getElementsByClassName('js-main-link-home');\n const favoritesButtons = document.getElementsByClassName('js-main-link-favorites');\n const currentPath = window.location.pathname;\n const targetPage = 'favorites.html';\n\n if (currentPath.endsWith(targetPage)) {\n console.log('FAVORITES')\n Array.from(favoritesButtons).forEach(button => button.classList.add('active-link'));\n Array.from(homeButtons).forEach(button => button.classList.remove('active-link'));\n } else {\n console.log('HOME')\n Array.from(homeButtons).forEach(button => button.classList.add('active-link'));\n Array.from(favoritesButtons).forEach(button => button.classList.remove('active-link'));\n }\n\n });\n\n refs.closeModalBtn.addEventListener('click', function () {\n toggleModal();\n enableScroll();\n });\n\n refs.backdrop.addEventListener('click', function (event) {\n if (event.target === refs.backdrop) {\n toggleModal();\n enableScroll();\n }\n });\n\n function toggleModal() {\n refs.modal.classList.toggle('is-hidden');\n refs.backdrop.classList.toggle('hidden');\n }\n\n // Функція для заборони прокручування\n function disableScroll() {\n document.body.style.overflow = 'hidden';\n }\n\n // Функція для дозволу прокручування\n function enableScroll() {\n document.body.style.overflow = '';\n }\n})();\n\n\nconst favoritesButton = document.querySelector('.link-favorites');\nconst homeButton = document.querySelector('.link-home');\n\nwindow.addEventListener('load', () => {\n if (window.location.pathname.endsWith('favorites.html')) {\n favoritesButton.classList.add('active-link');\n homeButton.classList.remove('active-link');\n } else {\n homeButton.classList.add('active-link');\n favoritesButton.classList.remove('active-link');\n }\n});\n","import axios from 'axios';\n\nexport { getAccess, postAccess };\n\n/**\n * Виконує GET-запит до сервера за вказаною URL з вказаними параметрами.\n * @param {Object} options - Об'єкт з параметрами.\n * @param {string} options.filter - Фільтр для запиту.\n * @param {number} [options.page=1] - Номер сторінки (за замовчуванням 1).\n * @param {number} [options.limit] - Ліміт результатів на сторінці.\n * @param {string} options.typeFilter - Тип фільтра, який використовується у URL.\n * @returns {Promise} Об'єкт Promise, який розрішується у відповідь від сервера.\n */\nasync function getAccess({ filter, limit, page = 1, typeFilter, id = null }) {\n try {\n const url = id\n ? `https://energyflow.b.goit.study/api/${typeFilter}/${id}`\n : `https://energyflow.b.goit.study/api/${typeFilter}`;\n\n const response = await axios.get(url, {\n params: {\n filter,\n page,\n limit,\n id,\n },\n });\n return response;\n } catch (error) {\n console.error(error.message);\n }\n}\n\n/**\n * Виконує POST-запит до сервера за вказаною URL з вказаними даними.\n * @param {Object} options - Об'єкт з параметрами\n * @param {Object} options.userEmail - Дані, які відправляються у POST-запиті (відправляються у форматі JSON)\n * @param {string} options.typeFilter - Тип фільтра, який використовується у URL (в данному випадку потрібно вказувати subscription)\n * @returns {Promise} Об'єкт Promise, який розрішується у відповідь від сервера.\n */\nasync function postAccess({ userEmail, typeFilter }) {\n try {\n const response = await axios.post(\n `https://energyflow.b.goit.study/api/${typeFilter}`,\n userEmail\n );\n return response;\n } catch (error) {\n console.error(error.message);\n }\n}\n","import { getAccess } from \"./helper/get-access\";\nimport { format } from 'date-fns';\n\nconst quoteOfTheDayHelps = {\n author: `Bruce Lee`,\n quote: `It doesn't matter how slowly you progress. The main thing is that you don't stop.`,\n}\nconst refs = {\n quotePage: document.querySelector('.js-quote'),\n authorPage: document.querySelector('.js-author'),\n getDate: localStorage.getItem('dateNow'),\n storedQuote: JSON.parse(localStorage.getItem('quoteDay')),\n}\n\nfunction getQuote() {\n const date = new Date();\n const formattedDate = format(date, 'dd.MM.yyyy');\n\n setTimeout(() => {\n if (refs.getDate === formattedDate) {\n const localInfo = JSON.parse(localStorage.getItem('quoteDay'))\n const { author, quote } = localInfo;\n refs.quotePage.textContent = quote;\n refs.authorPage.textContent = author;\n }\n }, 500)\n\n if (!refs.getDate || refs.getDate !== formattedDate || !!refs.storedQuote) {\n localStorage.setItem('dateNow', formattedDate);\n\n try {\n getAccess({\n typeFilter: 'quote',\n })\n .then(({ data }) => {\n const { author, quote } = data;\n\n const quoteOfTheDay = {\n author: author,\n quote: quote\n };\n localStorage.setItem('quoteDay', JSON.stringify(quoteOfTheDay));\n\n refs.quotePage.textContent = quote;\n refs.authorPage.textContent = author;\n })\n .catch((err) => {\n console.error(\"Помилка при отриманні цитати:\", err);\n\n refs.quotePage.textContent = quoteOfTheDayHelps.quote;\n refs.authorPage.textContent = quoteOfTheDayHelps.author;\n localStorage.setItem('quoteDay', JSON.stringify(quoteOfTheDayHelps));\n })\n } catch (error) {\n console.error(\"Помилка при виконанні запиту:\", error);\n }\n }\n\n}\n\ngetQuote();","import iziToast from \"izitoast\";\nimport 'izitoast/dist/css/iziToast.min.css'\n\nconst iziToastFunctions = {\n getInfo(messageInfo) {\n iziToast.info({\n title: 'Hello',\n message: messageInfo,\n });\n },\n\n getErrorInfo(messageInfo) {\n iziToast.error({\n title: 'Error',\n message: messageInfo,\n });\n },\n\n getSuccessInfo(messageInfo) {\n iziToast.success({\n title: 'OK',\n message: messageInfo,\n });\n },\n};\n\nfunction createMarkupFilter(filter, galleryContainer) {\n const markup = filter\n .map(\n ({ filter, imgUrl, name }) => `\n
`)\n .join('');\n}","import { getAccess } from './helper/get-access';\n\nconst refs = {\n backdrop: document.querySelector('.backdrop-thumb'),\n closeIcon: document.querySelector('.js-modal-window'),\n galleryWindow: document.querySelector('.js-gallery'),\n}\n\nconst raitings = document.querySelectorAll('.raiting')\n\nrefs.galleryWindow.addEventListener('click', openModal);\n\n// Відкриття модалки\nfunction openModal(e) {\n if (e.target.classList.contains('js-start')) {\n refs.backdrop.classList.remove('is-open');\n document.body.style.overflow = 'hidden';\n\n const liElement = e.target.closest('.js-id');\n\n if (liElement) {\n const id = liElement.dataset.id;\n getExercisesObject(id);\n }\n }\n}\n\n// Закриття модального вікна\nrefs.closeIcon.addEventListener('click', closeModal);\ndocument.addEventListener('keydown', closeModalByEsc);\n\nfunction closeModal(e) {\n refs.backdrop.classList.add('is-open');\n document.body.style.overflow = '';\n\n clearModalContent();\n}\n\nfunction closeModalByEsc(e) {\n if (e.code === 'Escape') {\n refs.backdrop.classList.add('is-open');\n document.body.style.overflow = '';\n clearModalContent();\n }\n}\nrefs.backdrop.addEventListener('click', function (event) {\n if (event.target === this) {\n closeModal();\n }\n});\n\n// Завантаження сторінки\nfunction getExercisesObject(id) {\n getAccess({ typeFilter: 'exercises', id: id })\n .then(({ data }) => {\n const {\n name,\n rating,\n target,\n bodyPart,\n equipment,\n popularity,\n burnedCalories,\n description,\n gifUrl,\n _id,\n } = data;\n\n const modalWindow = document.querySelector('.modal-window');\n modalWindow.setAttribute('data-modal-id', _id);\n\n\n const refs = {\n img: document.querySelector('.js-img'),\n title: document.querySelector('.js-title'),\n raiting: document.querySelector('.js-raiting'),\n targetValue: document.querySelector('.js-target'),\n bodyPartValue: document.querySelector('.js-body-part'),\n equipmentValue: document.querySelector('.js-equipment'),\n popularValue: document.querySelector('.js-popular'),\n caloriesValue: document.querySelector('.js-calories'),\n descriptionValue: document.querySelector('.js-description'),\n };\n\n refs.img.setAttribute('src', gifUrl || './img/picture/energyflow.png');\n refs.title.textContent = name.charAt(0).toUpperCase() + name.slice(1);\n refs.raiting.textContent = rating;\n refs.targetValue.textContent = target;\n refs.bodyPartValue.textContent = bodyPart;\n refs.equipmentValue.textContent = equipment;\n refs.popularValue.textContent = popularity;\n refs.caloriesValue.textContent = burnedCalories;\n refs.descriptionValue.textContent = description;\n\n if (raitings.length > 0) {\n initRatings();\n }\n })\n .catch(err => {\n console.error(err);\n const img = document.querySelector('.js-img');\n img.setAttribute('src', './img/picture/energyflow.png');\n });\n}\n\n// Очіщюємо вміст модалки після закриття\nfunction clearModalContent() {\n const refs = {\n img: document.querySelector('.js-img'),\n title: document.querySelector('.js-title'),\n raiting: document.querySelector('.js-raiting'),\n targetValue: document.querySelector('.js-target'),\n bodyPartValue: document.querySelector('.js-body-part'),\n equipmentValue: document.querySelector('.js-equipment'),\n popularValue: document.querySelector('.js-popular'),\n caloriesValue: document.querySelector('.js-calories'),\n descriptionValue: document.querySelector('.js-description'),\n };\n\n // Встановлюємо пусті значення для всіх елементів модального вікна\n refs.img.setAttribute('src', '');\n refs.title.textContent = '';\n refs.raiting.textContent = '';\n refs.targetValue.textContent = '';\n refs.bodyPartValue.textContent = '';\n refs.equipmentValue.textContent = '';\n refs.popularValue.textContent = '';\n refs.caloriesValue.textContent = '';\n refs.descriptionValue.textContent = '';\n\n // Очищаємо класи зірок рейтингу\n const stars = document.querySelectorAll('.raiting-item .icon-star');\n stars.forEach(star => {\n star.classList.add('non-activ');\n });\n}\n\n// Зірочки\n\nfunction initRatings() {\n let ratingActive, ratingValue;\n\n for (let i = 0; i < raitings.length; i++) {\n const rating = raitings[i];\n initRatings(rating);\n }\n\n function initRatings(rating) {\n initRatingVars(rating);\n\n setRatingActiveWidth();\n }\n\n function initRatingVars(rating) {\n ratingActive = rating.querySelector('.raiting-active');\n ratingValue = rating.getElementsByClassName('raiting-value')[0];\n }\n\n function setRatingActiveWidth(index = ratingValue.innerHTML) {\n const ratingActiveWidth = index / 0.05;\n ratingActive.style.width = `${ratingActiveWidth}%`\n }\n\n}"],"names":["refs","toggleModal","disableScroll","homeButtons","favoritesButtons","currentPath","targetPage","button","enableScroll","event","favoritesButton","homeButton","getAccess","filter","limit","page","typeFilter","id","url","axios","error","quoteOfTheDayHelps","getQuote","formattedDate","format","localInfo","author","quote","data","quoteOfTheDay","err","iziToastFunctions","messageInfo","iziToast","icons","storedArrayAdd","cardID","getIDModul","liElement","updateLicalStorage","emptyArrayAdd","getIdFavorites","updateGallery","removeIdFavorites","cardToRemove","savedCards","card","createCardFavorites","savedCardsStorage","displayFavoriteCards","showRemoveCards","hideRemoveCards","smoothScrollToNextGroup","checkContainerHeight","deleteFavorites","cardId","favoritesItem","container","content","rowsToShow","arr","value","results","dataList","result","markup","createMarkup","favoritesCard","filterCards","name","target","bodyPart","burnedCalories","_id","raitings","openModal","getExercisesObject","closeModal","closeModalByEsc","clearModalContent","rating","equipment","popularity","description","gifUrl","initRatings","star","ratingActive","ratingValue","i","initRatingVars","setRatingActiveWidth","index","ratingActiveWidth"],"mappings":"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"}
\ No newline at end of file
diff --git a/assets/add-to-favorites-e9afa675.css b/assets/modal-window-e9afa675.css
similarity index 100%
rename from assets/add-to-favorites-e9afa675.css
rename to assets/modal-window-e9afa675.css
diff --git a/commonHelpers2.js b/commonHelpers2.js
index 6f0ac44..f88bd46 100644
--- a/commonHelpers2.js
+++ b/commonHelpers2.js
@@ -1,4 +1,4 @@
-import{i as x}from"./assets/add-to-favorites-5dd64793.js";import{a as h,P as E,i as f}from"./assets/vendor-0a7c832e.js";const y={page:1,limit:1,filter:"Muscles"};function g(e){window.innerWidth>=1440?y.limit=9:y.limit=8,l.innerHTML="",b(e,y.page).then(t=>{if(t.results.length===0)document.querySelector(".tui-pagination").style.display="none",l.innerHTML='
Unfortunately, no results were found. You may want to consider other search options to find the exercise you are looking for. Our range is wide and you have the opportunity to find more options that suit your needs.
';else{w(t.results);const s=document.querySelectorAll(".js-animation-exercises");s.forEach(i=>{i.classList.add("animation-items")}),setTimeout(()=>{s.forEach(i=>{i.classList.remove("animation-items")})},500),t.totalPages>1?(document.querySelector(".tui-pagination").style.display="flex",P(t.totalPages).on("afterMove",({page:i})=>{b(e,i).then(m=>{l.innerHTML="",w(m.results);const p=document.querySelectorAll(".js-animation-exercises");p.forEach(v=>{v.classList.add("animation-items")}),setTimeout(()=>{p.forEach(v=>{v.classList.remove("animation-items")})},500)})})):document.querySelector(".tui-pagination").style.display="none"}}).catch(t=>{handleError(t.message)})}async function b(e,t){return n.value.length>0?a.keyword=n.value.trim().toLowerCase():a.keyword="",(await h.get("/exercises",{params:{[e]:a.filterGroup,keyword:a.keyword,page:t,limit:y.limit}})).data}function w(e){let t=e.map(s=>`
+import{i as x}from"./assets/modal-window-5ca35ebd.js";import{a as h,P as E,i as f}from"./assets/vendor-0a7c832e.js";const y={page:1,limit:1,filter:"Muscles"};function g(e){window.innerWidth>=1440?y.limit=9:y.limit=8,l.innerHTML="",b(e,y.page).then(t=>{if(t.results.length===0)document.querySelector(".tui-pagination").style.display="none",l.innerHTML='
Unfortunately, no results were found. You may want to consider other search options to find the exercise you are looking for. Our range is wide and you have the opportunity to find more options that suit your needs.
';else{w(t.results);const s=document.querySelectorAll(".js-animation-exercises");s.forEach(i=>{i.classList.add("animation-items")}),setTimeout(()=>{s.forEach(i=>{i.classList.remove("animation-items")})},500),t.totalPages>1?(document.querySelector(".tui-pagination").style.display="flex",P(t.totalPages).on("afterMove",({page:i})=>{b(e,i).then(m=>{l.innerHTML="",w(m.results);const p=document.querySelectorAll(".js-animation-exercises");p.forEach(v=>{v.classList.add("animation-items")}),setTimeout(()=>{p.forEach(v=>{v.classList.remove("animation-items")})},500)})})):document.querySelector(".tui-pagination").style.display="none"}}).catch(t=>{handleError(t.message)})}async function b(e,t){return n.value.length>0?a.keyword=n.value.trim().toLowerCase():a.keyword="",(await h.get("/exercises",{params:{[e]:a.filterGroup,keyword:a.keyword,page:t,limit:y.limit}})).data}function w(e){let t=e.map(s=>`
WORKOUT
diff --git a/commonHelpers2.js.map b/commonHelpers2.js.map
index a14d48e..5069ddc 100644
--- a/commonHelpers2.js.map
+++ b/commonHelpers2.js.map
@@ -1 +1 @@
-{"version":3,"file":"commonHelpers2.js","sources":["../src/js/body-parts.js","../src/js/search.js","../src/js/pagination.js","../src/js/muscles.js","../src/js/subscribe.js"],"sourcesContent":["// відображення вправ після натискання на картку, перенести потім у файл боді-партс\n\nimport axios from 'axios';\nimport icons from '../img/icons/sprite.svg';\nimport { galleryElement, searchInputField, exerciseParams } from './search.js';\nimport { createPaginationExercisesInner } from './pagination';\nexport { updateExercisesList, loadExercises, renderExercises };\n\nconst params = {\n page: 1,\n limit: 1,\n filter: 'Muscles',\n};\n\n// Ця функція оновлює список вправ на основі наданого фільтра.Він очищає вміст galleryElement.\n\nfunction updateExercisesList(filter) {\n if (window.innerWidth >= 1440) {\n params.limit = 9;\n } else {\n params.limit = 8;\n }\n galleryElement.innerHTML = '';\n loadExercises(filter, params.page)\n .then(data => {\n if (data.results.length === 0) {\n document.querySelector('.tui-pagination').style.display = 'none';\n galleryElement.innerHTML =\n '
Unfortunately, no results were found. You may want to consider other search options to find the exercise you are looking for. Our range is wide and you have the opportunity to find more options that suit your needs.
';\n } else {\n renderExercises(data.results);\n const filterCards = document.querySelectorAll('.js-animation-exercises');\n filterCards.forEach(card => {\n card.classList.add('animation-items');\n });\n const disappearance = setTimeout(() => {\n filterCards.forEach(card => {\n card.classList.remove('animation-items');\n });\n }, 500);\n if (data.totalPages > 1) {\n document.querySelector('.tui-pagination').style.display = 'flex';\n createPaginationExercisesInner(data.totalPages).on(\n 'afterMove',\n ({ page }) => {\n loadExercises(filter, page).then(data => {\n galleryElement.innerHTML = '';\n renderExercises(data.results);\n const filterCards = document.querySelectorAll('.js-animation-exercises');\n filterCards.forEach(card => {\n card.classList.add('animation-items');\n });\n const disappearance = setTimeout(() => {\n filterCards.forEach(card => {\n card.classList.remove('animation-items');\n });\n }, 500);\n });\n }\n );\n } else {\n document.querySelector('.tui-pagination').style.display = 'none';\n }\n }\n\n })\n .catch(error => {\n\n handleError(error.message);\n });\n}\n\n// Ця функція завантажує дані вправ із сервера на основі наданого фільтра.\n\nasync function loadExercises(filter, page) {\n\n if (searchInputField.value.length > 0) {\n exerciseParams.keyword = searchInputField.value.trim().toLowerCase();\n } else {\n exerciseParams.keyword = '';\n }\n const data = await axios.get('/exercises', {\n params: {\n [filter]: exerciseParams.filterGroup,\n keyword: exerciseParams.keyword,\n page,\n limit: params.limit,\n },\n });\n return data.data;\n}\n// Ця функція відтворює дані вправ у DOM. Він приймає отримані дані як вхідні дані. Він генерує HTML-розмітку для кожного елемента вправи за допомогою шаблонних літералів і наданих піктограм.\n\nfunction renderExercises(data) {\n let markup = data\n .map(\n i =>\n `
`\n )\n .join('');\n\n refs.gallery.innerHTML = markup;\n\n const filterCards = document.querySelectorAll('.js-animation');\n filterCards.forEach(card => {\n card.classList.add('animation-items');\n });\n const disappearance = setTimeout(() => {\n filterCards.forEach(card => {\n card.classList.remove('animation-items');\n });\n }, 500);\n}\n\nasync function handleSearch() {\n // Отримати дані з оновленим фільтром\n if (window.innerWidth >= 768) {\n params.limit = 12;\n } else {\n params.limit = 8;\n }\n getData(params.page)\n .then(data => {\n const { results } = data;\n createMarkup(results);\n if (data.totalPages > 1) {\n document.querySelector('.tui-pagination').style.display = 'flex';\n createPaginationExercisesOuter(data.totalPages).on(\n 'afterMove',\n ({ page }) => {\n getData(page).then(data => {\n const { results } = data;\n refs.gallery.innerHTML = '';\n createMarkup(results);\n });\n }\n );\n } else {\n document.querySelector('.tui-pagination').style.display = 'none';\n }\n })\n .catch(error => {\n handleError(error.message);\n });\n}\nhandleSearch();\nrefs.musclesBtn.classList.add('active');\n\nrefs.buttons.addEventListener('click', event => {\n selected(event);\n const targetMenu = event.target;\n\n if (targetMenu === event.currentTarget) {\n return;\n } else if (targetMenu === refs.musclesBtn) {\n // Оновити фільтр на 'Muscles'\n params.filter = 'Muscles';\n } else if (targetMenu === refs.bodypartsBtn) {\n // Оновити фільтр на 'Body parts'\n params.filter = 'Body parts';\n } else if (targetMenu === refs.equipBtn) {\n // Оновити фільтр на 'Equipment'\n params.filter = 'Equipment';\n }\n handleSearch();\n});\n\nlet prevButton = null;\n\nfunction selected(e) {\n const isButton = e.target.nodeName === 'BUTTON';\n refs.musclesBtn.classList.remove('active');\n\n if (!isButton) {\n return;\n }\n\n e.target.classList.add('active');\n\n if (prevButton !== null) {\n prevButton.classList.remove('active');\n }\n prevButton = e.target;\n\n if (prevButton === prevButton) {\n prevButton.classList.add('active');\n }\n}\n","import axios from 'axios';\nimport iziToast from 'izitoast';\nimport 'izitoast/dist/css/iziToast.min.css';\n\nconst refs = {\n emailPattern: /^[\\w-]+(\\.[\\w-]+)*@([\\w-]+\\.)+[a-zA-Z]{2,7}$/,\n footerForm: document.querySelector('.footer-subscription-form'),\n footerInput: document.querySelector('.footer-subscription-input'),\n feedbackForm: \"feedback-subscribe-state\",\n}\n\nconst subscribeEmail = async (email) => {\n try {\n const response = await axios.post('https://energyflow.b.goit.study/api/subscription', { email });\n return response.data;\n } catch (error) {\n throw error;\n }\n};\n\nconst subscribeValidity = async (event) => {\n event.preventDefault();\n\n const email = refs.footerInput.value.trim();\n\n if (!refs.emailPattern.test(email)) {\n iziToast.error({\n message: 'Enter the correct email!'\n });\n } else {\n try {\n await subscribeEmail(email);\n iziToast.success({\n message: 'Successful subscription!'\n });\n } catch (error) {\n iziToast.error({\n message: 'The user with this address is already subscribed!'\n });\n }\n\n localStorage.removeItem(refs.feedbackForm);\n refs.footerForm.reset();\n }\n};\n\nrefs.footerForm.addEventListener('submit', subscribeValidity);\n\nrefs.footerForm.addEventListener('input', () => {\n const footerEmail = refs.footerInput.value.trim();\n const formData = JSON.stringify({ footerEmail });\n localStorage.setItem(refs.feedbackForm, formData);\n});"],"names":["params","updateExercisesList","filter","galleryElement","loadExercises","data","renderExercises","filterCards","card","createPaginationExercisesInner","page","error","searchInputField","exerciseParams","axios","markup","i","icons","handleClickOnCard","refs","event","handleSearchButtonClick","handleClearSearchInput","handleSearchInput","handleClickOnFilterButton","filterButton","headerContent","keyword","totalPages","container","options","Pagination","createPaginationExercisesOuter","getLoader","act","loader","getData","handleError","message","iziToast","createMarkup","results","name","imgUrl","handleSearch","selected","targetMenu","prevButton","isButton","subscribeEmail","email","subscribeValidity","footerEmail","formData"],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"commonHelpers2.js","sources":["../src/js/body-parts.js","../src/js/search.js","../src/js/pagination.js","../src/js/muscles.js","../src/js/subscribe.js"],"sourcesContent":["// відображення вправ після натискання на картку, перенести потім у файл боді-партс\n\nimport axios from 'axios';\nimport icons from '../img/icons/sprite.svg';\nimport { galleryElement, searchInputField, exerciseParams } from './search.js';\nimport { createPaginationExercisesInner } from './pagination';\nexport { updateExercisesList, loadExercises, renderExercises };\n\nconst params = {\n page: 1,\n limit: 1,\n filter: 'Muscles',\n};\n\n// Ця функція оновлює список вправ на основі наданого фільтра.Він очищає вміст galleryElement.\n\nfunction updateExercisesList(filter) {\n if (window.innerWidth >= 1440) {\n params.limit = 9;\n } else {\n params.limit = 8;\n }\n galleryElement.innerHTML = '';\n loadExercises(filter, params.page)\n .then(data => {\n if (data.results.length === 0) {\n document.querySelector('.tui-pagination').style.display = 'none';\n galleryElement.innerHTML =\n '
Unfortunately, no results were found. You may want to consider other search options to find the exercise you are looking for. Our range is wide and you have the opportunity to find more options that suit your needs.
';\n } else {\n renderExercises(data.results);\n const filterCards = document.querySelectorAll('.js-animation-exercises');\n filterCards.forEach(card => {\n card.classList.add('animation-items');\n });\n const disappearance = setTimeout(() => {\n filterCards.forEach(card => {\n card.classList.remove('animation-items');\n });\n }, 500);\n if (data.totalPages > 1) {\n document.querySelector('.tui-pagination').style.display = 'flex';\n createPaginationExercisesInner(data.totalPages).on(\n 'afterMove',\n ({ page }) => {\n loadExercises(filter, page).then(data => {\n galleryElement.innerHTML = '';\n renderExercises(data.results);\n const filterCards = document.querySelectorAll('.js-animation-exercises');\n filterCards.forEach(card => {\n card.classList.add('animation-items');\n });\n const disappearance = setTimeout(() => {\n filterCards.forEach(card => {\n card.classList.remove('animation-items');\n });\n }, 500);\n });\n }\n );\n } else {\n document.querySelector('.tui-pagination').style.display = 'none';\n }\n }\n\n })\n .catch(error => {\n\n handleError(error.message);\n });\n}\n\n// Ця функція завантажує дані вправ із сервера на основі наданого фільтра.\n\nasync function loadExercises(filter, page) {\n\n if (searchInputField.value.length > 0) {\n exerciseParams.keyword = searchInputField.value.trim().toLowerCase();\n } else {\n exerciseParams.keyword = '';\n }\n const data = await axios.get('/exercises', {\n params: {\n [filter]: exerciseParams.filterGroup,\n keyword: exerciseParams.keyword,\n page,\n limit: params.limit,\n },\n });\n return data.data;\n}\n// Ця функція відтворює дані вправ у DOM. Він приймає отримані дані як вхідні дані. Він генерує HTML-розмітку для кожного елемента вправи за допомогою шаблонних літералів і наданих піктограм.\n\nfunction renderExercises(data) {\n let markup = data\n .map(\n i =>\n `