{"version":3,"file":"cookie_favorite_button-BWyq77e3.js","sources":["../../../app/frontend/entrypoints/cookie_favorite_button.js"],"sourcesContent":["import { setCookie, getCookie } from './shared/cookies';\n\nwindow.addEventListener('DOMContentLoaded', () => {\n // お気に入りボタンクリック時\n $(document).on('click', '.js-cookie-fav-btn', (e) => {\n let fav_job_ids = getCookie('favorite_job_ids') || [];\n const targetElm = e.target;\n const id = $(targetElm).data('id');\n const defaultText = $(targetElm).data('defaultText');\n const doneText = $(targetElm).data('doneText');\n\n let index = fav_job_ids.indexOf(id);\n\n if (index === -1) {\n fav_job_ids.push(id);\n } else {\n fav_job_ids.splice(index, 1);\n }\n\n setCookie('favorite_job_ids', JSON.stringify(fav_job_ids));\n\n const favoriteBtns = $('.js-cookie-fav-btn');\n\n $.each(favoriteBtns, (j, btn) => {\n if ($(btn).data('id') === id) {\n toggle(btn, defaultText, doneText);\n }\n });\n\n const urlParams = new URLSearchParams(window.location.search);\n if (urlParams.has('ver') && urlParams.get('ver') === 'issue_4612') {\n const newCount = fav_job_ids.length;\n\n $('.js-favorite-badge-sp')?.text(newCount);\n if (!!$('.js-favorite-icon')[0]) {\n if (newCount > 0) {\n if (!$('.js-favorite-badge')[0]) {\n const $newBadge = $('')\n .addClass('badge js-favorite-badge')\n .text(newCount);\n\n $('.js-favorite-icon').after($newBadge);\n $('.js-favorite-icon').attr(\n 'src',\n $('.js-favorite-icon')[0].dataset.heartSolidPath\n );\n } else {\n $('.js-favorite-badge').text(newCount);\n }\n } else {\n $('.js-favorite-badge').remove();\n $('.js-favorite-icon').attr(\n 'src',\n $('.js-favorite-icon')[0].dataset.heartOutlinePath\n );\n }\n }\n }\n });\n\n // メソッド\n function toggle(favBtn, defaultText, doneText) {\n const favOn = {\n class:\n 'c-button -border-orange -heart-icon -sp-text-sm js-cookie-fav-btn',\n innerHTML: defaultText,\n };\n\n const favOff = {\n class:\n 'c-button -border-orange -heart-icon -sp-text-sm js-cookie-fav-btn -solid -done',\n innerHTML: doneText,\n };\n\n if (favBtn.className.includes(favOff.class)) {\n // お気に入り登録済みのクラスを削除\n favBtn.classList.remove('-solid', '-done');\n favBtn.innerHTML = favOn.innerHTML;\n } else if (favBtn.className.includes(favOn.class)) {\n // お気に入り登録済みのクラスを追加\n favBtn.classList.add('-solid', '-done');\n favBtn.innerHTML = favOff.innerHTML;\n }\n }\n});\n"],"names":["$","e","fav_job_ids","getCookie","targetElm","id","defaultText","doneText","index","setCookie","favoriteBtns","j","btn","toggle","urlParams","newCount","_a","$newBadge","favBtn","favOn","favOff"],"mappings":"4HAEA,OAAO,iBAAiB,mBAAoB,IAAM,CAEhDA,EAAE,QAAQ,EAAE,GAAG,QAAS,qBAAuBC,GAAM,OACnD,IAAIC,EAAcC,EAAU,kBAAkB,GAAK,CAAA,EACnD,MAAMC,EAAYH,EAAE,OACdI,EAAKL,EAAEI,CAAS,EAAE,KAAK,IAAI,EAC3BE,EAAcN,EAAEI,CAAS,EAAE,KAAK,aAAa,EAC7CG,EAAWP,EAAEI,CAAS,EAAE,KAAK,UAAU,EAE7C,IAAII,EAAQN,EAAY,QAAQG,CAAE,EAE9BG,IAAU,GACZN,EAAY,KAAKG,CAAE,EAEnBH,EAAY,OAAOM,EAAO,CAAC,EAG7BC,EAAU,mBAAoB,KAAK,UAAUP,CAAW,CAAC,EAEzD,MAAMQ,EAAeV,EAAE,oBAAoB,EAE3CA,EAAE,KAAKU,EAAc,CAACC,EAAGC,IAAQ,CAC3BZ,EAAEY,CAAG,EAAE,KAAK,IAAI,IAAMP,GACxBQ,EAAOD,EAAKN,EAAaC,CAAQ,CAEzC,CAAK,EAED,MAAMO,EAAY,IAAI,gBAAgB,OAAO,SAAS,MAAM,EAC5D,GAAIA,EAAU,IAAI,KAAK,GAAKA,EAAU,IAAI,KAAK,IAAM,aAAc,CACjE,MAAMC,EAAWb,EAAY,OAG7B,IADAc,EAAAhB,EAAE,uBAAuB,IAAzB,MAAAgB,EAA4B,KAAKD,GAC3Bf,EAAE,mBAAmB,EAAE,CAAC,EAC5B,GAAIe,EAAW,EACb,GAAKf,EAAE,oBAAoB,EAAE,CAAC,EAW5BA,EAAE,oBAAoB,EAAE,KAAKe,CAAQ,MAXN,CAC/B,MAAME,EAAYjB,EAAE,QAAQ,EACzB,SAAS,yBAAyB,EAClC,KAAKe,CAAQ,EAEhBf,EAAE,mBAAmB,EAAE,MAAMiB,CAAS,EACtCjB,EAAE,mBAAmB,EAAE,KACrB,MACAA,EAAE,mBAAmB,EAAE,CAAC,EAAE,QAAQ,cAChD,CACA,MAIUA,EAAE,oBAAoB,EAAE,SACxBA,EAAE,mBAAmB,EAAE,KACrB,MACAA,EAAE,mBAAmB,EAAE,CAAC,EAAE,QAAQ,gBAC9C,CAGK,CACL,CAAG,EAGD,SAASa,EAAOK,EAAQZ,EAAaC,EAAU,CAC7C,MAAMY,EAAQ,CACZ,MACE,oEACF,UAAWb,CACjB,EAEUc,EAAS,CACb,MACE,iFACF,UAAWb,CACjB,EAEQW,EAAO,UAAU,SAASE,EAAO,KAAK,GAExCF,EAAO,UAAU,OAAO,SAAU,OAAO,EACzCA,EAAO,UAAYC,EAAM,WAChBD,EAAO,UAAU,SAASC,EAAM,KAAK,IAE9CD,EAAO,UAAU,IAAI,SAAU,OAAO,EACtCA,EAAO,UAAYE,EAAO,UAE7B,CACH,CAAC"}