{"_id":"@aiguestdj/plex-extension","_rev":"12-68644a669db5df3ab2a1dbcf367122d1","name":"@aiguestdj/plex-extension","dist-tags":{"latest":"1.0.54"},"versions":{"1.0.39":{"name":"@aiguestdj/plex-extension","version":"1.0.39","description":"Plex extension to work with AI Guest DJ","scripts":{"deploy":"npm run build && npm version patch --no-git-tag-version && npm publish","docker":"PACKAGE_VERSION=$(grep '\"version\"' package.json | cut -d '\"' -f 4 | head -n 1) && docker build -t aiguestdj/plex-extension-aiguestdj -t aiguestdj/plex-extension-aiguestdj:$PACKAGE_VERSION --push .","dev":"next dev","build":"next build","start":"next start","lint":"next lint"},"engines":{"node":">=18.0.0","npm":">=10.0.0"},"bin":{"aiguestdj-plex":"server.js"},"dependencies":{"@aiguestdj/shared":"^1.0.30","@emotion/react":"^11.11.3","@emotion/styled":"^11.11.0","@mui/icons-material":"^5.15.3","@mui/joy":"^5.0.0-beta.21","@mui/lab":"^5.0.0-alpha.134","axios":"^1.4.0","fetch-jsonp":"^1.3.0","next":"^14.1.4","next-compose-plugins":"^2.2.1","next-connect":"^1.0.0","notistack":"^3.0.1","openai":"^4.28.0","plex-api":"^5.3.2","qs":"^6.12.0","react":"^18.2.0","react-dom":"^18.2.0","sass":"^1.63.3","sharp":"^0.33.2"},"devDependencies":{"@types/node":"^20.3.0","@types/qs":"^6.9.14","@types/react":"^18.2.11","@types/react-dom":"^18.2.7","eslint":"8.42.0","eslint-config-next":"^14.1.4"},"_id":"@aiguestdj/plex-extension@1.0.39","gitHead":"1604fbe7db69957bb9f54fe858f45414c6a49609","_nodeVersion":"20.9.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-K4mmQUAVzWoFdEiM0oD4mYQE0cQb9FXghuhiKFlLf40RDj1S8R7G4XFqTrGdkLFkt4uj0lNH3bvpprB1aPQqzg==","shasum":"d225458096ad65e663581a19df790b7f57cf591d","tarball":"https://registry.npmjs.org/@aiguestdj/plex-extension/-/plex-extension-1.0.39.tgz","fileCount":102,"unpackedSize":6124756,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDvYYuvSlzZ4saPu6b2VJ1z//94MxX2IbQarnniyveL/gIgE8jPkAv/o85A+/577VI6DlpbpZz/UQW9rXRfXbSSUBg="}]},"_npmUser":{"name":"jjdenhertog","email":"jaap@meningreen.agency"},"directories":{},"maintainers":[{"name":"jjdenhertog","email":"jaap@meningreen.agency"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/plex-extension_1.0.39_1712480629298_0.8737320852880661"},"_hasShrinkwrap":false},"1.0.40":{"name":"@aiguestdj/plex-extension","version":"1.0.40","description":"Plex extension to work with AI Guest DJ","scripts":{"deploy":"npm run build && npm version patch --no-git-tag-version && npm publish","docker":"PACKAGE_VERSION=$(grep '\"version\"' package.json | cut -d '\"' -f 4 | head -n 1) && docker build -t aiguestdj/plex-extension-aiguestdj -t aiguestdj/plex-extension-aiguestdj:$PACKAGE_VERSION --push .","dev":"next dev","build":"next build","start":"next start","lint":"next lint"},"engines":{"node":">=18.0.0","npm":">=10.0.0"},"bin":{"aiguestdj-plex":"server.js"},"dependencies":{"@aiguestdj/shared":"^1.0.30","@emotion/react":"^11.11.3","@emotion/styled":"^11.11.0","@mui/icons-material":"^5.15.3","@mui/joy":"^5.0.0-beta.21","@mui/lab":"^5.0.0-alpha.134","axios":"^1.4.0","fetch-jsonp":"^1.3.0","next":"^14.1.4","next-compose-plugins":"^2.2.1","next-connect":"^1.0.0","notistack":"^3.0.1","openai":"^4.28.0","plex-api":"^5.3.2","qs":"^6.12.0","react":"^18.2.0","react-dom":"^18.2.0","sass":"^1.63.3","sharp":"^0.33.2"},"devDependencies":{"@types/node":"^20.3.0","@types/qs":"^6.9.14","@types/react":"^18.2.11","@types/react-dom":"^18.2.7","eslint":"8.42.0","eslint-config-next":"^14.1.4"},"_id":"@aiguestdj/plex-extension@1.0.40","gitHead":"1604fbe7db69957bb9f54fe858f45414c6a49609","_nodeVersion":"20.9.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-65tOknRvUOu8wHX+4+PBiCb+MfqdyY7J1+bLmETxlTylJLc/8nVDfoM+8j9xeBW2hoBI4lYA1oDkroZZnA2p6A==","shasum":"8035011e47f7c3d36149fd02dd7c6aed85858693","tarball":"https://registry.npmjs.org/@aiguestdj/plex-extension/-/plex-extension-1.0.40.tgz","fileCount":102,"unpackedSize":6622334,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDblGhNPVoAk8tJviCf0NMVoNEmx1u4OXtXYxuKoTgCMAIhAMf9mYa+ELXu6MH5UOwj3x0Bh3NP1/jxnkK9eoYbJH+x"}]},"_npmUser":{"name":"jjdenhertog","email":"jaap@meningreen.agency"},"directories":{},"maintainers":[{"name":"jjdenhertog","email":"jaap@meningreen.agency"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/plex-extension_1.0.40_1712481515587_0.18216022496769013"},"_hasShrinkwrap":false},"1.0.42":{"name":"@aiguestdj/plex-extension","version":"1.0.42","description":"Plex extension to work with AI Guest DJ","scripts":{"deploy":"npm run build && npm version patch --no-git-tag-version && npm publish","docker":"PACKAGE_VERSION=$(grep '\"version\"' package.json | cut -d '\"' -f 4 | head -n 1) && docker build -t aiguestdj/plex-extension-aiguestdj -t aiguestdj/plex-extension-aiguestdj:$PACKAGE_VERSION --push .","dev":"next dev","build":"next build","start":"next start","lint":"next lint"},"engines":{"node":">=18.0.0","npm":">=10.0.0"},"bin":{"aiguestdj-plex":"server.js"},"dependencies":{"@aiguestdj/shared":"^1.0.31","@emotion/react":"^11.11.3","@emotion/styled":"^11.11.0","@mui/icons-material":"^5.15.3","@mui/joy":"^5.0.0-beta.21","@mui/lab":"^5.0.0-alpha.134","axios":"^1.4.0","fetch-jsonp":"^1.3.0","next":"^14.1.4","next-compose-plugins":"^2.2.1","next-connect":"^1.0.0","notistack":"^3.0.1","openai":"^4.28.0","plex-api":"^5.3.2","qs":"^6.12.0","react":"^18.2.0","react-dom":"^18.2.0","sass":"^1.63.3","sharp":"^0.33.2"},"devDependencies":{"@types/node":"^20.3.0","@types/qs":"^6.9.14","@types/react":"^18.2.11","@types/react-dom":"^18.2.7","eslint":"8.42.0","eslint-config-next":"^14.1.4"},"_id":"@aiguestdj/plex-extension@1.0.42","gitHead":"1604fbe7db69957bb9f54fe858f45414c6a49609","_nodeVersion":"20.9.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-NA6CE3YL7tkGG7VvV6K6opc07tdWfeunqtvCCAG32vjUztJiTcnStHpn5Vshh/ETDt4KmsCFYeccS9tPf2q8PA==","shasum":"23869cae6ddcb55f2fc55faae8f368393f0dcda0","tarball":"https://registry.npmjs.org/@aiguestdj/plex-extension/-/plex-extension-1.0.42.tgz","fileCount":102,"unpackedSize":6621041,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICH1lT4kyB5oxwYpiPxN3u1ODKMDDtluEUiSpLV6Pt9/AiEA3WEpdRTyXwZPDvA/EZ/L2vK8jjv/BR2+COgzv0iUS7Q="}]},"_npmUser":{"name":"jjdenhertog","email":"jaap@meningreen.agency"},"directories":{},"maintainers":[{"name":"jjdenhertog","email":"jaap@meningreen.agency"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/plex-extension_1.0.42_1712483857291_0.36161319282934445"},"_hasShrinkwrap":false},"1.0.43":{"name":"@aiguestdj/plex-extension","version":"1.0.43","description":"Plex extension to work with AI Guest DJ","scripts":{"deploy":"npm run build && npm version patch --no-git-tag-version && npm publish","docker":"PACKAGE_VERSION=$(grep '\"version\"' package.json | cut -d '\"' -f 4 | head -n 1) && docker build -t aiguestdj/plex-extension-aiguestdj -t aiguestdj/plex-extension-aiguestdj:$PACKAGE_VERSION --push .","dev":"next dev","build":"next build","start":"next start","lint":"next lint"},"engines":{"node":">=18.0.0","npm":">=10.0.0"},"bin":{"aiguestdj-plex":"server.js"},"dependencies":{"@aiguestdj/shared":"^1.0.32","@emotion/react":"^11.11.3","@emotion/styled":"^11.11.0","@mui/icons-material":"^5.15.3","@mui/joy":"^5.0.0-beta.21","@mui/lab":"^5.0.0-alpha.134","axios":"^1.4.0","fetch-jsonp":"^1.3.0","next":"^14.1.4","next-compose-plugins":"^2.2.1","next-connect":"^1.0.0","notistack":"^3.0.1","openai":"^4.28.0","plex-api":"^5.3.2","qs":"^6.12.0","react":"^18.2.0","react-dom":"^18.2.0","sass":"^1.63.3","sharp":"^0.33.2"},"devDependencies":{"@types/node":"^20.3.0","@types/qs":"^6.9.14","@types/react":"^18.2.11","@types/react-dom":"^18.2.7","eslint":"8.42.0","eslint-config-next":"^14.1.4"},"_id":"@aiguestdj/plex-extension@1.0.43","gitHead":"0919e7331d8725f5992bc1606b643c82b3f9cfbd","_nodeVersion":"20.9.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-SRszICXWkHB/gQ9vQNP6d35+t5pFXB5haw+/GqtDqgcT6eW8qgCXwqV2lCLZT3Q/RPgoSvr4lksVn/4N2boCCA==","shasum":"344ee69ded2405b85a8096ad65b65a0595a0d63e","tarball":"https://registry.npmjs.org/@aiguestdj/plex-extension/-/plex-extension-1.0.43.tgz","fileCount":102,"unpackedSize":6613880,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEymrXuit19YV0he9PQM330EVvYN5Q57MCppIWe+Z0A6AiEA2JWZNPjWvx3jAXNzM9tZbIk4E+MTzVnDd0ImZJBZAGw="}]},"_npmUser":{"name":"jjdenhertog","email":"jaap@meningreen.agency"},"directories":{},"maintainers":[{"name":"jjdenhertog","email":"jaap@meningreen.agency"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/plex-extension_1.0.43_1712494237672_0.7074806126688256"},"_hasShrinkwrap":false},"1.0.45":{"name":"@aiguestdj/plex-extension","version":"1.0.45","description":"Plex extension to work with AI Guest DJ","scripts":{"deploy":"npm run build && npm version patch --no-git-tag-version && npm publish","docker":"PACKAGE_VERSION=$(grep '\"version\"' package.json | cut -d '\"' -f 4 | head -n 1) && docker buildx build --platform=linux/amd64,linux/arm64 -t aiguestdj/plex-extension-aiguestdj -t aiguestdj/plex-extension-aiguestdj:$PACKAGE_VERSION --push .","dev":"next dev","build":"next build","start":"next start","lint":"next lint"},"engines":{"node":">=18.0.0","npm":">=10.0.0"},"bin":{"aiguestdj-plex":"server.js"},"dependencies":{"@aiguestdj/shared":"^1.0.32","@emotion/react":"^11.11.3","@emotion/styled":"^11.11.0","@mui/icons-material":"^5.15.3","@mui/joy":"^5.0.0-beta.21","@mui/lab":"^5.0.0-alpha.134","axios":"^1.4.0","fetch-jsonp":"^1.3.0","next":"^14.1.4","next-compose-plugins":"^2.2.1","next-connect":"^1.0.0","notistack":"^3.0.1","openai":"^4.28.0","plex-api":"^5.3.2","qs":"^6.12.0","react":"^18.2.0","react-dom":"^18.2.0","sass":"^1.63.3","sharp":"^0.33.2"},"devDependencies":{"@types/node":"^20.3.0","@types/qs":"^6.9.14","@types/react":"^18.2.11","@types/react-dom":"^18.2.7","eslint":"8.42.0","eslint-config-next":"^14.1.4"},"_id":"@aiguestdj/plex-extension@1.0.45","gitHead":"0919e7331d8725f5992bc1606b643c82b3f9cfbd","_nodeVersion":"20.9.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-tzP1B2xz3WsbtOVYnjrbTsD0Epqevzmj2318O/4mDzcms4JpaJllUQkoE32ZUDAz3jbrHiVMl2d+YZbZgNjzkQ==","shasum":"48dd31a1234f5ab907d8e20543e3552d49e612d4","tarball":"https://registry.npmjs.org/@aiguestdj/plex-extension/-/plex-extension-1.0.45.tgz","fileCount":102,"unpackedSize":6616715,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDhHCSKm21JhwtAdYSiMgv7JcOOCZnc6F1E3JR98NqfxAIhALlPL0dEgeer/AyTIPb1rVGMbc4F1exIE/jo+czM3MPX"}]},"_npmUser":{"name":"jjdenhertog","email":"jaap@meningreen.agency"},"directories":{},"maintainers":[{"name":"jjdenhertog","email":"jaap@meningreen.agency"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/plex-extension_1.0.45_1712495475285_0.08797896206980282"},"_hasShrinkwrap":false},"1.0.46":{"name":"@aiguestdj/plex-extension","version":"1.0.46","description":"Plex extension to work with AI Guest DJ","scripts":{"deploy":"npm run build && npm version patch --no-git-tag-version && npm publish","docker":"PACKAGE_VERSION=$(grep '\"version\"' package.json | cut -d '\"' -f 4 | head -n 1) && docker buildx build --platform=linux/amd64,linux/arm64 -t aiguestdj/plex-extension-aiguestdj -t aiguestdj/plex-extension-aiguestdj:$PACKAGE_VERSION --push .","dev":"next dev","build":"next build","start":"next start","lint":"next lint"},"engines":{"node":">=18.0.0","npm":">=10.0.0"},"bin":{"aiguestdj-plex":"server.js"},"dependencies":{"@aiguestdj/shared":"^1.0.32","@emotion/react":"^11.11.3","@emotion/styled":"^11.11.0","@mui/icons-material":"^5.15.3","@mui/joy":"^5.0.0-beta.21","@mui/lab":"^5.0.0-alpha.134","axios":"^1.4.0","fetch-jsonp":"^1.3.0","next":"^14.1.4","next-compose-plugins":"^2.2.1","next-connect":"^1.0.0","notistack":"^3.0.1","openai":"^4.28.0","plex-api":"^5.3.2","qs":"^6.12.0","react":"^18.2.0","react-dom":"^18.2.0","sass":"^1.63.3","sharp":"^0.33.2"},"devDependencies":{"@types/node":"^20.3.0","@types/qs":"^6.9.14","@types/react":"^18.2.11","@types/react-dom":"^18.2.7","eslint":"8.42.0","eslint-config-next":"^14.1.4"},"_id":"@aiguestdj/plex-extension@1.0.46","gitHead":"bbad7e517810727a03e25366bc123200674026b4","_nodeVersion":"20.9.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-4QQ3q6A4xQIqEjWpVm53bqFwvrnxU2Gyj0e1vfAWMdtpws0GhiIdej1ioi+Xi/906IjAmnsevHsqaW4nKzyslA==","shasum":"01e5fb32cad69cbe93639a9eacf219894f9f8b50","tarball":"https://registry.npmjs.org/@aiguestdj/plex-extension/-/plex-extension-1.0.46.tgz","fileCount":102,"unpackedSize":6621168,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGgOBk2hthDfUY/dg8UopDPRu+86F501OFaKIPDqbFK0AiB29uvKS8fHCUvH9KiadAbQJKCO2jd/BtK97vmnNdmYmA=="}]},"_npmUser":{"name":"jjdenhertog","email":"jaap@meningreen.agency"},"directories":{},"maintainers":[{"name":"jjdenhertog","email":"jaap@meningreen.agency"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/plex-extension_1.0.46_1712518365756_0.6921274476272341"},"_hasShrinkwrap":false},"1.0.47":{"name":"@aiguestdj/plex-extension","version":"1.0.47","description":"Plex extension to work with AI Guest DJ","scripts":{"deploy":"npm run build && npm version patch --no-git-tag-version && npm publish","docker":"PACKAGE_VERSION=$(grep '\"version\"' package.json | cut -d '\"' -f 4 | head -n 1) && docker buildx build --platform=linux/amd64,linux/arm64 -t aiguestdj/plex-extension-aiguestdj -t aiguestdj/plex-extension-aiguestdj:$PACKAGE_VERSION --push .","dev":"next dev","build":"next build","start":"next start","lint":"next lint"},"engines":{"node":">=18.0.0","npm":">=10.0.0"},"bin":{"aiguestdj-plex":"server.js"},"dependencies":{"@aiguestdj/shared":"^1.0.32","@emotion/react":"^11.11.3","@emotion/styled":"^11.11.0","@mui/icons-material":"^5.15.3","@mui/joy":"^5.0.0-beta.21","@mui/lab":"^5.0.0-alpha.134","axios":"^1.4.0","fetch-jsonp":"^1.3.0","next":"^14.1.4","next-compose-plugins":"^2.2.1","next-connect":"^1.0.0","notistack":"^3.0.1","openai":"^4.28.0","plex-api":"^5.3.2","qs":"^6.12.0","react":"^18.2.0","react-dom":"^18.2.0","sass":"^1.63.3","sharp":"^0.33.2"},"devDependencies":{"@types/node":"^20.3.0","@types/qs":"^6.9.14","@types/react":"^18.2.11","@types/react-dom":"^18.2.7","eslint":"8.42.0","eslint-config-next":"^14.1.4"},"_id":"@aiguestdj/plex-extension@1.0.47","gitHead":"e5945bef2bfce966d38859f79f98ba3e59b65cbe","_nodeVersion":"20.9.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-VKY5qX9BDy0WTTxc/7kzdWJMpgFhbe3T0v44rvIR1pvXVuPX3ejhkDCv9zEcC56wY/mDl8C9tDmq4lv+96C0Ng==","shasum":"2440777430d89dce4d78697298a4c67814c7e789","tarball":"https://registry.npmjs.org/@aiguestdj/plex-extension/-/plex-extension-1.0.47.tgz","fileCount":102,"unpackedSize":6712978,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICElQt3WzC8SRSnfDFQ3fGceGbwRuaLlhkw0OwG6uk3KAiAPFIVy4FKLGqKLxudVHcp48pKIc5xM39GdOwdVUJFLzg=="}]},"_npmUser":{"name":"jjdenhertog","email":"jaap@meningreen.agency"},"directories":{},"maintainers":[{"name":"jjdenhertog","email":"jaap@meningreen.agency"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/plex-extension_1.0.47_1712570858843_0.9598873533329388"},"_hasShrinkwrap":false},"1.0.48":{"name":"@aiguestdj/plex-extension","version":"1.0.48","description":"Plex extension to work with AI Guest DJ","scripts":{"deploy":"npm run build && npm version patch --no-git-tag-version && npm publish","docker":"PACKAGE_VERSION=$(grep '\"version\"' package.json | cut -d '\"' -f 4 | head -n 1) && docker buildx build --platform=linux/amd64,linux/arm64 -t aiguestdj/plex-extension-aiguestdj -t aiguestdj/plex-extension-aiguestdj:$PACKAGE_VERSION --push .","dev":"next dev","build":"next build","start":"next start","lint":"next lint"},"engines":{"node":">=18.0.0","npm":">=10.0.0"},"bin":{"aiguestdj-plex":"server.js"},"dependencies":{"@aiguestdj/shared":"^1.0.32","@emotion/react":"^11.11.3","@emotion/styled":"^11.11.0","@mui/icons-material":"^5.15.3","@mui/joy":"^5.0.0-beta.21","@mui/lab":"^5.0.0-alpha.134","axios":"^1.4.0","fetch-jsonp":"^1.3.0","next":"^14.1.4","next-compose-plugins":"^2.2.1","next-connect":"^1.0.0","notistack":"^3.0.1","openai":"^4.28.0","plex-api":"^5.3.2","qs":"^6.12.0","react":"^18.2.0","react-dom":"^18.2.0","sass":"^1.63.3","sharp":"^0.33.2"},"devDependencies":{"@types/node":"^20.3.0","@types/qs":"^6.9.14","@types/react":"^18.2.11","@types/react-dom":"^18.2.7","eslint":"8.42.0","eslint-config-next":"^14.1.4"},"_id":"@aiguestdj/plex-extension@1.0.48","gitHead":"c89aba98cd11c47cab5a66c0325a814fe8a9def8","_nodeVersion":"20.9.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-yvmqT+oM7cb86Tlq7moabkpjL/XB/ruDaUsimXJSUUf5CXEZAG0PG4W3o1JDAV/b1twkpHdzWOYAGH8NYaBrxg==","shasum":"13ce83ec5c1382f36a765fcb870b879b98dd0f39","tarball":"https://registry.npmjs.org/@aiguestdj/plex-extension/-/plex-extension-1.0.48.tgz","fileCount":102,"unpackedSize":6629808,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDOSJqPgmo7LYk+H4U5w7K0o+ZwfapjMFm6ug57nwJxqgIhAJJm0YH+xXOBJV9R5bzSr6zdIyaMLXvIn+n5lVr/Xs/u"}]},"_npmUser":{"name":"jjdenhertog","email":"jaap@meningreen.agency"},"directories":{},"maintainers":[{"name":"jjdenhertog","email":"jaap@meningreen.agency"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/plex-extension_1.0.48_1712571555212_0.6351845558483287"},"_hasShrinkwrap":false},"1.0.49":{"name":"@aiguestdj/plex-extension","version":"1.0.49","description":"Plex extension to work with AI Guest DJ","scripts":{"deploy":"npm run build && npm version patch --no-git-tag-version && npm publish","docker":"PACKAGE_VERSION=$(grep '\"version\"' package.json | cut -d '\"' -f 4 | head -n 1) && docker buildx build --platform=linux/amd64,linux/arm64 -t aiguestdj/plex-extension-aiguestdj -t aiguestdj/plex-extension-aiguestdj:$PACKAGE_VERSION --push .","dev":"next dev","build":"next build","start":"next start","lint":"next lint"},"engines":{"node":">=18.0.0","npm":">=10.0.0"},"bin":{"aiguestdj-plex":"server.js"},"dependencies":{"@aiguestdj/shared":"^1.0.46","@emotion/react":"^11.11.3","@emotion/styled":"^11.11.0","@mui/icons-material":"^5.15.3","@mui/joy":"^5.0.0-beta.21","@mui/lab":"^5.0.0-alpha.134","axios":"^1.4.0","fetch-jsonp":"^1.3.0","next":"^14.1.4","next-compose-plugins":"^2.2.1","next-connect":"^1.0.0","notistack":"^3.0.1","openai":"^4.28.0","plex-api":"^5.3.2","qs":"^6.12.0","react":"^18.2.0","react-dom":"^18.2.0","sass":"^1.63.3","sharp":"^0.33.2"},"devDependencies":{"@types/node":"^20.3.0","@types/qs":"^6.9.14","@types/react":"^18.2.11","@types/react-dom":"^18.2.7","eslint":"8.42.0","eslint-config-next":"^14.1.4"},"_id":"@aiguestdj/plex-extension@1.0.49","gitHead":"6844520d1cfdc3d7e6daf4a3636dc07daa9c7e7e","_nodeVersion":"20.9.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-14+jE78Mr7NzBIIMu4/DpJ1ybsBUvA49opZcCTcH27TzpsEjunGqvMahKJIX7hAvu/KKZw2xh5Mzx3gcROMd2Q==","shasum":"6af947f212cac64a83aa8779a380c42bd4d16f87","tarball":"https://registry.npmjs.org/@aiguestdj/plex-extension/-/plex-extension-1.0.49.tgz","fileCount":106,"unpackedSize":6818467,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFrmatrPdtSs5QWdH/uiOS7y5vwTfSgf8nVqYYzH3PaXAiAKsiDJvNHdLAiJn3tsWF/tDcKnhZFrbFik+VUV3u9FPg=="}]},"_npmUser":{"name":"jjdenhertog","email":"jaap@meningreen.agency"},"directories":{},"maintainers":[{"name":"jjdenhertog","email":"jaap@meningreen.agency"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/plex-extension_1.0.49_1712823120742_0.9145773560435515"},"_hasShrinkwrap":false},"1.0.51":{"name":"@aiguestdj/plex-extension","version":"1.0.51","description":"Plex extension to work with AI Guest DJ","scripts":{"deploy":"npm run build && npm version patch --no-git-tag-version && npm publish","docker":"PACKAGE_VERSION=$(grep '\"version\"' package.json | cut -d '\"' -f 4 | head -n 1) && docker buildx build --platform=linux/amd64,linux/arm64 -t aiguestdj/plex-extension-aiguestdj -t aiguestdj/plex-extension-aiguestdj:$PACKAGE_VERSION --push .","dev":"next dev","build":"next build","start":"next start","lint":"next lint"},"engines":{"node":">=18.0.0","npm":">=10.0.0"},"dependencies":{"@aiguestdj/shared":"^1.0.46","@emotion/react":"^11.11.3","@emotion/styled":"^11.11.0","@mui/icons-material":"^5.15.3","@mui/joy":"^5.0.0-beta.21","@mui/lab":"^5.0.0-alpha.134","axios":"^1.4.0","fetch-jsonp":"^1.3.0","next":"^14.1.4","next-compose-plugins":"^2.2.1","next-connect":"^1.0.0","notistack":"^3.0.1","openai":"^4.28.0","plex-api":"^5.3.2","qs":"^6.12.0","react":"^18.2.0","react-dom":"^18.2.0","sass":"^1.63.3","sharp":"^0.33.2"},"devDependencies":{"@types/node":"^20.3.0","@types/qs":"^6.9.14","@types/react":"^18.2.11","@types/react-dom":"^18.2.7","eslint":"8.42.0","eslint-config-next":"^14.1.4"},"_id":"@aiguestdj/plex-extension@1.0.51","gitHead":"83a9e662bcbed3a6159385449641f215ce14a417","_nodeVersion":"20.9.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-RzvT+FmeF6P5TGoXgHkuIAEg5pSAB9TWPbKLg1aK1dMSqG/dhsN6zgemBY45Ko6RNaeDt+gaC50qnRd8ShOK/Q==","shasum":"4b1ffe324edec15c2e6fc56bb8f2fef40c3fc58a","tarball":"https://registry.npmjs.org/@aiguestdj/plex-extension/-/plex-extension-1.0.51.tgz","fileCount":107,"unpackedSize":6774626,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD4UZ6SgIBQEGnN5LUi7oVopozJgqOQLOJvtYP639CAiQIhAKw+iD7V1hv9eZB9F/B23YhztA+3g6tGXPGIo/8tOjRz"}]},"_npmUser":{"name":"jjdenhertog","email":"jaap@meningreen.agency"},"directories":{},"maintainers":[{"name":"jjdenhertog","email":"jaap@meningreen.agency"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/plex-extension_1.0.51_1712845988376_0.5148058302040359"},"_hasShrinkwrap":false},"1.0.52":{"name":"@aiguestdj/plex-extension","version":"1.0.52","description":"Plex extension to work with AI Guest DJ","scripts":{"deploy":"npm run build && npm version patch --no-git-tag-version && npm publish","docker":"PACKAGE_VERSION=$(grep '\"version\"' package.json | cut -d '\"' -f 4 | head -n 1) && docker buildx build --platform=linux/amd64,linux/arm64 -t aiguestdj/plex-extension-aiguestdj -t aiguestdj/plex-extension-aiguestdj:$PACKAGE_VERSION --push .","dev":"next dev","build":"next build","start":"next start","lint":"next lint"},"engines":{"node":">=18.0.0","npm":">=10.0.0"},"dependencies":{"@aiguestdj/shared":"^1.0.54","@emotion/react":"^11.11.3","@emotion/styled":"^11.11.0","@mui/icons-material":"^5.15.3","@mui/joy":"^5.0.0-beta.21","@mui/lab":"^5.0.0-alpha.134","axios":"^1.4.0","fetch-jsonp":"^1.3.0","next":"^14.1.4","next-compose-plugins":"^2.2.1","next-connect":"^1.0.0","notistack":"^3.0.1","openai":"^4.28.0","plex-api":"^5.3.2","qs":"^6.12.0","react":"^18.2.0","react-dom":"^18.2.0","sass":"^1.63.3","sharp":"^0.33.2","string-similarity-js":"^2.1.4"},"devDependencies":{"@types/node":"^20.3.0","@types/qs":"^6.9.14","@types/react":"^18.2.11","@types/react-dom":"^18.2.7","eslint":"8.42.0","eslint-config-next":"^14.1.4"},"_id":"@aiguestdj/plex-extension@1.0.52","gitHead":"8f301c9d3a897099f2d678295d2099d4e92581ac","_nodeVersion":"20.9.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-UfwgPQjJjSAFd1GHsFn1k7JCDuRH1Tj+x9Ztd4c8SczJOctx5UUvAinkH3+S0K0Q4h8MMNeDplulnp71jTgQlw==","shasum":"fce4f845bbc53eaaf50f540140acd1077e5163e5","tarball":"https://registry.npmjs.org/@aiguestdj/plex-extension/-/plex-extension-1.0.52.tgz","fileCount":107,"unpackedSize":6790667,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCRkOdYHKbimsKO9yT50Bd+QN5qtxfTZRPieXJ7nEU0UwIgNUfVn8ppFVLATVS0TMfsMNZ62ovF+NhzdUtQIMxd+1o="}]},"_npmUser":{"name":"jjdenhertog","email":"jaap@meningreen.agency"},"directories":{},"maintainers":[{"name":"jjdenhertog","email":"jaap@meningreen.agency"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/plex-extension_1.0.52_1712925042689_0.13995576000711063"},"_hasShrinkwrap":false},"1.0.53":{"name":"@aiguestdj/plex-extension","version":"1.0.53","description":"Plex extension to work with AI Guest DJ","scripts":{"deploy":"npm run build && npm version patch --no-git-tag-version && npm publish","docker":"PACKAGE_VERSION=$(grep '\"version\"' package.json | cut -d '\"' -f 4 | head -n 1) && docker buildx build --platform=linux/amd64,linux/arm64 -t aiguestdj/plex-extension-aiguestdj -t aiguestdj/plex-extension-aiguestdj:$PACKAGE_VERSION --push .","dev":"next dev","build":"next build","start":"next start","lint":"next lint"},"engines":{"node":">=18.0.0","npm":">=10.0.0"},"dependencies":{"@aiguestdj/shared":"^1.0.54","@emotion/react":"^11.11.3","@emotion/styled":"^11.11.0","@mui/icons-material":"^5.15.3","@mui/joy":"^5.0.0-beta.21","@mui/lab":"^5.0.0-alpha.134","@spotify/web-api-ts-sdk":"^1.2.0","axios":"^1.4.0","fetch-jsonp":"^1.3.0","next":"^14.1.4","next-compose-plugins":"^2.2.1","next-connect":"^1.0.0","notistack":"^3.0.1","openai":"^4.28.0","plex-api":"^5.3.2","qs":"^6.12.0","react":"^18.2.0","react-dom":"^18.2.0","sass":"^1.63.3","sharp":"^0.33.2","string-similarity-js":"^2.1.4"},"devDependencies":{"@types/node":"^20.3.0","@types/qs":"^6.9.14","@types/react":"^18.2.11","@types/react-dom":"^18.2.7","eslint":"8.42.0","eslint-config-next":"^14.1.4"},"_id":"@aiguestdj/plex-extension@1.0.53","gitHead":"8f301c9d3a897099f2d678295d2099d4e92581ac","_nodeVersion":"20.9.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-io2MVO431IOTX+Jk+hu9ikcokuJl7C2ShTR8CXZ/3buR0i4/w2DJ/gIzTHX4clVf+jhmfAzgiS438H4fdb8IXg==","shasum":"edda186b16e1ac579a3ae835b3d6eecf350d25f0","tarball":"https://registry.npmjs.org/@aiguestdj/plex-extension/-/plex-extension-1.0.53.tgz","fileCount":109,"unpackedSize":6803347,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAqSj4NZbE6uMTymyiHwKciOewdxaSwiY5gHpXKxb9YJAiEAxyOWz0iRG3G7H+plN2LfGuWxSvdXQP2wkdI70riunHY="}]},"_npmUser":{"name":"jjdenhertog","email":"jaap@meningreen.agency"},"directories":{},"maintainers":[{"name":"jjdenhertog","email":"jaap@meningreen.agency"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/plex-extension_1.0.53_1712926451994_0.34629815873532177"},"_hasShrinkwrap":false},"1.0.54":{"name":"@aiguestdj/plex-extension","version":"1.0.54","description":"Plex extension to work with AI Guest DJ","scripts":{"deploy":"npm run build && npm version patch --no-git-tag-version && npm publish","docker":"PACKAGE_VERSION=$(grep '\"version\"' package.json | cut -d '\"' -f 4 | head -n 1) && docker buildx build --platform=linux/amd64,linux/arm64 -t aiguestdj/plex-extension-aiguestdj -t aiguestdj/plex-extension-aiguestdj:$PACKAGE_VERSION --push .","dev":"next dev","build":"next build","start":"next start","lint":"next lint"},"engines":{"node":">=18.0.0","npm":">=10.0.0"},"dependencies":{"@aiguestdj/shared":"^1.0.54","@emotion/react":"^11.11.3","@emotion/styled":"^11.11.0","@mui/icons-material":"^5.15.3","@mui/joy":"^5.0.0-beta.21","@mui/lab":"^5.0.0-alpha.134","@spotify/web-api-ts-sdk":"^1.2.0","axios":"^1.4.0","fetch-jsonp":"^1.3.0","next":"^14.1.4","next-compose-plugins":"^2.2.1","next-connect":"^1.0.0","notistack":"^3.0.1","openai":"^4.28.0","plex-api":"^5.3.2","qs":"^6.12.0","react":"^18.2.0","react-dom":"^18.2.0","sass":"^1.63.3","sharp":"^0.33.2","string-similarity-js":"^2.1.4"},"devDependencies":{"@types/node":"^20.3.0","@types/qs":"^6.9.14","@types/react":"^18.2.11","@types/react-dom":"^18.2.7","eslint":"8.42.0","eslint-config-next":"^14.1.4"},"_id":"@aiguestdj/plex-extension@1.0.54","gitHead":"bae4e00c7dcd6bd97b61a1107c1daac698ae21f8","_nodeVersion":"20.9.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-M+/2JrZLJxUVr517kOkUY2ciSxCF2E3tgrhFz+F7I6q392JmOnpEqVilW75E1Ly4Dr5fgtJX/hlMK5WZa2SOQA==","shasum":"c187e30397beef61993d52da3c447d088e7f8809","tarball":"https://registry.npmjs.org/@aiguestdj/plex-extension/-/plex-extension-1.0.54.tgz","fileCount":109,"unpackedSize":6800944,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC+i0DdV3NCv9dnWsE5GB2m035Qi0wKU0rWXY3LOgNwcAIhAMJWQFHRkq+dt+5s/7DwLolw8N9UcmY0UF1yow8HYfvQ"}]},"_npmUser":{"name":"jjdenhertog","email":"jaap@meningreen.agency"},"directories":{},"maintainers":[{"name":"jjdenhertog","email":"jaap@meningreen.agency"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/plex-extension_1.0.54_1712926854424_0.3915525023958173"},"_hasShrinkwrap":false}},"time":{"created":"2024-04-07T09:03:49.223Z","1.0.39":"2024-04-07T09:03:49.564Z","modified":"2024-04-12T13:00:54.826Z","1.0.40":"2024-04-07T09:18:35.842Z","1.0.42":"2024-04-07T09:57:37.562Z","1.0.43":"2024-04-07T12:50:37.962Z","1.0.45":"2024-04-07T13:11:15.499Z","1.0.46":"2024-04-07T19:32:46.023Z","1.0.47":"2024-04-08T10:07:39.221Z","1.0.48":"2024-04-08T10:19:15.437Z","1.0.49":"2024-04-11T08:12:00.975Z","1.0.51":"2024-04-11T14:33:08.614Z","1.0.52":"2024-04-12T12:30:42.917Z","1.0.53":"2024-04-12T12:54:12.246Z","1.0.54":"2024-04-12T13:00:54.626Z"},"maintainers":[{"name":"jjdenhertog","email":"jaap@meningreen.agency"}],"description":"Plex extension to work with AI Guest DJ","readme":"# AI Guest DJ Plex Extension\n\nThis is the repository for a [Plex](https://plex.tv/) extension to work with [AI Guest DJ](https://aiguestdj.com). Using this extension you can match the songs in your library with the playlist created by the AI Guest DJ GPT.\n\n<p align=\"center\"><a href=\"https://aiguestdj.com\" target=\"_blank\" rel=\"noopener noreferrer\"><img width=\"100\" src=\"https://aiguestdj.com/img/logo.png\" alt=\"AI Guest DJ logo\"></a></p>\n\n<p align=\"center\">\n  <a href=\"https://www.npmjs.com/package/next\"><img src=\"https://img.shields.io/node/v/next.svg?sanitize=true\" alt=\"Version\"></a>\n</p>\n\n------------\n\n## Docker installation\n\nThe easiest way to use this extension is by starting a docker container. Once up and running you will find the instance at http://[ipaddress]:9020. You can change the port number by setting the `PORT` environment variable.\n\n### Open AI API key\n\nYour Open AI API key is stored as an environment variable of the docker instance. You can find your API keys in your [User settings of Open AI](https://platform.openai.com/api-keys). If you don't have an API key you can remove this line.\n\n### Spotify import\n\nTo use the Import Playlist option you need a Spotify API credentials to make the connection. You can get these credentials at the [Spotify Developer site](https://developer.spotify.com/). More information can also be found at the [Gettin started section](https://developer.spotify.com/documentation/web-api) of the documentation.\n\n### Binding volume\n\nBinding a volume to the `/app/config` folder enables persistant storage of the configuration files. Currently the configuration is used to monitor the last requests made to Open AI. If you don't want to use persistant storage you can remove this line.\n\n```sh\ndocker run -d \\\n    -e PORT=9020 \\\n    -e OPENAI_KEY=PASTE_YOUR_OPEN_AI_API_KEY_HERE \\\n    -e SPOTIFY_API_CLIENT_ID=PASTE_YOUR_SPOTIFY_CLIENT_ID_HERE \\\n    -e SPOTIFY_API_CLIENT_SECRET=PASTE_YOUR_SPOTIFY_CLIENT_SECRET_HERE \\\n    -v /local/directory/:/app/config:rw \\\n    --name=aiguestdj-plex \\\n    --network=host \\\n    --restart on-failure:4 \\\n    aiguestdj/plex-extension-aiguestdj\n```\n\n## Portainer installation\n\nCreate a new stack with the following configuration when using portainer.\n\n```yaml\nversion: '3.3'\nservices:\n    aiguestdj-plex:\n        container_name: aiguestdj-plex\n        restart: unless-stopped\n        volumes:\n            - '/local/directory:/app/config'\n        environment:\n            - PORT=9020\n            - OPENAI_KEY=PASTE_YOUR_OPEN_AI_API_KEY_HERE\n            - SPOTIFY_API_CLIENT_ID=PASTE_YOUR_SPOTIFY_CLIENT_ID_HERE\n            - SPOTIFY_API_CLIENT_SECRET=PASTE_YOUR_SPOTIFY_CLIENT_SECRET_HERE\n        network_mode: \"host\"\n        image: 'aiguestdj/plex-extension-aiguestdj:latest'\n```\n\n## Development\n\nThe extension is build using NextJS. So you can also checkout this repo and simply use the next commands like `npm run dev`, `npm run build` and `npm run start`.\n","readmeFilename":"README.md"}