{"_id":"react-modern-audio-player","_rev":"43-5dc850736d4456ba7c56158d37e9194e","name":"react-modern-audio-player","dist-tags":{"next":"2.4.4","latest":"2.4.4"},"versions":{"0.0.1":{"name":"react-modern-audio-player","version":"0.0.1","_id":"react-modern-audio-player@0.0.1","maintainers":[{"name":"slash9494","email":"slash9494@naver.com"}],"homepage":"https://github.com/slash9494/react-modern-audio-player/","bugs":{"url":"https://github.com/slash9494/react-modern-audio-player/issues"},"dist":{"shasum":"8ff4305c102c5e7d1251d72d1b20ac1cb94d3dc7","tarball":"https://registry.npmjs.org/react-modern-audio-player/-/react-modern-audio-player-0.0.1.tgz","fileCount":69,"integrity":"sha512-ij2P681xyccLIRc1/hrCkZuQ4GSuvdDMCUQqq5UQJ/CSC7I/12PEEeAHPWfn7UcNuv2jjrA0pHsT1nyKwtfKCA==","signatures":[{"sig":"MEUCIQDK/kwjzrZw6Xnq4TcF3sRlNGCe7+koET+7DTtrxFuX1QIgfJZ0SbCZU2lSVekKGGqFxJ+MpaoKBp3tug3ZxP9nPPM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1226607,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi2CXKACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpYfBAAhsPmNM02U+K3hlFgjzsZQeRDJPVpUb7+uesdnExZV6JwT07j\r\nYu8i1dElkf5xx7LdWGq35D2GM7CPv64JCDiOl4VQrB6gSkKq+8RMFYKu2X4j\r\n/JA7w/MQN8jRuMedCbeKgqOs8SGRjprxN/Kor2FgYOihXk0bN0G++JhdHeQY\r\nQzBrcxIodHDxz3wflTnmVGHJR91nX4GSYM4AjB1ygDZq/jjkxfc5ZK8tjwhd\r\nJsXtdh23siGiseyROwpBFZL3zNin+lRXJq3oLXkQF7ogBaJzHntgw0qlP19D\r\nDVs7rDlk4wnIG14b33T3uxMHvPDx24fyo/+dn86b512piEiEKpowdlB+vsa/\r\nDxnQubkwAddhq013kE2wO9bZAtFoQ8+6c98SVlz4P2ahKKj035piO6OX5IpE\r\nEshv8Sq8gMknhErCIHF51yo1c/lQD1z2CKYCp0qtXsCB89+RozZd9eHoWoD6\r\nP9Gs1f4IDRBVFi4ZsZs95HBqUut6L9EOhgrRk2Y2/PBaWHiLZXyvuzc1fobs\r\n8jRSMqYvcLKiSnIiEc4ywhA9I0eKNUgnXNWTJK/OfMLLjKF/Q+YrhtfdDErP\r\n0+3UluEAWpVZg+2y4K7h5wWl5AFHA8VD8tG4vRNlM4si7i0og3o4F8ZNDMSl\r\nSGz2Nj6NK5pXwY7Bxw7OlNV3ln6WMZgml78=\r\n=aoLb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.cjs","esnext":"dist/index.es.js","module":"dist/index.es.js","exports":{".":{"import":"./dist/index.es.js","require":"./dist/index.cjs"}},"gitHead":"bded1fa2ccea516c1515855b5401e72291c8ace1","scripts":{"dev":"vite --host","build":"rm -rf dist && tsc && vite build","preview":"vite preview","publish":"rm -rf dist && tsc && vite build"},"typings":"dist/types/index.d.ts","_npmUser":{"name":"slash9494","email":"slash9494@naver.com"},"repository":{"url":"git+https://github.com/slash9494/react-modern-audio-player.git","type":"git"},"_npmVersion":"8.1.0","directories":{},"_nodeVersion":"16.13.0","dependencies":{"classnames":"^2.3.1","react-icons":"^4.4.0","wavesurfer.js":"^6.2.0","styled-components":"^5.3.5","@react-spectrum/view":"^3.2.1","@types/wavesurfer.js":"^6.0.3","@react-spectrum/button":"^3.8.1","@react-spectrum/layout":"^3.3.1","@react-spectrum/tooltip":"^3.2.1","@react-spectrum/provider":"^3.4.1","@types/styled-components":"^5.1.25","@react-spectrum/theme-default":"^3.3.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^2.9.0","typescript":"^4.6.3","@types/node":"^17.0.25","@types/react":"^18.0.1","vite-plugin-dts":"^1.1.0","@types/react-dom":"^18.0.0","vite-plugin-libcss":"^1.0.5","@vitejs/plugin-react":"^1.0.7"},"peerDependencies":{},"_npmOperationalInternal":{"tmp":"tmp/react-modern-audio-player_0.0.1_1658332618610_0.45767516089606786","host":"s3://npm-registry-packages"}},"0.0.2":{"name":"react-modern-audio-player","version":"0.0.2","_id":"react-modern-audio-player@0.0.2","maintainers":[{"name":"slash9494","email":"slash9494@naver.com"}],"homepage":"https://github.com/slash9494/react-modern-audio-player/","bugs":{"url":"https://github.com/slash9494/react-modern-audio-player/issues"},"dist":{"shasum":"d84e16971ef3fc99aecf289119ee94a7013e2112","tarball":"https://registry.npmjs.org/react-modern-audio-player/-/react-modern-audio-player-0.0.2.tgz","fileCount":69,"integrity":"sha512-HgG5k167+SAk4B70+jWvgBpIIemrjMzLFqrjHInyD69dg65VrAfdDQaxuCq3XnginrB9dbpTaNIq78RUJpEWWw==","signatures":[{"sig":"MEUCIQCVlml+RRD7gpWfmhBSE/qdRcdpJI1rZtFOitknfiUE8QIgTQOGBm1iRHvlZTNV9emEzqgS1Y/aXiSQkXxb9YWHiWo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1215638,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi2DfyACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpT4hAAnUgrYnAlHzCM817LvloUZe4Q7ue1TZ405j0XPXAmhh+4d+G8\r\nZAixh2D2hN+xPIrVDqzrFrU+ejEPDRZqek1fZG7dzBmzFivu1a9bIWmUWVi0\r\nprspb94IV7T7fJPey9o0yn0uG3Ff82VTo5T38p1Ua3QgnAhx552ZEEBfAknN\r\n3m+i6Cublb1nzmYCA3AlQNaZ9VbJsZ/nDVgCygzNpYNIVEns49EZvQzpizgv\r\nhmCMZGktLotR+4GngujhLYrLM+4s/ARMRWuRQd0BA080E6YDmyMtVTXu2/kH\r\n6dIchbza14ZgXRgKws5Tn0N0czOsxH9QJv83FuG/jxvd+jkG94L7FlvYk+gb\r\nTxlD4WomYysH1BZ77Ff/3EfrCn2jF9vAR33tWUNvQsIKO6xkM5wK1ZLng437\r\nO4vTNagwnb/PsSbKBAieLUl70tOkA+B/sVt2LnR0wZXaGn0N+Kdd5fHWlYYq\r\n542nRIPd/XLzQOIh6j8ydamjbJncqrd03e8WNnsWXCXrbwAqygtIBBLraKXW\r\no4kh4GbO/p++oyi471ofsduH2HYezZFerxNEjQxOKWQVvlgj+FaBVcIVKGUl\r\ndTa22Df+JaUib63Gu54UFWPU+/m/KUogsXp/6O7VGkegN4vySy2r22/lQJBg\r\nJeRknOprntl692Q+JB41TMaS3/bOn4chYZ4=\r\n=ce4g\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.cjs","esnext":"dist/index.es.js","module":"dist/index.es.js","exports":{".":{"import":"./dist/index.es.js","require":"./dist/index.cjs"}},"gitHead":"09ddef0e9ca18cc8367ada32f57856ca05ded1be","scripts":{"dev":"vite --host","build":"rm -rf dist && tsc && vite build","preview":"vite preview","publish":"rm -rf dist && tsc && vite build"},"typings":"dist/types/index.d.ts","_npmUser":{"name":"slash9494","email":"slash9494@naver.com"},"repository":{"url":"git+https://github.com/slash9494/react-modern-audio-player.git","type":"git"},"_npmVersion":"8.1.0","directories":{},"_nodeVersion":"16.13.0","dependencies":{"classnames":"^2.3.1","react-icons":"^4.4.0","wavesurfer.js":"^6.2.0","styled-components":"^5.3.5","@react-spectrum/view":"^3.2.1","@types/wavesurfer.js":"^6.0.3","@react-spectrum/button":"^3.8.1","@react-spectrum/layout":"^3.3.1","@react-spectrum/tooltip":"^3.2.1","@react-spectrum/provider":"^3.4.1","@types/styled-components":"^5.1.25","@react-spectrum/theme-default":"^3.3.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^2.9.0","typescript":"^4.6.3","@types/node":"^17.0.25","@types/react":"^18.0.1","vite-plugin-dts":"^1.1.0","@types/react-dom":"^18.0.0","vite-plugin-libcss":"^1.0.5","@vitejs/plugin-react":"^1.0.7"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0"},"_npmOperationalInternal":{"tmp":"tmp/react-modern-audio-player_0.0.2_1658337266633_0.7617906235786605","host":"s3://npm-registry-packages"}},"0.0.3":{"name":"react-modern-audio-player","version":"0.0.3","_id":"react-modern-audio-player@0.0.3","maintainers":[{"name":"slash9494","email":"slash9494@naver.com"}],"homepage":"https://github.com/slash9494/react-modern-audio-player/","dist":{"shasum":"43d2bd1d3af421c9fe98072550f626d5e5e6c2c0","tarball":"https://registry.npmjs.org/react-modern-audio-player/-/react-modern-audio-player-0.0.3.tgz","fileCount":104,"integrity":"sha512-sPXKEDYlWhQpWIOkMZ4LdXKsWf46yp77qoW62KzZNo+jF4ho+hlpPsWcfdGto6Eq/U7EWX18QtyrBJ/fLJuxSA==","signatures":[{"sig":"MEUCIA1UbkSej2QvmW449KXzNQbpHDbLVwfgh+5KOeL7LaxmAiEAhkM8+xAfHnB30zxPYW+OmgozqJT6ZDXRMlsdC8+UIYU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":904697,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi2W6zACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoUgg//ehPHmDehkRagWp1g0O+7wfoqQWLeoXlEZkwBQ4hoQsG9SsQI\r\neCYBbwaBxSY/tZmc1q5JDbPgt4pc1FsKcLUGz7HpCcibrbIKsUUBC+6ByKmV\r\n8gq+lXLvgQ2zhfD5A7gU9ABLDAScYlirkAkA0+AXSTtv98i2FycLYmOVQzYq\r\nraEPqVDJYTBKz//pTzxl4BO3XjMXhs/KiRUEZB16GuFEzKIy7k9vm17AZXL4\r\n9yt0Hvb9S9MKTlwoabfUhPJ7Ca/OhldRR9eQJKA5Ym6G94kHPJN8em7QI90J\r\nkyuoXlCGg0l9M9K/kknKKOxAZmrlKMwhg1t/WDfXjL0Ss2DJ1wQ6K3iwoCcZ\r\nzGYTp6jVZts+JeilcYxVL65A9zLzbr3leN57DdA0+v448MrPWdtViHepa++h\r\nZ+Xp5jwNRlzFcNKnnzvWT8l3KefVUI5GHVX6yuRxpP/x2Tprj+DHRQ9+eKEX\r\nLfzk8Jo4gMrkCI0fMfroV9v6Y3FeUMvDSFUYe/lRRoZAPLho2A4IKkSoKFDy\r\nmb9qEUFG3YrduI1ZlIDclby60tzOzG5FMeSy0PHJa4BVvevOecR5qFA+QuYP\r\nzut/mxUBTId7Noe5R6RhSpncmpmkSrrk3MbxOazMgh1u6m+Edn40MaTqefGQ\r\nM/tAka7Uf58BmvJY/iiDYXef2/wBWo+9Nw0=\r\n=o8CD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.cjs","esnext":"dist/index.es.js","module":"dist/index.es.js","exports":{".":{"import":"./dist/index.es.js","require":"./dist/index.cjs"}},"scripts":{"dev":"vite --host","build":"rm -rf dist && tsc && vite build","preview":"vite preview","publish":"rm -rf dist && tsc && vite build"},"typings":"dist/types/index.d.ts","_npmUser":{"name":"slash9494","email":"slash9494@naver.com"},"repository":{"url":"git+https://github.com/slash9494/react-modern-audio-player.git","type":"git"},"description":"## Override Style","directories":{},"dependencies":{"classnames":"^2.3.1","react-icons":"^4.4.0","wavesurfer.js":"^6.2.0","styled-components":"^5.3.5","@react-spectrum/view":"^3.2.1","@types/wavesurfer.js":"^6.0.3","@react-spectrum/layout":"^3.3.1","@react-spectrum/provider":"^3.4.1","@types/styled-components":"^5.1.25","@react-spectrum/theme-default":"^3.3.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^2.9.0","typescript":"^4.6.3","@types/node":"^17.0.25","@types/react":"^18.0.1","vite-plugin-dts":"^1.1.0","@types/react-dom":"^18.0.0","vite-plugin-libcss":"^1.0.5","@vitejs/plugin-react":"^1.0.7"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0"},"_npmOperationalInternal":{"tmp":"tmp/react-modern-audio-player_0.0.3_1658416819045_0.7306337977944608","host":"s3://npm-registry-packages"}},"1.0.0":{"name":"react-modern-audio-player","version":"1.0.0","license":"MIT","_id":"react-modern-audio-player@1.0.0","maintainers":[{"name":"slash9494","email":"slash9494@naver.com"}],"homepage":"https://github.com/slash9494/react-modern-audio-player/","dist":{"shasum":"1d1d6b92071aed61495fcd1b41cc10caec0e521f","tarball":"https://registry.npmjs.org/react-modern-audio-player/-/react-modern-audio-player-1.0.0.tgz","fileCount":105,"integrity":"sha512-SPSgptN0o1dV60pS1HvykEBVsN5YjckMjxz9/IhHMvSI4EDuN12FJkKsWxsxECFiIrOxtdojjt5h6Dws4YB8jA==","signatures":[{"sig":"MEQCIDpqr9U0LR8v6cV2gEqoxA7WudbLq2IKdMdczXQ2S8BMAiBLn1sVicLplR2aqeheYD6fIq7kgFmjI5yYQyHdsZnT+w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":913617,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi2rYjACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo+1A//Rg6Tj2lLkWT/B1NbUKvX+f84pVDj6AgJW8ek+hR1i97mcvBu\r\nbWY35hU0vcZlv2Rcy35v5eTpMpgxY85XFlCnZ9+LsXiqnP7irGuQciwc7AJY\r\nC1dsc4APj8f74k6OTvVmsEk7LtnC8pu00VrGYbrRBlRQ/dIePWvCnBK8M2aL\r\neh5fQTblOzD7bF1uukWvaJa3Gnf8MV/DQqIXU92sG5TwQoBpYa+k1nhKfopZ\r\nlkSm86ZPVRSwDdEzqK/1IuyabvNmJSsFXEmYYtWHQN05T0iZtDZmkYXE4SYf\r\nha7dAGiERkh0XdxURScEmxPSDkzSpBSzUiT4nCpvp5jr/L3Lf4nJPyxdzyjQ\r\nESsWRJOpl4l3zA8ia2JTmrBPgILommlbEtSsOZddXOb8iyAE/SN3DZfdpcPG\r\nZaJTDxraqp/le/lma7hS3KLb+jjrKfGtb0swRaRib6NXmzQ8iUrAcBDdjIWg\r\nuehomHmjEHf98EuWcxZuI+czulnXoNTmGGYvqiUz4wlmzKJIGfDv4MgMEILA\r\nS44izUeraixI4uHFR+sHR8EI9jy4j4mDyeWGy4Zj16vFv63/XlhFURefEBpd\r\n5XI8KMNBLdlIhmXhgPaon6vG/Caz18IqSc4UNOmtm1Qu/7aFlZQKbaxOWwiz\r\noJOAn+XdRN2Hcfqqpcrri4VWEHdvi0PW1y4=\r\n=Qu2Q\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.cjs","esnext":"dist/index.es.js","module":"dist/index.es.js","exports":{".":{}},"scripts":{"dev":"vite --host","build":"rm -rf dist && tsc && vite build","preview":"vite preview","publish":"rm -rf dist && tsc && vite build"},"typings":"dist/types/index.d.ts","_npmUser":{"name":"slash9494","email":"slash9494@naver.com"},"repository":{"url":"git+https://github.com/slash9494/react-modern-audio-player.git","type":"git"},"description":"## This can offer waveform by `wavesurfer.js` <img width=\"100%\" src=\"https://user-images.githubusercontent.com/70849655/180435472-f043dbb4-54df-43e0-bc5c-67492510e817.png\" alt=\"\">","directories":{},"licenseText":"MIT License\n\nCopyright (c) 2022 LYH\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","dependencies":{"classnames":"^2.3.1","react-icons":"^4.4.0","wavesurfer.js":"^6.2.0","styled-components":"^5.3.5","@react-spectrum/view":"^3.2.1","@types/wavesurfer.js":"^6.0.3","@react-spectrum/layout":"^3.3.1","@react-spectrum/provider":"^3.4.1","@types/styled-components":"^5.1.25","@react-spectrum/theme-default":"^3.3.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^2.9.0","typescript":"^4.6.3","@types/node":"^17.0.25","@types/react":"^18.0.1","vite-plugin-dts":"^1.1.0","@types/react-dom":"^18.0.0","vite-plugin-libcss":"^1.0.5","@vitejs/plugin-react":"^1.0.7"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0"},"_npmOperationalInternal":{"tmp":"tmp/react-modern-audio-player_1.0.0_1658500643673_0.08315340544602434","host":"s3://npm-registry-packages"}},"1.0.1":{"name":"react-modern-audio-player","version":"1.0.1","keywords":["audio","player","react","react-modern-audio-player"],"_id":"react-modern-audio-player@1.0.1","maintainers":[{"name":"slash9494","email":"slash9494@naver.com"}],"homepage":"https://github.com/slash9494/react-modern-audio-player/","bugs":{"url":"https://github.com/slash9494/react-modern-audio-player/issues"},"dist":{"shasum":"b488b1bcad11ca3e68340aeb73af1d3cc5720a27","tarball":"https://registry.npmjs.org/react-modern-audio-player/-/react-modern-audio-player-1.0.1.tgz","fileCount":78,"integrity":"sha512-a3YzPdipAcWPIx7VmhcZt1WOixVN0P7qEPQgBt/TGkDBO3cO6vOitkw5ObJOpj+PXKWvwqGyFZpgI6vSQyoGVQ==","signatures":[{"sig":"MEYCIQCmdFB8Y73DRmxxZ3MoypqbG/26CwTTOgXRfWXd7cY9ewIhAMCb3ozmvecHJGcOti1cJ8kA82NG86fOPgxj4k0MDDFX","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":913847,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi3kjPACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmrmkw/+PfvD+4oLUCIJAXFLSisuA+uxDpi6QmKaRDEaDWd5ZoQTJIY9\r\nGN3hwqoXXMemLp3MHsgHT4a7EGBzu+ogQp1LRAwmvoYNWyX0QqZdsp3RmB+S\r\nfcfO/kkA5RimFzcHoTDr6y284tuUesgK4NUmkYuS70q5iRLnYgKykLHGTTe6\r\nFgUT+DvaZHJbbcvN3lRfoXnpnZkuwiAXFfdjbfR5b1DlOgiZkle+/iWuuWw0\r\nSL6mTLPlqSvdoYqezjdCMLCXb+/R7qE6CfZ256b5OVAc1gGvdYCw/ELCTx77\r\nMDdT2uuin8u9Fkcqp8NOPuv87i7g7KHnRkwddOV6UsxVbDKL5F/FO5QbZYy2\r\nGmKICPngREiS5++MrLL6MOoiKsGjb+mzIB9S4UNKPpSQKXYyzwk83iXzslIp\r\nQ4tBciOFBsHW6f69/QVzdBCDMi4rMQulLGlpYFa7HyIJw0pa+l1l8uFn+Z87\r\nXT6+vfvvIBSxUdqVRifplCj2Qmw71eZIWsQQ1dYgL2ioCruFO8E4kmYVLfpe\r\ntMEQrs8BqqpCsQdWjWhalbWzYBNhkXetNzCAlCfDnoja8Ty6rnPPprkF7pqm\r\nGZLeBC9MmUtpPfCoNav/y19VzqWUrWmF3E89GVv7P2n65N56zNo//ZF9vf4P\r\nS3aeVPA9vGgJ0CkkBI+/YbiGjuJduB054SA=\r\n=KqjD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.cjs","esnext":"dist/index.es.js","module":"dist/index.es.js","gitHead":"4c98486fce07c17bcc3760e14056982a24ba1d69","scripts":{"dev":"vite --host","build":"rm -rf dist && tsc && vite build","preview":"vite preview","publish":"npm publish --access public"},"typings":"dist/types/index.d.ts","_npmUser":{"name":"slash9494","email":"slash9494@naver.com"},"repository":{"url":"git+https://github.com/slash9494/react-modern-audio-player.git","type":"git"},"_npmVersion":"8.11.0","description":"<p align=\"center\"> <img width=\"20%\" src=\"https://user-images.githubusercontent.com/70849655/180391190-2b268d23-c9f3-4e95-9fce-090897842c04.png\" alt=\"rm-audio-player\" /> <h1 align=\"center\">React Modern Audio Player</h1> </p>","directories":{},"_nodeVersion":"16.16.0","dependencies":{"classnames":"^2.3.1","react-icons":"^4.4.0","wavesurfer.js":"^6.2.0","styled-components":"^5.3.5","@react-spectrum/view":"^3.2.1","@types/wavesurfer.js":"^6.0.3","@react-spectrum/layout":"^3.3.1","@react-spectrum/provider":"^3.4.1","@types/styled-components":"^5.1.25","@react-spectrum/theme-default":"^3.3.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^2.9.0","typescript":"^4.6.3","@types/node":"^17.0.25","@types/react":"^18.0.1","vite-plugin-dts":"^1.1.0","@types/react-dom":"^18.0.0","vite-plugin-libcss":"^1.0.5","@vitejs/plugin-react":"^1.0.7"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0"},"_npmOperationalInternal":{"tmp":"tmp/react-modern-audio-player_1.0.1_1658734798922_0.38733685516310534","host":"s3://npm-registry-packages"}},"1.1.1":{"name":"react-modern-audio-player","version":"1.1.1","keywords":["audio","player","react","react-modern-audio-player"],"_id":"react-modern-audio-player@1.1.1","maintainers":[{"name":"slash9494","email":"slash9494@naver.com"}],"homepage":"https://github.com/slash9494/react-modern-audio-player/","bugs":{"url":"https://github.com/slash9494/react-modern-audio-player/issues"},"dist":{"shasum":"2fb664f1494a413382377a3af021b61ecf86194d","tarball":"https://registry.npmjs.org/react-modern-audio-player/-/react-modern-audio-player-1.1.1.tgz","fileCount":78,"integrity":"sha512-RKoNnDwOFgunaxqTR1HQLqMIgWx9wC4zw154yBzXhTCyfwj4n9ivjNxACxy9MSMfJKj3zcKmu8+bR8L6g3CFjQ==","signatures":[{"sig":"MEYCIQCVB32GV1l4K7/GPe+UnLN2YMMax5JY459QrLihiOKRSQIhAPiG+p7uHItf6Erf3mNxcguNl39fX541pRWJvAGz9IOj","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":913954,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi4q1MACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp/Hg/9Eoszh0fLGNgvKIbikbjtdfvxZ1QI9a68hnTwNMhlJl0vioaF\r\nSCu9xn/YCUInV7MkZPQvx84gpB/6qj3Aa3yIHn/KqEN+LBNt5bc6HuIyLUPE\r\nUTPNHox6AfkCATlhQ+3MKJAb+VYn+KnrfCfMIVcsL0trMtwXJXqvQAKX7+PT\r\n5PUXDn6qXo8kS7C7u4z4NPVJefCLoIiTLMw4gWnEnBaK4cvuqV5FELUzMXes\r\n92ZMgyUUFxC1SND/trkshvpTwMOs3N/SWAuT2xBjZbALdIXYH5VWoXbTSM2C\r\nasiNu15R6cBYQaIf608km1NdV0Gn2vptIkgNLFqI5qUOBwx0ZRAUIA/xPlE6\r\nXFfjEWdIPpEU5ebd/EgHhB9YN2EB1UpHJVAIHSDx9P0JlN6irMvTrqpuqSyO\r\nZBuMWnxHXWALuQbcWX9Ee4LwbQvTzKa+0n98j7lyajZJUemOcsb9/kRSNMvF\r\nBPGN0KPtbWRLVUu7Uk432/yIHaSjkWscq8Nfu9wNz07L+5wCU7HIuSwX95CV\r\nyS81Lahn3a5bZZwNGG5jkBH2+orK16sdriDClgFJKzARzRhsYJYa65PaD90B\r\nGqxxwIKhTh7RtNfWNErdpufwkFiQBfz2bSynu8vwsSUJdKsojWZWALs43SaA\r\nK2hZ59eVXpd+QpgAhenrKA0sT0k7ErT8/YY=\r\n=KZDI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.cjs","esnext":"dist/index.es.js","module":"dist/index.es.js","gitHead":"0bc7736b22cfd934b39fdc1e031d2534a2e53a00","scripts":{"dev":"vite --host","build":"rm -rf dist && tsc && vite build","preview":"vite preview","publish":"npm publish --access public"},"typings":"dist/types/index.d.ts","_npmUser":{"name":"slash9494","email":"slash9494@naver.com"},"repository":{"url":"git+https://github.com/slash9494/react-modern-audio-player.git","type":"git"},"_npmVersion":"8.11.0","description":"<p align=\"center\"> <img width=\"20%\" src=\"https://user-images.githubusercontent.com/70849655/180391190-2b268d23-c9f3-4e95-9fce-090897842c04.png\" alt=\"rm-audio-player\" /> <h1 align=\"center\">React Modern Audio Player</h1> </p>","directories":{},"_nodeVersion":"16.16.0","dependencies":{"classnames":"^2.3.1","react-icons":"^4.4.0","wavesurfer.js":"^6.2.0","styled-components":"^5.3.5","@react-spectrum/view":"^3.2.1","@types/wavesurfer.js":"^6.0.3","@react-spectrum/layout":"^3.3.1","@react-spectrum/provider":"^3.4.1","@types/styled-components":"^5.1.25","@react-spectrum/theme-default":"^3.3.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^2.9.0","typescript":"^4.6.3","@types/node":"^17.0.25","@types/react":"^18.0.1","vite-plugin-dts":"^1.1.0","@types/react-dom":"^18.0.0","vite-plugin-libcss":"^1.0.5","@vitejs/plugin-react":"^1.0.7"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0"},"_npmOperationalInternal":{"tmp":"tmp/react-modern-audio-player_1.1.1_1659022668256_0.787634292967907","host":"s3://npm-registry-packages"}},"1.1.2":{"name":"react-modern-audio-player","version":"1.1.2","keywords":["audio","player","react","react-modern-audio-player"],"_id":"react-modern-audio-player@1.1.2","maintainers":[{"name":"slash9494","email":"slash9494@naver.com"}],"homepage":"https://github.com/slash9494/react-modern-audio-player/","bugs":{"url":"https://github.com/slash9494/react-modern-audio-player/issues"},"dist":{"shasum":"c368b7ef2283fd3438956951cf89407a81b05f2b","tarball":"https://registry.npmjs.org/react-modern-audio-player/-/react-modern-audio-player-1.1.2.tgz","fileCount":78,"integrity":"sha512-HDST17887y+clfVlgh8vJ+Sje9hAy2U+prTnlzpYulk3xGjucv9jtarD6FXwktRuUViok9lRBSbvJhTrhfvoqA==","signatures":[{"sig":"MEUCIDCr5Bs7hbtGXQk5L/zHl2u/v8Ph951Foc+GoN9z6R7UAiEAiUdjDTFArTEkeMWu8Sxguz3rotaMVitPqxdCL0YMwkU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":913910,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi7t4EACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoQfA/9EgnFaEfl0OUVChOxS1eT5YGnRLKcLvmNmBajA4ghmqrLBsNb\r\nn1RrGlX4TAZMoC/t5b2X1jjGJBGOaKXtQOV1PA9AcDy/JIm0NoIilWuimAec\r\nBgsL1qa1w8IyHqD6V8EnDDi6kLlQ2JWNvnr6bIEmVUJo1f9zpXSz8+SQJQah\r\nR//B2524Q1dPw7ETXrJG3RKMPFn/lCqjPAeecsSTxQPsERP8z+lnF9Zd2UYq\r\nHM8kYUH9gg02dL6poRDwAJ+hWS3ClPKT+TOfBGDH97zNQ6eImIE18A94t216\r\nF+C/Jaz1ix6aJyYXUHOkwjZWMyJEYK/VxO+XseQ3z6FLH8lBOHyFqcljDik5\r\ngXzyMfc3qQDMmLQ6n3Qb7wkL7ZsxhXkNOvd8bVR9Ih8W/f58JbBhMtYGow6G\r\n+g870WLoFZXvncgw8aEdIp+FbD34hdHwsUVsresU/r7AapiAhpniwVoEqtvT\r\noXzP7YdzEQg0HSb2HXFtmhSEMK+ns1S4uTbHjflt2Qu6Pf2ihQd4vF3CfzXb\r\ndukiJrsnCxu5zn48/XEd/Ubysgzs56YtH9iXvtwThF1Ee2QpsARqyIVV0sTt\r\ne6UiM+RJ6DHVO7oLEVWI19E62USB10la97/QptpJGlAYN7/9dLcrc5IeY2ya\r\nEslD5dOPlh63kvZEuwBi+8tEFBOrjMHQWKI=\r\n=yC+k\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.cjs","esnext":"dist/index.es.js","module":"dist/index.es.js","gitHead":"24a20c65a443eef63ec7579434918741612ae42d","scripts":{"dev":"vite --host","build":"rm -rf dist && tsc && vite build","preview":"vite preview"},"typings":"dist/types/index.d.ts","_npmUser":{"name":"slash9494","email":"slash9494@naver.com"},"repository":{"url":"git+https://github.com/slash9494/react-modern-audio-player.git","type":"git"},"_npmVersion":"8.11.0","description":"<p align=\"center\"> <img width=\"20%\" src=\"https://user-images.githubusercontent.com/70849655/180391190-2b268d23-c9f3-4e95-9fce-090897842c04.png\" alt=\"rm-audio-player\" /> <h1 align=\"center\">React Modern Audio Player</h1> </p>","directories":{},"_nodeVersion":"16.16.0","dependencies":{"classnames":"^2.3.1","react-icons":"^4.4.0","wavesurfer.js":"^6.2.0","styled-components":"^5.3.5","@react-spectrum/view":"^3.2.1","@types/wavesurfer.js":"^6.0.3","@react-spectrum/layout":"^3.3.1","@react-spectrum/provider":"^3.4.1","@types/styled-components":"^5.1.25","@react-spectrum/theme-default":"^3.3.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^2.9.0","typescript":"^4.6.3","@types/node":"^17.0.25","@types/react":"^18.0.1","vite-plugin-dts":"^1.1.0","@types/react-dom":"^18.0.0","vite-plugin-libcss":"^1.0.5","@vitejs/plugin-react":"^1.0.7"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0"},"_npmOperationalInternal":{"tmp":"tmp/react-modern-audio-player_1.1.2_1659821571765_0.8319630593904688","host":"s3://npm-registry-packages"}},"1.1.3":{"name":"react-modern-audio-player","version":"1.1.3","keywords":["audio","player","react","react-modern-audio-player"],"_id":"react-modern-audio-player@1.1.3","maintainers":[{"name":"slash9494","email":"slash9494@naver.com"}],"homepage":"https://github.com/slash9494/react-modern-audio-player/","bugs":{"url":"https://github.com/slash9494/react-modern-audio-player/issues"},"dist":{"shasum":"9fb3faed3da3219c835914ae224a5a654b968382","tarball":"https://registry.npmjs.org/react-modern-audio-player/-/react-modern-audio-player-1.1.3.tgz","fileCount":80,"integrity":"sha512-no+tlCPDhZd4XJ4GWl3nKuv07vapuOslica3DErqLwAfZd/v5GoRFED4qrRLhDQcb03LrNsC8tlJg/eTeyRlzw==","signatures":[{"sig":"MEQCIAOeWh4MRp/80c/aD9DGCJsJH4IEULID2zsKahY3XD8TAiBp4geESSOp3gcxsliWsKBAqla63tNjkOR9HRLYEHLgQA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":914891,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjDmuWACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq8gxAAnXdx2JOaOFDwn9aV6qg1oco+wuMJmJcgGqJQTPTSnDsKZ/yp\r\nouuvq8FgaasuXM7RppIPq2/vBjY6VgG6cfIdZq+f/CWcphPfqc4j5/7j+nX8\r\nByaRRDuL82re/4QrKrEU116wKWJOu/gG4SFW60/AmbbogUTj2DyGrNhm6OGL\r\nu6SA2/Oo1WRS+nyQL7O+7NvRXot8rDRPgdjHiCfZhho4OQcOeRLrEqb1nk6Q\r\nMhxgQ6kCi5yP0PV0rqHVkr7NcJOLjN1vPXTGjjkuhh56Wzw4G/zWsSA8g4PI\r\nWY40ZvfZr2RwEHbiu8KZDJRwiOT69Tuoxb/xpooMUGHKjTGwSms0dxggBkMm\r\nYz1LEj+qUSvcyIUge5Wu2EG1MejKX0z8bcf3a8bd8H0vI/zE5qnwAuuPtl2l\r\ncktUqs1uKNCbVHd9rJMBCF0xgaXGx6dXiJGuJHDmW69A4xuJz9VL7J39JmqM\r\nhx9YuyyUtqf6bdWogCdLHpIBviEsi6RKfRv5ISen0TeW23OvRk0NjbzSn+eM\r\nfWJypdn0U4uRprVbxQAXTYZVfXo5TEjDwEbUndZZt9M1BN6FooC+Q3tx1jks\r\ngJ6wMTTqoxlANVOki114ujDQldbNbiDM2nEOECvCgnrC2oYdDEHR2PJDTp5w\r\njCWD+EXO8UNZG5vET1xc9Qkz3nfrTPPYn9U=\r\n=FDiW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.cjs","esnext":"dist/index.es.js","module":"dist/index.es.js","gitHead":"b428be7fdb205e48f86ee9447f171b44408c0eb8","scripts":{"dev":"vite --host","build":"rm -rf dist && tsc && vite build","preview":"vite preview"},"typings":"dist/types/index.d.ts","_npmUser":{"name":"slash9494","email":"slash9494@naver.com"},"repository":{"url":"git+https://github.com/slash9494/react-modern-audio-player.git","type":"git"},"_npmVersion":"8.15.0","description":"<p align=\"center\"> <img width=\"20%\" src=\"https://user-images.githubusercontent.com/70849655/180391190-2b268d23-c9f3-4e95-9fce-090897842c04.png\" alt=\"rm-audio-player\" /> <h1 align=\"center\">React Modern Audio Player</h1> </p>","directories":{},"_nodeVersion":"16.17.0","dependencies":{"classnames":"^2.3.1","react-icons":"^4.4.0","wavesurfer.js":"^6.2.0","styled-components":"^5.3.5","@react-spectrum/view":"^3.2.1","@types/wavesurfer.js":"^6.0.3","@react-spectrum/layout":"^3.3.1","@react-spectrum/provider":"^3.4.1","@types/styled-components":"^5.1.25","@react-spectrum/theme-default":"^3.3.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^2.9.0","typescript":"^4.6.3","@types/node":"^17.0.25","@types/react":"^18.0.1","vite-plugin-dts":"^1.1.0","@types/react-dom":"^18.0.0","vite-plugin-libcss":"^1.0.5","@vitejs/plugin-react":"^1.0.7"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0"},"_npmOperationalInternal":{"tmp":"tmp/react-modern-audio-player_1.1.3_1661889430617_0.3466314733339535","host":"s3://npm-registry-packages"}},"1.1.4":{"name":"react-modern-audio-player","version":"1.1.4","keywords":["audio","player","react","react-modern-audio-player"],"_id":"react-modern-audio-player@1.1.4","maintainers":[{"name":"slash9494","email":"slash9494@naver.com"}],"homepage":"https://github.com/slash9494/react-modern-audio-player/","bugs":{"url":"https://github.com/slash9494/react-modern-audio-player/issues"},"dist":{"shasum":"51bea52ee54c2455839cfc7314a319168f369be7","tarball":"https://registry.npmjs.org/react-modern-audio-player/-/react-modern-audio-player-1.1.4.tgz","fileCount":80,"integrity":"sha512-/Rf1OwH3qMCUuzunoKZC9eEm1Sl6jdUniyyY/xg3SsQCqe8dJXfCBfz+afMhvADufMnvLj0B34viUoY7CaBWAw==","signatures":[{"sig":"MEQCICo2VtFGKrGZU0mkMAsW6ipamtgsFwsvMn2IHnAR5PjwAiBNVmYLjDiTbkRuUimhkRVX6M+AWZBJInPzECnZFFfK6A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":914796,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjDnyjACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq76A/9GjRvDdbGnAEAbYVcWrq7PkoIDAelxFD/YEa9ZX10HnYfylc/\r\nN78LBeADN87GpVp8H2EWU/2ZpSS2lWR7jBs10sLX62ldfDCMH2OD1SL+DSmK\r\ngk9fr5pc/v87gpramPWtQGPn3A0hXt+zirv1mf4hXgqSkvzdG/8rUu/VQjWe\r\n7EWKp13xT3gDfvj4a7xYdtL+bcydDyZ3AMNjDGIxSLfZRXh+T+XUR70yl+6T\r\nKlO4e5c4dQRRtMNVCXtEmEhPzep2l+BF4o1RRW9HOEVFoqgdi5sECKId4VD0\r\nBiOzHPGmiU4EBOCTI8y3bRyOn+O33BKMjrpMeqzATHiuOxHP/OkqM0HRlwb6\r\nsw2YsRA3XPMJssuYT7XZaEacYpyNop1ovWdyoDMcEzz5l13hVRZoF4UyN3CG\r\n48LfnWEZ9qEExfv9sHt1ef1PMBDkLJyHRPOG2k0/xXUc4IM/j3LqBcgCDtdk\r\ny6RU9TGZql6MdmJx06GayiUDy1NkJyBaECbNP5nXxlYjNjdF0mZ0OO3qW3+t\r\n6SJGldh0e6XUOxJofN5xCQ7pbTmiQxx6++sVmMlrOuXu6J4yUiHwymSubVYi\r\nEN868UzoVf3+qpkv+5T5mA5XV4Vm+hVqKCnUGmGR4RdpeAv0FiM7nVSYMXLZ\r\nG4xukxQXwmLaePNk8TeGzP6zlD91bMSHigM=\r\n=6Qxb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.cjs","esnext":"dist/index.es.js","module":"dist/index.es.js","gitHead":"da7d410f722a5347d7bd4a6d54e0e5b651e045dc","scripts":{"dev":"vite --host","build":"rm -rf dist && tsc && vite build","preview":"vite preview"},"typings":"dist/types/index.d.ts","_npmUser":{"name":"slash9494","email":"slash9494@naver.com"},"repository":{"url":"git+https://github.com/slash9494/react-modern-audio-player.git","type":"git"},"_npmVersion":"8.15.0","description":"<p align=\"center\"> <img width=\"20%\" src=\"https://user-images.githubusercontent.com/70849655/180391190-2b268d23-c9f3-4e95-9fce-090897842c04.png\" alt=\"rm-audio-player\" /> <h1 align=\"center\">React Modern Audio Player</h1> </p>","directories":{},"_nodeVersion":"16.17.0","dependencies":{"classnames":"^2.3.1","react-icons":"^4.4.0","wavesurfer.js":"^6.2.0","styled-components":"^5.3.5","@react-spectrum/view":"^3.2.1","@types/wavesurfer.js":"^6.0.3","@react-spectrum/layout":"^3.3.1","@react-spectrum/provider":"^3.4.1","@types/styled-components":"^5.1.25","@react-spectrum/theme-default":"^3.3.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^2.9.0","typescript":"^4.6.3","@types/node":"^17.0.25","@types/react":"^18.0.1","vite-plugin-dts":"^1.1.0","@types/react-dom":"^18.0.0","vite-plugin-libcss":"^1.0.5","@vitejs/plugin-react":"^1.0.7"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0"},"_npmOperationalInternal":{"tmp":"tmp/react-modern-audio-player_1.1.4_1661893795525_0.3701998526056449","host":"s3://npm-registry-packages"}},"1.1.5":{"name":"react-modern-audio-player","version":"1.1.5","keywords":["audio","player","react","react-modern-audio-player"],"author":{"url":"https://github.com/slash9494","name":"LYH","email":"slash9494@naver.com"},"license":"MIT","_id":"react-modern-audio-player@1.1.5","maintainers":[{"name":"slash9494","email":"slash9494@naver.com"}],"homepage":"https://github.com/slash9494/react-modern-audio-player/","bugs":{"url":"https://github.com/slash9494/react-modern-audio-player/issues"},"dist":{"shasum":"57d036bef0c8b1b91945f98e1410e169a4e4a4b1","tarball":"https://registry.npmjs.org/react-modern-audio-player/-/react-modern-audio-player-1.1.5.tgz","fileCount":80,"integrity":"sha512-+04DmYIeMcsHx7h4HbY5kAOrE/aKe8dAsTpQf2KXDPaNfEsZuciwvbusTlO2OpfHwwHM6Z5z4BT1YaMbD7PxvA==","signatures":[{"sig":"MEUCIQD3eo4i65nhcjKS5BJTxXOO3KZGUEEoJL/y5sCn37viqwIgUSdf21LoAyxvjA2uUZFUNV4WkLK1FJITP5Id9lbJ2o8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":915059,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjDoqTACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmou0A/9HYnV4MNG7fHFnvR0UYg28lc2L3mVOnis6Bn5NjMyVgQSpoQk\r\n3soYrlPqA1Wz2ig8KEIxTHJml6TX9fR4zr/MAUbLJDrNy1Y9fZizvWJy82of\r\nBE7S+8yMrf49sAaaQAb069pshy/eXgkK1tfMl+7gTzA4Wea62mUz89GB4OyV\r\n6rmRrtPDgxOZ56vTlb/Cjfndno1Pf5THVyD0LuY9YGS1bl1dq8kZq2Z4gAz0\r\n0E+vCksZts+egVafHwEKhQxJ1J2eEwrkt6iogPbfN2h6EchJdjIgXy/74omO\r\n160tfeF9D5+NfQMx1H56UN4E9qH7KjaQWZlb1DtCYVfHKKInGAO9XGLAb3hK\r\nLoxM6dRNeBJ/rkULspkp7rrxdw4VBjS5lIkte4m1EYxQ3asAWxIS5v118h69\r\nIVkp3enPNcjPtgk6ONLoSI3kOsv3po0tXBUJT1363kDI1f0Tx4oJ7t5aKHYb\r\np4m6rtvJqMK5xoAIIbqJeq9exK1chRB9MfogHH74DHZOd/vkEUPs8unvn6oA\r\nJQunpa7FtjZAYmkUbfy+VIzzdItbSbYJRiWWD52pH4XOrbjzY/AiXl4De19x\r\nCCif+HdbW94ird1c8378S10/WuCtCUNW1HS51itAZVfboVMVwBYK2a0eo/k7\r\nNukkuhOMZhWYaMHyU+/YPVUuArjKuxYoR5w=\r\n=k1EG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.cjs","esnext":"dist/index.es.js","module":"dist/index.es.js","gitHead":"1eb0fb0d364b65cba2eb656b4c9d3ec80d5dff63","scripts":{"dev":"vite --host","build":"rm -rf dist && tsc && vite build","preview":"vite preview"},"typings":"dist/types/index.d.ts","_npmUser":{"name":"slash9494","email":"slash9494@naver.com"},"repository":{"url":"git+https://github.com/slash9494/react-modern-audio-player.git","type":"git"},"_npmVersion":"8.15.0","description":"<p align=\"center\"> <img width=\"20%\" src=\"https://user-images.githubusercontent.com/70849655/180391190-2b268d23-c9f3-4e95-9fce-090897842c04.png\" alt=\"rm-audio-player\" /> <h1 align=\"center\">React Modern Audio Player</h1> </p>","directories":{},"_nodeVersion":"16.17.0","dependencies":{"classnames":"^2.3.1","react-icons":"^4.4.0","wavesurfer.js":"^6.2.0","styled-components":"^5.3.5","@react-spectrum/view":"^3.2.1","@types/wavesurfer.js":"^6.0.3","@react-spectrum/layout":"^3.3.1","@react-spectrum/provider":"^3.4.1","@types/styled-components":"^5.1.25","@react-spectrum/theme-default":"^3.3.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^2.9.0","typescript":"^4.6.3","@types/node":"^17.0.25","@types/react":"^18.0.1","vite-plugin-dts":"^1.1.0","@types/react-dom":"^18.0.0","vite-plugin-libcss":"^1.0.5","@vitejs/plugin-react":"^1.0.7"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0"},"_npmOperationalInternal":{"tmp":"tmp/react-modern-audio-player_1.1.5_1661897362894_0.5949735084099206","host":"s3://npm-registry-packages"}},"1.2.0":{"name":"react-modern-audio-player","version":"1.2.0","keywords":["audio","player","react","react-modern-audio-player"],"author":{"url":"https://github.com/slash9494","name":"LYH","email":"slash9494@naver.com"},"license":"MIT","_id":"react-modern-audio-player@1.2.0","maintainers":[{"name":"slash9494","email":"slash9494@naver.com"}],"homepage":"https://github.com/slash9494/react-modern-audio-player/","bugs":{"url":"https://github.com/slash9494/react-modern-audio-player/issues"},"dist":{"shasum":"f1b05f72161f70ca21171b2ab24ea8f9768d3fbf","tarball":"https://registry.npmjs.org/react-modern-audio-player/-/react-modern-audio-player-1.2.0.tgz","fileCount":86,"integrity":"sha512-kQcHdoXzD0hLT3piPEOVMlOPIa3BIJqM/+HvxObT3o29a9GSJ98Wk3XjqnUjd00sXW4AGfLnJaqCsRfKltHwcg==","signatures":[{"sig":"MEQCH0lfKJDItA9lxJinPVDnlvBr88S0Jb95mW0GTAm2YbECIQCkfC9CdyC0dSZGome0yGR9K5Cqg1V5yKMjk6g5q8FsnQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":592376,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjPO1sACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpkVg//c222geAZDGcIKUzD4NudjyypTD4vxJn55o+tL04UWkdw1AAp\r\nUDpk8s9BVnG0xrxZ07xr8hdKSxOIdAKkCHyuIA4FX6FDnLNHq5hh6047/WA+\r\nHKqRBySi/un7LLehGJ/ZD2J9aTDokFeEAND0jzK4PZvQ1gxb9cXql+GCmkON\r\nG7FUJK+j6G0xVwkKmfTJamYmGOVmZaFqnI78dxP6UFIaCNlrhz87F1DB53n2\r\nGATCZjfxeFceVd1f5CCBCW8Mkkw7HnyQ5utvwp+l61pOfyWCDctofsUC+Oc5\r\nZpqNbeepZXm6BsKhMeJoDiNiSMpc9rYeQe9cu4Vu5K6rvzxIOwGwo8htlJFd\r\nNqVmHzZM1gAx0wdol1VEHBNMg6rB5W066XTqlRmUuOJV1zbW531/qQ8muVcB\r\nUJqUmDd0FjW4B3+yuKbyeLQ9Os8dDqVMdgAJX1zgs0NgJ1ZyVBoTM3pmu0Pe\r\nB0BGWZA7dnxbmR1s4Tz5itD99xGvvvWNWUCXnZWKKYd+7LS12O89h9Nu1lQn\r\nnoJXHEiS60IiP69A/ntR8fN2UJATEhMzsgOC4GVqYTvv3MBDMSBlHuze5cNV\r\nUY98kXxbl5kswXAQ1c9QcH1bKT8dL0YRlvNsdJRiZQah2PD53ylkbXJ+9iYh\r\nxlrSZNFRH6sWkKcWm/+nrDnKGq7TUaSK3A0=\r\n=khaj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.cjs","esnext":"dist/index.es.js","module":"dist/index.es.js","gitHead":"687a83f4c892cf71721f81cfd1d34c64b7a79397","scripts":{"dev":"vite --host","build":"rm -rf dist && tsc && vite build","preview":"vite preview"},"typings":"dist/types/index.d.ts","_npmUser":{"name":"slash9494","email":"slash9494@naver.com"},"repository":{"url":"git+https://github.com/slash9494/react-modern-audio-player.git","type":"git"},"_npmVersion":"8.15.0","description":"<p align=\"center\"> <img width=\"20%\" src=\"https://user-images.githubusercontent.com/70849655/180391190-2b268d23-c9f3-4e95-9fce-090897842c04.png\" alt=\"rm-audio-player\" /> <h1 align=\"center\">React Modern Audio Player</h1> </p>","directories":{},"_nodeVersion":"16.17.0","dependencies":{"classnames":"^2.3.1","react-icons":"^4.4.0","wavesurfer.js":"^6.2.0","styled-components":"^5.3.5","@react-spectrum/view":"^3.2.1","@react-spectrum/layout":"^3.3.1","@react-spectrum/provider":"^3.4.1","@react-spectrum/theme-default":"^3.3.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^2.9.0","typescript":"^4.6.3","@types/node":"^17.0.25","@types/react":"^18.0.1","vite-plugin-dts":"^1.1.0","@types/react-dom":"^18.0.0","vite-plugin-libcss":"^1.0.5","@types/wavesurfer.js":"^6.0.3","@vitejs/plugin-react":"^1.0.7","@types/styled-components":"^5.1.26"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0"},"_npmOperationalInternal":{"tmp":"tmp/react-modern-audio-player_1.2.0_1664937323877_0.7405497340273015","host":"s3://npm-registry-packages"}},"1.2.1":{"name":"react-modern-audio-player","version":"1.2.1","keywords":["audio","player","react","react-modern-audio-player"],"author":{"url":"https://github.com/slash9494","name":"LYH","email":"slash9494@naver.com"},"license":"MIT","_id":"react-modern-audio-player@1.2.1","maintainers":[{"name":"slash9494","email":"slash9494@naver.com"}],"homepage":"https://github.com/slash9494/react-modern-audio-player/","bugs":{"url":"https://github.com/slash9494/react-modern-audio-player/issues"},"dist":{"shasum":"7d3ed75d73844d5d44efe8fc7bd4e95fca532cd4","tarball":"https://registry.npmjs.org/react-modern-audio-player/-/react-modern-audio-player-1.2.1.tgz","fileCount":86,"integrity":"sha512-bXkCsK7whshG9QiVYuVaIUubQx7CkEybPRcylvd0UmSjiedmCZcw+wn5nFxeAj6SPBkLQ+6FO7T1ylOcJvTH5A==","signatures":[{"sig":"MEUCIQCHbsCkkDRCz4vy6B23JVBYe38TqfwwCp+cdKkIoyyP6AIgeK0Jbr/jY/F1qGqVRrKysDX4Ba4GrK4QN0+di5NyqII=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":592597,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjPPhUACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpUFRAAmlVBY/XbQ2MJOM5SdV5V/k+jaOoVBSQJ0klyMVBTIJUTjsRb\r\n4COdT5nzNZys8mEeStd2PCvQ4ad+xcjFku4bOmHSUN5Z0OsowKd1pVL9tjsa\r\njvLoIB/TSRtj99U2F2TJzmJbhgRimfHGsO8ydELFFpMBnEr3OHMMWc+0JcQl\r\noFDwng90r2NGsl+oIuQuK2qdrj5+y4K4j2BfT2uat4JSXadQdR85KDLiQlTB\r\ndz2BFdpXhhSAZKjQrMNX1e2sxaUFoej5Sk0N3oohQWWPsVRLPizEJZBrrBpB\r\nRtbiZfBe3R2x3hROFLuKNEeZTMYJafefuC+ylMoQ16M7eECu+cyoQ4BZpsOR\r\nwvifLVJGjf534eRWZqcELpeg7tXaIOJPrEZVniD6AVX8jdqRySH8zi6oyzP3\r\nzCnLkg/56SGvn8uDxgPlg4H8jeojXuP6CMKWefR05kMshObMloMhhNBTnqNi\r\nwjaKm1/b+eMiCH9YF8oQyxo2v3znayjyyBKNAtvi/WW+jYrWOYbuTCRCU5lX\r\nh8WlH1COfwxSucrEtxBg2nGtsD3RqQP6ubYKde+H9SwN9m8+KJ6/XHiobvcg\r\nHhhHjoNjEs59UwfJ90N3wLuC6URU6pgvPR1EU7Yeo6vf3caFMGJ21w/26BO2\r\nllFvDLkp/NSp6QLo+IIXpjeAXkpgFVr6u+U=\r\n=u9n8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.cjs","esnext":"dist/index.es.js","module":"dist/index.es.js","gitHead":"2181e2dac9d3fd4a8b833a9cc90b5e47ef425640","scripts":{"dev":"vite --host","build":"rm -rf dist && tsc && vite build","preview":"vite preview"},"typings":"dist/types/index.d.ts","_npmUser":{"name":"slash9494","email":"slash9494@naver.com"},"repository":{"url":"git+https://github.com/slash9494/react-modern-audio-player.git","type":"git"},"_npmVersion":"8.15.0","description":"<p align=\"center\"> <img width=\"20%\" src=\"https://user-images.githubusercontent.com/70849655/180391190-2b268d23-c9f3-4e95-9fce-090897842c04.png\" alt=\"rm-audio-player\" /> <h1 align=\"center\">React Modern Audio Player</h1> </p>","directories":{},"_nodeVersion":"16.17.0","dependencies":{"classnames":"^2.3.1","react-icons":"^4.4.0","wavesurfer.js":"^6.2.0","styled-components":"^5.3.5","@react-spectrum/view":"^3.2.1","@react-spectrum/layout":"^3.3.1","@react-spectrum/provider":"^3.4.1","@react-spectrum/theme-default":"^3.3.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^2.9.0","typescript":"^4.6.3","@types/node":"^17.0.25","@types/react":"^18.0.1","vite-plugin-dts":"^1.1.0","@types/react-dom":"^18.0.0","vite-plugin-libcss":"^1.0.5","@types/wavesurfer.js":"^6.0.3","@vitejs/plugin-react":"^1.0.7","@types/styled-components":"^5.1.26"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0"},"_npmOperationalInternal":{"tmp":"tmp/react-modern-audio-player_1.2.1_1664940115872_0.2753495175893559","host":"s3://npm-registry-packages"}},"1.2.2":{"name":"react-modern-audio-player","version":"1.2.2","keywords":["audio","music","player","media","react","react-modern-audio-player"],"author":{"url":"https://github.com/slash9494","name":"LYH","email":"slash9494@naver.com"},"license":"MIT","_id":"react-modern-audio-player@1.2.2","maintainers":[{"name":"slash9494","email":"slash9494@naver.com"}],"homepage":"https://github.com/slash9494/react-modern-audio-player/","bugs":{"url":"https://github.com/slash9494/react-modern-audio-player/issues"},"dist":{"shasum":"b1d7a4f44f85a1673100447d658ea1be1c5fb911","tarball":"https://registry.npmjs.org/react-modern-audio-player/-/react-modern-audio-player-1.2.2.tgz","fileCount":86,"integrity":"sha512-f/TcqosqWpzHhqdJeYrQXCbwvT5XZ5UhInJAXfKAsCFCzzm3ZD69NcJRsQmMBg+ttdNMIlx8iXFnmWo/xRIrFA==","signatures":[{"sig":"MEYCIQDoAetYLvBodSHw+/S8q5TFhl4148XY5wPlHhOugs8bwAIhAI6+B/a2cgresxuJWFsi6fuXQOtfKNIabJwu4YjcXiE1","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":594093,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjPg28ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqhOA/+KF5eCLhLS/TxN9N+Zxdjtt/Tub78Rc3K2SLpLo24xsB1hMjE\r\nuiMk61xYRkbrJdf7KwWdoxpOgO+iG28Z80EgITkG0ngsELlqh4OAizEBVmMd\r\ne8kvMwjQSN1b3+lOFN76Ku94ys55cWLlxvdzdjsWiWTBa2mKcjiwuaascLtH\r\nBx87t/UxqXA7z8QygqUhXkoNsGSSV0hG6J/7FStAfY8bj8ZiwlVbjhtNJATm\r\n1nHHo6BZ0kWCNjTV9gTyc4oITwMBOKs/7Q6IgRZE+yjij9LjqPP4GpCVbkPg\r\nW4DM39b5Bw4M5E5qyt+8P7mtrV/xHHUUdDzZ4s5tacSWW7QP09De0ludNLgo\r\nJlOX7+jn4weDRKS174mOxHnAX6y76twDoVya7tw7AZ2h5E/UkO+FLdD74VTS\r\nJxjUaTpvMnM+siDKNLVX2udjILD+vL/w4/Tlsbje7smP8RVU+9GL1/g4AVsX\r\nPUhC1+VFI3PELwgaoB4Ukm/508q/GE7jmeawrieMI0UXjxgs5pTVVmQb2SJS\r\nqI3aPt2JzVGiM5gS24tXGjsTCXieSJk21m9Uh5d/mtOp1ofPVmj+5/cSNO8r\r\nxVIZqVtHuBWmmIxZ/FlojTZR+NNsFrWBVTYm/ZClN2oLjGly1+C9n5viE6Ql\r\nGD8XTZ84JcyFkA/JsVmePWLzc6MdlN5GUMA=\r\n=zyX8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.cjs","esnext":"dist/index.es.js","module":"dist/index.es.js","gitHead":"e979489efe845f79e6294a080adda015a6ef82d7","scripts":{"dev":"vite --host","build":"rm -rf dist && tsc && vite build","preview":"vite preview"},"typings":"dist/types/index.d.ts","_npmUser":{"name":"slash9494","email":"slash9494@naver.com"},"repository":{"url":"git+https://github.com/slash9494/react-modern-audio-player.git","type":"git"},"_npmVersion":"8.15.0","description":"<p align=\"center\"> <img width=\"20%\" src=\"https://user-images.githubusercontent.com/70849655/180391190-2b268d23-c9f3-4e95-9fce-090897842c04.png\" alt=\"rm-audio-player\" /> <h1 align=\"center\">React Modern Audio Player</h1> </p>","directories":{},"_nodeVersion":"16.17.1","dependencies":{"classnames":"^2.3.1","react-icons":"^4.4.0","wavesurfer.js":"^6.2.0","styled-components":"^5.3.5","@react-spectrum/view":"^3.2.1","@react-spectrum/layout":"^3.3.1","@react-spectrum/provider":"^3.4.1","@react-spectrum/theme-default":"^3.3.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^2.9.0","typescript":"^4.6.3","@types/node":"^17.0.25","@types/react":"^18.0.1","vite-plugin-dts":"^1.1.0","@types/react-dom":"^18.0.0","vite-plugin-libcss":"^1.0.5","@types/wavesurfer.js":"^6.0.3","@vitejs/plugin-react":"^1.0.7","@types/styled-components":"^5.1.26"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0"},"_npmOperationalInternal":{"tmp":"tmp/react-modern-audio-player_1.2.2_1665011132629_0.8093981700508179","host":"s3://npm-registry-packages"}},"1.2.3":{"name":"react-modern-audio-player","version":"1.2.3","keywords":["audio","music","player","media","react","react-modern-audio-player"],"author":{"url":"https://github.com/slash9494","name":"LYH","email":"slash9494@naver.com"},"license":"MIT","_id":"react-modern-audio-player@1.2.3","maintainers":[{"name":"slash9494","email":"slash9494@naver.com"}],"homepage":"https://github.com/slash9494/react-modern-audio-player/","bugs":{"url":"https://github.com/slash9494/react-modern-audio-player/issues"},"dist":{"shasum":"39793fa066257815d0f14979dd871b30e26aa87f","tarball":"https://registry.npmjs.org/react-modern-audio-player/-/react-modern-audio-player-1.2.3.tgz","fileCount":85,"integrity":"sha512-jxeLZ2dBYekSyzmOXdh5FwBElDmJB1oWlm7CbzrLuOktQBo+cFMcKc4PCynaUQvIiPMVUSfwdYrkTYMVndVFjQ==","signatures":[{"sig":"MEUCIFZcNIG9eFlu1STggZHYzb9Lr1s6Y8JqpSQHjeVPxJRTAiEA2/63BTLmToQ+/IEqqNQI9we3QPsPPh72g5PSVxewXqo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":453479,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjQPaeACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqhKhAAosNmVj97uUs4o+EEI2nD9BA2LVP048jGjyqFnPpYA3rxKlJ8\r\n138f3CFpHXU40Srb4vzqDsiQGr/9PKEyDqC8ue7RDy95lY4FwcTPczCHgSyQ\r\nLUXIc/WsvfpQ34OsFENtakKSxG6TnaFkDdsGWRhn30MR3hgy96VXoSkkP0k3\r\nc0UXIEsb84yTiC+k7YLUJ02uDs6GLaI9x15WOpIlYXOFmXEGeZkrz1zLG/mP\r\nkEv7jg7pNs/WOddIydfMSDwS/7bsVCGRicIR5xQ29r60tXoJpjAm9e5Psv97\r\n6fcSNqwUt9EY7i0Go8jAft6PENwFJZigdSDXjTLorjOt9cH8DlsnlPg5NsEt\r\nUNpn1CFV0aOK2BNwAN8VpGGu/kHcmWPIcQO/vMe/Zme+Udm5kinG1BTKoYXW\r\npUWQnEKHEeCqaJOfY+2CcPTQbM1o0+j5CoVTvcf9o74bv+jgrgnkFi3nQnMO\r\nXWaNPXIRTT8dmeIGRwzpPkp71M5d9eYq+YgqFu4u9BVBzOiw8kaBczTLAIAw\r\nShhRmoJPW01p4BCNZSs7pA88bZkf07JsBdMBhuBp25bcUhckRBnyFvobJAHp\r\nOlgxVb4oGtz7o8SGalR/Q3Wf37MstFCaTRKe59Q/uGlxnIy5gyYiX8Zm+v7j\r\nxmGXYvV2VDki+FOflqiXXYVi5QA25mJtdpM=\r\n=hiew\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.es.js","esnext":"dist/index.es.js","module":"dist/index.es.js","gitHead":"de884bd993a451eb7c69ce5b8cb67b47c52f8b8c","scripts":{"dev":"vite --host","build":"rm -rf dist && tsc && vite build","preview":"vite preview"},"typings":"dist/types/index.d.ts","_npmUser":{"name":"slash9494","email":"slash9494@naver.com"},"repository":{"url":"git+https://github.com/slash9494/react-modern-audio-player.git","type":"git"},"_npmVersion":"8.15.0","description":"<p align=\"center\"> <img width=\"20%\" src=\"https://user-images.githubusercontent.com/70849655/180391190-2b268d23-c9f3-4e95-9fce-090897842c04.png\" alt=\"rm-audio-player\" /> <h1 align=\"center\">React Modern Audio Player</h1> </p>","directories":{},"_nodeVersion":"16.17.1","dependencies":{"classnames":"^2.3.1","react-icons":"^4.4.0","wavesurfer.js":"^6.2.0","styled-components":"^5.3.5","@react-spectrum/view":"^3.2.1","@react-spectrum/layout":"^3.3.1","@react-spectrum/provider":"^3.4.1","@react-spectrum/theme-default":"^3.3.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^2.9.0","typescript":"^4.6.3","@types/node":"^17.0.25","@types/react":"^18.0.1","vite-plugin-dts":"^1.1.0","@types/react-dom":"^18.0.0","vite-plugin-libcss":"^1.0.5","@types/wavesurfer.js":"^6.0.3","@vitejs/plugin-react":"^1.0.7","@types/styled-components":"^5.1.26"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0"},"_npmOperationalInternal":{"tmp":"tmp/react-modern-audio-player_1.2.3_1665201822314_0.0019199276777812635","host":"s3://npm-registry-packages"}},"1.2.4":{"name":"react-modern-audio-player","version":"1.2.4","keywords":["audio","music","player","media","react","react-modern-audio-player"],"author":{"url":"https://github.com/slash9494","name":"LYH","email":"slash9494@naver.com"},"license":"MIT","_id":"react-modern-audio-player@1.2.4","maintainers":[{"name":"slash9494","email":"slash9494@naver.com"}],"homepage":"https://github.com/slash9494/react-modern-audio-player/","bugs":{"url":"https://github.com/slash9494/react-modern-audio-player/issues"},"dist":{"shasum":"f1d0e6aa9c748bc8190d62d719ea8be837ab47bc","tarball":"https://registry.npmjs.org/react-modern-audio-player/-/react-modern-audio-player-1.2.4.tgz","fileCount":85,"integrity":"sha512-SArjLGVMDuv2D7aYJ2vaHXtaBU6pEbwLvBW7AHdcYeo0x1rdXwIkrLmBTaXofR3gnOE83jRMIUNvUp4ss/OtIg==","signatures":[{"sig":"MEQCICB0O9AKSbrNzjb4MR3ZCdP6VALLqdK5rP1bW3bl4wlCAiBarwn2INnrci3mKdoXm3VGXlrSmqloeLKb9taYGLYu4A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":453467,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjQ39dACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpnPBAAjJwj68yNcv4AtNRGRZ6y1H5Gl70U46b8DZ2erfPM62nozpyl\r\nR4hsdOYsMTTCn3UaBBirPXWj8sByZMmMuiSJNdX1fRovJsNrU8eogkbzKGWM\r\nZwKmAwOekdRDhgyfTGcJLn37Xi1ofrzaPavjMfQkDucUM8HOBTMu+My52ynD\r\nd+82bBX96hB0TTQdz7x1zAqX5L0rvjGiNr9kqn4hs+OQzP8tJhAZFrifPCgw\r\nA29bsanSrThUEsABDON6CPbpPJKO9jl9LE0ocwL9y3xfORDDvKoSHVa9stGR\r\nBusOuhG1T/pvgnOhc1IRZOI3EZG8mQGIbaJ8KzvVfgEE41PYUiFmzhguWhj1\r\nxa6JUysAvdJ12jLv9ZbV/UvX+2X2IK4wcDo3d7onGS7iwFYaXlN/gex0y7YM\r\ngXeQHEjSu0brbqioYLy3QgXxmeRxgswAi3J6T52q+ZITDVoUNnVvD69CRVVr\r\niiP2biUb9HVoIs9Ae+1oI6AEvkLEClJvloHtKhmi4Th3gTpuWMZJZbZyOoPH\r\nHdUihUP4CkiJE+JU+lODvI/uJg9ZjCtxMxZOU0dEjAl/Q5+/0WHjZ/xh0Y9+\r\nXskdXHTePQKWkY5dpit5uwYs8GI7nqdpt/nDEsjbIVjyb5D8Pxzu60QOFEZb\r\nVYh7rW+kiEQm07H7ZI5loSzsdGfxTqLqxsE=\r\n=3QT9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.es.js","esnext":"dist/index.es.js","module":"dist/index.es.js","gitHead":"8d71c1691cf9fb5b50c26b29eb7100fd27302b2e","scripts":{"dev":"vite --host","build":"rm -rf dist && tsc && vite build","preview":"vite preview"},"typings":"dist/types/index.d.ts","_npmUser":{"name":"slash9494","email":"slash9494@naver.com"},"repository":{"url":"git+https://github.com/slash9494/react-modern-audio-player.git","type":"git"},"_npmVersion":"8.15.0","description":"<p align=\"center\"> <img width=\"20%\" src=\"https://user-images.githubusercontent.com/70849655/180391190-2b268d23-c9f3-4e95-9fce-090897842c04.png\" alt=\"rm-audio-player\" /> <h1 align=\"center\">React Modern Audio Player</h1> </p>","directories":{},"_nodeVersion":"16.17.1","dependencies":{"classnames":"^2.3.1","react-icons":"^4.4.0","wavesurfer.js":"^6.2.0","styled-components":"^5.3.5","@react-spectrum/view":"^3.2.1","@react-spectrum/layout":"^3.3.1","@react-spectrum/provider":"^3.4.1","@react-spectrum/theme-default":"^3.3.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^2.9.0","typescript":"^4.6.3","@types/node":"^17.0.25","@types/react":"^18.0.1","vite-plugin-dts":"^1.1.0","@types/react-dom":"^18.0.0","vite-plugin-libcss":"^1.0.5","@types/wavesurfer.js":"^6.0.3","@vitejs/plugin-react":"^1.0.7","@types/styled-components":"^5.1.26"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0"},"_npmOperationalInternal":{"tmp":"tmp/react-modern-audio-player_1.2.4_1665367900913_0.235524020930018","host":"s3://npm-registry-packages"}},"1.2.5":{"name":"react-modern-audio-player","version":"1.2.5","keywords":["audio","music","player","media","react","react-modern-audio-player"],"author":{"url":"https://github.com/slash9494","name":"LYH","email":"slash9494@naver.com"},"license":"MIT","_id":"react-modern-audio-player@1.2.5","maintainers":[{"name":"slash9494","email":"slash9494@naver.com"}],"homepage":"https://github.com/slash9494/react-modern-audio-player/","bugs":{"url":"https://github.com/slash9494/react-modern-audio-player/issues"},"dist":{"shasum":"e680582cb02a520bbf26353eedf455318e0dfcb7","tarball":"https://registry.npmjs.org/react-modern-audio-player/-/react-modern-audio-player-1.2.5.tgz","fileCount":86,"integrity":"sha512-qfdpMw9mTW742+Q7PCdIR8rHIx6lLNPxWrVvenNz6CVwPgLaWXkLsvUuTQ8TTtPR8BGxxoJUADJ0YBHuNP4PgA==","signatures":[{"sig":"MEUCICBAo+EpMDeSTcy/EXM9cZmDmVEQj8lq9e28MTtMv4/aAiEA8Nw+wXnsMNWcqFMVTy6Iq96bLASrhhvaJzjdVYLxSt4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":457306,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjTrIoACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrjbQ//btepDC57lEXVe9SBtXJv6vJTMwgldayw66TZImHR3sR5u7Lq\r\nY5LQdp6lbuCC1aZfb0Um4cWnQ/MCgbBWy9vOmEYXqlSnrFRnPQ/e2tjxCjP/\r\nYYszEtpNgPOPyHVrvqzCYno/MDwtXlbpDKAUhAc2+uQc/nk0NJ7Va1gG9Qle\r\nw5p6r9qX7lq19sl94kbcU4UV7x7q232/ROLJrcfMxOBr1Gk7uWkpVu3q1zaQ\r\nta+0ScHO1GijSypOhO2hNXTiE0v8DXS+tGRF4PO8UgYGGPSfW7EtPA7EP9JG\r\nD3kmVkzJMOpvvB/oFFI1fQi3ZS22whXlvZ5MzKVTAGz3ltLVVD/3P/YveiBC\r\n313wETf5hDAzFvb/HHrU44zANCKhszAi7AmTckWwnRMDUR3JKK9MQThZ9fvA\r\noadlvhIiN3UNb1xHJ704tiuVqrydKMP/MsfiFpBpv7LNMlA+dZuDft9SG2bb\r\n+0CeM0EF2wDcAspSw3bUOx+/xXoTtpfde2Gnl8+kYvhSq5pk2PmM9A+rMRBa\r\nIxut/AJR4N+CDtTZuZy+0YKKRba4lzV2TkFNJZCQI1lmVq5eq2WG7JK40AnV\r\nwknjM5q3FnckpSH6gHzqboCzXJAkzts2G1Hdkq4Ish9K/Rx1xtCjH5Ai7qid\r\nnf4jGhNWEDolVhz/8Wa9LQfrlGrS6D1ZhcY=\r\n=p+IF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.es.js","esnext":"dist/index.es.js","module":"dist/index.es.js","gitHead":"ef26d2060fee1470ed8787766053343a3ffbaef2","scripts":{"dev":"vite --host","build":"rm -rf dist && tsc && vite build","preview":"vite preview"},"typings":"dist/types/index.d.ts","_npmUser":{"name":"slash9494","email":"slash9494@naver.com"},"repository":{"url":"git+https://github.com/slash9494/react-modern-audio-player.git","type":"git"},"_npmVersion":"8.15.0","description":"<p align=\"center\"> <img width=\"20%\" src=\"https://user-images.githubusercontent.com/70849655/180391190-2b268d23-c9f3-4e95-9fce-090897842c04.png\" alt=\"rm-audio-player\" /> <h1 align=\"center\">React Modern Audio Player</h1> </p>","directories":{},"_nodeVersion":"16.17.1","dependencies":{"classnames":"^2.3.1","react-icons":"^4.4.0","wavesurfer.js":"^6.2.0","styled-components":"^5.3.5","@react-spectrum/view":"^3.2.1","@react-spectrum/layout":"^3.3.1","@react-spectrum/provider":"^3.4.1","@react-spectrum/theme-default":"^3.3.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^2.9.0","typescript":"^4.6.3","@types/node":"^17.0.25","@types/react":"^18.0.1","vite-plugin-dts":"^1.1.0","@types/react-dom":"^18.0.0","vite-plugin-libcss":"^1.0.5","@types/wavesurfer.js":"^6.0.3","@vitejs/plugin-react":"^1.0.7","@types/styled-components":"^5.1.26"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0"},"_npmOperationalInternal":{"tmp":"tmp/react-modern-audio-player_1.2.5_1666101799762_0.13397783183529244","host":"s3://npm-registry-packages"}},"1.3.0":{"name":"react-modern-audio-player","version":"1.3.0","keywords":["audio","music","player","media","react","react-modern-audio-player"],"author":{"url":"https://github.com/slash9494","name":"LYH","email":"slash9494@naver.com"},"license":"MIT","_id":"react-modern-audio-player@1.3.0","maintainers":[{"name":"slash9494","email":"slash9494@naver.com"}],"homepage":"https://github.com/slash9494/react-modern-audio-player/","bugs":{"url":"https://github.com/slash9494/react-modern-audio-player/issues"},"dist":{"shasum":"4b697590c7d8be3fadd00eb071b01fce2ac97922","tarball":"https://registry.npmjs.org/react-modern-audio-player/-/react-modern-audio-player-1.3.0.tgz","fileCount":84,"integrity":"sha512-eO3T/zvbdCAML7Yc5ePsxs/1rMG1AZGjVuxcJVNNGN8UTBLfuuSro+pVg1npu+DuxEt84QsdDjGfZkieKKBrqA==","signatures":[{"sig":"MEUCIQD8ipO2MR/yHB1hjtw5eDVlCeqUejblKw62yUEqE70F2AIgOjDzqFkWXdHW6eSiH+4xZHifHywzKDc6wx9WDMrwmxI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":455962,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjWHanACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpdchAAmytlKIyPdvJumxFbQk8dY1OCKqI6veyvOtIY/rpxO00EDFMU\r\n/dmUrAFDreOwh5XRJ8ubaXqADrERmmUt9e7LsmXQogCeTiiTdvJMDxrASIRN\r\njwuAq4zsNrGwQ5DmxiBStDOjsJv8qLefZ83aV879p3Iy8v6LX+LTTTXYSopf\r\n3vmXjszXckE0Ko1snNPVNuBA5XKUaIzn/lzj5eiryJ6Yb+kiER+GuE4INkLw\r\nBzS+L73ZU6cSSqPz85RNRJGlqPe94gFp/oj3Ad+MK9tj76liv+DGZJd4XaHv\r\nt9+7dmE4k2EZDrOO1ecauvpLFy9lU9PTY3+yYgA1UbkmpEkFdYAleWOmTH+G\r\nPhu4Mp+SsiCHIbiXcRydShLsts+qI6h7ENEncIjSMk4C6HqREK6G0nJW70zo\r\nqygA1rzU0UZHQ6LMeBTMWkacnn4ANkEeV/6NlRq4zoHVsKWQqN0XufLlVGz6\r\n9OnBHQIhfEAXC33TxAvqez2Hr7B/hpxgFC6Mwa1Ej66tJ4DlDvwf3OXhIspe\r\nMglmcuDdysDPijq0V9gN8NX1x9/v1BiOAfAVy0yd52RDSNFCkWPe2zSgw5T2\r\n5eK8oaDjyrnuDjwyIBMZJRsuk46lR28Von9K/Qbqj3pEXAzKhIRSpSWlZAEU\r\nIsTnONTBK6SNDkuw6emoVZnDw28hgF9Wzv8=\r\n=jtda\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.es.js","esnext":"dist/index.es.js","module":"dist/index.es.js","gitHead":"e1329a2f2a415ca441a5ebe958a80c82af79d549","scripts":{"dev":"vite --host","build":"rm -rf dist && tsc && vite build","preview":"vite preview"},"typings":"dist/types/index.d.ts","_npmUser":{"name":"slash9494","email":"slash9494@naver.com"},"repository":{"url":"git+https://github.com/slash9494/react-modern-audio-player.git","type":"git"},"_npmVersion":"8.15.0","description":"<p align=\"center\"> <img width=\"20%\" src=\"https://user-images.githubusercontent.com/70849655/180391190-2b268d23-c9f3-4e95-9fce-090897842c04.png\" alt=\"rm-audio-player\" /> <h1 align=\"center\">React Modern Audio Player</h1> </p>","directories":{},"_nodeVersion":"16.17.1","dependencies":{"classnames":"^2.3.1","react-icons":"^4.4.0","wavesurfer.js":"^6.2.0","styled-components":"^5.3.5","@react-spectrum/view":"^3.2.1","@react-spectrum/layout":"^3.3.1","@react-spectrum/provider":"^3.4.1","@react-spectrum/theme-default":"^3.3.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^2.9.0","typescript":"^4.6.3","@types/node":"^17.0.25","@types/react":"^18.0.1","vite-plugin-dts":"^1.1.0","@types/react-dom":"^18.0.0","vite-plugin-libcss":"^1.0.5","@types/wavesurfer.js":"^6.0.3","@vitejs/plugin-react":"^1.0.7","@types/styled-components":"^5.1.26"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0"},"_npmOperationalInternal":{"tmp":"tmp/react-modern-audio-player_1.3.0_1666741927438_0.45141093085761197","host":"s3://npm-registry-packages"}},"1.4.0-rc.0":{"name":"react-modern-audio-player","version":"1.4.0-rc.0","keywords":["audio","music","player","media","react","react-modern-audio-player"],"author":{"url":"https://github.com/slash9494","name":"LYH","email":"slash9494@naver.com"},"license":"MIT","_id":"react-modern-audio-player@1.4.0-rc.0","maintainers":[{"name":"slash9494","email":"slash9494@naver.com"}],"homepage":"https://github.com/slash9494/react-modern-audio-player/","bugs":{"url":"https://github.com/slash9494/react-modern-audio-player/issues"},"dist":{"shasum":"78a0be3f80b1d42b5a1189ac79680d8c8905d9b5","tarball":"https://registry.npmjs.org/react-modern-audio-player/-/react-modern-audio-player-1.4.0-rc.0.tgz","fileCount":85,"integrity":"sha512-k7hwIfESYGaPI8hSZKapZZ1eXmx8YolufD8RnWrF26YioAhaznf9E1nf4zzIZ9pQmiNz9aKs3wZiKB2CWErgtg==","signatures":[{"sig":"MEUCIQDHVOitbwqAE0PFuv02BQAMp11F12K3Po4Z8dJf4yNNUQIgGm78fIpYfc+MSti3n9ZlkJ7Yjwj30IuoZ6qsoVhgt4s=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":460665,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjsckCACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmrulw//RkFCQIeZqqhrUoEmsbqLLCXXPybN3d9dUe2RZvg2TFXXvuak\r\ngDQZ8tmgTt5h+UVgmsMRkOJD39zE11gBQZHdFRFbMtmAMD5oEda1ZUmIObtG\r\nixzKeFh0USADyE1qFwy+LgaBdoPQqQYrGn30V4RYFBfXxRjlV5Kdswqwbe/L\r\nZCDRrZXxO8U/IzrdP+aADl3JA8OLkt1GlBm6hiH93CgvHpPkFzTaNQyFIGLo\r\njf57c0/hwqsO6P+Bm3mJ0/96BvEzKpGuIkvP83BInY2m70BO6h/NOFm4ssT6\r\n97Ktq8y2tYEob+DTbyF/y5nfoiXZoFM76vA5sOCTstyinN4Jros7TmZeS7mr\r\nnCv7B+wQhNSDODjuURTOD+iDPNcfNky9/KgyzkdUUDRE9za7Mji0uw4QwALQ\r\nPuTbEOsu4juRl8hYVpU+lMSXyvSX2Hvs4Z33VqiCwF41R0kv9B66j6Uk/T3y\r\n5jIN8JcpReF+foyZy4uLwQrAFuaLcgKhTc7rKCUhNObVXI/VvPH/v4mS0DAI\r\nz66bFSQTeglGw/Ublj4NM64Hzs3iecusj1hPTs3uPdLzsRF+BlMBSVzk63be\r\ny2pVbdKgXAATwQsHvUwJG+xSCsZAW0plaYfZj7mriwbxdoc0wTg7IjdkQZ6T\r\nBjhETp1AdpcHO5YcBLg5wTkyXtjmtLl9zfY=\r\n=zt+X\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.es.js","esnext":"dist/index.es.js","module":"dist/index.es.js","gitHead":"595854d50cb9a9d8fa2f3150aa40403d064b01b3","scripts":{"dev":"vite --host","build":"rm -rf dist && tsc && vite build","preview":"vite preview"},"typings":"dist/types/index.d.ts","_npmUser":{"name":"slash9494","email":"slash9494@naver.com"},"repository":{"url":"git+https://github.com/slash9494/react-modern-audio-player.git","type":"git"},"_npmVersion":"8.19.2","description":"<p align=\"center\"> <img width=\"20%\" src=\"https://user-images.githubusercontent.com/70849655/180391190-2b268d23-c9f3-4e95-9fce-090897842c04.png\" alt=\"rm-audio-player\" /> <h1 align=\"center\">React Modern Audio Player</h1> </p>","directories":{},"_nodeVersion":"16.18.1","dependencies":{"classnames":"^2.3.1","react-icons":"^4.4.0","wavesurfer.js":"^6.2.0","styled-components":"^5.3.5","@react-spectrum/view":"^3.2.1","@react-spectrum/layout":"^3.3.1","@react-spectrum/provider":"^3.4.1","@react-spectrum/theme-default":"^3.3.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^2.9.0","typescript":"^4.6.3","@types/node":"^17.0.25","@types/react":"^18.0.1","vite-plugin-dts":"^1.1.0","@types/react-dom":"^18.0.0","vite-plugin-libcss":"^1.0.5","@types/wavesurfer.js":"^6.0.3","@vitejs/plugin-react":"^1.0.7","@types/styled-components":"^5.1.26"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0"},"_npmOperationalInternal":{"tmp":"tmp/react-modern-audio-player_1.4.0-rc.0_1672595713997_0.11157470492948551","host":"s3://npm-registry-packages"}},"1.4.0-rc.1":{"name":"react-modern-audio-player","version":"1.4.0-rc.1","keywords":["audio","music","player","media","react","react-modern-audio-player"],"author":{"url":"https://github.com/slash9494","name":"LYH","email":"slash9494@naver.com"},"license":"MIT","_id":"react-modern-audio-player@1.4.0-rc.1","maintainers":[{"name":"slash9494","email":"slash9494@naver.com"}],"homepage":"https://github.com/slash9494/react-modern-audio-player/","bugs":{"url":"https://github.com/slash9494/react-modern-audio-player/issues"},"dist":{"shasum":"a30c64e6f609ec1db93997b289a688a7779b87c1","tarball":"https://registry.npmjs.org/react-modern-audio-player/-/react-modern-audio-player-1.4.0-rc.1.tgz","fileCount":85,"integrity":"sha512-IUaENLf7+KdjCftibmAhPJ62jRxUwG/JGcydo33vZeCIyOPOUE19EQIShpQGylb1/sfsw6NVSZ5yO3/RzIGzrA==","signatures":[{"sig":"MEUCIQDUIPARZ7+mH12z7EiDsJ2Ks7vPM+q9qx8gR9GJU/se3QIgVRN0hmVz+gRbaf46hmZsQl2rINHfgUgR3aXKhxz//Kg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":460233,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj0BKQACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrSWA/+KBfoAZrjDIhPxgZ3XJanQ1MUpcNojiohE3SYUZdPVtNpFSUN\r\nm/RjiBcwt753PEhGRNSWupAgbYKJxmWQMM6dL4sdGS1nIAvLOzMGGlkQ4CuX\r\nVBmXc9QYYgf+X2ZZOVp0Vi7hCzb++lgHmaxxI6+TP5+PCyVmnt1vF0+UA6Fo\r\ndMqsB4jrPxV2YCbdzAVgnETeRN+ejJfxdPNX7bysxlRp8z5vrhirietv0qmg\r\nEpQwwBuFVGprR/sMXdhjBT72aJuEeyo2mDBacpfaVFuQOODCh/9zyksN+gMk\r\n7xHVcNLkhdcPW8n/YgkKC9F9v9KMfKdqwWF7rzxGCI3Bt2IfCrMyH9OfHSdc\r\nsVeUAiJBO+wsr9EDGJmDF21Z1MaMdyadgTmVWDVlGj8WhsJ12mUjTTX1Cqqv\r\n20xvCxjH+JvewMceEA/0JZwnOWw1plUY72dR4Db24WK7SYbUZNamyTnYPaDI\r\nYxaV7jmG/2KhPGK9/ml1hIYpV93Ho1zinrWnLZRiRkrSQAgO9DFbzg0DWFKR\r\nPRgBH+mHU5qVnTc1RmUMJuO8Db1GVmOSJ5F26onOVf1dtJj0svg9K30kYYtZ\r\nwe1HmE+7oilkaQzNHNScOXCcc/CGqZWPy1t79KA1YBY/YDoXrSk3zNIjKQRe\r\nT1mDNj6cDbZ2wwtYF+UcGlcVfTBQKZIwd2A=\r\n=+53m\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.es.js","esnext":"dist/index.es.js","module":"dist/index.es.js","gitHead":"2c1c35a3ee3349db419839919b3a1df48d66cbb9","scripts":{"dev":"vite --host","build":"rm -rf dist && tsc && vite build","preview":"vite preview"},"typings":"dist/types/index.d.ts","_npmUser":{"name":"slash9494","email":"slash9494@naver.com"},"repository":{"url":"git+https://github.com/slash9494/react-modern-audio-player.git","type":"git"},"_npmVersion":"8.19.3","description":"<p align=\"center\"> <img width=\"20%\" src=\"https://user-images.githubusercontent.com/70849655/180391190-2b268d23-c9f3-4e95-9fce-090897842c04.png\" alt=\"rm-audio-player\" /> <h1 align=\"center\">React Modern Audio Player</h1> </p>","directories":{},"_nodeVersion":"16.19.0","dependencies":{"classnames":"^2.3.1","react-icons":"^4.4.0","wavesurfer.js":"^6.2.0","styled-components":"^5.3.5","@react-spectrum/view":"^3.2.1","@react-spectrum/layout":"^3.3.1","@react-spectrum/provider":"^3.4.1","@react-spectrum/theme-default":"^3.3.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^2.9.0","typescript":"^4.6.3","@types/node":"^17.0.25","@types/react":"^18.0.1","vite-plugin-dts":"^1.1.0","@types/react-dom":"^18.0.0","vite-plugin-libcss":"^1.0.5","@types/wavesurfer.js":"^6.0.3","@vitejs/plugin-react":"^1.0.7","@types/styled-components":"^5.1.26"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0"},"_npmOperationalInternal":{"tmp":"tmp/react-modern-audio-player_1.4.0-rc.1_1674580623963_0.9697059988924766","host":"s3://npm-registry-packages"}},"1.4.0-rc.2":{"name":"react-modern-audio-player","version":"1.4.0-rc.2","keywords":["audio","music","player","media","react","react-modern-audio-player"],"author":{"url":"https://github.com/slash9494","name":"LYH","email":"slash9494@naver.com"},"license":"MIT","_id":"react-modern-audio-player@1.4.0-rc.2","maintainers":[{"name":"slash9494","email":"slash9494@naver.com"}],"homepage":"https://github.com/slash9494/react-modern-audio-player/","bugs":{"url":"https://github.com/slash9494/react-modern-audio-player/issues"},"dist":{"shasum":"4d2f353004f1fdffa34ad3b09f2c542455ada4c1","tarball":"https://registry.npmjs.org/react-modern-audio-player/-/react-modern-audio-player-1.4.0-rc.2.tgz","fileCount":85,"integrity":"sha512-Tj/wyj/Y50ICWVw2UF5ndrUEd3V0gyk/sz7EiyTMv6PM5wmiNiuuVrydEY7kft6o4r3d/9CTV554mr2jPAGr/w==","signatures":[{"sig":"MEUCIQCr0C/EW1zf0Mf7408is9aA5gu5gVau4v/4aWczYGcjQQIgBR9zPfIA9lNSNbRF7OJTVfDYVrCZ3vbQoAONf5FKzuw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":461575,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj+2dTACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpRjxAAhkx5GpamQSIRktW/6Htr2AxTDlzIujAJtrraVgw8konx56Z0\r\nPxdXelnC9eEOQLkyc2QAd0AoTrmp2Fj4+PNCUKJeQIPcc92GeEM/UsHtzy1h\r\nPljz1QXd/nEAgmsqwzGV4kmrrWJ8W5IRxXF7GDoSCGsu/Azmfu/zrtIz0P2Q\r\n6qIpV6XH2ZylkK/z7Pbgd9WQFTfaZZblvgSPo73dN50orUpEOEbjbDCeY9gI\r\n8i753KR1hOKD9DcUUipWMM4qfNJItu6x8lgqn/xNB7rLF/dqrYX5ShtZfdWv\r\nWb+cex/hcZSNgZPSbt77QM+NeFjbMM34ky7sillp27rymxc/sH9SzQ/ZlnkH\r\nYR83I25NUgPcGNO+dZHXPc+K49fD+afgeKbtFU9vkmPJYGK4msNjS1Irdcc4\r\ne7Z2qu9sRPkTEXJ3kLRDZ+02Q6elMBSgLrd7bXukGADmTXMBcv/EsTmMeT9x\r\ngIDLatdmdWS5r+PtjZoMrBvUhHdNb7aT8cuSs56E7JJMELa7Y/zdI2wDZJ1M\r\n3s5wzN+t26FEZFXExEgwjKuIgDBnw8QM2OukZfYNRZpOBu9AvvA/PZS3qmcU\r\nlvRYls4R4868gbF/0ECpOCuHqujqKHxHt2Rw+/sPBL+Pv1acf8Iym3o+1y5b\r\nqiODE0YouIoseHdyRjggDu1ofVCIgFEGeUU=\r\n=fog2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.es.js","esnext":"dist/index.es.js","module":"dist/index.es.js","gitHead":"c2f9d4ca25779e00d32a9fdda751fcbdf36a5eeb","scripts":{"dev":"vite --host","build":"rm -rf dist && tsc && vite build","preview":"vite preview","typeCheck":"tsc --project ./tsconfig.json --noEmit"},"typings":"dist/types/index.d.ts","_npmUser":{"name":"slash9494","email":"slash9494@naver.com"},"repository":{"url":"git+https://github.com/slash9494/react-modern-audio-player.git","type":"git"},"_npmVersion":"8.19.3","description":"<p align=\"center\"> <img width=\"20%\" src=\"https://user-images.githubusercontent.com/70849655/180391190-2b268d23-c9f3-4e95-9fce-090897842c04.png\" alt=\"rm-audio-player\" /> <h1 align=\"center\">React Modern Audio Player</h1> </p>","directories":{},"_nodeVersion":"16.19.1","dependencies":{"classnames":"^2.3.1","react-icons":"^4.4.0","wavesurfer.js":"^6.2.0","styled-components":"^5.3.5","@react-spectrum/view":"^3.2.1","@react-spectrum/layout":"^3.3.1","@react-spectrum/provider":"^3.4.1","@react-spectrum/theme-default":"^3.3.1"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^2.9.0","typescript":"^4.6.3","@types/node":"^17.0.25","@types/react":"^18.0.1","vite-plugin-dts":"^1.1.0","@types/react-dom":"^18.0.0","vite-plugin-libcss":"^1.0.5","@types/wavesurfer.js":"^6.0.3","@vitejs/plugin-react":"^1.0.7","@types/styled-components":"^5.1.26"},"peerDependencies":{"react":">=16.8.0","react-dom":">=16.8.0"},"_npmOperationalInternal":{"tmp":"tmp/react-modern-audio-player_1.4.0-rc.2_1677420371544_0.5639629940336071","host":"s3://npm-registry-packages"}},"2.0.0-beta.1":{"name":"react-modern-audio-player","version":"2.0.0-beta.1","keywords":["audio","music","player","media","react","react-modern-audio-player"],"author":{"url":"https://github.com/slash9494","name":"LYH","email":"slash9494@naver.com"},"license":"MIT","_id":"react-modern-audio-player@2.0.0-beta.1","maintainers":[{"name":"slash9494","email":"slash9494@gmail.com"}],"homepage":"https://github.com/slash9494/react-modern-audio-player/","bugs":{"url":"https://github.com/slash9494/react-modern-audio-player/issues"},"dist":{"shasum":"61b9c3c404f9c8d28b2656f123206946568c06d1","tarball":"https://registry.npmjs.org/react-modern-audio-player/-/react-modern-audio-player-2.0.0-beta.1.tgz","fileCount":116,"integrity":"sha512-ZIBKqzMTDEQuHliFWeJ5f6XNQW8gCpivSkz2b353F4MhDhdY8PDuIrUkTLRhR5uekBaMO9rLdV8F7ghtuazyKw==","signatures":[{"sig":"MEUCIQCSju77FA1qwJ57+v8EuZT9MvjzkE1iD0eglav5b2LsjQIgI6WQWulFWg/Cq7oD8JFKeLZicxaG+7lCkZxBwnbpz3M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":334302},"main":"dist/index.es.js","esnext":"dist/index.es.js","module":"dist/index.es.js","gitHead":"165bef464c14fce9014f45e2c02248435ee727ae","scripts":{"dev":"vite --host","test":"vitest run","build":"rm -rf dist && tsc -p tsconfig.json && vite build","preview":"vite preview","test:unit":"vitest run src","typeCheck":"tsc --project ./tsconfig.json --noEmit","test:watch":"vitest","test:coverage":"vitest run --coverage","test:integration":"vitest run ../test/integration","test:integration:core":"vitest run ../test/integration/repeat-type.test.tsx ../test/integration/playlist.test.tsx"},"typings":"dist/types/index.d.ts","_npmUser":{"name":"slash9494","email":"slash9494@gmail.com"},"repository":{"url":"git+https://github.com/slash9494/react-modern-audio-player.git","type":"git"},"_npmVersion":"10.8.2","description":"<!-- markdownlint-disable MD033 MD041 MD028 -->","directories":{},"sideEffects":["*.css"],"_nodeVersion":"20.20.2","dependencies":{"wavesurfer.js":"^6.6.4"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"vite":"^5.4.14","jsdom":"^25.0.0","vitest":"^2.1.0","agentation":"^3.0.2","typescript":"^5.7.2","vitest-axe":"^0.1.0","@types/node":"^22.0.0","@types/jsdom":"^28","@types/react":"^18.3.0","vite-plugin-dts":"^4.5.0","@types/react-dom":"^18.3.0","vite-plugin-libcss":"^1.1.1","@vitest/coverage-v8":"^2.1.0","@types/wavesurfer.js":"^6.0.3","@vitejs/plugin-react":"^4.3.4","@testing-library/react":"^16.3.2","@testing-library/jest-dom":"^6.9.1","@testing-library/user-event":"^14.6.1"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react-modern-audio-player_2.0.0-beta.1_1775883478170_0.08490361955147852","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"react-modern-audio-player","version":"2.0.0","keywords":["audio","music","player","media","react","react-modern-audio-player"],"author":{"url":"https://github.com/slash9494","name":"LYH","email":"slash9494@naver.com"},"license":"MIT","_id":"react-modern-audio-player@2.0.0","maintainers":[{"name":"slash9494","email":"slash9494@gmail.com"}],"homepage":"https://github.com/slash9494/react-modern-audio-player/","bugs":{"url":"https://github.com/slash9494/react-modern-audio-player/issues"},"dist":{"shasum":"d435976d99dc29d910ae6411070ddf3975f6dfd4","tarball":"https://registry.npmjs.org/react-modern-audio-player/-/react-modern-audio-player-2.0.0.tgz","fileCount":116,"integrity":"sha512-D1nmNicBLESfhB8KXHRKhtHMLkENXInZz/bPjI1LfXv17xD8Pj73L3vDDPsjbzJauuNd5BY5ZLVs6KpJdNAvEA==","signatures":[{"sig":"MEUCIQCugyM5Krn6VnDKlGOF1ZP5KOq/f3U8SQOrKZ5xHjGCVgIgcQ2UbaZeZ9KifTJEdWyHICrUnyb6ASe9ddgsL9UaZos=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":334425},"main":"dist/index.es.js","esnext":"dist/index.es.js","module":"dist/index.es.js","gitHead":"a8d2a5cbca7338692eef3d838d12cde50fcd599e","scripts":{"dev":"vite --host","test":"vitest run","build":"rm -rf dist && tsc -p tsconfig.json && vite build","preview":"vite preview","test:unit":"vitest run src","typeCheck":"tsc --project ./tsconfig.json --noEmit","test:watch":"vitest","test:coverage":"vitest run --coverage","test:integration":"vitest run ../test/integration","test:integration:core":"vitest run ../test/integration/repeat-type.test.tsx ../test/integration/playlist.test.tsx"},"typings":"dist/types/index.d.ts","_npmUser":{"name":"slash9494","email":"slash9494@gmail.com"},"repository":{"url":"git+https://github.com/slash9494/react-modern-audio-player.git","type":"git"},"_npmVersion":"10.8.2","description":"<!-- markdownlint-disable MD033 MD041 MD028 -->","directories":{},"sideEffects":["*.css"],"_nodeVersion":"20.20.2","dependencies":{"wavesurfer.js":"^6.6.4"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.4.14","jsdom":"^25.0.0","vitest":"^2.1.0","agentation":"^3.0.2","typescript":"^5.7.2","vitest-axe":"^0.1.0","@types/node":"^22.0.0","@types/jsdom":"^28","@types/react":"^18.3.0","vite-plugin-dts":"^4.5.0","@types/react-dom":"^18.3.0","vite-plugin-libcss":"^1.1.1","@vitest/coverage-v8":"^2.1.0","@types/wavesurfer.js":"^6.0.3","@vitejs/plugin-react":"^4.3.4","@testing-library/react":"^16.3.2","@testing-library/jest-dom":"^6.9.1","@testing-library/user-event":"^14.6.1"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react-modern-audio-player_2.0.0_1775890027686_0.7608257222386925","host":"s3://npm-registry-packages-npm-production"}},"2.1.0":{"name":"react-modern-audio-player","version":"2.1.0","keywords":["react","react-component","audio","audio-player","react-audio-player","music-player","react-music-player","waveform","react-waveform","wavesurfer","wavesurfer-react","playlist","html5-audio","typescript","accessible","a11y","web-audio","modern-ui","dark-mode","customizable","nextjs"],"author":{"url":"https://github.com/slash9494","name":"MAXX","email":"slash9494@gmail.com"},"license":"MIT","_id":"react-modern-audio-player@2.1.0","maintainers":[{"name":"slash9494","email":"slash9494@gmail.com"}],"homepage":"https://github.com/slash9494/react-modern-audio-player/","bugs":{"url":"https://github.com/slash9494/react-modern-audio-player/issues"},"dist":{"shasum":"ccca4a126f33cc2f858c4fdbdd9700f1a314364c","tarball":"https://registry.npmjs.org/react-modern-audio-player/-/react-modern-audio-player-2.1.0.tgz","fileCount":116,"integrity":"sha512-+8rLtFpiR9BnWsJfI40EjxfQn6jOXzT6WR8hoN+9q/9TMnG1Q9xTs0NldKP3otIofpLkfJ4gUrmqoDpPHZsEZQ==","signatures":[{"sig":"MEUCIQDEW3lcFdi8v0tqeo9AIIa8C1R8sWN7fN8dRuvO7Z6hVwIgb1aozoPCX7MPF4gwD8JGhtSLJbL/VokJC+RZA/O52jE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":339388},"main":"dist/index.es.js","esnext":"dist/index.es.js","module":"dist/index.es.js","gitHead":"344587c2c977eb937b32998e4e0c3a77ec1aaec4","scripts":{"dev":"vite --host","test":"vitest run","build":"rm -rf dist && tsc -p tsconfig.json && vite build","preview":"vite preview","test:unit":"vitest run src","typeCheck":"tsc --project ./tsconfig.json --noEmit","test:watch":"vitest","test:coverage":"vitest run --coverage","test:integration":"vitest run ../test/integration","test:integration:core":"vitest run ../test/integration/repeat-type.test.tsx ../test/integration/playlist.test.tsx"},"typings":"dist/types/index.d.ts","_npmUser":{"name":"slash9494","email":"slash9494@gmail.com"},"repository":{"url":"git+https://github.com/slash9494/react-modern-audio-player.git","type":"git"},"_npmVersion":"10.8.2","description":"<!-- markdownlint-disable MD033 MD041 MD028 -->","directories":{},"sideEffects":["*.css"],"_nodeVersion":"20.20.2","dependencies":{"wavesurfer.js":"^6.6.4"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.4.14","jsdom":"^25.0.0","vitest":"^2.1.0","agentation":"^3.0.2","typescript":"^5.7.2","vitest-axe":"^0.1.0","@types/node":"^22.0.0","@types/jsdom":"^28","@types/react":"^18.3.0","vite-plugin-dts":"^4.5.0","@types/react-dom":"^18.3.0","vite-plugin-libcss":"^1.1.1","@vitest/coverage-v8":"^2.1.0","@types/wavesurfer.js":"^6.0.3","@vitejs/plugin-react":"^4.3.4","@testing-library/react":"^16.3.2","@testing-library/jest-dom":"^6.9.1","@testing-library/user-event":"^14.6.1"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react-modern-audio-player_2.1.0_1776174966717_0.05333168170473801","host":"s3://npm-registry-packages-npm-production"}},"2.2.0":{"name":"react-modern-audio-player","version":"2.2.0","keywords":["react","react-component","audio","audio-player","react-audio-player","music-player","react-music-player","waveform","react-waveform","wavesurfer","wavesurfer-react","playlist","html5-audio","typescript","accessible","a11y","web-audio","modern-ui","dark-mode","customizable","nextjs"],"author":{"url":"https://github.com/slash9494","name":"MAXX","email":"slash9494@gmail.com"},"license":"MIT","_id":"react-modern-audio-player@2.2.0","maintainers":[{"name":"slash9494","email":"slash9494@gmail.com"}],"homepage":"https://github.com/slash9494/react-modern-audio-player/","bugs":{"url":"https://github.com/slash9494/react-modern-audio-player/issues"},"dist":{"shasum":"253c9b705ff8c439f219d929199056c8da6013cf","tarball":"https://registry.npmjs.org/react-modern-audio-player/-/react-modern-audio-player-2.2.0.tgz","fileCount":128,"integrity":"sha512-XplJcW7XRkDmFTsOPbeA3v5TaBr+IkpzzVFRql2BB7251f6GgCDqkl57hnL2hM08Uk0Fe2I5+K/Uh6r7Ka24rg==","signatures":[{"sig":"MEYCIQC8Q+OJNTzhcM/PkufDB6sFklRDSswLqemtg3NlxJPzpwIhAIOwOD4ZBD14JqnyjrMX7Y9W9CuiKPQMMuFQT/1LAksf","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":357379},"main":"dist/index.es.js","esnext":"dist/index.es.js","module":"dist/index.es.js","gitHead":"d13160711e1a9c599e637e2fe85cf112e36ece2a","scripts":{"dev":"vite --host","test":"vitest run","build":"rm -rf dist && tsc -p tsconfig.json && vite build","preview":"vite preview","test:unit":"vitest run src","typeCheck":"tsc --project ./tsconfig.json --noEmit","test:watch":"vitest","test:coverage":"vitest run --coverage","test:integration":"vitest run ../test/integration","test:integration:core":"vitest run ../test/integration/repeat-type.test.tsx ../test/integration/playlist.test.tsx"},"typings":"dist/types/index.d.ts","_npmUser":{"name":"slash9494","email":"slash9494@gmail.com"},"repository":{"url":"git+https://github.com/slash9494/react-modern-audio-player.git","type":"git"},"_npmVersion":"10.8.2","description":"Modern, customizable React audio player with waveform visualization, drag-and-drop playlist, WAI-ARIA accessibility, TypeScript-first API, and Next.js App Router (Server Components) support.","directories":{},"sideEffects":["*.css"],"_nodeVersion":"20.20.2","dependencies":{"wavesurfer.js":"^6.6.4"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.4.14","jsdom":"^25.0.0","vitest":"^2.1.0","agentation":"^3.0.2","typescript":"^5.7.2","vitest-axe":"^0.1.0","@types/node":"^22.0.0","@types/jsdom":"^28","@types/react":"^18.3.0","vite-plugin-dts":"^4.5.0","@types/react-dom":"^18.3.0","vite-plugin-libcss":"^1.1.1","@vitest/coverage-v8":"^2.1.0","@types/wavesurfer.js":"^6.0.3","@vitejs/plugin-react":"^4.3.4","@testing-library/react":"^16.3.2","@testing-library/jest-dom":"^6.9.1","@testing-library/user-event":"^14.6.1"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react-modern-audio-player_2.2.0_1777110411424_0.657060011012196","host":"s3://npm-registry-packages-npm-production"}},"2.3.0":{"name":"react-modern-audio-player","version":"2.3.0","keywords":["react","react-component","audio","audio-player","react-audio-player","music-player","react-music-player","waveform","react-waveform","wavesurfer","wavesurfer-react","playlist","html5-audio","typescript","accessible","a11y","web-audio","modern-ui","dark-mode","customizable","nextjs"],"author":{"url":"https://github.com/slash9494","name":"MAXX","email":"slash9494@gmail.com"},"license":"MIT","_id":"react-modern-audio-player@2.3.0","maintainers":[{"name":"slash9494","email":"slash9494@gmail.com"}],"homepage":"https://github.com/slash9494/react-modern-audio-player/","bugs":{"url":"https://github.com/slash9494/react-modern-audio-player/issues"},"dist":{"shasum":"2f6a32b2d9e2b92ef69d0c2a846ffc7fd707176d","tarball":"https://registry.npmjs.org/react-modern-audio-player/-/react-modern-audio-player-2.3.0.tgz","fileCount":131,"integrity":"sha512-uHd9GSJv7DNC1DW6gl4Q88cTNIZM81TUwJraZY6j9KC9RWB6qTyUWWJPLvGo9M+Aa+i443JCaDLnLKIJXXcyBQ==","signatures":[{"sig":"MEUCIE4bAO27UeKRTTQWWRjm/xRgXujbwsRYnHzN8LqRFCQYAiEA0zrM3v8oH9SM68kIZBSkthoJlnKhxuIwV/C16joamRQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":370019},"main":"dist/index.es.js","esnext":"dist/index.es.js","module":"dist/index.es.js","gitHead":"21fd3e7c038bcabe64e9af08570326a023186712","scripts":{"dev":"vite --host","test":"vitest run","build":"rm -rf dist && tsc -p tsconfig.json && vite build","preview":"vite preview","test:unit":"vitest run src","typeCheck":"tsc --project ./tsconfig.json --noEmit","test:watch":"vitest","test:coverage":"vitest run --coverage","test:integration":"vitest run ../test/integration","test:integration:core":"vitest run ../test/integration/repeat-type.test.tsx ../test/integration/playlist.test.tsx"},"typings":"dist/types/index.d.ts","_npmUser":{"name":"slash9494","email":"slash9494@gmail.com"},"repository":{"url":"git+https://github.com/slash9494/react-modern-audio-player.git","type":"git"},"_npmVersion":"10.8.2","description":"Modern, customizable React audio player with waveform visualization, drag-and-drop playlist, WAI-ARIA accessibility, TypeScript-first API, and Next.js App Router (Server Components) support.","directories":{},"sideEffects":["*.css"],"_nodeVersion":"20.20.2","dependencies":{"wavesurfer.js":"^6.6.4"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.4.14","jsdom":"^25.0.0","vitest":"^2.1.0","agentation":"^3.0.2","typescript":"^5.7.2","vitest-axe":"^0.1.0","@types/node":"^22.0.0","@types/jsdom":"^28","@types/react":"^18.3.0","vite-plugin-dts":"^4.5.0","@types/react-dom":"^18.3.0","vite-plugin-libcss":"^1.1.1","@vitest/coverage-v8":"^2.1.0","@types/wavesurfer.js":"^6.0.3","@vitejs/plugin-react":"^4.3.4","@testing-library/react":"^16.3.2","@testing-library/jest-dom":"^6.9.1","@testing-library/user-event":"^14.6.1"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react-modern-audio-player_2.3.0_1777475206078_0.3284668462773517","host":"s3://npm-registry-packages-npm-production"}},"2.3.1":{"name":"react-modern-audio-player","version":"2.3.1","keywords":["react","react-component","audio","audio-player","react-audio-player","music-player","react-music-player","waveform","react-waveform","wavesurfer","wavesurfer-react","playlist","html5-audio","typescript","accessible","a11y","web-audio","modern-ui","dark-mode","customizable","nextjs"],"author":{"url":"https://github.com/slash9494","name":"MAXX","email":"slash9494@gmail.com"},"license":"MIT","_id":"react-modern-audio-player@2.3.1","maintainers":[{"name":"slash9494","email":"slash9494@gmail.com"}],"homepage":"https://github.com/slash9494/react-modern-audio-player/","bugs":{"url":"https://github.com/slash9494/react-modern-audio-player/issues"},"dist":{"shasum":"b2ad0180af66f7c00539ddd0e37cccfc655330d9","tarball":"https://registry.npmjs.org/react-modern-audio-player/-/react-modern-audio-player-2.3.1.tgz","fileCount":131,"integrity":"sha512-Kxx6x+C8086m7tHz2lHQF+O1Dal0DsBh6jxNVeOnHGKWrAgTbOu7KAGbmZ/qCkIFoqXt9AC+uvzHZLpjFZBbjQ==","signatures":[{"sig":"MEUCIGyQmBgiR7fxu5432jdu/KM+ZjbsRBUFi/WXZxyEQcklAiEA4jPHrNozZRRob4BFyRgLNpXPGavQuy0+iGJaBFNxh5Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":370079},"main":"dist/index.es.js","esnext":"dist/index.es.js","module":"dist/index.es.js","gitHead":"a839abc1110505fa1780c5ab599c999815da2ab9","scripts":{"dev":"vite --host","test":"vitest run","build":"rm -rf dist && tsc -p tsconfig.json && vite build","preview":"vite preview","test:unit":"vitest run src","typeCheck":"tsc --project ./tsconfig.json --noEmit","test:watch":"vitest","test:coverage":"vitest run --coverage","test:integration":"vitest run ../test/integration","test:integration:core":"vitest run ../test/integration/repeat-type.test.tsx ../test/integration/playlist.test.tsx"},"typings":"dist/types/index.d.ts","_npmUser":{"name":"slash9494","email":"slash9494@gmail.com"},"repository":{"url":"git+https://github.com/slash9494/react-modern-audio-player.git","type":"git"},"_npmVersion":"10.8.2","description":"Modern, customizable React audio player with waveform visualization, drag-and-drop playlist, WAI-ARIA accessibility, TypeScript-first API, and Next.js App Router (Server Components) support.","directories":{},"sideEffects":["*.css"],"_nodeVersion":"20.20.2","dependencies":{"wavesurfer.js":"^6.6.4"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.4.14","jsdom":"^25.0.0","vitest":"^2.1.0","agentation":"^3.0.2","typescript":"^5.7.2","vitest-axe":"^0.1.0","@types/node":"^22.0.0","@types/jsdom":"^28","@types/react":"^18.3.0","vite-plugin-dts":"^4.5.0","@types/react-dom":"^18.3.0","vite-plugin-libcss":"^1.1.1","@vitest/coverage-v8":"^2.1.0","@types/wavesurfer.js":"^6.0.3","@vitejs/plugin-react":"^4.3.4","@testing-library/react":"^16.3.2","@testing-library/jest-dom":"^6.9.1","@testing-library/user-event":"^14.6.1"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react-modern-audio-player_2.3.1_1777630240103_0.3214457317519359","host":"s3://npm-registry-packages-npm-production"}},"2.3.2":{"name":"react-modern-audio-player","version":"2.3.2","keywords":["react","react-component","audio","audio-player","react-audio-player","music-player","react-music-player","waveform","react-waveform","wavesurfer","wavesurfer-react","playlist","html5-audio","typescript","accessible","a11y","web-audio","modern-ui","dark-mode","customizable","nextjs"],"author":{"url":"https://github.com/slash9494","name":"MAXX","email":"slash9494@gmail.com"},"license":"MIT","_id":"react-modern-audio-player@2.3.2","maintainers":[{"name":"slash9494","email":"slash9494@gmail.com"}],"homepage":"https://github.com/slash9494/react-modern-audio-player/","bugs":{"url":"https://github.com/slash9494/react-modern-audio-player/issues"},"dist":{"shasum":"4f3559c79150a0edc51a42f158f1f558780682ec","tarball":"https://registry.npmjs.org/react-modern-audio-player/-/react-modern-audio-player-2.3.2.tgz","fileCount":131,"integrity":"sha512-b9L0STUf5dfVXcxpXrgAasfQpGOMFSVkvhD4RAlgaYXCNqREY9+64r8bEHxq2GQX1pzVAVcU57rEsNE4Nxd4lw==","signatures":[{"sig":"MEQCIAleW2kvxQPWzAkQ/+4v2svu0WNoBiDdramPgjippWwkAiAO4PFmTtY6RVKUUsU8PVzmPnifhbfwJLOUyEBje8ccyw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/react-modern-audio-player@2.3.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":372070},"main":"dist/index.es.js","esnext":"dist/index.es.js","module":"dist/index.es.js","gitHead":"7d49b8603ce63b79eebdc4d63361eab40de7e311","scripts":{"dev":"vite --host","test":"vitest run","build":"rm -rf dist && tsc -p tsconfig.json && vite build","preview":"vite preview","test:unit":"vitest run src","typeCheck":"tsc --project ./tsconfig.json --noEmit","test:watch":"vitest","test:coverage":"vitest run --coverage","test:integration":"vitest run ../test/integration","test:integration:core":"vitest run ../test/integration/repeat-type.test.tsx ../test/integration/playlist.test.tsx"},"typings":"dist/types/index.d.ts","_npmUser":{"name":"slash9494","email":"slash9494@gmail.com"},"repository":{"url":"git+https://github.com/slash9494/react-modern-audio-player.git","type":"git"},"_npmVersion":"10.8.2","description":"Modern, customizable React audio player with waveform visualization, drag-and-drop playlist, WAI-ARIA accessibility, TypeScript-first API, and Next.js App Router (Server Components) support.","directories":{},"sideEffects":["*.css"],"_nodeVersion":"20.20.2","dependencies":{"wavesurfer.js":"^6.6.4"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.4.14","jsdom":"^25.0.0","vitest":"^2.1.0","agentation":"^3.0.2","typescript":"^5.7.2","vitest-axe":"^0.1.0","@types/node":"^22.0.0","@types/jsdom":"^28","@types/react":"^18.3.0","vite-plugin-dts":"^4.5.0","@types/react-dom":"^18.3.0","vite-plugin-libcss":"^1.1.1","@vitest/coverage-v8":"^2.1.0","@types/wavesurfer.js":"^6.0.3","@vitejs/plugin-react":"^4.3.4","@testing-library/react":"^16.3.2","@testing-library/jest-dom":"^6.9.1","@testing-library/user-event":"^14.6.1"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react-modern-audio-player_2.3.2_1782988995004_0.6060264022175939","host":"s3://npm-registry-packages-npm-production"}},"2.4.0":{"name":"react-modern-audio-player","version":"2.4.0","keywords":["react","react-component","audio","audio-player","react-audio-player","music-player","react-music-player","waveform","react-waveform","wavesurfer","wavesurfer-react","playlist","html5-audio","typescript","accessible","a11y","web-audio","modern-ui","dark-mode","customizable","nextjs"],"author":{"url":"https://github.com/slash9494","name":"MAXX","email":"slash9494@gmail.com"},"license":"MIT","_id":"react-modern-audio-player@2.4.0","maintainers":[{"name":"slash9494","email":"slash9494@gmail.com"}],"homepage":"https://github.com/slash9494/react-modern-audio-player/","bugs":{"url":"https://github.com/slash9494/react-modern-audio-player/issues"},"dist":{"shasum":"6ecf3265d27b6800a779e5893b58a2acd4be6441","tarball":"https://registry.npmjs.org/react-modern-audio-player/-/react-modern-audio-player-2.4.0.tgz","fileCount":138,"integrity":"sha512-QbwhrErZCvUqWhtvYw0OuumFO02NQSzw5Ze7DdZBRglqDkfYE4Cgn0H8weIq0RCoZ0TnAK1QVSdcmisghPgggA==","signatures":[{"sig":"MEQCIBSpJZIJr0cBDnEPlWSVObQQmBS5/kQ5NV53gParaOwqAiAlAsn+WuxIl7pqwjO55HunEDL8txWegbGWLF5IeyNYsg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/react-modern-audio-player@2.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":386273},"main":"dist/index.es.js","esnext":"dist/index.es.js","module":"dist/index.es.js","gitHead":"6a9a0d469acc0aeab54f15be56a42bd6d01e3e9e","scripts":{"dev":"vite --host","test":"vitest run","build":"rm -rf dist && tsc -p tsconfig.json && vite build","preview":"vite preview","test:unit":"vitest run src","typeCheck":"tsc --project ./tsconfig.json --noEmit","test:watch":"vitest","test:coverage":"vitest run --coverage","test:integration":"vitest run ../test/integration","test:integration:core":"vitest run ../test/integration/repeat-type.test.tsx ../test/integration/playlist.test.tsx"},"typings":"dist/types/index.d.ts","_npmUser":{"name":"slash9494","email":"slash9494@gmail.com"},"repository":{"url":"git+https://github.com/slash9494/react-modern-audio-player.git","type":"git"},"_npmVersion":"10.8.2","description":"Modern, customizable React audio player with waveform visualization, drag-and-drop playlist, WAI-ARIA accessibility, TypeScript-first API, and Next.js App Router (Server Components) support.","directories":{},"sideEffects":["*.css"],"_nodeVersion":"20.20.2","dependencies":{"wavesurfer.js":"^6.6.4"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.4.14","jsdom":"^25.0.0","vitest":"^2.1.0","agentation":"^3.0.2","typescript":"^5.7.2","vitest-axe":"^0.1.0","@types/node":"^22.0.0","@types/jsdom":"^28","@types/react":"^18.3.0","vite-plugin-dts":"^4.5.0","@types/react-dom":"^18.3.0","vite-plugin-libcss":"^1.1.1","@vitest/coverage-v8":"^2.1.0","@types/wavesurfer.js":"^6.0.3","@vitejs/plugin-react":"^4.3.4","@testing-library/react":"^16.3.2","@testing-library/jest-dom":"^6.9.1","@testing-library/user-event":"^14.6.1"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react-modern-audio-player_2.4.0_1784637358020_0.6573296836609295","host":"s3://npm-registry-packages-npm-production"}},"2.4.1":{"name":"react-modern-audio-player","version":"2.4.1","keywords":["react","react-component","audio","audio-player","react-audio-player","music-player","react-music-player","waveform","react-waveform","wavesurfer","wavesurfer-react","playlist","html5-audio","typescript","accessible","a11y","web-audio","modern-ui","dark-mode","customizable","nextjs"],"author":{"url":"https://github.com/slash9494","name":"MAXX","email":"slash9494@gmail.com"},"license":"MIT","_id":"react-modern-audio-player@2.4.1","maintainers":[{"name":"slash9494","email":"slash9494@gmail.com"}],"homepage":"https://github.com/slash9494/react-modern-audio-player/","bugs":{"url":"https://github.com/slash9494/react-modern-audio-player/issues"},"dist":{"shasum":"92d9ee1cf70f6620778cfe6eb193176b172f912b","tarball":"https://registry.npmjs.org/react-modern-audio-player/-/react-modern-audio-player-2.4.1.tgz","fileCount":139,"integrity":"sha512-BojkACsORLIDnO2/791yhyMnl9vJ0YcPojJl6AU/ZxKGywwDBph7zjAntzeOQUB92uPCGyL+1kMNR8NOiNterA==","signatures":[{"sig":"MEUCIDeHGbOQZfdLDDDrBGvBqfygi7iCaiVjY0SLeUiFvm0eAiEAvOvKC9jz5UfNG2PUQq4ejN6VOOQOv9Aho3alLBsKmW4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/react-modern-audio-player@2.4.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":387198},"main":"dist/index.es.js","esnext":"dist/index.es.js","module":"dist/index.es.js","gitHead":"6687533c9c274075a8a1ceae32f7756b41ed6442","scripts":{"dev":"vite --host","test":"vitest run","build":"rm -rf dist && tsc -p tsconfig.json && vite build","preview":"vite preview","test:unit":"vitest run src","typeCheck":"tsc --project ./tsconfig.json --noEmit","test:watch":"vitest","test:coverage":"vitest run --coverage","test:integration":"vitest run ../test/integration","test:integration:core":"vitest run ../test/integration/repeat-type.test.tsx ../test/integration/playlist.test.tsx"},"typings":"dist/types/index.d.ts","_npmUser":{"name":"slash9494","email":"slash9494@gmail.com"},"repository":{"url":"git+https://github.com/slash9494/react-modern-audio-player.git","type":"git"},"_npmVersion":"10.8.2","description":"Modern, customizable React audio player with waveform visualization, drag-and-drop playlist, WAI-ARIA accessibility, TypeScript-first API, and Next.js App Router (Server Components) support.","directories":{},"sideEffects":["*.css"],"_nodeVersion":"20.20.2","dependencies":{"wavesurfer.js":"^6.6.4"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.4.14","jsdom":"^25.0.0","vitest":"^2.1.0","agentation":"^3.0.2","typescript":"^5.7.2","vitest-axe":"^0.1.0","@types/node":"^22.0.0","@types/jsdom":"^28","@types/react":"^18.3.0","vite-plugin-dts":"^4.5.0","@types/react-dom":"^18.3.0","vite-plugin-libcss":"^1.1.1","@vitest/coverage-v8":"^2.1.0","@types/wavesurfer.js":"^6.0.3","@vitejs/plugin-react":"^4.3.4","@testing-library/react":"^16.3.2","@testing-library/jest-dom":"^6.9.1","@testing-library/user-event":"^14.6.1"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react-modern-audio-player_2.4.1_1784643092221_0.4151805165056719","host":"s3://npm-registry-packages-npm-production"}},"2.4.2":{"name":"react-modern-audio-player","version":"2.4.2","keywords":["react","react-component","audio","audio-player","react-audio-player","music-player","react-music-player","waveform","react-waveform","wavesurfer","wavesurfer-react","playlist","html5-audio","typescript","accessible","a11y","web-audio","modern-ui","dark-mode","customizable","nextjs"],"author":{"url":"https://github.com/slash9494","name":"MAXX","email":"slash9494@gmail.com"},"license":"MIT","_id":"react-modern-audio-player@2.4.2","maintainers":[{"name":"slash9494","email":"slash9494@gmail.com"}],"homepage":"https://github.com/slash9494/react-modern-audio-player/","bugs":{"url":"https://github.com/slash9494/react-modern-audio-player/issues"},"dist":{"shasum":"9788136050d4bc287c9e2263acb559350926fe91","tarball":"https://registry.npmjs.org/react-modern-audio-player/-/react-modern-audio-player-2.4.2.tgz","fileCount":140,"integrity":"sha512-Pxzc7xqkc+FLrT42Pz43Ffl1Vcx9b3KrVjMX8H2DGhOZ6+AQ2wikC+obxnbOyfylFd2lA6RkEOSoCcg97CBMzw==","signatures":[{"sig":"MEUCIA1wY7fnK2zcUXbVt05m6veHj/AmKDwa2YxZt2sl9bcsAiEAjt6AEreVhmxN3UAVdecnZYUBLP0f1RsPew2jsiK/i3A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/react-modern-audio-player@2.4.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":388100},"main":"dist/index.es.js","esnext":"dist/index.es.js","module":"dist/index.es.js","gitHead":"f8f3f162c3f85882af1530d617842f75080cd9e5","scripts":{"dev":"vite --host","test":"vitest run","build":"rm -rf dist && tsc -p tsconfig.json && vite build","preview":"vite preview","test:unit":"vitest run src","typeCheck":"tsc --project ./tsconfig.json --noEmit","test:watch":"vitest","test:coverage":"vitest run --coverage","test:integration":"vitest run ../test/integration","test:integration:core":"vitest run ../test/integration/repeat-type.test.tsx ../test/integration/playlist.test.tsx"},"typings":"dist/types/index.d.ts","_npmUser":{"name":"slash9494","email":"slash9494@gmail.com"},"repository":{"url":"git+https://github.com/slash9494/react-modern-audio-player.git","type":"git"},"_npmVersion":"10.8.2","description":"Modern, customizable React audio player with waveform visualization, drag-and-drop playlist, WAI-ARIA accessibility, TypeScript-first API, and Next.js App Router (Server Components) support.","directories":{},"sideEffects":["*.css"],"_nodeVersion":"20.20.2","dependencies":{"wavesurfer.js":"^6.6.4"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.4.14","jsdom":"^25.0.0","vitest":"^2.1.0","agentation":"^3.0.2","typescript":"^5.7.2","vitest-axe":"^0.1.0","@types/node":"^22.0.0","@types/jsdom":"^28","@types/react":"^18.3.0","vite-plugin-dts":"^4.5.0","@types/react-dom":"^18.3.0","vite-plugin-libcss":"^1.1.1","@vitest/coverage-v8":"^2.1.0","@types/wavesurfer.js":"^6.0.3","@vitejs/plugin-react":"^4.3.4","@testing-library/react":"^16.3.2","@testing-library/jest-dom":"^6.9.1","@testing-library/user-event":"^14.6.1"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react-modern-audio-player_2.4.2_1784978597492_0.6588858710057104","host":"s3://npm-registry-packages-npm-production"}},"2.4.3":{"name":"react-modern-audio-player","version":"2.4.3","keywords":["react","react-component","audio","audio-player","react-audio-player","music-player","react-music-player","waveform","react-waveform","wavesurfer","wavesurfer-react","playlist","html5-audio","typescript","accessible","a11y","web-audio","modern-ui","dark-mode","customizable","nextjs"],"author":{"url":"https://github.com/slash9494","name":"MAXX","email":"slash9494@gmail.com"},"license":"MIT","_id":"react-modern-audio-player@2.4.3","maintainers":[{"name":"slash9494","email":"slash9494@gmail.com"}],"homepage":"https://github.com/slash9494/react-modern-audio-player/","bugs":{"url":"https://github.com/slash9494/react-modern-audio-player/issues"},"dist":{"shasum":"70ca9825261950b890baf95549e9ef1e59fb4c15","tarball":"https://registry.npmjs.org/react-modern-audio-player/-/react-modern-audio-player-2.4.3.tgz","fileCount":136,"integrity":"sha512-Hku+EaW5LAbqfvmyzAatCdFpnlKqAoxyP5LVEop3Q2xZnsS5blWl5eB36aDVT6dIu2cu8Eo6VUOpN0KxezUNKA==","signatures":[{"sig":"MEUCIQCDd8VFFKbeB5S11e0UXOYgC8D1b7B9pLRRNfamQ5Y+xwIgYNDxAbX3kVr3XUIP0Nuwk/WtAnAxnzh7yfzVhNzjppw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/react-modern-audio-player@2.4.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":390164},"main":"dist/index.es.js","esnext":"dist/index.es.js","module":"dist/index.es.js","gitHead":"ea94b83ebb2cbf53dc9acc4d80dd408cccf80fbd","scripts":{"dev":"vite --host","test":"vitest run","build":"rm -rf dist && tsc -p tsconfig.json && vite build","preview":"vite preview","test:unit":"vitest run src","typeCheck":"tsc --project ./tsconfig.json --noEmit","test:watch":"vitest","test:coverage":"vitest run --coverage","test:integration":"vitest run ../test/integration","test:integration:core":"vitest run ../test/integration/repeat-type.test.tsx ../test/integration/playlist.test.tsx"},"typings":"dist/types/index.d.ts","_npmUser":{"name":"slash9494","email":"slash9494@gmail.com"},"repository":{"url":"git+https://github.com/slash9494/react-modern-audio-player.git","type":"git"},"_npmVersion":"10.8.2","description":"Modern, customizable React audio player with waveform visualization, drag-and-drop playlist, WAI-ARIA accessibility, TypeScript-first API, and Next.js App Router (Server Components) support.","directories":{},"sideEffects":["*.css"],"_nodeVersion":"20.20.2","dependencies":{"wavesurfer.js":"^6.6.4"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.4.14","jsdom":"^25.0.0","vitest":"^2.1.0","agentation":"^3.0.2","typescript":"^5.7.2","vitest-axe":"^0.1.0","@types/node":"^22.0.0","@types/jsdom":"^28","@types/react":"^18.3.0","vite-plugin-dts":"^4.5.0","@types/react-dom":"^18.3.0","vite-plugin-libcss":"^1.1.1","@vitest/coverage-v8":"^2.1.0","@types/wavesurfer.js":"^6.0.3","@vitejs/plugin-react":"^4.3.4","@testing-library/react":"^16.3.2","@testing-library/jest-dom":"^6.9.1","@testing-library/user-event":"^14.6.1"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react-modern-audio-player_2.4.3_1786888279990_0.8076579544958897","host":"s3://npm-registry-packages-npm-production"}},"2.4.4":{"name":"react-modern-audio-player","version":"2.4.4","keywords":["react","react-component","audio","audio-player","react-audio-player","music-player","react-music-player","waveform","react-waveform","wavesurfer","wavesurfer-react","playlist","html5-audio","typescript","accessible","a11y","web-audio","modern-ui","dark-mode","customizable","nextjs"],"author":{"url":"https://github.com/slash9494","name":"MAXX","email":"slash9494@gmail.com"},"license":"MIT","_id":"react-modern-audio-player@2.4.4","maintainers":[{"name":"slash9494","email":"slash9494@gmail.com"}],"homepage":"https://github.com/slash9494/react-modern-audio-player/","bugs":{"url":"https://github.com/slash9494/react-modern-audio-player/issues"},"dist":{"shasum":"832f5f4359415eda0a123deaf88abbcf7fc82eab","tarball":"https://registry.npmjs.org/react-modern-audio-player/-/react-modern-audio-player-2.4.4.tgz","fileCount":136,"integrity":"sha512-sjL7AHlA2Q6hcli2ERMuLQYkWcdzcNSshph45qn7OvwQN05GSGqvtcxnMD7GdFObgfuQssOXOSvAsy6lAk+fgQ==","signatures":[{"sig":"MEYCIQDqRS4z4612d2W3iWJDS6XdH+2uPn1iJcsZVlP1f9jlbAIhALMUgD0H3GqG95gT5FFbinikhYea/333rj+pmBViEPUh","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/react-modern-audio-player@2.4.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":391796},"main":"dist/index.es.js","esnext":"dist/index.es.js","module":"dist/index.es.js","gitHead":"a85de9064d0927cd7284eebcdfad03447b88908e","scripts":{"dev":"vite --host","test":"vitest run","build":"rm -rf dist && tsc -p tsconfig.json && vite build","preview":"vite preview","test:unit":"vitest run src","typeCheck":"tsc --project ./tsconfig.json --noEmit","test:watch":"vitest","test:coverage":"vitest run --coverage","test:integration":"vitest run ../test/integration","test:integration:core":"vitest run ../test/integration/repeat-type.test.tsx ../test/integration/playlist.test.tsx"},"typings":"dist/types/index.d.ts","_npmUser":{"name":"slash9494","email":"slash9494@gmail.com"},"repository":{"url":"git+https://github.com/slash9494/react-modern-audio-player.git","type":"git"},"_npmVersion":"10.8.2","description":"Modern, customizable React audio player with waveform visualization, drag-and-drop playlist, WAI-ARIA accessibility, TypeScript-first API, and Next.js App Router (Server Components) support.","directories":{},"sideEffects":["*.css"],"_nodeVersion":"20.20.2","dependencies":{"wavesurfer.js":"^6.6.4"},"_hasShrinkwrap":false,"devDependencies":{"vite":"^5.4.14","jsdom":"^25.0.0","vitest":"^2.1.0","agentation":"^3.0.2","typescript":"^5.7.2","vitest-axe":"^0.1.0","@types/node":"^22.0.0","@types/jsdom":"^28","@types/react":"^18.3.0","vite-plugin-dts":"^4.5.0","@types/react-dom":"^18.3.0","vite-plugin-libcss":"^1.1.1","@vitest/coverage-v8":"^2.1.0","@types/wavesurfer.js":"^6.0.3","@vitejs/plugin-react":"^4.3.4","@testing-library/react":"^16.3.2","@testing-library/jest-dom":"^6.9.1","@testing-library/user-event":"^14.6.1"},"peerDependencies":{"react":">=18.0.0","react-dom":">=18.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react-modern-audio-player_2.4.4_1788683364754_0.6331495032771042","host":"s3://npm-registry-packages-npm-production"}}},"time":{"created":"2022-07-20T15:56:58.609Z","modified":"2026-09-06T08:29:26.154Z","0.0.1":"2022-07-20T15:56:58.841Z","0.0.2":"2022-07-20T17:14:26.920Z","0.0.3":"2022-07-21T15:20:19.299Z","1.0.0":"2022-07-22T14:37:23.863Z","1.0.1":"2022-07-25T07:39:59.175Z","1.1.1":"2022-07-28T15:37:48.470Z","1.1.2":"2022-08-06T21:32:51.983Z","1.1.3":"2022-08-30T19:57:10.864Z","1.1.4":"2022-08-30T21:09:55.747Z","1.1.5":"2022-08-30T22:09:23.205Z","1.2.0":"2022-10-05T02:35:24.112Z","1.2.1":"2022-10-05T03:21:56.073Z","1.2.2":"2022-10-05T23:05:32.903Z","1.2.3":"2022-10-08T04:03:42.518Z","1.2.4":"2022-10-10T02:11:41.182Z","1.2.5":"2022-10-18T14:03:20.092Z","1.3.0":"2022-10-25T23:52:07.678Z","1.4.0-rc.0":"2023-01-01T17:55:14.176Z","1.4.0-rc.1":"2023-01-24T17:17:04.237Z","1.4.0-rc.2":"2023-02-26T14:06:11.783Z","2.0.0-beta.1":"2026-04-11T04:57:58.336Z","2.0.0":"2026-04-11T06:47:07.827Z","2.1.0":"2026-04-14T13:56:06.853Z","2.2.0":"2026-04-25T09:46:51.583Z","2.3.0":"2026-04-29T15:06:46.221Z","2.3.1":"2026-05-01T10:10:40.271Z","2.3.2":"2026-07-02T10:43:15.141Z","2.4.0":"2026-07-21T12:35:58.180Z","2.4.1":"2026-07-21T14:11:32.394Z","2.4.2":"2026-07-25T11:23:17.632Z","2.4.3":"2026-08-16T13:51:20.107Z","2.4.4":"2026-09-06T08:29:24.908Z"},"bugs":{"url":"https://github.com/slash9494/react-modern-audio-player/issues"},"author":{"url":"https://github.com/slash9494","name":"MAXX","email":"slash9494@gmail.com"},"license":"MIT","homepage":"https://github.com/slash9494/react-modern-audio-player/","keywords":["react","react-component","audio","audio-player","react-audio-player","music-player","react-music-player","waveform","react-waveform","wavesurfer","wavesurfer-react","playlist","html5-audio","typescript","accessible","a11y","web-audio","modern-ui","dark-mode","customizable","nextjs"],"repository":{"url":"git+https://github.com/slash9494/react-modern-audio-player.git","type":"git"},"description":"Modern, customizable React audio player with waveform visualization, drag-and-drop playlist, WAI-ARIA accessibility, TypeScript-first API, and Next.js App Router (Server Components) support.","maintainers":[{"name":"slash9494","email":"slash9494@gmail.com"}],"readme":"<!-- markdownlint-disable MD033 MD041 MD028 -->\n\n<p align=\"center\">\n<img width=\"12%\" src=\"https://raw.githubusercontent.com/slash9494/react-modern-audio-player/main/package/assets/icon.png\" alt=\"rm-audio-player\" />\n<h1 align=\"center\">React Modern Audio Player</h1>\n</p>\n\n<p align=\"center\">\n  <a href=\"https://github.com/slash9494/react-modern-audio-player/blob/main/package/LICENSE\">\n    <img src=\"https://img.shields.io/npm/l/react-modern-audio-player\" alt=\"License\">\n  </a>\n  <a href=\"https://www.npmjs.com/package/react-modern-audio-player\">\n    <img src=\"https://img.shields.io/npm/v/react-modern-audio-player\" alt=\"Version\">\n  </a>\n  <a href=\"https://www.npmjs.com/package/react-modern-audio-player\">\n    <img src=\"https://img.shields.io/npm/dt/react-modern-audio-player\" alt=\"Download\">\n  </a>\n  <a href=\"https://bundlephobia.com/package/react-modern-audio-player\">\n    <img src=\"https://img.shields.io/bundlephobia/minzip/react-modern-audio-player\" alt=\"BundleSize\">\n  </a>\n  <a href=\"https://github.com/slash9494/react-modern-audio-player/actions/workflows/integration.yml\">\n    <img src=\"https://img.shields.io/github/actions/workflow/status/slash9494/react-modern-audio-player/integration.yml?branch=main&label=CI\" alt=\"CI\">\n  </a>\n  <img src=\"https://img.shields.io/badge/TypeScript-first-3178C6?logo=typescript&logoColor=white\" alt=\"TypeScript\">\n</p>\n\n## Highlights\n\n- **Waveform** progress bar powered by `wavesurfer.js`\n- **Playlist** with drag-and-drop reorder, repeat, shuffle\n- **Fully customizable** — swap any sub-component, CSS variable theming, light & dark themes\n- **Compound slots** — `AudioPlayer.Volume`, `AudioPlayer.Progress`, `AudioPlayer.PlayList`, etc. for partial customization without losing the preset\n- **Multi-instance playlist** — render multiple players on the same page with isolated playlist drawers and fully independent audio state\n- **Accessible** — WAI-ARIA patterns, full keyboard navigation, axe-tested\n- **TypeScript-first** — typed props and hooks (`useAudioPlayer`, sub-hooks)\n- **SSR-friendly** — works with Next.js App Router / Server Components\n\n## DEMO\n\n<https://codesandbox.io/p/sandbox/basic-nfrpfq>\n\nor\n\n<https://stackblitz.com/edit/stackblitz-webcontainer-api-starter-nevxganw?file=src%2FApp.tsx>\n\n# **Flexible and Customizable UI**\n\n## Waveform progress with `wavesurfer.js`\n\n<img width=\"100%\" src=\"https://raw.githubusercontent.com/slash9494/react-modern-audio-player/main/package/assets/screenshots/waveform-light.png\" alt=\"Waveform view\" />\n\n## Customizable layout and placement — with light & dark themes\n\n### Full View\n\n<p align=\"center\">\n  <img width=\"49%\" src=\"https://raw.githubusercontent.com/slash9494/react-modern-audio-player/main/package/assets/screenshots/full-view-light.png\" alt=\"Full view — light\" />\n  <img width=\"49%\" src=\"https://raw.githubusercontent.com/slash9494/react-modern-audio-player/main/package/assets/screenshots/full-view-dark.png\" alt=\"Full view — dark\" />\n</p>\n\n### Position Change\n\n<p align=\"center\">\n  <img width=\"49%\" src=\"https://raw.githubusercontent.com/slash9494/react-modern-audio-player/main/package/assets/screenshots/position-change-light.png\" alt=\"Position change — light\" />\n  <img width=\"49%\" src=\"https://raw.githubusercontent.com/slash9494/react-modern-audio-player/main/package/assets/screenshots/position-change-dark.png\" alt=\"Position change — dark\" />\n</p>\n\n### Particular View\n\n<p align=\"center\" style=\"display:flex; gap: 10%;\">\n  <img width=\"39%\" src=\"https://raw.githubusercontent.com/slash9494/react-modern-audio-player/main/package/assets/screenshots/particular-view-dark.png\" alt=\"Particular view — compact compound\" />\n  <img width=\"10%\" height=\"50%\" src=\"https://raw.githubusercontent.com/slash9494/react-modern-audio-player/main/package/assets/screenshots/particular-view-play-only-dark.png\" alt=\"Particular view — play button only\" />\n</p>\n\n# **Installation**\n\n```tsx\nnpm install --save react-modern-audio-player\n```\n\n# **Requirements**\n\n- React **18.0.0** or higher\n- react-dom **18.0.0** or higher\n  > For React 16/17 projects, use v1.x of this library.\n\n# **Quick Start**\n\n```tsx\nimport AudioPlayer from \"react-modern-audio-player\";\n\nconst playList = [\n  {\n    name: \"name\",\n    writer: \"writer\",\n    img: \"image.jpg\",\n    src: \"audio.mp3\",\n    id: 1,\n  },\n];\nfunction Player() {\n  return <AudioPlayer playList={playList} />;\n}\n```\n\n# **Next.js / Server Components**\n\nThis library includes the `'use client'` directive and can be imported directly in Next.js App Router.\n\n**Server Component** — render `<AudioPlayer>` with static props (no hooks, no compound components):\n\n```tsx\n// app/page.tsx — Server Component, no 'use client' needed\nimport AudioPlayer from \"react-modern-audio-player\";\n\nconst playList = [\n  {\n    name: \"track\",\n    writer: \"artist\",\n    img: \"cover.jpg\",\n    src: \"audio.mp3\",\n    id: 1,\n  },\n];\n\nexport default function Page() {\n  return <AudioPlayer playList={playList} activeUI={{ playButton: true }} />;\n}\n```\n\n**Client Component** — use `useAudioPlayer` hooks or `AudioPlayer.CustomComponent`:\n\n```tsx\n\"use client\";\n// app/player/page.tsx — Client Component required for hooks & compound pattern\nimport AudioPlayer, { useAudioPlayer } from \"react-modern-audio-player\";\n\nfunction Controls() {\n  const { isPlaying, togglePlay } = useAudioPlayer();\n  return <button onClick={togglePlay}>{isPlaying ? \"Pause\" : \"Play\"}</button>;\n}\n\nexport default function PlayerPage() {\n  return (\n    <AudioPlayer playList={playList}>\n      <AudioPlayer.CustomComponent id=\"controls\">\n        <Controls />\n      </AudioPlayer.CustomComponent>\n    </AudioPlayer>\n  );\n}\n```\n\n> **Why `'use client'`?** The library's `'use client'` directive marks the **client boundary** — it allows Server Components to import and render `<AudioPlayer>`. However, `useAudioPlayer()` hooks and `AudioPlayer.CustomComponent` require client-side React features (state, context), so components using them must be Client Components.\n\n## Table of Contents\n\n| Category             | Sections                                                                                                                                              |\n| -------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- |\n| **Props**            | [PlayList](#playlist) · [InitialStates](#initialstates) · [ActiveUI](#activeui) · [Placement](#placement) · [RootContainerProps](#rootcontainerprops) |\n| **Override & Style** | [CustomIcons](#customicons) · [CoverImgsCss](#coverimgscss) · [Theme mode](#theme-mode-dark-mode) · [ID & Classnames](#id--classnames)                |\n| **Player Hook API**  | [useAudioPlayer](#useaudioplayer) · [AudioPlayerControls](#audioplayercontrols) · [Sub-Hooks](#sub-hooks)                                             |\n| **Custom Component** | [Custom Component](#custom-component) · [Compound Slots](#compound-slots)                                                                             |\n| **Accessibility**    | [Keyboard support](#keyboard-support)                                                                                                                 |\n| **Gotchas**          | [Gotchas](#gotchas)                                                                                                                                   |\n| **Example**          | [Example](#example)                                                                                                                                   |\n| **Security**         | [Security & Trust Model](#security--trust-model)                                                                                                      |\n\n# Props\n\n```tsx\ninterface AudioPlayerProps {\n  playList: PlayList;\n  audioInitialState?: InitialStates;\n  audioRef?: React.MutableRefObject<HTMLAudioElement>;\n  activeUI?: ActiveUI;\n  customIcons?: CustomIcons;\n  coverImgsCss?: CoverImgsCss;\n  placement?: {\n    player?: PlayerPlacement;\n    playList?: PlayListPlacement;\n    interface?: InterfacePlacement;\n    volumeSlider?: VolumeSliderPlacement;\n    speedSelector?: SpeedSelectorPlacement;\n    timeTooltip?: TimeTooltipPlacement;\n  };\n  rootContainerProps?: RootContainerProps;\n  colorScheme?: \"light\" | \"dark\";\n}\n```\n\n| Prop                 | Type                                      | Default                                                                                                         |\n| -------------------- | ----------------------------------------- | --------------------------------------------------------------------------------------------------------------- |\n| `playList`           | [PlayList](#playlist)                     | [ ]                                                                                                             |\n| `audioInitialState`  | [InitialStates](#initialstates)           | isPlaying: false </br>repeatType: \"ALL\" </br>volume: 1                                                          |\n| `activeUI`           | [ActiveUI](#activeui)                     | playButton : true                                                                                               |\n| `customIcons`        | [CustomIcons](#customicons)               | undefined                                                                                                       |\n| `coverImgsCss`       | [CoverImgsCss](#coverimgscss)             | undefined                                                                                                       |\n| `placement`          | [Placement](#placement)                   | playListPlacement : \"bottom\" </br>interfacePlacement :[DefaultInterfacePlacement](#default-interface-placement) |\n| `rootContainerProps` | [RootContainerProps](#rootcontainerprops) | width: 100%<br/>position: 'static'<br/>className: rmap-player-provider                                          |\n| `colorScheme`        | `\"light\" \\| \"dark\"`                       | undefined (follows OS `prefers-color-scheme`)                                                                   |\n\n## PlayList\n\n```tsx\ntype PlayList = Array<AudioData>;\ntype AudioData = {\n  src: string;\n  id: number;\n  name?: string;\n  writer?: string;\n  img?: string;\n  description?: string | ReactNode;\n  customTrackInfo?: string | ReactNode;\n  // Long-form & streaming (all optional, opt-in)\n  isLive?: boolean;\n  duration?: number;\n  peaks?: number[] | number[][];\n  preload?: \"none\" | \"metadata\" | \"auto\";\n};\n```\n\n### Long-form & live streams — automatic waveform fallback\n\nA plain `{ src, id }` track just works — the player automatically detects\nlong-form and live tracks and falls back from the waveform to a standard\nseekable bar. Fallback kicks in when a track is:\n\n- a **live stream**,\n- longer than **30 minutes**, or\n- over **50 MB** (detected via a `HEAD` request on same-origin / CORS-enabled hosts).\n\n> Live auto-detection relies on the browser reporting `duration === Infinity` after metadata loads. A few streams report `NaN` instead and are treated as normal tracks — set `isLive: true` explicitly for those.\n\nYou can override or hint any of this with optional `AudioData` fields:\n\n| Field      | Type                             | Effect                                                                                                                                                                                                                               |\n| ---------- | -------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |\n| `isLive`   | `boolean`                        | Marks the track as a live stream. The waveform skips decoding and falls back to the standard seekable bar progress, seeking is guarded on endless streams, and the duration UI no longer leaks `Infinity`.                           |\n| `duration` | `number` (seconds)               | Optional early hint for the total length — detection is automatic from metadata, so set this only to gate before metadata loads (or to force the bar fallback for a track over 30 minutes). Also drives `H:MM:SS` display.           |\n| `peaks`    | `number[] \\| number[][]`         | Server-precomputed, normalized amplitude samples (single array, or one per channel) — the same shape `wavesurfer.load()` accepts. When provided, the real waveform renders with no client-side decode (recommended for large files). |\n| `preload`  | `\"none\" \\| \"metadata\" \\| \"auto\"` | Per-track override of the native `<audio preload>` attribute.                                                                                                                                                                        |\n\n```tsx\nconst playList = [\n  {\n    id: 1,\n    src: \"/podcast-3h.mp3\",\n    name: \"Long episode\",\n    duration: 3 * 60 * 60,\n  },\n  {\n    id: 2,\n    src: \"https://stream.example.com/live\",\n    name: \"Live radio\",\n    isLive: true,\n  },\n];\n```\n\n### Empty playlist handling\n\nPassing `playList={[]}` renders the player in an empty state without crashing. This is useful while waiting for asynchronous track data:\n\n```tsx\nfunction App() {\n  const [tracks, setTracks] = useState<PlayList>([]);\n\n  useEffect(() => {\n    fetchTracks().then(setTracks);\n  }, []);\n\n  // Safe — the player mounts with no audio source and activates once tracks arrive.\n  return <AudioPlayer playList={tracks} />;\n}\n```\n\n- When the playlist becomes empty after updates, playback stops and all time state resets.\n- When `audioInitialState.curPlayId` doesn't match any track in the current list, the player falls back to `playList[0]` automatically.\n\n## InitialStates\n\n```tsx\ntype InitialStates = Omit<\n  React.AudioHTMLAttributes<HTMLAudioElement>,\n  \"autoPlay\"\n> & {\n  isPlaying?: boolean;\n  repeatType?: RepeatType;\n  volume?: number;\n  currentTime?: number;\n  duration?: number;\n  curPlayId: number;\n  playListExpanded?: boolean;\n};\n```\n\n> `playListExpanded: true` opens the playlist drawer on mount. Consistent with the other fields on `audioInitialState`, this is read once at mount and is not tracked in reducer state.\n\n## ActiveUI\n\n```tsx\ntype ActiveUI = {\n  all: boolean;\n  playButton: boolean;\n  playList: PlayListUI;\n  prevNnext: boolean;\n  volume: boolean;\n  volumeSlider: boolean;\n  repeatType: boolean;\n  trackTime: boolean;\n  trackInfo: boolean;\n  artwork: boolean;\n  progress: ProgressUI;\n  playbackRate: boolean;\n};\ntype ProgressUI = \"waveform\" | \"bar\" | false;\ntype PlayListUI = \"sortable\" | \"unSortable\" | false;\n```\n\n## CustomIcons\n\n```tsx\ntype CustomIcons = {\n  play: ReactNode;\n  pause: ReactNode;\n  prev: ReactNode;\n  next: ReactNode;\n  repeatOne: ReactNode;\n  repeatAll: ReactNode;\n  repeatNone: ReactNode;\n  repeatShuffle: ReactNode;\n  volumeFull: ReactNode;\n  volumeHalf: ReactNode;\n  volumeMuted: ReactNode;\n  playList: ReactNode;\n};\n```\n\n## CoverImgsCss\n\n```tsx\ninterface CoverImgsCss {\n  artwork?: React.CSSProperties;\n  listThumbnail?: React.CSSProperties;\n}\n```\n\n## Placement\n\n```tsx\ntype PlayerPlacement =\n  | \"bottom\"\n  | \"top\"\n  | \"bottom-left\"\n  | \"bottom-right\"\n  | \"top-left\"\n  | \"top-right\";\n\ntype VolumeSliderPlacement = \"bottom\" | \"top\" | \"left\" | \"right\";\n\ntype SpeedSelectorPlacement = \"bottom\" | \"top\" | \"left\" | \"right\";\n\ntype TimeTooltipPlacement = \"top\" | \"bottom\";\n\ntype PlayListPlacement = \"bottom\" | \"top\";\n\ntype InterfacePlacement = {\n  templateArea?: InterfaceGridTemplateArea;\n  customComponentsArea?: InterfaceGridCustomComponentsArea<TMaxLength>;\n  itemCustomArea?: InterfaceGridItemArea;\n};\n\ntype InterfacePlacementKey =\n  | Exclude<keyof ActiveUI, \"all\" | \"prevNnext\" | \"trackTime\">\n  | \"trackTimeCurrent\"\n  | \"trackTimeDuration\";\n\ntype InterfacePlacementValue = \"row1-1\" | \"row1-2\" | \"row1-3\" | \"row1-4\" | ... more ... | \"row10-10\"\n/** if you apply custom components, values must be \"row1-1\" ~ any more */\n\ntype InterfaceGridTemplateArea = Record<InterfacePlacementKey,InterfacePlacementValue>;\n\ntype InterfaceGridCustomComponentsArea = Record<componentId,InterfacePlacementValue>;\n\ntype InterfaceGridItemArea = Partial<Record<InterfacePlacementKey, string>>;\n  /** example\n   * progress : 2-4\n   * repeatBtn : row1-4 / 2 / row1-4 / 10\n   *\n   * check MDN - grid area\n   * https://developer.mozilla.org/ko/docs/Web/CSS/grid-area\n   */\n```\n\n### Default interface placement\n\n```tsx\nconst defaultInterfacePlacement = {\n  templateArea: {\n    artwork: \"row1-1\",\n    trackInfo: \"row1-2\",\n    trackTimeCurrent: \"row1-3\",\n    trackTimeDuration: \"row1-4\",\n    progress: \"row1-5\",\n    repeatType: \"row1-6\",\n    volume: \"row1-7\",\n    playButton: \"row1-8\",\n    playList: \"row1-9\",\n    playbackRate: \"row1-10\",\n  },\n};\n```\n\n## RootContainerProps\n\n`rootContainerProps` accepts any standard `HTMLAttributes<HTMLDivElement>` (e.g. `className`, `style`, `data-*`). The root container always has the class `rmap-player-provider` applied automatically.\n\n> ⚠️ Setting the native CSS `color-scheme` property via `rootContainerProps={{ style: { colorScheme: \"dark\" } }}` will **not** toggle the player's theme. The library's theme is driven by the `prefers-color-scheme` media query and the `[data-theme]` attribute selector — use the top-level [`colorScheme`](#theme-mode-dark-mode) prop instead.\n\n# Override Style\n\n## Theme mode (dark mode)\n\n> Dark mode is driven by `system-theme` (`prefers-color-scheme: dark`) by default.\n> To force a specific theme regardless of OS preference, pass the top-level `colorScheme=\"light\" | \"dark\"` prop on `<AudioPlayer>` — this applies a `data-theme` attribute on `.rmap-player-provider` which overrides the media query.\n> You can override any color by redefining the CSS variables below on `.rmap-player-provider`.\n\n```css\n@media (prefers-color-scheme: dark) {\n  .rmap-player-provider {\n    --rm-audio-player-interface-container: #1e1e1e;\n    /* override other variables as needed */\n  }\n}\n```\n\n## ID & Classnames\n\n### root ID\n\n- rm-audio-player\n\n> **Multi-instance note**: when multiple `<AudioPlayer>` instances share a\n> page the root `id` is duplicated across them. Playlist and audio state are\n> still isolated per instance (each player has its own React provider tree\n> and its own `<audio>` DOM node). If you need per-instance selectors, target\n> via the class names below rather than the id.\n\n### root ClassName\n\n- rmap-player-provider\n\n### color variables\n\n```css\n.rmap-player-provider {\n  --rm-audio-player-text-color: #2c2c2c;\n  --rm-audio-player-shadow: 0 0 0;\n  --rm-audio-player-interface-container: #f5f5f5;\n  --rm-audio-player-volume-background: #ccc;\n  --rm-audio-player-volume-panel-background: #f2f2f2;\n  --rm-audio-player-volume-panel-border: #ccc;\n  --rm-audio-player-volume-thumb: #5c5c5c;\n  --rm-audio-player-volume-fill: rgba(0, 0, 0, 0.5);\n  --rm-audio-player-volume-track: #ababab;\n  --rm-audio-player-track-current-time: #0072f5;\n  --rm-audio-player-track-duration: #8c8c8c;\n  --rm-audio-player-progress-bar: #0072f5;\n  --rm-audio-player-progress-bar-background: #393939;\n  --rm-audio-player-tooltip-background: #f2f2f2;\n  --rm-audio-player-waveform-cursor: #4b4b4b;\n  --rm-audio-player-waveform-background: var(\n    --rm-audio-player-progress-bar-background\n  );\n  --rm-audio-player-waveform-bar: var(--rm-audio-player-progress-bar);\n  --rm-audio-player-sortable-list: #eaeaea;\n  --rm-audio-player-sortable-list-button-active: #0072f5;\n  --rm-audio-player-selected-list-item-background: #b3b3b3;\n}\n```\n\n# useAudioPlayer\n\nControl the player externally using the `useAudioPlayer` hook. Must be called inside `AudioPlayerStateProvider` (or `AudioPlayer` which wraps it).\n\n```tsx\nimport AudioPlayer, { useAudioPlayer } from \"react-modern-audio-player\";\n\nfunction PlayerControls() {\n  const {\n    isPlaying,\n    currentTrack,\n    currentTime,\n    duration,\n    togglePlay,\n    next,\n    prev,\n    seek,\n    setVolume,\n    setTrack,\n  } = useAudioPlayer();\n\n  const timeLabel = `${currentTime.toFixed(0)}s / ${duration.toFixed(0)}s`;\n\n  return (\n    <div>\n      <button onClick={togglePlay}>{isPlaying ? \"Pause\" : \"Play\"}</button>\n      <button onClick={prev}>Prev</button>\n      <button onClick={next}>Next</button>\n      <button onClick={() => seek(30)}>+30s</button>\n      <button onClick={() => setVolume(0.5)}>Volume 50%</button>\n      <button onClick={() => setTrack(1)}>Track 2</button>\n      <p>\n        {currentTrack?.name} — {timeLabel}\n      </p>\n    </div>\n  );\n}\n\nfunction App() {\n  const playList = [{ id: 1, src: \"audio.mp3\", name: \"Track 1\" }];\n  return (\n    <AudioPlayer playList={playList}>\n      <PlayerControls />\n    </AudioPlayer>\n  );\n}\n```\n\n## AudioPlayerControls\n\n| Property                | Type                       | Description                                                    |\n| ----------------------- | -------------------------- | -------------------------------------------------------------- |\n| `isPlaying`             | `boolean`                  | Current playback state                                         |\n| `volume`                | `number`                   | Current volume (0–1)                                           |\n| `currentTime`           | `number`                   | Elapsed time in seconds                                        |\n| `duration`              | `number`                   | Track duration in seconds                                      |\n| `repeatType`            | `RepeatType`               | Current repeat mode                                            |\n| `muted`                 | `boolean`                  | Whether audio is muted                                         |\n| `currentTrack`          | `AudioData \\| null`        | Currently playing track                                        |\n| `currentIndex`          | `number`                   | Index in playlist                                              |\n| `playList`              | `PlayList`                 | Full playlist                                                  |\n| `play()`                | `() => void`               | Start playback                                                 |\n| `pause()`               | `() => void`               | Pause playback                                                 |\n| `togglePlay()`          | `() => void`               | Toggle play/pause                                              |\n| `next()`                | `() => void`               | Skip to next track                                             |\n| `prev()`                | `() => void`               | Skip to previous track                                         |\n| `seek(time)`            | `(time: number) => void`   | Seek to time in seconds                                        |\n| `setVolume(vol)`        | `(volume: number) => void` | Set volume (0–1, clamped)                                      |\n| `toggleMute()`          | `() => void`               | Toggle mute on/off                                             |\n| `setTrack(index)`       | `(index: number) => void`  | Jump to playlist index                                         |\n| `playbackRate`          | `number`                   | Current playback rate (`1` = normal). Default `1`.             |\n| `setPlaybackRate(rate)` | `(rate: number) => void`   | Set playback rate. No clamping; browser enforces HTML5 bounds. |\n\n## Sub-Hooks\n\n`useAudioPlayer` subscribes to all context slices. For fine-grained re-render control, use domain-specific sub-hooks:\n\n```tsx\nimport {\n  useAudioPlayerPlayback,\n  useAudioPlayerTrack,\n  useAudioPlayerVolume,\n  useAudioPlayerTime,\n  useAudioPlayerElement,\n} from \"react-modern-audio-player\";\n\n// Only re-renders on play/pause and repeat type changes\nfunction PlayButton() {\n  const { isPlaying, togglePlay } = useAudioPlayerPlayback();\n  return <button onClick={togglePlay}>{isPlaying ? \"Pause\" : \"Play\"}</button>;\n}\n\n// Only re-renders on time updates\nfunction TimeDisplay() {\n  const { currentTime, duration } = useAudioPlayerTime();\n  return (\n    <span>\n      {currentTime.toFixed(0)}s / {duration.toFixed(0)}s\n    </span>\n  );\n}\n```\n\n| Hook                     | Returns                                                                             |\n| ------------------------ | ----------------------------------------------------------------------------------- |\n| `useAudioPlayerPlayback` | `{ isPlaying, repeatType, playbackRate, play, pause, togglePlay, setPlaybackRate }` |\n| `useAudioPlayerTrack`    | `{ currentPlayId, currentIndex, playList, currentTrack, setTrack, next, prev }`     |\n| `useAudioPlayerVolume`   | `{ volume, muted, setVolume, toggleMute }`                                          |\n| `useAudioPlayerTime`     | `{ currentTime, duration, seek }`                                                   |\n| `useAudioPlayerElement`  | `{ audioEl, waveformInst }` (advanced)                                              |\n\n# Context Hooks\n\nComponents inside `AudioPlayer` can subscribe to only the state slice they need, avoiding unnecessary re-renders.\n\n```tsx\nimport {\n  usePlaybackContext, // isPlaying, volume, muted, repeatType, isLoadedMetaData, audioResetKey, playbackRate\n  useTimeContext, // currentTime, duration, seekRequestKey\n  useTrackContext, // playList, curPlayId, curIdx\n  useUIContext, // activeUI, playListPlacement, playerPlacement, interfacePlacement, volumeSliderPlacement, speedSelectorPlacement, timeTooltipPlacement, colorScheme, playListExpanded\n  useResourceContext, // elementRefs, customIcons, coverImgsCss\n  useAudioAttrsContext, // native <audio> attributes passed via audioInitialState\n  useCurrentTrack, // current AudioData, derived from useTrackContext — not a direct context subscription\n} from \"react-modern-audio-player\";\n\nconst MyComponent = () => {\n  const { isPlaying } = usePlaybackContext();\n  return <span>{isPlaying ? \"Playing\" : \"Paused\"}</span>;\n};\n```\n\n| Hook                   | Returns                                                                                                                                                                             |\n| ---------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |\n| `usePlaybackContext`   | `{ isPlaying, volume, muted, repeatType, isLoadedMetaData, audioResetKey, playbackRate }`                                                                                          |\n| `useTimeContext`       | `{ currentTime, duration, seekRequestKey }`                                                                                                                                        |\n| `useTrackContext`      | `{ playList, curPlayId, curIdx }`                                                                                                                                                  |\n| `useUIContext`         | `{ activeUI, playListPlacement, playerPlacement?, interfacePlacement?, volumeSliderPlacement?, speedSelectorPlacement?, timeTooltipPlacement?, colorScheme?, playListExpanded? }` |\n| `useResourceContext`   | `{ elementRefs?, customIcons?, coverImgsCss? }`                                                                                                                                    |\n| `useAudioAttrsContext` | native `<audio>` attributes from `audioInitialState`, minus every field the player manages itself (playback state, `volume`/`muted`, `playbackRate`, `curPlayId`, `playListExpanded`); the element's `src` always comes from the current track                                                                                     |\n| `useCurrentTrack`      | `AudioData \\| undefined` — derived value, not a context subscription; finds the current track in `playList` by `curPlayId`                                                        |\n\n# Custom Component\n\nYou can place a custom component anywhere in the player interface using `AudioPlayer.CustomComponent`. Use `useAudioPlayer` inside it to access player state and controls.\n\n```tsx\nimport AudioPlayer, {\n  useAudioPlayer,\n  InterfacePlacement,\n  DEFAULT_INTERFACE_GRID_BOUND,\n} from \"react-modern-audio-player\";\n\nconst activeUI: ActiveUI = {\n  all: true,\n};\n\n// `as 12` pins the literal type — TS arithmetic widens\n// `DEFAULT_INTERFACE_GRID_BOUND + 1` to `number`, which would erase grid-coord\nconst TOTAL_INTERFACE_GRID_BOUND = (DEFAULT_INTERFACE_GRID_BOUND + 1) as 12;\n\n// `row1-${DEFAULT_INTERFACE_GRID_BOUND}` resolves to `\"row1-11\"` —\n// the first cell beyond the default template area (which fills 1..10).\nconst customComponentGridArea = `row1-${DEFAULT_INTERFACE_GRID_BOUND}`;\n\nconst placement = {\n  interface: {\n    customComponentsArea: {\n      playerCustomComponent: customComponentGridArea,\n    },\n  } as InterfacePlacement<typeof TOTAL_INTERFACE_GRID_BOUND>,\n  /**\n   * The generic on `InterfacePlacement<N>` is an exclusive upper bound on grid\n   * indices — usable cells are `1..(N - 1)`. Default is\n   * `DEFAULT_INTERFACE_GRID_BOUND` (= 11), giving cells `1..10` which the\n   * built-in template area already occupies (e.g. `playbackRate` at `row1-10`).\n   * To reserve an additional cell for the custom component, pass `<N + 1>` —\n   * here `<12>` makes `row1-11` a valid coordinate.\n   */\n};\n\nconst CustomComponent = () => {\n  const { currentTime, duration, seek, isPlaying, togglePlay } =\n    useAudioPlayer();\n  return (\n    <>\n      <button onClick={() => seek(currentTime + 30)}>+30s</button>\n      <button onClick={togglePlay}>{isPlaying ? \"Pause\" : \"Play\"}</button>\n      <span>\n        {currentTime.toFixed(0)}s / {duration.toFixed(0)}s\n      </span>\n    </>\n  );\n};\n\n<AudioPlayer playList={playList} placement={placement} activeUI={activeUI}>\n  <AudioPlayer.CustomComponent id=\"playerCustomComponent\">\n    <CustomComponent />\n  </AudioPlayer.CustomComponent>\n</AudioPlayer>;\n```\n\n# Compound Slots\n\n`AudioPlayer` exposes its built-in controls as static members so you can re-place or augment individual pieces without rebuilding the whole layout.\n\n| Member                                                                   | Renders                                                                                                                              |\n| ------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------ |\n| `AudioPlayer.Progress`                                                   | progress bar / waveform                                                                                                              |\n| `AudioPlayer.Volume`                                                     | volume trigger + slider (accepts `triggerType?: \"click\" \\| \"hover\"`, `placement?: VolumeSliderPlacement`)                            |\n| `AudioPlayer.PlayList`                                                   | sortable playlist drawer (accepts `initialExpanded?`)                                                                                |\n| `AudioPlayer.PlayListEmpty`                                              | fallback rendered inside the playlist drawer when `playList` is empty                                                                |\n| [`AudioPlayer.PlayButton`](#audioplayerplaybutton-and-activeuiprevnnext) | Play + Prev + Next group (Prev/Next visibility follows `activeUI.prevNnext`)                                                         |\n| `AudioPlayer.RepeatButton`                                               | repeat-type button                                                                                                                   |\n| `AudioPlayer.SpeedSelector`                                              | playback rate dropdown (accepts `options?`, `formatRate?`, `triggerType?: \"click\" \\| \"hover\"`, `placement?: SpeedSelectorPlacement`) |\n| `AudioPlayer.Artwork`                                                    | track artwork                                                                                                                        |\n| `AudioPlayer.TrackInfo`                                                  | track title / writer                                                                                                                 |\n| `AudioPlayer.TrackTime`                                                  | current + duration time                                                                                                              |\n| `AudioPlayer.CustomComponent`                                            | user-defined slot                                                                                                                    |\n\nEach slot accepts the full `GridItemLayoutProps` set — `gridArea?`, `visible?`, `width?`, `padding?`, `justifySelf?`, `UNSAFE_className?` — plus its own domain props. `AudioPlayer.TrackTime` is the exception: it only exposes `visible?` because the slot maps to two grid areas internally.\n\nNative HTML attributes (`className`, `style`, `onClick`, `data-*`, etc.) are **not** forwarded by compound slots. Compose the underlying primitives (`PlayBtn`, `PrevBtn`, `NextBtn`, etc., still exported) when full DOM control is needed; headless support with native attribute pass-through is planned for v3.\n\n## Mental model — `activeUI` vs compound children\n\n- **`activeUI`** governs the **preset** (default layout) — which built-in controls are shown.\n- **Compound children** are **explicit placements** that always render (`visible` defaults to `true`).\n\nThe two layers are orthogonal. Compound children render **additively** alongside the preset. To truly replace a preset control, disable it in `activeUI` and render the compound counterpart:\n\n```tsx\n// Remove the default volume, re-place it with a custom gridArea\n<AudioPlayer playList={playList} activeUI={{ all: true, volume: false }}>\n  <AudioPlayer.Volume gridArea=\"row1-5\" />\n</AudioPlayer>\n```\n\nIn development, a `console.warn` is emitted when a compound slot is rendered while its preset counterpart is still active, so silent duplication is easy to catch.\n\n## `AudioPlayer.PlayButton` and `activeUI.prevNnext`\n\n`AudioPlayer.PlayButton` is a single slot that renders the **Play + Prev + Next** group as one unit. There is no separate `AudioPlayer.PrevButton` / `AudioPlayer.NextButton` compound slot — Prev / Next are part of the `PlayButton` compound, and there are two ways to render them.\n\n### Method 1 — `AudioPlayer.PlayButton` compound (group)\n\nPlace the whole group at a custom grid area; Prev / Next visibility inside the group follows `activeUI.prevNnext` (which defaults to `activeUI.all`):\n\n```tsx\n// Re-place the full Play + Prev + Next group at a custom area\n<AudioPlayer\n  playList={playList}\n  activeUI={{ all: true, playButton: false }} // hide the preset transport\n>\n  <AudioPlayer.PlayButton gridArea=\"row1-3\" />\n</AudioPlayer>\n\n// Same compound, but render Play only — Prev / Next hidden by activeUI.prevNnext\n<AudioPlayer\n  playList={playList}\n  activeUI={{ all: true, playButton: false, prevNnext: false }}\n>\n  <AudioPlayer.PlayButton gridArea=\"row1-3\" />\n</AudioPlayer>\n```\n\n### Method 2 — primitives via `AudioPlayer.CustomComponent`\n\nWhen you need finer control — placing Prev / Play / Next in different grid cells, applying custom wrappers, or attaching native HTML attributes — drop down to the `PlayBtn`, `PrevBtn`, and `NextBtn` primitives (still exported) and render them inside `AudioPlayer.CustomComponent`:\n\n```tsx\nimport AudioPlayer, {\n  PrevBtn,\n  PlayBtn,\n  NextBtn,\n} from \"react-modern-audio-player\";\n\n<AudioPlayer\n  playList={playList}\n  activeUI={{ all: true, playButton: false }} // hide the preset transport\n  placement={{\n    interface: { customComponentsArea: { \"custom-transport\": \"row1-3\" } },\n  }}\n>\n  <AudioPlayer.CustomComponent id=\"custom-transport\">\n    <div className=\"my-transport\">\n      <PrevBtn isVisible />\n      <PlayBtn />\n      <NextBtn isVisible />\n    </div>\n  </AudioPlayer.CustomComponent>\n</AudioPlayer>;\n```\n\n`PrevBtn` / `NextBtn` accept an `isVisible` boolean for symmetry with the compound group's visibility logic; pass `false` to omit them. Use Method 2 when Method 1's group placement and `activeUI.prevNnext` toggle aren't enough.\n\n## Custom empty-playlist UI\n\nPass children to `AudioPlayer.PlayListEmpty` to render a custom node inside the playlist drawer when `playList` is empty. Omit the slot to keep the default (drawer content renders nothing).\n\n```tsx\n<AudioPlayer playList={[]}>\n  <AudioPlayer.PlayListEmpty>\n    <div className=\"my-empty\">Playlist is empty</div>\n  </AudioPlayer.PlayListEmpty>\n</AudioPlayer>\n```\n\n`PlayListEmpty` is a marker slot; its children are consumed by the drawer via context and the component itself does not render in-place.\n\n# **Accessibility**\n\nThe player follows WAI-ARIA patterns and is fully navigable by keyboard and screen readers.\n\n## Keyboard support\n\nAll controls are reachable via `Tab` and respond to standard keyboard activation. The playlist uses the WAI-ARIA \"Listbox with Rearrangeable Options\" pattern:\n\n| Key                                  | Action                                                                      |\n| ------------------------------------ | --------------------------------------------------------------------------- |\n| `Tab` / `Shift+Tab`                  | Move focus between player controls                                          |\n| `Space` / `Enter`                    | Activate the focused button (play/pause, prev/next, repeat, mute, playlist) |\n| `ArrowUp` / `ArrowDown`              | Move focus between playlist items                                           |\n| `Alt+ArrowUp` / `Alt+ArrowDown`      | Reorder the focused playlist item                                           |\n| `Enter` / `Space` on a playlist item | Select and play that track                                                  |\n\nDrag-and-drop reordering is preserved as an alternative — keyboard and mouse both call the same `onReorder` handler.\n\n# **Gotchas**\n\nCommon integration mistakes to avoid:\n\n- **Don't toggle the theme via `rootContainerProps.style.colorScheme`.** The native CSS `color-scheme` property does not switch the player's theme. Use the top-level [`colorScheme`](#theme-mode-dark-mode) prop, which drives the `[data-theme]` attribute and re-initializes the waveform colors.\n- **Set the `InterfacePlacement` generic when placing `customComponentsArea` beyond row 9.** TypeScript rejects values past the default range, so use `InterfacePlacement<N>` where `N` is `(max row length + 1)` — e.g. `InterfacePlacement<11>` for `\"row1-10\"` (see [Custom Component](#custom-component)).\n- **`AudioPlayer.CustomComponent` accepts a single React element child.** It uses `React.cloneElement` internally, so passing multiple children or a primitive (string, number) will throw.\n- **Volume is `0..1`, not `0..100`.** `setVolume` clamps out-of-range values, so `setVolume(50)` silently becomes `setVolume(1)`.\n- **Compound slots don't forward native HTML attributes.** `<AudioPlayer.Volume className=\"...\">` is rejected by TypeScript — only `GridItemLayoutProps` (layout) pass through. Compose the underlying primitives (`PlayBtn`, `PrevBtn`, `NextBtn`, etc., still exported) when you need `className`, `style`, `onClick`, or `data-*`. Full headless support is planned for v3.\n- **`id: 0` is a valid track id.** The reducer uses nullish checks, so tracks with `id: 0` are handled correctly — don't filter them out of `playList` on the assumption that zero is falsy.\n- **Don't import the CSS manually.** Styles are auto-injected via `sideEffects: [\"*.css\"]`; `import \"react-modern-audio-player/dist/index.css\"` will 404 or double-load.\n- **Multiple mounted `<AudioPlayer>` instances don't share React state, but they do share the user's speakers.** Each instance has its own provider and its own `<audio>` element, so the state is isolated — but if two instances both play, the user hears both tracks simultaneously. Coordinate playback yourself (e.g. pause the others when one `play()` fires).\n\n# **Example**\n\n```tsx\nfunction App() {\n  return (\n    <div>\n      <AudioPlayer\n        playList={playList}\n        audioInitialState={{\n          muted: true,\n          volume: 0.2,\n          curPlayId: 1,\n        }}\n        placement={{\n          interface: {\n            templateArea: {\n              trackTimeDuration: \"row1-5\",\n              progress: \"row1-4\",\n              playButton: \"row1-6\",\n              repeatType: \"row1-7\",\n              volume: \"row1-8\",\n            },\n          },\n          player: \"bottom-left\",\n        }}\n        activeUI={{\n          all: true,\n          progress: \"waveform\",\n        }}\n      />\n    </div>\n  );\n}\n```\n\n# **Security & Trust Model**\n\nA few props on this library are typed as `string | ReactNode` — most notably:\n\n- [`AudioData.description`](#playlist)\n- [`AudioData.customTrackInfo`](#mental-model--activeui-vs-compound-children)\n\nReact's standard JSX rendering applies. **A plain string passed to one of these props is auto-escaped** by React — so `description: \"<img src=x onerror=alert(1)>\"` becomes harmless text. If, however, you construct the `ReactNode` yourself using `dangerouslySetInnerHTML`, React runs whatever HTML you put there. This is React's documented contract; see [_Dangerously setting the inner HTML_](https://react.dev/reference/react-dom/components/common#dangerously-setting-the-inner-html) on `react.dev`.\n\nWhen the content originates from **user-generated input**, the consumer is responsible for sanitizing it _before_ it is handed to this library:\n\n- Prefer passing a **plain string** — React's escape is sufficient.\n- If you must inject HTML (e.g. a Markdown preview), sanitize first with [DOMPurify](https://github.com/cure53/DOMPurify) or a vetted Markdown parser, then wrap the result in JSX.\n\nThis library does **not** bundle a sanitizer because the trust boundary, allowed-tag policy, and rendering pipeline all depend on the consumer's data source — only the integrating application has that context.\n","readmeFilename":"README.md"}