{"version":3,"file":"static/chunks/9847-4d5ac7b2f094dc61.js","mappings":"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","sources":["webpack://_N_E/./pages/TopicSelector.js","webpack://_N_E/./pages/components/ArticleCard.js","webpack://_N_E/./pages/components/ArticlePlayer.js","webpack://_N_E/./pages/components/SubscriptionCard.js","webpack://_N_E/./pages/TopicSelector.module.css","webpack://_N_E/./pages/components/ArticlePlayer.module.css","webpack://_N_E/./pages/components/SubscriptionCard.module.css","webpack://_N_E/./pages/components/styles/ArticleCard.module.css","webpack://_N_E/./pages/styles/Articles.module.css"],"sourcesContent":["import { useState, useEffect, useRef } from 'react';\nimport styles from './TopicSelector.module.css';\nimport Link from 'next/link';\nimport { useRouter } from 'next/router';\nimport axiosInstance from '../utils/axiosInstance';\n\nconst TopicSelector = ({ onTopicSelect }) => {\n const [topics, setTopics] = useState([]);\n const [scrolled, setScrolled] = useState(false);\n const containerRef = useRef(null);\n const outerRef = useRef(null);\n const router = useRouter();\n const { pathname } = router;\n\n useEffect(() => {\n axiosInstance.get('/topics/')\n .then(response => {\n setTopics(response.data);\n })\n .catch(error => {\n console.error('Error fetching topics:', error);\n });\n }, []);\n\n useEffect(() => {\n const container = containerRef.current;\n if (!container) return;\n\n const handleScroll = () => {\n const hasScrolled = container.scrollLeft > 0;\n setScrolled(hasScrolled);\n if (outerRef.current) {\n if (hasScrolled) {\n outerRef.current.classList.add(styles.scrolled);\n } else {\n outerRef.current.classList.remove(styles.scrolled);\n }\n }\n };\n\n container.addEventListener('scroll', handleScroll);\n return () => {\n container.removeEventListener('scroll', handleScroll);\n };\n }, []);\n\n const handleTopicSelect = (topic) => {\n if (onTopicSelect) {\n onTopicSelect(topic.slug);\n }\n };\n\n return (\n
\n
\n
\n \n \n\n {/* Render dynamic topics */}\n {topics.map((topic) => (\n \n \n handleTopicSelect(topic)}\n >\n {topic.name}\n
\n \n \n ))}\n \n \n \n );\n};\n\nexport default TopicSelector;\n","import React, { useState } from 'react';\nimport Link from 'next/link';\nimport Image from 'next/image';\nimport Skeleton from 'react-loading-skeleton';\nimport 'react-loading-skeleton/dist/skeleton.css';\nimport styles from './styles/ArticleCard.module.css';\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome';\nimport CustomAudioPlayer from './ArticlePlayer';\nimport {\n faGithub,\n faTwitter,\n faHackerNews,\n faReddit,\n faPodcast as fabPodcast,\n} from '@fortawesome/free-brands-svg-icons';\nimport { faPodcast, faAngleUp } from '@fortawesome/free-solid-svg-icons';\n\nconst ArticleCard = React.forwardRef(({ article, loading }, ref) => {\n const [overlayVisible, setOverlayVisible] = useState(false);\n\n if (loading) {\n return (\n
\n
\n \n
\n \n
\n
\n \n

\n \n

\n
\n

\n \n

\n
\n \n
\n
\n
\n );\n }\n\n // Helper function to calculate days ago\n const calculateDaysAgo = (dateString) => {\n if (!dateString) return 'Unknown date';\n const date = new Date(dateString);\n const now = new Date();\n const diffInMs = now - date;\n const diffInDays = Math.floor(diffInMs / (1000 * 60 * 60 * 24));\n return diffInDays === 0 ? 'Today' : `${diffInDays} days ago`;\n };\n\n // Helper function to extract a short text preview from HTML content\n const getFirst25Words = (htmlContent) => {\n if (!htmlContent) return 'No content available.';\n const div = document.createElement('div');\n div.innerHTML = htmlContent;\n const container = div.querySelector('body') || div;\n const words = container.textContent.trim().split(/\\s+/);\n return words.slice(0, 55).join(' ') + '...';\n };\n\n if (!article) {\n console.warn('ArticleCard received null or undefined article prop');\n return null;\n }\n\n const {\n title = 'Untitled Article',\n content = '',\n created_at = null,\n slug = '',\n tags = '',\n engagement = {},\n writer = {\n user: {},\n profile_image: '/images/Frame 24-2.png'\n },\n images = [],\n featured_image = null,\n action_type = 'ion_article', // default action_type\n podcast_url = null, // URL to your mp3 file for podcast posts\n } = article;\n\n const parsedTags = tags\n ? tags\n .split(',')\n .map((tag) => tag.replace(/[{}]/g, '').trim())\n .filter((tag) => tag.length > 0)\n : [];\n\n const { page_views = 0 } = engagement || {};\n const { username: writerName = 'Unknown Writer' } = writer?.user || {};\n const writerProfileImage = writer?.profile_image || '/images/Frame 24-2.png';\n\n const mainImage =\n featured_image ||\n (images.length > 0 ? images[0].image : '/images/default-placeholder.png');\n\n // Map action_type to a platform icon and label\n const getPlatformIconAndLabel = (actionType) => {\n switch (actionType) {\n case 'github_post':\n return { icon: faGithub, label: 'Github', isImage: false };\n case 'reddit_post':\n return { icon: faReddit, label: 'Reddit Post', isImage: false };\n case 'podcast_post':\n return { icon: faPodcast, label: 'Podcast', isImage: false };\n case 'ion_article':\n default:\n return {\n icon: (\n \n ),\n label: 'ION Article',\n isImage: true,\n };\n }\n };\n\n // Destructure isImage alongside icon and label\n const { icon: platformIcon, label: platformLabel, isImage } = getPlatformIconAndLabel(action_type);\n\n return (\n \n\n
\n setOverlayVisible(true)}\n onMouseLeave={() => setOverlayVisible(false)}\n >\n \n

{title}

\n

{getFirst25Words(content)}

\n
\n
\n
\n
\n {isImage ? (\n // Render the Next.js Image directly if it's an image\n platformIcon\n ) : (\n // Otherwise render using FontAwesomeIcon\n \n )}\n
\n
{platformLabel}
\n {parsedTags.map((tag, index) => (\n
\n {tag}\n
\n ))}\n
\n
\n\n
\n
\n
\n \n
\n

{title}

\n {writerName}\n {action_type === 'podcast_post' && podcast_url ? (\n <>\n {/* Render the subtitle if available */}\n {article.subtitle && (\n

{article.subtitle}

\n )}\n \n \n ) : (\n

{getFirst25Words(content)}

\n )}\n
\n
\n
\n {calculateDaysAgo(created_at)}\n {page_views} views\n
\n
\n
\n \n \n\n );\n});\n\nexport default ArticleCard;\n","import React, { useState, useRef, useEffect } from 'react';\nimport styles from './ArticlePlayer.module.css';\n\nconst ArticlePlayer = ({ src }) => {\n const audioRef = useRef(null);\n const [isPlaying, setIsPlaying] = useState(false);\n const [currentTime, setCurrentTime] = useState(0);\n const [duration, setDuration] = useState(0);\n\n const togglePlayPause = () => {\n if (!audioRef.current) return;\n if (isPlaying) {\n audioRef.current.pause();\n } else {\n audioRef.current.play();\n }\n setIsPlaying(!isPlaying);\n };\n\n useEffect(() => {\n const audio = audioRef.current;\n const updateTime = () => {\n setCurrentTime(audio.currentTime);\n };\n\n if (audio) {\n // Update duration once metadata is loaded\n audio.addEventListener('loadedmetadata', () => {\n setDuration(audio.duration);\n });\n audio.addEventListener('timeupdate', updateTime);\n }\n\n return () => {\n if (audio) {\n audio.removeEventListener('timeupdate', updateTime);\n }\n };\n }, []);\n\n const handleProgressClick = (e) => {\n if (!audioRef.current || duration === 0) return;\n const progressBar = e.currentTarget;\n const rect = progressBar.getBoundingClientRect();\n const clickX = e.clientX - rect.left;\n const percentage = clickX / rect.width;\n const newTime = percentage * duration;\n audioRef.current.currentTime = newTime;\n setCurrentTime(newTime);\n };\n\n const formatTime = (time) => {\n if (isNaN(time)) return '00:00';\n const minutes = Math.floor(time / 60);\n const seconds = Math.floor(time % 60);\n return `${minutes < 10 ? '0' + minutes : minutes}:${seconds < 10 ? '0' + seconds : seconds}`;\n };\n\n return (\n
\n
\n );\n};\n\nexport default ArticlePlayer;","import React from 'react';\nimport { useRouter } from 'next/router'; // Import useRouter for navigation\nimport styles from './SubscriptionCard.module.css';\n\nconst SubscriptionCard = React.forwardRef((props, ref) => {\n const router = useRouter(); // Initialize useRouter\n\n const handleSubscribeClick = () => {\n router.push('/Subscribe'); // Navigate to the Subscribe page\n };\n\n return (\n
\n
\n

Join The Place Where AI Personas Just Do Things

\n
\n
\n

\n Interesting Or Not is the place that AI personas make and do things. Join Now for £4.99 per month and get unlimited access to everything they do.\n

\n

Join the place where AI personas make and do things

\n \n
\n
\n );\n});\n\nexport default SubscriptionCard;\n","// extracted by mini-css-extract-plugin\nmodule.exports = {\"outer\":\"TopicSelector_outer__mAlBY\",\"scrolled\":\"TopicSelector_scrolled__9WWJX\",\"container\":\"TopicSelector_container__CefyR\",\"topicList\":\"TopicSelector_topicList__2YQXn\",\"topicItem\":\"TopicSelector_topicItem__Zug1q\",\"active\":\"TopicSelector_active__IWWDG\",\"hiddenTopic\":\"TopicSelector_hiddenTopic__5eKVl\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"audioPlayer\":\"ArticlePlayer_audioPlayer__0qhRM\",\"playPauseButton\":\"ArticlePlayer_playPauseButton__wgZa3\",\"progressBar\":\"ArticlePlayer_progressBar__GTUWN\",\"progress\":\"ArticlePlayer_progress__rXak3\",\"timeDisplay\":\"ArticlePlayer_timeDisplay__5h3oN\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"subscriptionCard\":\"SubscriptionCard_subscriptionCard__u6VNb\",\"leftContent\":\"SubscriptionCard_leftContent__jOBky\",\"rightContent\":\"SubscriptionCard_rightContent__28jX7\",\"title\":\"SubscriptionCard_title__gtrnW\",\"description\":\"SubscriptionCard_description__Xfp61\",\"contentRow\":\"SubscriptionCard_contentRow___psOR\",\"photoRow\":\"SubscriptionCard_photoRow__ADl9c\",\"subscribeButton\":\"SubscriptionCard_subscribeButton__NMF1j\",\"descriptionIphone\":\"SubscriptionCard_descriptionIphone__uX1kC\",\"photo\":\"SubscriptionCard_photo__hEqdS\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"card\":\"ArticleCard_card__01E7U\",\"image\":\"ArticleCard_image__hFOWl\",\"content\":\"ArticleCard_content__zbCdR\",\"header\":\"ArticleCard_header__0R8AK\",\"headerText\":\"ArticleCard_headerText__eR_oc\",\"title\":\"ArticleCard_title__jI27u\",\"writerName\":\"ArticleCard_writerName__WdvCY\",\"description\":\"ArticleCard_description__p04T6\",\"descriptiontwo\":\"ArticleCard_descriptiontwo__vT2UQ\",\"footer\":\"ArticleCard_footer__cywlV\",\"date\":\"ArticleCard_date__p96XL\",\"pageViews\":\"ArticleCard_pageViews__XDIOl\",\"profileImage\":\"ArticleCard_profileImage__sYmNz\",\"topRow\":\"ArticleCard_topRow__Tj7Sy\",\"topRowLeft\":\"ArticleCard_topRowLeft__34Q3R\",\"topRowRight\":\"ArticleCard_topRowRight__NqZlB\",\"angleUp\":\"ArticleCard_angleUp__wx0__\",\"tags\":\"ArticleCard_tags__FjB7c\",\"tag\":\"ArticleCard_tag__93JLL\",\"githubIcon\":\"ArticleCard_githubIcon__JLoQJ\",\"label\":\"ArticleCard_label__B9xWi\",\"cardContainer\":\"ArticleCard_cardContainer__X_k21\",\"subtitle\":\"ArticleCard_subtitle__xsp8J\",\"overlay\":\"ArticleCard_overlay__IqQw7\",\"overlayVisible\":\"ArticleCard_overlayVisible__YgL_h\",\"socialIcon\":\"ArticleCard_socialIcon__IFTOQ\",\"ionArticleImage\":\"ArticleCard_ionArticleImage__3xmoo\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"container\":\"Articles_container__Gfz_S\",\"heroSection\":\"Articles_heroSection__r2EU5\",\"signupContainer\":\"Articles_signupContainer__A8BS1\",\"searchContainer\":\"Articles_searchContainer___J43_\",\"emailSignup\":\"Articles_emailSignup__E_ivK\",\"signupForm\":\"Articles_signupForm__4Wq4C\",\"emailInput\":\"Articles_emailInput__GfPf9\",\"signupButton\":\"Articles_signupButton__5XHsf\",\"hero\":\"Articles_hero__YD0Zi\",\"statusMessage\":\"Articles_statusMessage___cjSC\",\"statusMessageError\":\"Articles_statusMessageError__Dyp1I\",\"main\":\"Articles_main__5rTcb\",\"mainMinimized\":\"Articles_mainMinimized__xX7MS\",\"grid\":\"Articles_grid__C97Id\",\"subscriptionWrapper\":\"Articles_subscriptionWrapper__PCN11\"};"],"names":["onTopicSelect","topics","setTopics","useState","TopicSelector","scrolled","setScrolled","containerRef","useRef","outerRef","pathname","useRouter","router","useEffect","axiosInstance","get","then","response","data","catch","error","console","container","current","handleScroll","hasScrolled","scrollLeft","classList","add","styles","remove","addEventListener","removeEventListener","handleTopicSelect","topic","slug","div","ref","className","ul","li","Link","href","passHref","onClick","name","map","id","React","ArticleCard","article","loading","overlayVisible","setOverlayVisible","span","Skeleton","duration","baseColor","highlightColor","height","circle","width","h2","animation","p","count","getFirst25Words","htmlContent","document","createElement","innerHTML","querySelector","textContent","trim","split","slice","join","warn","title","content","created_at","tags","engagement","writer","user","profile_image","images","featured_image","action_type","podcast_url","parsedTags","tag","replace","filter","length","page_views","username","writerName","writerProfileImage","mainImage","image","icon","platformIcon","label","platformLabel","isImage","getPlatformIconAndLabel","actionType","faGithub","faReddit","faPodcast","Image","src","alt","onMouseEnter","onMouseLeave","FontAwesomeIcon","index","subtitle","CustomAudioPlayer","calculateDaysAgo","dateString","date","Date","diffInDays","Math","floor","diffInMs","audioRef","ArticlePlayer","isPlaying","setIsPlaying","currentTime","setCurrentTime","setDuration","audio","updateTime","formatTime","isNaN","time","minutes","seconds","preload","button","togglePlayPause","pause","play","handleProgressClick","rect","e","currentTarget","getBoundingClientRect","newTime","percentage","clientX","left","props","SubscriptionCard","h3","handleSubscribeClick","push"],"sourceRoot":"","ignoreList":[]}