diff --git a/components/teks/entegre-mizik.js b/components/teks/entegre-mizik.js
new file mode 100644
index 0000000..8deea52
--- /dev/null
+++ b/components/teks/entegre-mizik.js
@@ -0,0 +1,137 @@
+import {Box, IconButton, Typography} from '@material-ui/core'
+import PropTypes from 'prop-types'
+import {useRouter} from 'next/router'
+
+import {
+ Tidal,
+ Spotify,
+ Deezer,
+ Soundcloud
+} from '@icons-pack/react-simple-icons'
+import {useEffect, useState} from 'react'
+
+const kouteyAchteyIcons = {
+ Tidal: ,
+ Deezer: ,
+ Spotify: ,
+ Soundcloud:
+}
+
+function RannIframe({boutik, url, isMobile}) {
+ let src = ''
+ if (boutik === 'Tidal') {
+ const trackArray = url.split('/')
+ const trackId = trackArray[trackArray.length - 1]
+ src = `https://embed.tidal.com/tracks/${trackId}?disableAnalytics=true`
+ } else if (boutik === 'Deezer') {
+ const trackArray = url.split('/')
+ const trackId = trackArray[trackArray.length - 1]
+ src = `https://widget.deezer.com/widget/auto/track/${trackId}?tracklist=false`
+ } else if (boutik === 'Spotify') {
+ const trackArray = url.split('/')
+ const trackId = trackArray[trackArray.length - 1]
+ src = `https://open.spotify.com/embed/track/${trackId}`
+ } else if (boutik === 'Soundcloud') {
+ src = `https://w.soundcloud.com/player/?url=${url}`
+ }
+
+ return (
+
+ {boutik === 'Tidal' && (
+
+ )}
+
+ {boutik === 'Deezer' && (
+
+ )}
+
+ {boutik === 'Spotify' && (
+
+ )}
+
+ {boutik === 'Soundcloud' && (
+
+ )}
+
+
+ )
+}
+
+function EntegreMizik({anTeks, isMobile}) {
+ const [chwaMizik, meteChwaMizik] = useState(null)
+ const router = useRouter()
+ const {kouteyAchtey, slug, okiMizikID} = anTeks
+ const filteredKouteyAchtey = kouteyAchtey.filter(({boutik}) => boutik === 'Tidal' || boutik === 'Spotify' || boutik === 'Deezer' || boutik === 'Soundcloud')
+
+ const handleClick = (boutik, url) => {
+ if (chwaMizik && chwaMizik.boutik === boutik) {
+ return meteChwaMizik(null)
+ }
+
+ meteChwaMizik({boutik, url})
+ }
+
+ useEffect(() => {
+ if (router.asPath === `/teks/${slug}` || router.asPath === `/teks/${slug}#${slug}`) {
+ meteChwaMizik(null)
+ }
+ }, [router, slug])
+
+ return (
+
+
+ Écouter
+
+
+ {!okiMizikID && filteredKouteyAchtey.map(({_id, boutik, url}) => {
+ return (
+ handleClick(boutik, url)}>
+ {kouteyAchteyIcons[boutik]}
+
+ )
+ })}
+
+ {chwaMizik && (
+
+ )}
+
+ )
+}
+
+EntegreMizik.propTypes = {
+ anTeks: PropTypes.object.isRequired,
+ isMobile: PropTypes.bool.isRequired
+}
+
+RannIframe.propTypes = {
+ boutik: PropTypes.string.isRequired,
+ url: PropTypes.string.isRequired,
+ isMobile: PropTypes.bool.isRequired
+}
+
+export default EntegreMizik