{"version":3,"file":"title-generator.js","sources":["../../../w3t_front/components/title-generator/title-generator.js"],"sourcesContent":["import { _on } from '../../utils';\n\nimport './title-generator.css';\n\n// TODO: refactor code + replace old tabs with new approach\n\nfunction showTitles(titles, qty) {\n titles.slice(0, qty).forEach(card => card.classList.add('visible'));\n}\n\nif (document.getElementById('id_topic')) {\n const suggestionTool = document.getElementById('id_topic');\n\n _on('input', 'title-generator__input', () => {\n if (suggestionTool.value === '') {\n return document\n .querySelector('.title-generator__field .hint')\n .classList.add('title-hint--active');\n }\n document.querySelector('.title-generator__field .hint').classList.remove('title-hint--active');\n });\n\n _on('click', 'title-generator__input', () => {\n document.querySelector('.title-generator__field .hint').classList.toggle('title-hint--active');\n });\n\n _on('click', 'js--hint-item', ({ target }) => {\n suggestionTool.value = target.dataset.topic;\n document.querySelector('.title-generator__field .hint').classList.remove('title-hint--active');\n suggestionTool.focus();\n document.getElementById('title-generator__form').submit();\n });\n\n _on('keydown', 'Escape', () => {\n document.querySelector('.title-generator__field .hint').classList.remove('title-hint--active');\n });\n\n _on('click', 'js--use-topic', ({ target }) => {\n const title = target.dataset.topic;\n window.bbSetOrder({ threshold: 180, title });\n });\n\n _on('click', 'tab-button', ({ target }) => {\n let activeTopicTab = 'tab-button--active';\n let activeTopicContent = 'tab-content--active';\n\n if (target.classList.contains(activeTopicTab)) {\n return;\n }\n\n document.querySelector(`.${activeTopicTab}`).classList.remove(activeTopicTab);\n target.classList.add(activeTopicTab);\n\n document.querySelector(`.${activeTopicContent}`).classList.remove(activeTopicContent);\n document\n .querySelector(`#${target.id.replace('tab-button', 'tab-content')}`)\n .classList.add(activeTopicContent);\n });\n\n let titlesToShow = {\n rare: 4,\n popular: 4,\n rand: 4,\n };\n\n if (document.querySelector('.topic-tab')) {\n new Promise(function (resolve) {\n resolve({\n rand: [...document.querySelectorAll('#tab-content--random .topic-card__wrapper')],\n popular: [...document.querySelectorAll('#tab-content--popular .topic-card__wrapper')],\n rare: [...document.querySelectorAll('#tab-content--rare .topic-card__wrapper')],\n });\n }).then(cards => {\n Object.entries(cards).forEach(([key, value]) => showTitles(value, titlesToShow[key]));\n\n _on('click', 'load-more--rare', () => {\n titlesToShow.rare = titlesToShow.rare + 6;\n showTitles(cards.rare, titlesToShow.rare);\n\n if (cards.rare.length <= titlesToShow.rare) {\n document.querySelector('.load-more--rare').style.display = 'none';\n }\n });\n\n _on('click', 'load-more--popular', () => {\n titlesToShow.popular = titlesToShow.popular + 6;\n showTitles(cards.popular, titlesToShow.popular);\n\n if (cards.popular.length <= titlesToShow.popular) {\n document.querySelector('.load-more--popular').style.display = 'none';\n }\n });\n\n _on('click', 'load-more--random', () => {\n titlesToShow.rand = titlesToShow.rand + 6;\n showTitles(cards.rand, titlesToShow.rand);\n\n if (cards.rand.length <= titlesToShow.rand) {\n document.querySelector('.load-more--random').style.display = 'none';\n }\n });\n });\n }\n}\n"],"names":["showTitles","titles","qty","card","suggestionTool","_on","target","title","activeTopicTab","activeTopicContent","titlesToShow","resolve","cards","key","value"],"mappings":"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"}