{"_id":"smplr","_rev":"55-ac544b83055b8b4bec06fe6abc713707","name":"smplr","dist-tags":{"latest":"1.0.0"},"versions":{"0.1.0":{"name":"smplr","version":"0.1.0","keywords":["music","audio","sample","loader","webaudio","smplr"],"author":{"name":"danigb","email":"danigb@gmail.com"},"license":"MIT","_id":"smplr@0.1.0","maintainers":[{"name":"danigb","email":"danigb@gmail.com"}],"homepage":"https://github.com/danigb/smplr#readme","bugs":{"url":"https://github.com/danigb/smplr/issues"},"dist":{"shasum":"78805878ee2ee856f734d9d94442526c46fa4fb5","tarball":"https://registry.npmjs.org/smplr/-/smplr-0.1.0.tgz","integrity":"sha512-qosI66L4hOEWspksYYTtmkJhE+8rTzU+3+cFDggS3deSISViBi9W1V9FWXpRWm40oXxN1tNskgQNaRUHAVvmog==","signatures":[{"sig":"MEUCIQC/wKYipCsawSLFR5vRtU8Ycg4sjriv+lJFrDfmtGFdogIgNhpkh4HSZUspcsLRhIbdhpy81O2gbuvjklybeKjqXbw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}]},"main":"index.js","_from":".","_shasum":"78805878ee2ee856f734d9d94442526c46fa4fb5","scripts":{"dist":"browserify index.js | uglifyjs > dist/smplr.min.js&& ls -hall dist/","docs":"documentation -f md > API.md","test":"mocha"},"_npmUser":{"name":"danigb","email":"danigb@gmail.com"},"repository":{"url":"git+https://github.com/danigb/smplr.git","type":"git"},"_npmVersion":"2.14.7","description":"Get smplr","directories":{},"_nodeVersion":"4.2.0","dependencies":{"sample-loader":"^0.1.1","sampler-instrument":"^0.1.0"},"devDependencies":{"web-audio-test-api":"^0.3.6"}},"0.3.0":{"name":"smplr","version":"0.3.0","keywords":["sampler","web","audio","instrument"],"author":{"name":"danigb"},"license":"MIT","_id":"smplr@0.3.0","maintainers":[{"name":"danigb","email":"danigb@gmail.com"}],"homepage":"https://github.com/danigb/smplr#readme","bugs":{"url":"https://github.com/danigb/smplr/issues"},"dist":{"shasum":"4be4f69c4f6b6f75d678229a12635813386d1512","tarball":"https://registry.npmjs.org/smplr/-/smplr-0.3.0.tgz","fileCount":7,"integrity":"sha512-Ow+ngKo2s7kHB4+bI4uI0x0ZXuarBGFoIyjped9k+1eXwGU5bW8GT+olwe0KXGbPfENmmMF9ekL8G8JIarv8ag==","signatures":[{"sig":"MEUCIBEyeIjrvmzRGyg718ccxiUf41SE9g+RsUERc92MOJFIAiEAqVHAQRY3Jc0HwvjvNMbXZIpahIap7PQYDKJioLil6dU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":265191,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj//ZsACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq3EA//crXkxC9JqnCAESX9OwRM31v9I++ZdTMkGkaApMCCcrBUAHJj\r\nQTvy3Wo/hiDA+HWdPSCszud8qICCzxvGDAdgAOVtjq8fVzGG93kpF5KFfgUf\r\nLiSP+0ADwPU0IA9kT9NET86WvHza+fEh6lukkEZDBtRI+TOicR5ejRYexEWu\r\npeY1h2a2Gn4veUyoIdlAvC67QHISnxUqFWme9U5i0ZEUL2Q+7kmnxo6tcJi5\r\nDJwE4npqmfJlQAikpxfEyCJRTMz9YMwoI9MkBP4/hWRi5f1/qQL6UxTi4Az4\r\nHuhEk/NNUMoBDYGvV6yJrl6Vxyn7p5VAuVQQJQ0VAjVgw1m9w6At1/bv/tkA\r\nOpdrzNvfztXgqQH5LWzlgAN2JS8KcZt/NfAReKjJOZvBbflciGH8mx5UuJor\r\nmHs8mT/5P6zdSTRnl8vU/xy8M1Jldl4RWYXoPzjGrvuRFY85fTD8YJO57XF5\r\n+VRrs9I26LVwI2ZM+GU4ULZz0syZzDGc2PNob9ZxdUDMx6UQzhufGNfqGIAu\r\ngnLm57dqNM/6uEH4M20o9YdGnPbjWKvfCLWStDY9QXWGpGhxKvENQLwm6QP/\r\nsv+m/hosmsd14KlERPmknUFlJ53NsrqPpxrXiqgksZhWzgx2GWKWPVjIRBfo\r\nO3DLFDwFVmRdS2XgxHJGYYPQSW+8hiZ0VtI=\r\n=gNu+\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"preset":"ts-jest"},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","engines":{"node":">=14.0.0"},"gitHead":"6142874960018acda0958e8cf7797a16d93b1ada","scripts":{"test":"jest","build":"tsup src/index.ts  --sourcemap --dts --format esm,cjs","build:worklet:reverb":"esbuild src/reverb/worklet-processor.ts --bundle --minify > src/reverb/processor.min.js"},"_npmUser":{"name":"danigb","email":"danigb@gmail.com"},"repository":{"url":"git+https://github.com/danigb/smplr.git","type":"git"},"_npmVersion":"8.1.2","description":"A Sampled collection of instruments","directories":{},"_nodeVersion":"16.13.1","dependencies":{},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.4.1","tsup":"^6.5.0","turbo":"latest","ts-jest":"^29.0.5","typedoc":"^0.23.24","prettier":"latest","@types/jest":"^29.4.0","@changesets/cli":"^2.25.2","@types/audioworklet":"^0.0.36"},"_npmOperationalInternal":{"tmp":"tmp/smplr_0.3.0_1677719148506_0.008575381618969313","host":"s3://npm-registry-packages"}},"0.4.0":{"name":"smplr","version":"0.4.0","keywords":["sampler","web","audio","instrument"],"author":{"name":"danigb"},"license":"MIT","_id":"smplr@0.4.0","maintainers":[{"name":"danigb","email":"danigb@gmail.com"}],"homepage":"https://github.com/danigb/smplr#readme","bugs":{"url":"https://github.com/danigb/smplr/issues"},"dist":{"shasum":"3f029c66efb47541e216dea9d2abf609ed1a25ec","tarball":"https://registry.npmjs.org/smplr/-/smplr-0.4.0.tgz","fileCount":7,"integrity":"sha512-QUw2ozF4mo5lcBOWxTCO5xQaWtTxGXuWhEGwfU7gRmqrFNRcAxJVz/CUPspPmGSTY6cY0sTGL0NjsFsnwdpVDQ==","signatures":[{"sig":"MEYCIQDPPxw3Q/h2dWsWGQZWbQGnA8QorRZ/O9QLhLGZ1sn2OgIhAI92hbI0gb1a4SOBBQIj9pwYxu45phfq6Gcm406mRoOO","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":287311,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkFu7CACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqH4xAAhTIh4l0/cKT7b0XImBoM5OqLhNJ7L3xt7W8f8C2OwoUiOT7T\r\ndxg/m1soP5Nu9h4artg9YzeplG4cPs+e3CZc/gAgUIXUMXcar0vvhXm9XDvE\r\n+wZ8bDkxdubrzfh983gbHDX5Tt07O5q9B7O6i6t8vQG8ckZmkvhYtEh5qOHU\r\n64nuKPf9Wehc5NnSlgtue+MeaLWj7z+PIO4q6psaE4GdNCGNR9N5leO1kyxZ\r\nMROZvW1ot2gE4eD8LqFUvzoHEy5IB4wMRIHlDUaL7pR91xtLZSmiYkj8vntt\r\najaxrww0zqVZU0EI9pcM8xgEYOua6f4iuESlVDqeCmOBi+vFZaQSQJGSSBjf\r\nbkg/4KLKButWtxVpEeUZrwEQrA05MWey5tGuNWHtR6l/orLY4ZO/QmoZgvHY\r\niWRM19U8Q5xPdn0h2/i4RvdaJ6b1Y/Gwsu+SE+M38qHaGSv9w2HHSHydakHO\r\nzXjW7eeI77YrLfIBEl3T+NYLceC3KtD5qrxhMQHIGt3MeWFsM/AjsilbWUn+\r\n8cjkIsEO4vpore4vo38xtdyFehdm0v2JDG0yz1CdsVjyubSVF7toDdcGZOst\r\n1HqpoEFShQZFKBrXOHfeYFBCECoxh7n10JvsAOLa4dK6sgSnriBdY0Gt2iQ3\r\nQcbA29obi2JOvOVO1eK86jd7gRRUP3eb3E0=\r\n=otA3\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"preset":"ts-jest"},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","engines":{"node":">=14.0.0"},"gitHead":"3fa4ab866a4e95660bc68e2d9545904974fa440f","scripts":{"test":"jest","build":"tsup src/index.ts  --sourcemap --dts --format esm,cjs","build:worklet:reverb":"esbuild src/reverb/worklet-processor.ts --bundle --minify > src/reverb/processor.min.js"},"_npmUser":{"name":"danigb","email":"danigb@gmail.com"},"repository":{"url":"git+https://github.com/danigb/smplr.git","type":"git"},"_npmVersion":"8.1.2","description":"A Sampled collection of instruments","directories":{},"_nodeVersion":"16.13.1","dependencies":{},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.4.1","tsup":"^6.5.0","turbo":"latest","ts-jest":"^29.0.5","typedoc":"^0.23.24","prettier":"latest","@types/jest":"^29.4.0","@changesets/cli":"^2.25.2","@types/audioworklet":"^0.0.36"},"_npmOperationalInternal":{"tmp":"tmp/smplr_0.4.0_1679224514159_0.871750118681472","host":"s3://npm-registry-packages"}},"0.4.1":{"name":"smplr","version":"0.4.1","keywords":["sampler","web","audio","instrument"],"author":{"name":"danigb"},"license":"MIT","_id":"smplr@0.4.1","maintainers":[{"name":"danigb","email":"danigb@gmail.com"}],"homepage":"https://github.com/danigb/smplr#readme","bugs":{"url":"https://github.com/danigb/smplr/issues"},"dist":{"shasum":"d8a5b6402a64f8436dd1d36f4f848d417c19b5c6","tarball":"https://registry.npmjs.org/smplr/-/smplr-0.4.1.tgz","fileCount":7,"integrity":"sha512-2DzOLE8n9bJPCNDNqMG+Oyg9BxzmGwY9eKWcB4HVvmO8zAUxKIrkm2IyMvRLSKCFCw99EwPJlNcQRVkoNGjvwg==","signatures":[{"sig":"MEQCIBTMm5YDRg3bOleRCX2s95gMwbW0rc5snP4xiq8AtPCWAiBusEJnk6enip0D24w9oDibWjmdilxLAFWMSSsc6JKzxA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":295281,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkGzqVACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqBxg/9G43eEmo8ieTOdH5TF71G/f12Qc6Vj8OeSRgmQzjIcY0a3SxK\r\nes6qRiXNhbf36aVFYKwcIVk2xbwAjprNskxwoc2VT2m+GtD+e72PST/Hlzgm\r\naWZxweUcu+rmfVEY9NBbUXtchWS77qi5gFmVz86XxqTfS0fScPwoC7SXo+al\r\n/mkaI94mVgIbbXnJN58vzGUVLoLNB1WNwvtjqR9AGN5eCcA4UNy7nHcbOVwz\r\nrwaIlreu7ltK7YvK2uaslfbcBuoM8qauc562NTgptJXIn52ZgO2UZgbXiSrH\r\nrOVkYXahEqmNXfNwbg/wL45lZ9wHBZmlOGC9ZqfHXcUAWww/8r3ITojcbwAf\r\nxAoEC7tyaQeKgpAdLkhw2G8fCsUTVl4DvP2AWhf6oHlAhmglU3QaeM/kJPHT\r\nkrk6+kJdbOQqP3ccocINYZHLinBLNLY2A7Xewmkh+Xze1RHBBRU5x9fvy/us\r\ngKHVVxkmGqRrKw+r4oA7Th8rBAwfjXVvZfAcxAjd3prcgbuOiMUKFyJg91cx\r\nwp3sdPfKwdAIQdS5uxFUHlTrg90/rIevxMSEJR26243cRTLgU1gmV/Su4YpN\r\nQvuHK2txWTv/Ceu7cJkQUtKPrLlqXJdYs+4ZOtUSQb7oawFMTr2icWnHKc2c\r\n+76pWoqIm80goKSrlDgJJQY1ZdXfeBe28iU=\r\n=NGSa\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"preset":"ts-jest"},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","engines":{"node":">=14.0.0"},"gitHead":"d0b1f614518abb8be0525ef13e1106947dd9f9bd","scripts":{"test":"yarn test:unit && yarn test:types","build":"tsup src/index.ts  --sourcemap --dts --format esm,cjs","test:unit":"jest","test:types":"tsc --noEmit","build:worklet:reverb":"esbuild src/reverb/worklet-processor.ts --bundle --minify > src/reverb/processor.min.js"},"_npmUser":{"name":"danigb","email":"danigb@gmail.com"},"repository":{"url":"git+https://github.com/danigb/smplr.git","type":"git"},"_npmVersion":"8.1.2","description":"A Sampled collection of instruments","directories":{},"_nodeVersion":"16.13.1","dependencies":{},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.4.1","tsup":"^6.5.0","turbo":"latest","ts-jest":"^29.0.5","typedoc":"^0.23.24","prettier":"latest","@types/jest":"^29.4.0","@changesets/cli":"^2.25.2","@types/audioworklet":"^0.0.36"},"_npmOperationalInternal":{"tmp":"tmp/smplr_0.4.1_1679506068777_0.2095804679025386","host":"s3://npm-registry-packages"}},"0.4.2":{"name":"smplr","version":"0.4.2","keywords":["sampler","web","audio","instrument"],"author":{"name":"danigb"},"license":"MIT","_id":"smplr@0.4.2","maintainers":[{"name":"danigb","email":"danigb@gmail.com"}],"homepage":"https://github.com/danigb/smplr#readme","bugs":{"url":"https://github.com/danigb/smplr/issues"},"dist":{"shasum":"e69631a030a9eb47f02b59697b19a5ed27d201cc","tarball":"https://registry.npmjs.org/smplr/-/smplr-0.4.2.tgz","fileCount":7,"integrity":"sha512-dpTMSOTHWTgae6o2HVMkHvmqxAHmSwb3TiLY17HzkP1O4Z66IKQAzSb4l1GecnMnhSXQDtkseIMJJEDceRnRNg==","signatures":[{"sig":"MEYCIQCT5iRBw2hdmzisWVdyrLt+iu6oQMFu5vz4RJJ6JzIvdAIhANWaRO+SNyWO5KizwcF/+qiA0opvMYCr7kpeuOwI4LqH","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":278680,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkKnEpACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrJ5w//fVv7GuzDDTz1QHXVHttDt0X4kkxooySSXzgbJO5qhwLPXez+\r\nQcu+Lr49XXd8ChsqoaQeAZRiHadjY6YAqmAzzgFoXWuXmjXceqmK5I1Rwq6a\r\nFNmRtJMTFf6tbBpP2Gb3mIo7/glNqhYsaynPvLuJP75P+LhYl2GGRXJE4VP4\r\nbioX001IECfXZOmEOkaEDCoryUC5o6j0sT/ifAOTXW3FzUiht6STzn7J7Q6b\r\nT6Lt0OdfTSulM9GjQeCCxl987bIfKhi+wqzJXdXCac7s8TQr4Um+F+fV+hLQ\r\nKl5MQ4kQXtOSQSRhDA/oikd3fOWtQ/M1ZAUSsXqdqnbvjg6Ac9ZIiW3MABdL\r\nmq11UwnN/dd+efhcXpyLbkGrbFq4yS3yhNqpqUKqKjLUtxReMRYpbqTX/W9L\r\nK9uue50S7vwvOQNTes9VO7vJVFUxBitO+cZlLMgoxfiooDyFt4ExOxklnOQ2\r\nv+fsJzFx+PX4SaWXFBOJpVwuKSn0pDeVNj7LL8l5kt8uD1TRs4vtv4xgefn2\r\na2rJSNq/IGXhEr7CvTFlf1j5D6KmGc1t+aSXCe5l2KNIbfGd6gEgiKVvG1Tt\r\nZKaB8/K6ecGRLhJE0A76S87MS0h909of8unfGvBundxj2HWrXJDw/b88whZ/\r\nYfqqyvmpKwKd9SWo4xac3ligh5Q2YF2VZSU=\r\n=3oaY\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"preset":"ts-jest"},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","engines":{"node":">=14.0.0"},"gitHead":"f9d0ca77d3c5b79cf65b0aded57e1e45a3240c63","scripts":{"test":"yarn test:unit && yarn test:types","build":"tsup src/index.ts  --sourcemap --dts --format esm,cjs","test:unit":"jest","test:types":"tsc --noEmit","build:worklet:reverb":"esbuild src/reverb/worklet-processor.ts --bundle --minify > src/reverb/processor.min.js"},"_npmUser":{"name":"danigb","email":"danigb@gmail.com"},"repository":{"url":"git+https://github.com/danigb/smplr.git","type":"git"},"_npmVersion":"8.1.2","description":"A Sampled collection of instruments","directories":{},"_nodeVersion":"16.13.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.4.1","tsup":"^6.5.0","turbo":"latest","ts-jest":"^29.0.5","typedoc":"^0.23.24","prettier":"latest","@types/jest":"^29.4.0","@changesets/cli":"^2.25.2","@types/audioworklet":"^0.0.36"},"_npmOperationalInternal":{"tmp":"tmp/smplr_0.4.2_1680503080854_0.9521922779408922","host":"s3://npm-registry-packages"}},"0.4.3":{"name":"smplr","version":"0.4.3","keywords":["sampler","web","audio","instrument"],"author":{"name":"danigb"},"license":"MIT","_id":"smplr@0.4.3","maintainers":[{"name":"danigb","email":"danigb@gmail.com"}],"homepage":"https://github.com/danigb/smplr#readme","bugs":{"url":"https://github.com/danigb/smplr/issues"},"dist":{"shasum":"a0f15626c0e6bff224f2f3de4e6c16765ead710a","tarball":"https://registry.npmjs.org/smplr/-/smplr-0.4.3.tgz","fileCount":7,"integrity":"sha512-DPBjiIBdUrhTR2cRk0ZHpre2r17GJH5SB4nbqxKC9JE+uk75JPXsL/7KFUYQxCzI1O6OfPPhiFUIMd6XOa7pdw==","signatures":[{"sig":"MEUCIDKu8MI/dcZzfeLsiGSD/PNv8yV3XP9z6/S1RzpGYfofAiEA65FvZvGB+JcpGScsnRb/882U8zIJDQAfrBrEVTIGllQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":278894,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkKnTXACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpOLw/9Hf+Cvsx6iTnw5VVSkL7lqOFosWvNgrIBXfx9qP1oyCtXGmLe\r\n4ElbYgzANPg0g0S4w2jDlydlWbJuhTGvowaiEyWTEUZDfVOrVpA9PLVHFkiQ\r\nW3/PGkK/JeSfNFwzZIhLq396EWUcVk5aY/AYMdNCbbLJwhHsGWZS7sQmyMzB\r\ns+b3hjHLet1+Rf1r4zwn0l4nXSppn5wNJPWoIgop3bEP4jAd2zSTkGEuonSw\r\nDclxMm5efyVTJMGi2yhhBZomA5j2Ini1xYBMGT3Oa8yjBXJ/5coGQH57TglD\r\n1VkWTKUO230XfWEbXASmpqzmplNaE1Q66rovdzQ9a6qjjAODE4uiUnF57fOv\r\n1stuxwwLydBkMzWBCnmVbNbNhDKbUMPRB254CSAZxs33ouGhZau0f0c/NGO4\r\nu9caW5HcAO973WnXidYXizdm5TiShKigF00j7hgHair0etBsF0u62/+Ie4JE\r\n+MGKzlZXJ8lhCX5HBRTjbPlhw9R6Q/WPMXblWWGX21sUoE8qpzvpKcZUwPDB\r\nYnoMSIp5pgIMvBvcgQtrcqYl7mDujWgZj9MzigiiQdek0J55wmu/O/quGMBV\r\nUWGSAp4JoTvG9g4HvlYopbTzmVN4/VNiDfEbPXfzAzVeoDs/fxLHWYV0u8DG\r\n4ojgZM67SxP4bLxpHO7ZTz5TM9l7ykCgv+Q=\r\n=7xU8\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"preset":"ts-jest"},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","engines":{"node":">=14.0.0"},"gitHead":"6fd63bedc4e9985f7982d771b50b9791d75a1dc5","scripts":{"test":"yarn test:unit && yarn test:types","build":"tsup src/index.ts  --sourcemap --dts --format esm,cjs","test:unit":"jest","test:types":"tsc --noEmit","build:worklet:reverb":"esbuild src/reverb/worklet-processor.ts --bundle --minify > src/reverb/processor.min.js"},"_npmUser":{"name":"danigb","email":"danigb@gmail.com"},"repository":{"url":"git+https://github.com/danigb/smplr.git","type":"git"},"_npmVersion":"8.1.2","description":"A Sampled collection of instruments","directories":{},"_nodeVersion":"16.13.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.4.1","tsup":"^6.5.0","turbo":"latest","ts-jest":"^29.0.5","typedoc":"^0.23.24","prettier":"latest","@types/jest":"^29.4.0","@changesets/cli":"^2.25.2","@types/audioworklet":"^0.0.36"},"_npmOperationalInternal":{"tmp":"tmp/smplr_0.4.3_1680504022832_0.7751475643061936","host":"s3://npm-registry-packages"}},"0.5.0":{"name":"smplr","version":"0.5.0","keywords":["sampler","web","audio","instrument"],"author":{"name":"danigb"},"license":"MIT","_id":"smplr@0.5.0","maintainers":[{"name":"danigb","email":"danigb@gmail.com"}],"homepage":"https://github.com/danigb/smplr#readme","bugs":{"url":"https://github.com/danigb/smplr/issues"},"dist":{"shasum":"0a474884fe8aad8b849fc17bf31a436f69d98434","tarball":"https://registry.npmjs.org/smplr/-/smplr-0.5.0.tgz","fileCount":7,"integrity":"sha512-Fwn4/7HySJjAvHx+5wbAIy9er+W8uBy8a5SIVM/lPqU27qHcef/p3KpRsviR8PieCxTEllw0vlyGlFJi+kuAtg==","signatures":[{"sig":"MEYCIQCoNNagM+FmJNSLKxeex6cdmipcxfDK2nw29kn2HC/SPwIhALdxUAnfAzHwHo6YMN+2iAHVT0M8baGW07UTK0OugTLY","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":281609},"jest":{"preset":"ts-jest"},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","engines":{"node":">=14.0.0"},"gitHead":"f78c727c5d2b25fc2f441c86bcbe3d85f60173ba","scripts":{"test":"yarn test:unit && yarn test:types","build":"tsup src/index.ts  --sourcemap --dts --format esm,cjs","test:unit":"jest","test:types":"tsc --noEmit","build:worklet:reverb":"esbuild src/reverb/worklet-processor.ts --bundle --minify > src/reverb/processor.min.js"},"_npmUser":{"name":"danigb","email":"danigb@gmail.com"},"repository":{"url":"git+https://github.com/danigb/smplr.git","type":"git"},"_npmVersion":"8.1.2","description":"A Sampled collection of instruments","directories":{},"_nodeVersion":"16.13.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.4.1","tsup":"^6.5.0","turbo":"latest","ts-jest":"^29.0.5","typedoc":"^0.23.24","prettier":"latest","@types/jest":"^29.4.0","@changesets/cli":"^2.25.2","@types/audioworklet":"^0.0.36"},"_npmOperationalInternal":{"tmp":"tmp/smplr_0.5.0_1684342907249_0.7743325383790989","host":"s3://npm-registry-packages"}},"0.5.1":{"name":"smplr","version":"0.5.1","keywords":["sampler","web","audio","instrument"],"author":{"name":"danigb"},"license":"MIT","_id":"smplr@0.5.1","maintainers":[{"name":"danigb","email":"danigb@gmail.com"}],"homepage":"https://github.com/danigb/smplr#readme","bugs":{"url":"https://github.com/danigb/smplr/issues"},"dist":{"shasum":"67b3fbeaebf4bc51de72952f8ec006cb18eceb60","tarball":"https://registry.npmjs.org/smplr/-/smplr-0.5.1.tgz","fileCount":7,"integrity":"sha512-VUB/fyo75msOoUAUDMe6ap6pRr2he/ipxulYhgpkLrEJre5ri/WvBkBg7Oo5dG4bywgYmtiTm7Fg4rTtNnYtjQ==","signatures":[{"sig":"MEUCIQD4XNLldhQD9RAwVIl2Lmetw+tHEtNfhP1KV01gb+oh7AIgQVrtZosrDySkcDrpkPnUitPS77Kr33wnEopFb9uEhKo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":281684},"jest":{"preset":"ts-jest"},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","engines":{"node":">=14.0.0"},"gitHead":"8680e937fc48866f18345d017d996eef23aece47","scripts":{"test":"yarn test:unit && yarn test:types","build":"tsup src/index.ts  --sourcemap --dts --format esm,cjs","test:unit":"jest","test:types":"tsc --noEmit","build:worklet:reverb":"esbuild src/reverb/worklet-processor.ts --bundle --minify > src/reverb/processor.min.js"},"_npmUser":{"name":"danigb","email":"danigb@gmail.com"},"repository":{"url":"git+https://github.com/danigb/smplr.git","type":"git"},"_npmVersion":"8.1.2","description":"A Sampled collection of instruments","directories":{},"_nodeVersion":"16.13.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.4.1","tsup":"^6.5.0","turbo":"latest","ts-jest":"^29.0.5","typedoc":"^0.23.24","prettier":"latest","@types/jest":"^29.4.0","@changesets/cli":"^2.25.2","@types/audioworklet":"^0.0.36"},"_npmOperationalInternal":{"tmp":"tmp/smplr_0.5.1_1684870804850_0.2421385134108256","host":"s3://npm-registry-packages"}},"0.6.0":{"name":"smplr","version":"0.6.0","keywords":["sampler","web","audio","instrument"],"author":{"name":"danigb"},"license":"MIT","_id":"smplr@0.6.0","maintainers":[{"name":"danigb","email":"danigb@gmail.com"}],"homepage":"https://github.com/danigb/smplr#readme","bugs":{"url":"https://github.com/danigb/smplr/issues"},"dist":{"shasum":"b9e652f8c456f6840055ef832e269f147bf4880e","tarball":"https://registry.npmjs.org/smplr/-/smplr-0.6.0.tgz","fileCount":7,"integrity":"sha512-wdjddiL4VJaqaGlwbZBhzSWAZsfPt6Wx+jzXKXrvqTgtH8ifx+WxLlX9nmjRQAvwsxcoCJGxoZrULI2bzWfvnw==","signatures":[{"sig":"MEUCIQCZMYImf40utHRW3Z/sqTrRAp81BX9jjn+M75ipZz3NUQIgRNSJWRypgqCjPxzrbJoTkIaFqJhFDPeucfxjf2Z9h1w=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":294265},"jest":{"preset":"ts-jest"},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","engines":{"node":">=14.0.0"},"gitHead":"ac125a9fd205e8564473a47a7827444395eb2c67","scripts":{"test":"yarn test:unit && yarn test:types","build":"tsup src/index.ts  --sourcemap --dts --format esm,cjs","test:unit":"jest","test:types":"tsc --noEmit","build:worklet:reverb":"esbuild src/reverb/worklet-processor.ts --bundle --minify > src/reverb/processor.min.js"},"_npmUser":{"name":"danigb","email":"danigb@gmail.com"},"repository":{"url":"git+https://github.com/danigb/smplr.git","type":"git"},"_npmVersion":"8.1.2","description":"A Sampled collection of instruments","directories":{},"_nodeVersion":"16.13.1","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.4.1","tsup":"^6.5.0","turbo":"latest","ts-jest":"^29.0.5","typedoc":"^0.23.24","prettier":"latest","@types/jest":"^29.4.0","@changesets/cli":"^2.25.2","@types/audioworklet":"^0.0.36"},"_npmOperationalInternal":{"tmp":"tmp/smplr_0.6.0_1685390857227_0.5575946911196683","host":"s3://npm-registry-packages"}},"0.6.1":{"name":"smplr","version":"0.6.1","keywords":["sampler","web","audio","instrument"],"author":{"name":"danigb"},"license":"MIT","_id":"smplr@0.6.1","maintainers":[{"name":"danigb","email":"danigb@gmail.com"}],"homepage":"https://github.com/danigb/smplr#readme","bugs":{"url":"https://github.com/danigb/smplr/issues"},"dist":{"shasum":"f24cbe7ce3ad318bb6ce226d9aa933d1cab7dc56","tarball":"https://registry.npmjs.org/smplr/-/smplr-0.6.1.tgz","fileCount":7,"integrity":"sha512-040QDtYRavqIje9346zWBYDc3oN/ARSZmheOGELAujQVYr3p4e8nrOsojH3VQsE0zcrAhjJ4MDeg74qIHQCC7A==","signatures":[{"sig":"MEQCIHJ/s0lZ7UTcU9cSPexTkU+YPLA7j4RglPNKaG40aGK+AiAxbK0BgJs+Q/lnsPP9xElsQBjjQONcVqEMbTeXcPvLag==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":296213},"jest":{"preset":"ts-jest"},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","engines":{"node":">=14.0.0"},"gitHead":"e231f0519a61dd90a994be5775a6fca3a613fb05","scripts":{"test":"yarn test:unit && yarn test:types","build":"tsup src/index.ts  --sourcemap --dts --format esm,cjs","test:unit":"jest","test:types":"tsc --noEmit","build:worklet:reverb":"esbuild src/reverb/worklet-processor.ts --bundle --minify > src/reverb/processor.min.js"},"_npmUser":{"name":"danigb","email":"danigb@gmail.com"},"repository":{"url":"git+https://github.com/danigb/smplr.git","type":"git"},"_npmVersion":"8.8.0","description":"A Sampled collection of instruments","directories":{},"_nodeVersion":"18.1.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.4.1","tsup":"^6.5.0","turbo":"latest","ts-jest":"^29.0.5","typedoc":"^0.23.24","prettier":"latest","@types/jest":"^29.4.0","@changesets/cli":"^2.25.2","@types/audioworklet":"^0.0.36"},"_npmOperationalInternal":{"tmp":"tmp/smplr_0.6.1_1687184955413_0.989496414550016","host":"s3://npm-registry-packages"}},"0.7.0":{"name":"smplr","version":"0.7.0","keywords":["sampler","web","audio","instrument"],"author":{"name":"danigb"},"license":"MIT","_id":"smplr@0.7.0","maintainers":[{"name":"danigb","email":"danigb@gmail.com"}],"homepage":"https://github.com/danigb/smplr#readme","bugs":{"url":"https://github.com/danigb/smplr/issues"},"dist":{"shasum":"d513f3301309ecd459668d4c19368c3d40ec1911","tarball":"https://registry.npmjs.org/smplr/-/smplr-0.7.0.tgz","fileCount":7,"integrity":"sha512-hhKvIgLyzu03CoiKgWgD5owC99LNdDGkvcAVs0kKI17ObDzNEqBt5ghOwtxWmwM/ho/3vpkvcc7eqJ3LrlZTdQ==","signatures":[{"sig":"MEUCIE96IM2U9tQQoi45k38Gd4vGD7ZcP49lpthVa/jnMlu9AiEA2zsuiGydJZtOTAffYCVjI6uAa+ZIzhQH/J5hf/ofG3w=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":21058159},"jest":{"preset":"ts-jest"},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","engines":{"node":">=14.0.0"},"gitHead":"adeef191b1ea5265cd9d4f0996f6f037a3dcceb9","scripts":{"test":"yarn test:unit && yarn test:types","build":"tsup src/index.ts  --sourcemap --dts --format esm,cjs","test:unit":"jest","test:types":"tsc --noEmit","build:worklet:reverb":"esbuild src/reverb/worklet-processor.ts --bundle --minify > src/reverb/processor.min.js"},"_npmUser":{"name":"danigb","email":"danigb@gmail.com"},"repository":{"url":"git+https://github.com/danigb/smplr.git","type":"git"},"_npmVersion":"8.8.0","description":"A Sampled collection of instruments","directories":{},"_nodeVersion":"18.1.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.4.1","tsup":"^6.5.0","turbo":"latest","ts-jest":"^29.0.5","typedoc":"^0.23.24","prettier":"latest","@types/jest":"^29.4.0","@changesets/cli":"^2.25.2","@types/audioworklet":"^0.0.36"},"_npmOperationalInternal":{"tmp":"tmp/smplr_0.7.0_1694789007455_0.6889600977449075","host":"s3://npm-registry-packages"}},"0.8.0":{"name":"smplr","version":"0.8.0","keywords":["sampler","web","audio","instrument"],"author":{"name":"danigb"},"license":"MIT","_id":"smplr@0.8.0","maintainers":[{"name":"danigb","email":"danigb@gmail.com"}],"homepage":"https://github.com/danigb/smplr#readme","bugs":{"url":"https://github.com/danigb/smplr/issues"},"dist":{"shasum":"094ad8f29ace6b397fb429e272fe3ad68a666ec6","tarball":"https://registry.npmjs.org/smplr/-/smplr-0.8.0.tgz","fileCount":7,"integrity":"sha512-4LnWOu4p3Jhb9A6ceELYrKIZq4spDbPWIB4QGobj9mcR2g46gZOYLV4VPpLpNBtDkfgJlykMDVCmm+A6yN+eAQ==","signatures":[{"sig":"MEUCIByPOHbBtdmWL0eAfBpRaI5dFVRpwTVHMwN8RPn3TG8RAiEAoma6arxM92Jw7KvVxYy1U3wewiz0uC9stRGUUv9Rfgs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":386291},"jest":{"preset":"ts-jest"},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","engines":{"node":">=14.0.0"},"gitHead":"a5504f1dcc9404e32fd27df349780524be42d5d5","scripts":{"test":"yarn test:unit && yarn test:types","build":"tsup src/index.ts  --sourcemap --dts --format esm,cjs","test:unit":"jest","test:types":"tsc --noEmit","build:worklet:reverb":"esbuild src/reverb/worklet-processor.ts --bundle --minify > src/reverb/processor.min.js"},"_npmUser":{"name":"danigb","email":"danigb@gmail.com"},"repository":{"url":"git+https://github.com/danigb/smplr.git","type":"git"},"_npmVersion":"8.8.0","description":"A Sampled collection of instruments","directories":{},"_nodeVersion":"18.1.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.4.1","tsup":"^6.5.0","turbo":"latest","ts-jest":"^29.0.5","typedoc":"^0.23.24","prettier":"latest","@types/jest":"^29.4.0","@changesets/cli":"^2.25.2","@types/audioworklet":"^0.0.36"},"_npmOperationalInternal":{"tmp":"tmp/smplr_0.8.0_1694891545027_0.0947358536657179","host":"s3://npm-registry-packages"}},"0.8.1":{"name":"smplr","version":"0.8.1","keywords":["sampler","web","audio","instrument"],"author":{"name":"danigb"},"license":"MIT","_id":"smplr@0.8.1","maintainers":[{"name":"danigb","email":"danigb@gmail.com"}],"homepage":"https://github.com/danigb/smplr#readme","bugs":{"url":"https://github.com/danigb/smplr/issues"},"dist":{"shasum":"29829aff3ce12baf77869d63151e8cebc5385cd0","tarball":"https://registry.npmjs.org/smplr/-/smplr-0.8.1.tgz","fileCount":7,"integrity":"sha512-E5acxSNzWAaA7j8nxTTfgu+2V+Jq7MJEV/lbG9g/azPX22nGI4x8c2DS5f5f2GfSwDGUF7hGkn9PbwGRRuXw6w==","signatures":[{"sig":"MEQCIEAe23i+WazmMSt89do3mAZiMy1A8XOI2fzM+ITSmvKXAiBlWrYTWYzjvU6bbmi4DBfPuTmwW8dcSZvsi3+8TEop4A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":387487},"jest":{"preset":"ts-jest"},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","engines":{"node":">=14.0.0"},"gitHead":"91db7fa4e3572523e390d122a09623a84ccadfe7","scripts":{"test":"yarn test:unit && yarn test:types","build":"tsup src/index.ts  --sourcemap --dts --format esm,cjs","test:unit":"jest","test:types":"tsc --noEmit","build:worklet:reverb":"esbuild src/reverb/worklet-processor.ts --bundle --minify > src/reverb/processor.min.js"},"_npmUser":{"name":"danigb","email":"danigb@gmail.com"},"repository":{"url":"git+https://github.com/danigb/smplr.git","type":"git"},"_npmVersion":"8.8.0","description":"A Sampled collection of instruments","directories":{},"_nodeVersion":"18.1.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.4.1","tsup":"^6.5.0","turbo":"latest","ts-jest":"^29.0.5","typedoc":"^0.23.24","prettier":"latest","@types/jest":"^29.4.0","@changesets/cli":"^2.25.2","@types/audioworklet":"^0.0.36"},"_npmOperationalInternal":{"tmp":"tmp/smplr_0.8.1_1694898398133_0.1727454635877428","host":"s3://npm-registry-packages"}},"0.10.0":{"name":"smplr","version":"0.10.0","keywords":["sampler","web","audio","instrument"],"author":{"name":"danigb"},"license":"MIT","_id":"smplr@0.10.0","maintainers":[{"name":"danigb","email":"danigb@gmail.com"}],"homepage":"https://github.com/danigb/smplr#readme","bugs":{"url":"https://github.com/danigb/smplr/issues"},"dist":{"shasum":"5972466cb9ff5b0cd7aa0d82ae0a6430bb7f6fee","tarball":"https://registry.npmjs.org/smplr/-/smplr-0.10.0.tgz","fileCount":7,"integrity":"sha512-+wiO6cUdsPg/LPUsaR7mAcEOGBdQPWjvHc5S6ixYazG+eMBg4u7bdsSL2VV/wlDn7X/YFOqHpKldH8DNwLMvMw==","signatures":[{"sig":"MEQCICiwjFm9zLPEQvb7rsUUYFFkVPYutF4uUT9qJ+UlZ7X/AiBMoLkIsjzO8NsNhiu76n0WkbvMXsO0T0Pw44a8NFQsMQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":465898},"jest":{"preset":"ts-jest"},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","engines":{"node":">=14.0.0"},"gitHead":"71bc4b86cb0eccc89ce2d30116859de937020168","scripts":{"test":"yarn test:unit && yarn test:types","build":"tsup src/index.ts  --sourcemap --dts --format esm,cjs","test:unit":"jest","test:types":"tsc --noEmit","build:worklet:reverb":"esbuild src/reverb/worklet-processor.ts --bundle --minify > src/reverb/processor.min.js"},"_npmUser":{"name":"danigb","email":"danigb@gmail.com"},"repository":{"url":"git+https://github.com/danigb/smplr.git","type":"git"},"_npmVersion":"8.8.0","description":"A Sampled collection of instruments","directories":{},"_nodeVersion":"18.1.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.4.1","tsup":"^6.5.0","turbo":"latest","ts-jest":"^29.0.5","typedoc":"^0.23.24","prettier":"latest","@types/jest":"^29.4.0","@changesets/cli":"^2.25.2","@types/audioworklet":"^0.0.36"},"_npmOperationalInternal":{"tmp":"tmp/smplr_0.10.0_1694976640444_0.879010871555219","host":"s3://npm-registry-packages"}},"0.10.1":{"name":"smplr","version":"0.10.1","keywords":["sampler","web","audio","instrument"],"author":{"name":"danigb"},"license":"MIT","_id":"smplr@0.10.1","maintainers":[{"name":"danigb","email":"danigb@gmail.com"}],"homepage":"https://github.com/danigb/smplr#readme","bugs":{"url":"https://github.com/danigb/smplr/issues"},"dist":{"shasum":"a4f416fb48b491eda95537f06ccd54f6a0b14117","tarball":"https://registry.npmjs.org/smplr/-/smplr-0.10.1.tgz","fileCount":8,"integrity":"sha512-X5L6Gp07HYw0HjJ6b7YqEwCZyfPtrw9nhwAHkllqfZy13+Ifk9KnNDjyxwvaR5yqRUZ9Y/ZUHeeoqzebDyMRIw==","signatures":[{"sig":"MEYCIQDtc7h8kQtZkEbXlyt5h6GthQ4qAy6EJw1RsNPjItvKfQIhAJrJP6CiOUArZL8rujIWzeMQnZBlUc99b8QV9a8qg5wC","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":483119},"jest":{"preset":"ts-jest"},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","engines":{"node":">=14.0.0"},"gitHead":"6f091a8a97f53d131017ce4ca8bbad4f03fbe72b","scripts":{"test":"yarn test:unit && yarn test:types","build":"tsup src/index.ts  --sourcemap --dts --format esm,cjs","test:unit":"jest","test:types":"tsc --noEmit","build:worklet:reverb":"esbuild src/reverb/worklet-processor.ts --bundle --minify > src/reverb/processor.min.js"},"_npmUser":{"name":"danigb","email":"danigb@gmail.com"},"repository":{"url":"git+https://github.com/danigb/smplr.git","type":"git"},"_npmVersion":"8.8.0","description":"A Sampled collection of instruments","directories":{},"_nodeVersion":"18.1.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.4.1","tsup":"^7.2.0","turbo":"latest","ts-jest":"^29.0.5","typedoc":"^0.25.1","prettier":"latest","@types/jest":"^29.4.0","@changesets/cli":"^2.25.2","@types/audioworklet":"^0.0.36"},"_npmOperationalInternal":{"tmp":"tmp/smplr_0.10.1_1695756899536_0.24512501037683565","host":"s3://npm-registry-packages"}},"0.10.2":{"name":"smplr","version":"0.10.2","keywords":["sampler","web","audio","instrument"],"author":{"name":"danigb"},"license":"MIT","_id":"smplr@0.10.2","maintainers":[{"name":"danigb","email":"danigb@gmail.com"}],"homepage":"https://github.com/danigb/smplr#readme","bugs":{"url":"https://github.com/danigb/smplr/issues"},"dist":{"shasum":"a81920a6d6760c51c876684d19f1686b4ce6181c","tarball":"https://registry.npmjs.org/smplr/-/smplr-0.10.2.tgz","fileCount":8,"integrity":"sha512-9NTI88Sl0jVY4vsmzd42ZcUB9zgmPbkBZOfJu3wWbDaMwS2/GidKIk9VLg2sb6esVj+SndkRz5VZqQhNHC7dfg==","signatures":[{"sig":"MEYCIQDnfH9YKfWEBJApjqUibNOIVG39zJ9aK6zC2Kk+FWMbzAIhAMoS4EWuw0fBk3niSd8GrQyAjgxp17iVw0fqozJCIsAV","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":482681},"jest":{"preset":"ts-jest"},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","engines":{"node":">=14.0.0"},"gitHead":"8e2fbc68b2a9e52e94e4bbcd1a9e3850b5cec3cb","scripts":{"test":"yarn test:unit && yarn test:types","build":"tsup src/index.ts  --sourcemap --dts --format esm,cjs","test:unit":"jest","test:types":"tsc --noEmit","build:worklet:reverb":"esbuild src/reverb/worklet-processor.ts --bundle --minify > src/reverb/processor.min.js"},"_npmUser":{"name":"danigb","email":"danigb@gmail.com"},"repository":{"url":"git+https://github.com/danigb/smplr.git","type":"git"},"_npmVersion":"8.8.0","description":"A Sampled collection of instruments","directories":{},"_nodeVersion":"18.1.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.4.1","tsup":"^7.2.0","turbo":"latest","ts-jest":"^29.0.5","typedoc":"^0.25.1","prettier":"latest","@types/jest":"^29.4.0","@changesets/cli":"^2.25.2","@types/audioworklet":"^0.0.36"},"_npmOperationalInternal":{"tmp":"tmp/smplr_0.10.2_1695804088070_0.7477836415977113","host":"s3://npm-registry-packages"}},"0.10.3":{"name":"smplr","version":"0.10.3","keywords":["sampler","web","audio","instrument"],"author":{"name":"danigb"},"license":"MIT","_id":"smplr@0.10.3","maintainers":[{"name":"danigb","email":"danigb@gmail.com"}],"homepage":"https://github.com/danigb/smplr#readme","bugs":{"url":"https://github.com/danigb/smplr/issues"},"dist":{"shasum":"68739f5d6c5941b299d0dd30188de14d75a1ef97","tarball":"https://registry.npmjs.org/smplr/-/smplr-0.10.3.tgz","fileCount":8,"integrity":"sha512-d4GpfDTSKlVln5dhp4Q0YEPXcp+6cyCmslZwteKbMKI9AQDJXh6kg8g/SsenfqRxf4tqMkF+BAD4PB2TBPxBDw==","signatures":[{"sig":"MEYCIQCNLwovl28cwQShHYH8z9dIB8IcbGdtIsQzx3FmyywiXQIhAOCtw1EDK9knvyQyoSb8LRf6y0iwD1FlTXH2l0jTjyGg","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":482633},"jest":{"preset":"ts-jest"},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","engines":{"node":">=14.0.0"},"gitHead":"032ef350ca4149e19079b3325820bafd9b1d4600","scripts":{"test":"yarn test:unit && yarn test:types","build":"tsup src/index.ts  --sourcemap --dts --format esm,cjs","test:unit":"jest","test:types":"tsc --noEmit","build:worklet:reverb":"esbuild src/reverb/worklet-processor.ts --bundle --minify > src/reverb/processor.min.js"},"_npmUser":{"name":"danigb","email":"danigb@gmail.com"},"repository":{"url":"git+https://github.com/danigb/smplr.git","type":"git"},"_npmVersion":"8.8.0","description":"A Sampled collection of instruments","directories":{},"_nodeVersion":"18.1.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.4.1","tsup":"^7.2.0","turbo":"latest","ts-jest":"^29.0.5","typedoc":"^0.25.1","prettier":"latest","@types/jest":"^29.4.0","@changesets/cli":"^2.25.2","@types/audioworklet":"^0.0.36"},"_npmOperationalInternal":{"tmp":"tmp/smplr_0.10.3_1696011012746_0.3736125948945357","host":"s3://npm-registry-packages"}},"0.11.0":{"name":"smplr","version":"0.11.0","keywords":["sampler","web","audio","instrument"],"author":{"name":"danigb"},"license":"MIT","_id":"smplr@0.11.0","maintainers":[{"name":"danigb","email":"danigb@gmail.com"}],"homepage":"https://github.com/danigb/smplr#readme","bugs":{"url":"https://github.com/danigb/smplr/issues"},"dist":{"shasum":"7bdb487e85f2f3d3764dd27b6c61abce45274c36","tarball":"https://registry.npmjs.org/smplr/-/smplr-0.11.0.tgz","fileCount":8,"integrity":"sha512-J+QGBbGc5W6R3YJc+ucG5gA8eCH6JlVLB3yi/5ekh/BPg9OtN6yunB00m1W16mUzen4tsSC23G1xuh1nRtQipw==","signatures":[{"sig":"MEUCIENbqzT8I7sAoFl1j/IQRhKWuaTLmLkb5jQnoYnaDFpNAiEAxqHQKPne2f19nA77VTqJ+F6xEmvDtkOGqVFT120/GHo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":495751},"jest":{"preset":"ts-jest"},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","engines":{"node":">=14.0.0"},"gitHead":"6d596a29071a62bd1a8ab544b867df8d86f8d5bd","scripts":{"test":"yarn test:unit && yarn test:types","build":"tsup src/index.ts  --sourcemap --dts --format esm,cjs","test:unit":"jest","test:types":"tsc --noEmit","build:worklet:reverb":"esbuild src/reverb/worklet-processor.ts --bundle --minify > src/reverb/processor.min.js"},"_npmUser":{"name":"danigb","email":"danigb@gmail.com"},"repository":{"url":"git+https://github.com/danigb/smplr.git","type":"git"},"_npmVersion":"8.8.0","description":"A Sampled collection of instruments","directories":{},"_nodeVersion":"18.1.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.4.1","tsup":"^7.2.0","turbo":"latest","ts-jest":"^29.0.5","typedoc":"^0.25.1","prettier":"latest","@types/jest":"^29.4.0","@changesets/cli":"^2.25.2","@types/audioworklet":"^0.0.36"},"_npmOperationalInternal":{"tmp":"tmp/smplr_0.11.0_1696021458834_0.2907974322670366","host":"s3://npm-registry-packages"}},"0.11.1":{"name":"smplr","version":"0.11.1","keywords":["sampler","web","audio","instrument"],"author":{"name":"danigb"},"license":"MIT","_id":"smplr@0.11.1","maintainers":[{"name":"danigb","email":"danigb@gmail.com"}],"homepage":"https://github.com/danigb/smplr#readme","bugs":{"url":"https://github.com/danigb/smplr/issues"},"dist":{"shasum":"5ca1d0f4e61021ba4490a92d3b6ccf39f91723cd","tarball":"https://registry.npmjs.org/smplr/-/smplr-0.11.1.tgz","fileCount":8,"integrity":"sha512-LuhFzqlS8K8NS9XRPQfTPrUsClhytz2uEE0MZWftp4QO/wXteqv85t9nmJTK5Gt8tdzBwb9+lv8rUYysoRs88g==","signatures":[{"sig":"MEUCIB+NeVE794Fcu3frxRBH6cJwluOZerbTZeWXRPZjQ6XHAiEA0iQgMpijdeW2T2wGG+/eXz0LWltpapTXYEb18cL+tDA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":495899},"jest":{"preset":"ts-jest"},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","engines":{"node":">=14.0.0"},"gitHead":"02d65a50091ce305f9492c989e1e050d90b3869d","scripts":{"test":"yarn test:unit && yarn test:types","build":"tsup src/index.ts  --sourcemap --dts --format esm,cjs","test:unit":"jest","test:types":"tsc --noEmit","build:worklet:reverb":"esbuild src/reverb/worklet-processor.ts --bundle --minify > src/reverb/processor.min.js"},"_npmUser":{"name":"danigb","email":"danigb@gmail.com"},"repository":{"url":"git+https://github.com/danigb/smplr.git","type":"git"},"_npmVersion":"8.8.0","description":"A Sampled collection of instruments","directories":{},"_nodeVersion":"18.1.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.4.1","tsup":"^7.2.0","turbo":"latest","ts-jest":"^29.0.5","typedoc":"^0.25.1","prettier":"latest","@types/jest":"^29.4.0","@changesets/cli":"^2.25.2","@types/audioworklet":"^0.0.36"},"_npmOperationalInternal":{"tmp":"tmp/smplr_0.11.1_1696108397559_0.007457769204742171","host":"s3://npm-registry-packages"}},"0.11.2":{"name":"smplr","version":"0.11.2","keywords":["sampler","web","audio","instrument"],"author":{"name":"danigb"},"license":"MIT","_id":"smplr@0.11.2","maintainers":[{"name":"danigb","email":"danigb@gmail.com"}],"homepage":"https://github.com/danigb/smplr#readme","bugs":{"url":"https://github.com/danigb/smplr/issues"},"dist":{"shasum":"cb9818a8e3e1d8e881639854dee8a95b0762b8d6","tarball":"https://registry.npmjs.org/smplr/-/smplr-0.11.2.tgz","fileCount":8,"integrity":"sha512-GppMwYqoqYaPITEUAe2uJdFI+yB18nFF1ezLtYNpRZoFNKezXtN+FCTCHVHCRN0/wRbY8wZ1LM17KeRtDSb5Rw==","signatures":[{"sig":"MEQCIB1SMNqfVz6eZ/8z94y0Ivp2FHcTyyN9wAkGfKmkkQbKAiBcI8YhCn/pyGc7vc+S2WY9krAFJOnoSzHF8X8Gh8nIjw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":496267},"jest":{"preset":"ts-jest"},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","engines":{"node":">=14.0.0"},"gitHead":"b9dde6eb2b71c200ad533235735142d4ff7d6061","scripts":{"test":"yarn test:unit && yarn test:types","build":"tsup src/index.ts  --sourcemap --dts --format esm,cjs","test:unit":"jest","test:types":"tsc --noEmit","build:worklet:reverb":"esbuild src/reverb/worklet-processor.ts --bundle --minify > src/reverb/processor.min.js"},"_npmUser":{"name":"danigb","email":"danigb@gmail.com"},"repository":{"url":"git+https://github.com/danigb/smplr.git","type":"git"},"_npmVersion":"8.8.0","description":"A Sampled collection of instruments","directories":{},"_nodeVersion":"18.1.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.4.1","tsup":"^7.3.0","turbo":"^1.10.16","ts-jest":"^29.0.5","typedoc":"^0.25.3","prettier":"^3.1.0","@types/jest":"^29.5.8","@changesets/cli":"^2.25.2","@types/audioworklet":"^0.0.50"},"_npmOperationalInternal":{"tmp":"tmp/smplr_0.11.2_1700323085557_0.41755727256380126","host":"s3://npm-registry-packages"}},"0.11.3":{"name":"smplr","version":"0.11.3","keywords":["sampler","web","audio","instrument"],"author":{"name":"danigb"},"license":"MIT","_id":"smplr@0.11.3","maintainers":[{"name":"danigb","email":"danigb@gmail.com"}],"homepage":"https://github.com/danigb/smplr#readme","bugs":{"url":"https://github.com/danigb/smplr/issues"},"dist":{"shasum":"0a72870641102a4118d46aab5b92a6184793c9dc","tarball":"https://registry.npmjs.org/smplr/-/smplr-0.11.3.tgz","fileCount":8,"integrity":"sha512-5Yo9dF2VV8/WnhSUFtmimcMCqVEC+xJQDx4i/xfvcwvbaTJCklUOJMV8zdpM+PFGMC0nq80sNoGJwQc8mWBCOA==","signatures":[{"sig":"MEUCIQCihWoRIGR0tJ9LbCQVTs7O6qzFq6BUYUm3P6n2j7GkngIgBXjHlckbVET0H9S43dq5OHCBaD3A6/fa0HAWdTetx9I=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":497062},"jest":{"preset":"ts-jest"},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","engines":{"node":">=14.0.0"},"gitHead":"2f728473c656b3c38aa9816ad6512ba709497f51","scripts":{"test":"yarn test:unit && yarn test:types","build":"tsup src/index.ts  --sourcemap --dts --format esm,cjs","test:unit":"jest","test:types":"tsc --noEmit","build:worklet:reverb":"esbuild src/reverb/worklet-processor.ts --bundle --minify > src/reverb/processor.min.js"},"_npmUser":{"name":"danigb","email":"danigb@gmail.com"},"repository":{"url":"git+https://github.com/danigb/smplr.git","type":"git"},"_npmVersion":"8.8.0","description":"A Sampled collection of instruments","directories":{},"_nodeVersion":"18.1.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.4.1","tsup":"^7.3.0","turbo":"^1.10.16","ts-jest":"^29.0.5","typedoc":"^0.25.3","prettier":"^3.1.0","@types/jest":"^29.5.8","@changesets/cli":"^2.25.2","@types/audioworklet":"^0.0.50"},"_npmOperationalInternal":{"tmp":"tmp/smplr_0.11.3_1700408617908_0.9883004984641852","host":"s3://npm-registry-packages"}},"0.12.0":{"name":"smplr","version":"0.12.0","keywords":["sampler","web","audio","instrument"],"author":{"name":"danigb"},"license":"MIT","_id":"smplr@0.12.0","maintainers":[{"name":"danigb","email":"danigb@gmail.com"}],"homepage":"https://github.com/danigb/smplr#readme","bugs":{"url":"https://github.com/danigb/smplr/issues"},"dist":{"shasum":"fcd8e6599bf881a915719612ce27007dc74defb0","tarball":"https://registry.npmjs.org/smplr/-/smplr-0.12.0.tgz","fileCount":8,"integrity":"sha512-xwGbPx/sYITAh5M4LsO5tZAmAeth5IPTI/sH5QUg2td7OskHv03upDlWK8iYe/x6rjfR0pv6goDBg4s16VpugA==","signatures":[{"sig":"MEUCID8zK4hqJLZILGBKSMwbFndl25d5BjCkLCT3ms7d3E3uAiEA1wJo/ZECd3dTQ1XuG6tBG7oXhTapASV1spqmp2NQ6W8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":497706},"jest":{"preset":"ts-jest"},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","engines":{"node":">=14.0.0"},"gitHead":"d9fc5770ed92f763dac4e8eed9b36db690cf1a31","scripts":{"test":"yarn test:unit && yarn test:types","build":"tsup src/index.ts  --sourcemap --dts --format esm,cjs","test:unit":"jest","test:types":"tsc --noEmit","build:worklet:reverb":"esbuild src/reverb/worklet-processor.ts --bundle --minify > src/reverb/processor.min.js"},"_npmUser":{"name":"danigb","email":"danigb@gmail.com"},"repository":{"url":"git+https://github.com/danigb/smplr.git","type":"git"},"_npmVersion":"10.2.3","description":"A Sampled collection of instruments","directories":{},"_nodeVersion":"20.10.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.4.1","tsup":"^8.0.1","turbo":"^1.10.16","ts-jest":"^29.0.5","typedoc":"^0.25.3","prettier":"^3.1.0","@types/jest":"^29.5.8","@changesets/cli":"^2.25.2","@types/audioworklet":"^0.0.52"},"_npmOperationalInternal":{"tmp":"tmp/smplr_0.12.0_1702658049912_0.34348224623540125","host":"s3://npm-registry-packages"}},"0.12.1":{"name":"smplr","version":"0.12.1","keywords":["sampler","web","audio","instrument"],"author":{"name":"danigb"},"license":"MIT","_id":"smplr@0.12.1","maintainers":[{"name":"danigb","email":"danigb@gmail.com"}],"homepage":"https://github.com/danigb/smplr#readme","bugs":{"url":"https://github.com/danigb/smplr/issues"},"dist":{"shasum":"53895a6928c2a3093d72e639440ca4be0b480e54","tarball":"https://registry.npmjs.org/smplr/-/smplr-0.12.1.tgz","fileCount":8,"integrity":"sha512-GEHuuP2vCtgu7+HY2F0DEnIxB5JHfxsZt4lJd9i/zxiZz1eBHheiy9h5Th32XGkLGObm/MMCfVs8Fwz6N/BKMw==","signatures":[{"sig":"MEUCIQCsfC2BLl8XlE6fungvj1PaiQniyKDbKbEu8+u5GyQ/YwIgFOhb0wW2ftHg6xmgD7T3/tLLLQTlP6/NfX8rRFrr1WM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":499932},"jest":{"preset":"ts-jest"},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","engines":{"node":">=14.0.0"},"gitHead":"66b4654d3d0ce0bf4b97128fdc8450cd5f1e9200","scripts":{"test":"yarn test:unit && yarn test:types","build":"tsup src/index.ts  --sourcemap --dts --format esm,cjs","test:unit":"jest","test:types":"tsc --noEmit","build:worklet:reverb":"esbuild src/reverb/worklet-processor.ts --bundle --minify > src/reverb/processor.min.js"},"_npmUser":{"name":"danigb","email":"danigb@gmail.com"},"repository":{"url":"git+https://github.com/danigb/smplr.git","type":"git"},"_npmVersion":"10.2.3","description":"A Sampled collection of instruments","directories":{},"_nodeVersion":"20.10.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.4.1","tsup":"^8.0.1","turbo":"^1.10.16","ts-jest":"^29.0.5","typedoc":"^0.25.3","prettier":"^3.1.0","@types/jest":"^29.5.8","@changesets/cli":"^2.25.2","@types/audioworklet":"^0.0.52"},"_npmOperationalInternal":{"tmp":"tmp/smplr_0.12.1_1702715378569_0.7482489699462906","host":"s3://npm-registry-packages"}},"0.12.2":{"name":"smplr","version":"0.12.2","keywords":["sampler","web","audio","instrument"],"author":{"name":"danigb"},"license":"MIT","_id":"smplr@0.12.2","maintainers":[{"name":"danigb","email":"danigb@gmail.com"}],"homepage":"https://github.com/danigb/smplr#readme","bugs":{"url":"https://github.com/danigb/smplr/issues"},"dist":{"shasum":"9ba60b46c8414b3dcaf456d87caaa801e935703b","tarball":"https://registry.npmjs.org/smplr/-/smplr-0.12.2.tgz","fileCount":8,"integrity":"sha512-fmJYIpFJVcoVCH5OtFg+UUf9aErFHk8RaRrJBkS78hNCKzdK1pFlF4KPR/mGerVAVKg78D3cSawQVk0mgiH0PA==","signatures":[{"sig":"MEYCIQCodo65oJS5dFs3W6+vU8/u4MI1Dms4c9cw4duvlmdpOgIhAMZs0A7O6VjsHXG4azEilvvu2C3PcVRmLqjWmc6ra9Md","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":500110},"jest":{"preset":"ts-jest"},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","engines":{"node":">=14.0.0"},"gitHead":"08cddabd504c767cd8212124a90d3f4a0fddf6f5","scripts":{"test":"yarn test:unit && yarn test:types","build":"tsup src/index.ts  --sourcemap --dts --format esm,cjs","publish":"npm test && npm run build && changeset publish","test:unit":"jest","test:types":"tsc --noEmit","build:worklet:reverb":"esbuild src/reverb/worklet-processor.ts --bundle --minify > src/reverb/processor.min.js"},"_npmUser":{"name":"danigb","email":"danigb@gmail.com"},"repository":{"url":"git+https://github.com/danigb/smplr.git","type":"git"},"_npmVersion":"10.2.3","description":"A Sampled collection of instruments","directories":{},"_nodeVersion":"20.10.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.4.1","tsup":"^8.0.2","turbo":"^1.12.4","ts-jest":"^29.1.2","typedoc":"^0.25.8","prettier":"^3.2.5","@types/jest":"^29.5.12","@changesets/cli":"^2.25.2","@types/audioworklet":"^0.0.54"},"_npmOperationalInternal":{"tmp":"tmp/smplr_0.12.2_1708257796194_0.6806364646679384","host":"s3://npm-registry-packages"}},"0.12.3":{"name":"smplr","version":"0.12.3","keywords":["sampler","web","audio","instrument"],"author":{"name":"danigb"},"license":"MIT","_id":"smplr@0.12.3","maintainers":[{"name":"danigb","email":"danigb@gmail.com"}],"homepage":"https://github.com/danigb/smplr#readme","bugs":{"url":"https://github.com/danigb/smplr/issues"},"dist":{"shasum":"d7cd8495b4a5b5b8c10c083af66bdaa7795f2e39","tarball":"https://registry.npmjs.org/smplr/-/smplr-0.12.3.tgz","fileCount":8,"integrity":"sha512-MRNpkQlw1oul6ko9dSZWhUXp6V9BzxitShemCvIoDW0k0Cz0owDx2fdKSvYCqmc6SlnfqVBXO/jZmRB6NRO2ZA==","signatures":[{"sig":"MEUCIQCt6XX63hEbrvzHnF6fAe3AyxpjP6PgNwEo1tBypGs4wQIgXLY9UOgGBkqZcnepB4dbmU3Qi58p50Sg+2jak0JC9Hs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":500658},"jest":{"preset":"ts-jest"},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","engines":{"node":">=14.0.0"},"gitHead":"35f807dbaf459ac469c086c45c36cf78a42c12c3","scripts":{"test":"yarn test:unit && yarn test:types","build":"tsup src/index.ts  --sourcemap --dts --format esm,cjs","publish":"npm test && npm run build && changeset publish","test:unit":"jest","test:types":"tsc --noEmit","build:worklet:reverb":"esbuild src/reverb/worklet-processor.ts --bundle --minify > src/reverb/processor.min.js"},"_npmUser":{"name":"danigb","email":"danigb@gmail.com"},"repository":{"url":"git+https://github.com/danigb/smplr.git","type":"git"},"_npmVersion":"10.2.3","description":"A Sampled collection of instruments","directories":{},"_nodeVersion":"20.10.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.4.1","tsup":"^8.0.2","turbo":"^1.13.0","ts-jest":"^29.1.2","typedoc":"^0.25.8","prettier":"^3.2.5","@types/jest":"^29.5.12","@changesets/cli":"^2.25.2","@types/audioworklet":"^0.0.54"},"_npmOperationalInternal":{"tmp":"tmp/smplr_0.12.3_1711788909480_0.4498448822650607","host":"s3://npm-registry-packages"}},"0.13.0":{"name":"smplr","version":"0.13.0","keywords":["sampler","web","audio","instrument"],"author":{"name":"danigb"},"license":"MIT","_id":"smplr@0.13.0","maintainers":[{"name":"danigb","email":"danigb@gmail.com"}],"homepage":"https://github.com/danigb/smplr#readme","bugs":{"url":"https://github.com/danigb/smplr/issues"},"dist":{"shasum":"adbff77f576e1221320b522310ce6b6d91f8b6aa","tarball":"https://registry.npmjs.org/smplr/-/smplr-0.13.0.tgz","fileCount":8,"integrity":"sha512-pv6ORNlM/M8bPDb/mY3oXLcx2zHKqQvJp4cIW7Dy3zeUDpQd1BscMUQZ9RKXToX2PK1UoEinaoxtggR5iB8pGg==","signatures":[{"sig":"MEUCIQC8VeNiHcw7jKY4Ov0lrEe0NJzV8kM9KZZkqh4O8ThuKAIgNELBwvpEMpk69hUnk4/Y/oviCNT5DSKkbPpquoRDfBo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":504618},"jest":{"preset":"ts-jest"},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","engines":{"node":">=14.0.0"},"gitHead":"e80766bc90bef04ea666565252800b69a2bc3109","scripts":{"test":"yarn test:unit && yarn test:types","build":"tsup src/index.ts  --sourcemap --dts --format esm,cjs","publish":"npm test && npm run build && changeset publish","test:unit":"jest","test:types":"tsc --noEmit","build:worklet:reverb":"esbuild src/reverb/worklet-processor.ts --bundle --minify > src/reverb/processor.min.js"},"_npmUser":{"name":"danigb","email":"danigb@gmail.com"},"repository":{"url":"git+https://github.com/danigb/smplr.git","type":"git"},"_npmVersion":"10.2.3","description":"A Sampled collection of instruments","directories":{},"_nodeVersion":"20.10.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.4.1","tsup":"^8.0.2","turbo":"^1.13.0","ts-jest":"^29.1.2","typedoc":"^0.25.8","prettier":"^3.2.5","@types/jest":"^29.5.12","@changesets/cli":"^2.25.2","@types/audioworklet":"^0.0.54"},"_npmOperationalInternal":{"tmp":"tmp/smplr_0.13.0_1712849138008_0.17900740086289857","host":"s3://npm-registry-packages"}},"0.13.1":{"name":"smplr","version":"0.13.1","keywords":["sampler","web","audio","instrument"],"author":{"name":"danigb"},"license":"MIT","_id":"smplr@0.13.1","maintainers":[{"name":"danigb","email":"danigb@gmail.com"}],"homepage":"https://github.com/danigb/smplr#readme","bugs":{"url":"https://github.com/danigb/smplr/issues"},"dist":{"shasum":"5288f75b7dd640f84ca14cd7d629f315ea6cae16","tarball":"https://registry.npmjs.org/smplr/-/smplr-0.13.1.tgz","fileCount":8,"integrity":"sha512-619yC4cyjNDKHi5xl7pQkZyj0p3VV5owYD8hTiNfKnC2x7cG5H8fXWkfa3YBBM4eKEdEK1TZ7KFgA7u8GaoC3A==","signatures":[{"sig":"MEYCIQCiYK/ypkmJ0UvfV9UIyk7pJo4DS9M1RY05xZLlaaJGDQIhAMW1bE99moEbMc53pS1Y8fioOvelmUf/IR/4BNO4c/qk","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":504609},"jest":{"preset":"ts-jest"},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","engines":{"node":">=14.0.0"},"gitHead":"3f7c28231039bf027f0bbb75cd4d7074eaa7a7ea","scripts":{"test":"yarn test:unit && yarn test:types","build":"tsup src/index.ts  --sourcemap --dts --format esm,cjs","publish":"npm test && npm run build && changeset publish","test:unit":"jest","test:types":"tsc --noEmit","build:worklet:reverb":"esbuild src/reverb/worklet-processor.ts --bundle --minify > src/reverb/processor.min.js"},"_npmUser":{"name":"danigb","email":"danigb@gmail.com"},"repository":{"url":"git+https://github.com/danigb/smplr.git","type":"git"},"_npmVersion":"10.2.3","description":"A Sampled collection of instruments","directories":{},"_nodeVersion":"20.10.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.4.1","tsup":"^8.0.2","turbo":"^1.13.2","ts-jest":"^29.1.2","typedoc":"^0.25.13","prettier":"^3.2.5","@types/jest":"^29.5.12","@changesets/cli":"^2.25.2","@types/audioworklet":"^0.0.54"},"_npmOperationalInternal":{"tmp":"tmp/smplr_0.13.1_1712849745298_0.5925070898633122","host":"s3://npm-registry-packages"}},"0.13.2":{"name":"smplr","version":"0.13.2","keywords":["sampler","web","audio","instrument"],"author":{"name":"danigb"},"license":"MIT","_id":"smplr@0.13.2","maintainers":[{"name":"danigb","email":"danigb@gmail.com"}],"homepage":"https://github.com/danigb/smplr#readme","bugs":{"url":"https://github.com/danigb/smplr/issues"},"dist":{"shasum":"c9923d6ffd3368b393aaa86b6214fdb1aeb2955a","tarball":"https://registry.npmjs.org/smplr/-/smplr-0.13.2.tgz","fileCount":8,"integrity":"sha512-8sSSsVpr0vwf2RABzDAfqyUUCpfJt1EBCkfrjmJyaZ+UaQ+A9fIjasJu29MH/yEp++K5KNIYemOiMF1Ia8iVaQ==","signatures":[{"sig":"MEUCIHvF2SAkatWhZ7pJJZdi/S1EU8Tjhbrg7zkDEYvIKh8rAiEA4Fd0i/mROd3LargmeFptx7FO87f4P/c94T/rflJqgOY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":504609},"jest":{"preset":"ts-jest"},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","engines":{"node":">=14.0.0"},"gitHead":"ac56e041d064b35f966654300fed08ea16635f49","scripts":{"test":"yarn test:unit && yarn test:types","build":"tsup src/index.ts  --sourcemap --dts --format esm,cjs","publish":"npm test && npm run build && changeset publish","test:unit":"jest","test:types":"tsc --noEmit","build:worklet:reverb":"esbuild src/reverb/worklet-processor.ts --bundle --minify > src/reverb/processor.min.js"},"_npmUser":{"name":"danigb","email":"danigb@gmail.com"},"repository":{"url":"git+https://github.com/danigb/smplr.git","type":"git"},"_npmVersion":"10.2.3","description":"A Sampled collection of instruments","directories":{},"_nodeVersion":"20.10.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.4.1","tsup":"^8.0.2","turbo":"^1.13.2","ts-jest":"^29.1.2","typedoc":"^0.25.13","prettier":"^3.2.5","@types/jest":"^29.5.12","@changesets/cli":"^2.25.2","@types/audioworklet":"^0.0.54"},"_npmOperationalInternal":{"tmp":"tmp/smplr_0.13.2_1712849912569_0.5961157439505025","host":"s3://npm-registry-packages"}},"0.13.3":{"name":"smplr","version":"0.13.3","keywords":["sampler","web","audio","instrument"],"author":{"name":"danigb"},"license":"MIT","_id":"smplr@0.13.3","maintainers":[{"name":"danigb","email":"danigb@gmail.com"}],"homepage":"https://github.com/danigb/smplr#readme","bugs":{"url":"https://github.com/danigb/smplr/issues"},"dist":{"shasum":"8206a5657ec4d6322dd37457aa078a4d4da2938e","tarball":"https://registry.npmjs.org/smplr/-/smplr-0.13.3.tgz","fileCount":8,"integrity":"sha512-3pzFwsGHj5ykEcHZw5MzT8ngD0FHMJm5gzMP3aDvpHSZwMGkTXSzdk2R4bkR8n6yrV2pUosN9K01cZ+2VU+tYA==","signatures":[{"sig":"MEYCIQCHRr2qrFjgfsgz+cjv2AXX+FrXp/QnffKcxXyyVsQ7aQIhAPCiXHbBsm1SFBdw45kS6oUit2dI+LGFjVK/Mtx9OnJz","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":504965},"jest":{"preset":"ts-jest"},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","engines":{"node":">=14.0.0"},"gitHead":"a44667797e45ac28816c688c3c62ee3c908aeda2","scripts":{"test":"yarn test:unit && yarn test:types","build":"tsup src/index.ts  --sourcemap --dts --format esm,cjs","publish":"npm test && npm run build && changeset publish","test:unit":"jest","test:types":"tsc --noEmit","build:worklet:reverb":"esbuild src/reverb/worklet-processor.ts --bundle --minify > src/reverb/processor.min.js"},"_npmUser":{"name":"danigb","email":"danigb@gmail.com"},"repository":{"url":"git+https://github.com/danigb/smplr.git","type":"git"},"_npmVersion":"10.2.3","description":"A Sampled collection of instruments","directories":{},"_nodeVersion":"20.10.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.4.1","tsup":"^8.0.2","turbo":"^1.13.2","ts-jest":"^29.1.2","typedoc":"^0.25.13","prettier":"^3.2.5","@types/jest":"^29.5.12","@changesets/cli":"^2.25.2","@types/audioworklet":"^0.0.54"},"_npmOperationalInternal":{"tmp":"tmp/smplr_0.13.3_1712851184213_0.6494496817090414","host":"s3://npm-registry-packages"}},"0.13.4":{"name":"smplr","version":"0.13.4","keywords":["sampler","web","audio","instrument"],"author":{"name":"danigb"},"license":"MIT","_id":"smplr@0.13.4","maintainers":[{"name":"danigb","email":"danigb@gmail.com"}],"homepage":"https://github.com/danigb/smplr#readme","bugs":{"url":"https://github.com/danigb/smplr/issues"},"dist":{"shasum":"11b028bf6868f34186140bcc396c829f22a1ea12","tarball":"https://registry.npmjs.org/smplr/-/smplr-0.13.4.tgz","fileCount":8,"integrity":"sha512-KT4rxT6yndEVXpHQcLr61ddfADUEcaQRCJ7ZXrWn6PkXtm26CBUrfrBe9SzYNXI1eFhg0P1phI0uhbw8mEkVEQ==","signatures":[{"sig":"MEUCIQDTQn5jjjlLTccmo8p4l0sKtlJV19pe397T1etglC234QIgRUEUldM6cjr3fSRZDHMKc1x4/e68x9Vzk/PVqKDRX7k=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":504813},"jest":{"preset":"ts-jest"},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","engines":{"node":">=14.0.0"},"gitHead":"7749cf237c5c1e5948610cbd126198ae9d3ac406","scripts":{"test":"yarn test:unit && yarn test:types","build":"tsup src/index.ts  --sourcemap --dts --format esm,cjs","publish":"npm test && npm run build && changeset publish","test:unit":"jest","test:types":"tsc --noEmit","build:worklet:reverb":"esbuild src/reverb/worklet-processor.ts --bundle --minify > src/reverb/processor.min.js"},"_npmUser":{"name":"danigb","email":"danigb@gmail.com"},"repository":{"url":"git+https://github.com/danigb/smplr.git","type":"git"},"_npmVersion":"10.2.3","description":"A Sampled collection of instruments","directories":{},"_nodeVersion":"20.10.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.4.1","tsup":"^8.0.2","turbo":"^1.13.2","ts-jest":"^29.1.2","typedoc":"^0.25.13","prettier":"^3.2.5","@types/jest":"^29.5.12","@changesets/cli":"^2.25.2","@types/audioworklet":"^0.0.54"},"_npmOperationalInternal":{"tmp":"tmp/smplr_0.13.4_1713765227905_0.6585773209421115","host":"s3://npm-registry-packages"}},"0.14.0":{"name":"smplr","version":"0.14.0","keywords":["sampler","web","audio","instrument"],"author":{"name":"danigb"},"license":"MIT","_id":"smplr@0.14.0","maintainers":[{"name":"danigb","email":"danigb@gmail.com"}],"homepage":"https://github.com/danigb/smplr#readme","bugs":{"url":"https://github.com/danigb/smplr/issues"},"dist":{"shasum":"7f45a2646f4cbae0809c4609c19edadaf5816151","tarball":"https://registry.npmjs.org/smplr/-/smplr-0.14.0.tgz","fileCount":8,"integrity":"sha512-CLKTaAja5ZzRaX4ayqOs3H/Fl8dhhHjV6kAfW72z+zaTisvxyy3K81S+br4FoBqWY9WuBY40ejIWMdzXZWa2eA==","signatures":[{"sig":"MEQCIBILeOI7AyrvilYikBhGIevbZsVJe+tDZKU8HxJyAatMAiBCIKLosvOjKMVWVohIRzef9B00iT5/FI7P856oGkQBTg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":529287},"jest":{"preset":"ts-jest"},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","engines":{"node":">=14.0.0"},"gitHead":"38bb7b96a9ed97d7fa7c2ff6a3a984bb16dc14a5","scripts":{"test":"yarn test:unit && yarn test:types","build":"tsup src/index.ts  --sourcemap --dts --format esm,cjs","publish":"npm test && npm run build && changeset publish","test:unit":"jest","test:types":"tsc --noEmit","build:worklet:reverb":"esbuild src/reverb/worklet-processor.ts --bundle --minify > src/reverb/processor.min.js"},"_npmUser":{"name":"danigb","email":"danigb@gmail.com"},"repository":{"url":"git+https://github.com/danigb/smplr.git","type":"git"},"_npmVersion":"10.2.3","description":"A Sampled collection of instruments","directories":{},"_nodeVersion":"20.10.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.4.1","tsup":"^8.0.2","turbo":"^1.13.2","ts-jest":"^29.1.2","typedoc":"^0.25.13","prettier":"^3.2.5","@types/jest":"^29.5.12","@changesets/cli":"^2.25.2","@types/audioworklet":"^0.0.54"},"_npmOperationalInternal":{"tmp":"tmp/smplr_0.14.0_1714978539898_0.70011645743706","host":"s3://npm-registry-packages"}},"0.15.0":{"name":"smplr","version":"0.15.0","keywords":["sampler","web","audio","instrument"],"author":{"name":"danigb"},"license":"MIT","_id":"smplr@0.15.0","maintainers":[{"name":"danigb","email":"danigb@gmail.com"}],"homepage":"https://github.com/danigb/smplr#readme","bugs":{"url":"https://github.com/danigb/smplr/issues"},"dist":{"shasum":"dad73f6231190ebba590e912c7ec5ea5a1d49c4b","tarball":"https://registry.npmjs.org/smplr/-/smplr-0.15.0.tgz","fileCount":8,"integrity":"sha512-fIpVUbpF1FLg9gtGKdOgE2qUgW0PAty5V5tsmNjVvW9vhOFy5rUgWjLZOvTDDJiGf2HQ1Kn2FJelPkQ1J9ze0w==","signatures":[{"sig":"MEUCIDjUiMctKhk6MEgKMb4g89d+Kk5i6bon/e8QiyiFDxoYAiEAtbgYJEDwZrhuD2vXYwhxoqCpl2kDnnDo4jzenwBRNsM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":529361},"jest":{"preset":"ts-jest"},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","engines":{"node":">=14.0.0"},"gitHead":"af58bdbcfb05052d94fc976cc8fe54247f2a38d5","scripts":{"test":"yarn test:unit && yarn test:types","build":"tsup src/index.ts  --sourcemap --dts --format esm,cjs","publish":"npm test && npm run build && changeset publish","test:unit":"jest","test:types":"tsc --noEmit","build:worklet:reverb":"esbuild src/reverb/worklet-processor.ts --bundle --minify > src/reverb/processor.min.js"},"_npmUser":{"name":"danigb","email":"danigb@gmail.com"},"repository":{"url":"git+https://github.com/danigb/smplr.git","type":"git"},"_npmVersion":"10.2.3","description":"A Sampled collection of instruments","directories":{},"_nodeVersion":"20.10.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.4.1","tsup":"^8.0.2","turbo":"^1.13.2","ts-jest":"^29.1.2","typedoc":"^0.25.13","prettier":"^3.2.5","@types/jest":"^29.5.12","@changesets/cli":"^2.25.2","@types/audioworklet":"^0.0.54"},"_npmOperationalInternal":{"tmp":"tmp/smplr_0.15.0_1718131544434_0.5194201169198771","host":"s3://npm-registry-packages"}},"0.15.1":{"name":"smplr","version":"0.15.1","keywords":["sampler","web","audio","instrument"],"author":{"name":"danigb"},"license":"MIT","_id":"smplr@0.15.1","maintainers":[{"name":"danigb","email":"danigb@gmail.com"}],"homepage":"https://github.com/danigb/smplr#readme","bugs":{"url":"https://github.com/danigb/smplr/issues"},"dist":{"shasum":"64e15dd29b70ecccc4de1fd7132bae3492e690c8","tarball":"https://registry.npmjs.org/smplr/-/smplr-0.15.1.tgz","fileCount":8,"integrity":"sha512-V2ZqDE2R9dEhvv6e8iMwf0mGebfrxCu00L9CllfdcWadV+soDlW/81dnlRYkD7ZJlMjetDSlhJHMdDDLeqKHRg==","signatures":[{"sig":"MEUCIQCifXH3Gw10pcgSmGnS2HKqPT3jyPzp6gfp7hQ6JqnI3wIgBT64aXJlMNae981sS6yZ9gnF8rz9dmIvzGZZngwwPys=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":530885},"jest":{"preset":"ts-jest"},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","engines":{"node":">=14.0.0"},"gitHead":"7df25ea2687eb7786c6f6004892075206fb4e423","scripts":{"test":"yarn test:unit && yarn test:types","build":"tsup src/index.ts  --sourcemap --dts --format esm,cjs","publish":"npm test && npm run build && changeset publish","test:unit":"jest","test:types":"tsc --noEmit","build:worklet:reverb":"esbuild src/reverb/worklet-processor.ts --bundle --minify > src/reverb/processor.min.js"},"_npmUser":{"name":"danigb","email":"danigb@gmail.com"},"repository":{"url":"git+https://github.com/danigb/smplr.git","type":"git"},"_npmVersion":"10.2.3","description":"A Sampled collection of instruments","directories":{},"_nodeVersion":"20.10.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.4.1","tsup":"^8.0.2","turbo":"^1.13.2","ts-jest":"^29.1.2","typedoc":"^0.25.13","prettier":"^3.2.5","@types/jest":"^29.5.12","@changesets/cli":"^2.25.2","@types/audioworklet":"^0.0.54"},"_npmOperationalInternal":{"tmp":"tmp/smplr_0.15.1_1718131707650_0.8733331339355868","host":"s3://npm-registry-packages"}},"0.16.0":{"name":"smplr","version":"0.16.0","keywords":["sampler","web","audio","instrument"],"author":{"name":"danigb"},"license":"MIT","_id":"smplr@0.16.0","maintainers":[{"name":"danigb","email":"danigb@gmail.com"}],"homepage":"https://github.com/danigb/smplr#readme","bugs":{"url":"https://github.com/danigb/smplr/issues"},"dist":{"shasum":"bd5bac03e1adb2cd4b76a796313f1387a38356ff","tarball":"https://registry.npmjs.org/smplr/-/smplr-0.16.0.tgz","fileCount":8,"integrity":"sha512-feEfqYM1wLhHiPZusM3+B6EC/Gj3vVNyRI2iKPzj7Ea8yKlC86s9jBu4cC1TsYakNDVUY/0TyK/yEz1LpBaUUw==","signatures":[{"sig":"MEYCIQCcrsv4/OBXOG5p5Gi3UASvsScxY0vHaG3NRgIHfnv3NQIhAObW/gbd++YBV5GtpnPlJaf1TqMBo0IGKWo5iW/bPHhH","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":532792},"jest":{"preset":"ts-jest"},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","engines":{"node":">=14.0.0"},"gitHead":"d17711db75d06f2cc2e7dab9b1ce38646ac274b3","scripts":{"test":"npm run test:unit && npm run test:types","build":"tsup src/index.ts  --sourcemap --dts --format esm,cjs","publish":"npm test && npm run build && changeset publish","test:unit":"jest","test:types":"tsc --noEmit","build:worklet:reverb":"esbuild src/reverb/worklet-processor.ts --bundle --minify > src/reverb/processor.min.js"},"_npmUser":{"name":"danigb","email":"danigb@gmail.com"},"repository":{"url":"git+https://github.com/danigb/smplr.git","type":"git"},"_npmVersion":"10.2.3","description":"A Sampled collection of instruments","directories":{},"_nodeVersion":"20.10.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@10.2.3","devDependencies":{"jest":"^29.4.1","tsup":"^8.0.2","ts-jest":"^29.1.2","typedoc":"^0.26.8","prettier":"^3.2.5","@types/jest":"^29.5.12","@changesets/cli":"^2.25.2","@types/audioworklet":"^0.0.60"},"_npmOperationalInternal":{"tmp":"tmp/smplr_0.16.0_1734509642754_0.8466153855277778","host":"s3://npm-registry-packages-npm-production"}},"0.16.1":{"name":"smplr","version":"0.16.1","keywords":["sampler","web","audio","instrument"],"author":{"name":"danigb"},"license":"MIT","_id":"smplr@0.16.1","maintainers":[{"name":"danigb","email":"danigb@gmail.com"}],"homepage":"https://github.com/danigb/smplr#readme","bugs":{"url":"https://github.com/danigb/smplr/issues"},"dist":{"shasum":"05e71a06cc04491028015378ab0dc3eacec9529f","tarball":"https://registry.npmjs.org/smplr/-/smplr-0.16.1.tgz","fileCount":8,"integrity":"sha512-qmCwaib5gj6qRUo4vwH0uERQI5FiwpnC2niahBwl95RmpK5iZQBB5ocIbXQaSfIbQb0KJ/EieS2jk+TYVsyqbg==","signatures":[{"sig":"MEUCIAXZAmxc1d1ZmgUiBhqgclgFWF+tagirSVfkaeBHT+veAiEAvsY7HFhWiWAwNppA2S9WhQ7WuoHa3bZfMCOXQX9aoZU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":534806},"jest":{"preset":"ts-jest"},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","engines":{"node":">=14.0.0"},"gitHead":"52ace8ea193e6a510fe9facc492aca128fe280ae","scripts":{"test":"npm run test:unit && npm run test:types","build":"tsup src/index.ts  --sourcemap --dts --format esm,cjs","publish":"npm test && npm run build && changeset publish","test:unit":"jest","test:types":"tsc --noEmit","build:worklet:reverb":"esbuild src/reverb/worklet-processor.ts --bundle --minify > src/reverb/processor.min.js"},"_npmUser":{"name":"danigb","email":"danigb@gmail.com"},"repository":{"url":"git+https://github.com/danigb/smplr.git","type":"git"},"_npmVersion":"10.2.3","description":"A Sampled collection of instruments","directories":{},"_nodeVersion":"20.10.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@10.2.3","devDependencies":{"jest":"^29.4.1","tsup":"^8.0.2","ts-jest":"^29.1.2","typedoc":"^0.26.8","prettier":"^3.2.5","@types/jest":"^29.5.12","@changesets/cli":"^2.25.2","@types/audioworklet":"^0.0.60"},"_npmOperationalInternal":{"tmp":"tmp/smplr_0.16.1_1734511339015_0.6122907245248346","host":"s3://npm-registry-packages-npm-production"}},"0.16.2":{"name":"smplr","version":"0.16.2","keywords":["sampler","web","audio","instrument"],"author":{"name":"danigb"},"license":"MIT","_id":"smplr@0.16.2","maintainers":[{"name":"danigb","email":"danigb@gmail.com"}],"homepage":"https://github.com/danigb/smplr#readme","bugs":{"url":"https://github.com/danigb/smplr/issues"},"dist":{"shasum":"0ba21586befb913c1c07e01aeb0acca69f4d4e07","tarball":"https://registry.npmjs.org/smplr/-/smplr-0.16.2.tgz","fileCount":8,"integrity":"sha512-3/R1KZuF+j8kS3+rpdLhgb0VPPwQ41eEz+0Fm0/QO90CBxWnWzhxlq+aPG6Z3p+9FDHG4lh+f6fI4kn3OVidDA==","signatures":[{"sig":"MEUCIQDQ72SZKRviCTUrmcI8LaEy/T/I3XmO9pxol+orNFxHNAIgKrMtJAgsXPXkRIaSCv2rOdHqbknQwUbU1J+LwYBQQyg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":537205},"jest":{"preset":"ts-jest"},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","engines":{"node":">=14.0.0"},"gitHead":"2c1a8ccac859f39ebe64e59784f9040164dd2064","scripts":{"test":"npm run test:unit && npm run test:types","build":"tsup src/index.ts  --sourcemap --dts --format esm,cjs","publish":"npm test && npm run build && changeset publish","test:unit":"jest","test:types":"tsc --noEmit","build:worklet:reverb":"esbuild src/reverb/worklet-processor.ts --bundle --minify > src/reverb/processor.min.js"},"_npmUser":{"name":"danigb","email":"danigb@gmail.com"},"repository":{"url":"git+https://github.com/danigb/smplr.git","type":"git"},"_npmVersion":"11.3.0","description":"A Sampled collection of instruments","directories":{},"_nodeVersion":"23.11.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@10.2.3","devDependencies":{"jest":"^29.4.1","tsup":"^8.0.2","ts-jest":"^29.1.2","typedoc":"^0.28.3","prettier":"^3.2.5","@types/jest":"^29.5.12","@changesets/cli":"^2.25.2","@types/audioworklet":"^0.0.74"},"_npmOperationalInternal":{"tmp":"tmp/smplr_0.16.2_1745221228238_0.2038089031894379","host":"s3://npm-registry-packages-npm-production"}},"0.16.3":{"name":"smplr","version":"0.16.3","keywords":["sampler","web","audio","instrument"],"author":{"name":"danigb"},"license":"MIT","_id":"smplr@0.16.3","maintainers":[{"name":"danigb","email":"danigb@gmail.com"}],"homepage":"https://github.com/danigb/smplr#readme","bugs":{"url":"https://github.com/danigb/smplr/issues"},"dist":{"shasum":"e377e13dbd613e64047911a67521291719ab0874","tarball":"https://registry.npmjs.org/smplr/-/smplr-0.16.3.tgz","fileCount":8,"integrity":"sha512-rKXh2SzzvCH454mHwECOHg4/lstZssnvxRXi0bAfHpmorrmr579irA5tU85b8icMblWqqdfTtZHVYdk1GU8MRQ==","signatures":[{"sig":"MEQCICUGBbw/OX2/HFMCj3aVqyqUODis/8Q9txLykLq3eQuTAiBVXarU01ZWZHRxLJb1p+Scbu00bbyPGKrtx39SsmBLDA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":537205},"jest":{"preset":"ts-jest"},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","engines":{"node":">=14.0.0"},"gitHead":"2c1a8ccac859f39ebe64e59784f9040164dd2064","scripts":{"test":"npm run test:unit && npm run test:types","build":"tsup src/index.ts  --sourcemap --dts --format esm,cjs","publish":"npm test && npm run build && changeset publish","test:unit":"jest","test:types":"tsc --noEmit","build:worklet:reverb":"esbuild src/reverb/worklet-processor.ts --bundle --minify > src/reverb/processor.min.js"},"_npmUser":{"name":"danigb","email":"danigb@gmail.com"},"repository":{"url":"git+https://github.com/danigb/smplr.git","type":"git"},"_npmVersion":"11.3.0","description":"A Sampled collection of instruments","directories":{},"_nodeVersion":"23.11.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@10.2.3","devDependencies":{"jest":"^29.4.1","tsup":"^8.0.2","ts-jest":"^29.1.2","typedoc":"^0.28.3","prettier":"^3.2.5","@types/jest":"^29.5.12","@changesets/cli":"^2.25.2","@types/audioworklet":"^0.0.74"},"_npmOperationalInternal":{"tmp":"tmp/smplr_0.16.3_1745221334510_0.3412937529692639","host":"s3://npm-registry-packages-npm-production"}},"0.16.4":{"name":"smplr","version":"0.16.4","keywords":["sampler","web","audio","instrument"],"author":{"name":"danigb"},"license":"MIT","_id":"smplr@0.16.4","maintainers":[{"name":"danigb","email":"danigb@gmail.com"}],"homepage":"https://github.com/danigb/smplr#readme","bugs":{"url":"https://github.com/danigb/smplr/issues"},"dist":{"shasum":"b245402ddad6928efffc54f3c447f4666770e72d","tarball":"https://registry.npmjs.org/smplr/-/smplr-0.16.4.tgz","fileCount":8,"integrity":"sha512-huIW2uSAuHTqjqCf2sqg3q03q/y1D1fhj2fR5jkP/u3cakbB5bMTk1z7SCdN45G5DRakrWwtUPcovsfMpeNr1w==","signatures":[{"sig":"MEUCIQCcZMkULL2UAMf2jxWQrLaLJC3oDEIJlUqtyO3om7WFrwIgCoVFw9YizfVEHl3PteC5fAG8Jdr6VTNEnkEH/Krp744=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":541408},"jest":{"preset":"ts-jest"},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","engines":{"node":">=14.0.0"},"scripts":{"test":"npm run test:unit && npm run test:types","build":"tsup src/index.ts  --sourcemap --dts --format esm,cjs","publish":"npm run build && npm run test","test:unit":"jest","test:types":"tsc --noEmit","build:worklet:reverb":"esbuild src/reverb/worklet-processor.ts --bundle --minify > src/reverb/processor.min.js"},"_npmUser":{"name":"danigb","email":"danigb@gmail.com"},"repository":{"url":"git+https://github.com/danigb/smplr.git","type":"git"},"_npmVersion":"11.6.2","description":"A Sampled collection of instruments","directories":{},"_nodeVersion":"24.13.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@10.2.3","devDependencies":{"jest":"^29.4.1","tsup":"^8.0.2","ts-jest":"^29.1.2","typedoc":"^0.28.3","prettier":"^3.2.5","@types/jest":"^29.5.12","@changesets/cli":"^2.25.2","@types/audioworklet":"^0.0.74"},"_npmOperationalInternal":{"tmp":"tmp/smplr_0.16.4_1768760050540_0.869949259104785","host":"s3://npm-registry-packages-npm-production"}},"0.17.0":{"name":"smplr","version":"0.17.0","keywords":["sampler","web","audio","instrument"],"author":{"name":"danigb"},"license":"MIT","_id":"smplr@0.17.0","maintainers":[{"name":"danigb","email":"danigb@gmail.com"}],"homepage":"https://github.com/danigb/smplr#readme","bugs":{"url":"https://github.com/danigb/smplr/issues"},"dist":{"shasum":"bd63e92fa5681b4d313d8a1b71537f44d9735153","tarball":"https://registry.npmjs.org/smplr/-/smplr-0.17.0.tgz","fileCount":8,"integrity":"sha512-sSKbxqVVVIQ9m6cw3cTUtWtWQXbUUhZQxBefh9ySTle3ARfZtrc4kXoERbD55OaHCiP7koDvX8Tht2A7j1xegA==","signatures":[{"sig":"MEUCIQCD9Jc9Czp2f3payw75vQ3Kq48RywKnB6Ly9H7JklRgHwIgNKH1qchMmh47WMq+TEwcmEs3OHzeB+PVXINLgo1I5V4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":660689},"jest":{"preset":"ts-jest","testPathIgnorePatterns":["/node_modules/","/site/"]},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","engines":{"node":">=14.0.0"},"scripts":{"test":"npm run test:unit && npm run test:types","build":"tsup src/index.ts  --sourcemap --dts --format esm,cjs","publish":"npm run build && npm run test","test:unit":"jest","test:types":"tsc --noEmit","build:worklet:reverb":"esbuild src/reverb/worklet-processor.ts --bundle --minify > src/reverb/processor.min.js"},"_npmUser":{"name":"danigb","email":"danigb@gmail.com"},"repository":{"url":"git+https://github.com/danigb/smplr.git","type":"git"},"_npmVersion":"11.6.2","description":"A Sampled collection of instruments","directories":{},"_nodeVersion":"24.13.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@10.2.3","devDependencies":{"jest":"^29.4.1","tsup":"^8.0.2","ts-jest":"^29.1.2","typedoc":"^0.28.3","prettier":"^3.2.5","@types/jest":"^29.5.12","@changesets/cli":"^2.25.2","@types/audioworklet":"^0.0.74"},"_npmOperationalInternal":{"tmp":"tmp/smplr_0.17.0_1771521023322_0.7075751998553408","host":"s3://npm-registry-packages-npm-production"}},"0.17.1":{"name":"smplr","version":"0.17.1","keywords":["sampler","web","audio","instrument"],"author":{"name":"danigb"},"license":"MIT","_id":"smplr@0.17.1","maintainers":[{"name":"danigb","email":"danigb@gmail.com"}],"homepage":"https://github.com/danigb/smplr#readme","bugs":{"url":"https://github.com/danigb/smplr/issues"},"dist":{"shasum":"308be9e54f7ed12b0c6ff55fe4243a821044421a","tarball":"https://registry.npmjs.org/smplr/-/smplr-0.17.1.tgz","fileCount":8,"integrity":"sha512-Gty5wodoAcZCeQwIRtENn3xzQrLaM5vLaaioke6RTi+SUvS9zr1lQHeIBfflFsJn94iAJCrOTOikWnSIhQNG8w==","signatures":[{"sig":"MEUCIQDj3/hMXuWB5X3z2xJ80+6bG0ZxqTVQS3dxIC396KL2igIgA161eb1nrLtFRGsEUme1hzJRfRxwiXU0mKlhdJPLWqo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":627913},"jest":{"preset":"ts-jest","testPathIgnorePatterns":["/node_modules/","/site/"]},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","engines":{"node":">=14.0.0"},"scripts":{"test":"npm run test:unit && npm run test:types","build":"tsup src/index.ts  --sourcemap --dts --format esm,cjs","publish":"npm run build && npm run test","test:unit":"jest","test:types":"tsc --noEmit","build:worklet:reverb":"esbuild src/reverb/worklet-processor.ts --bundle --minify > src/reverb/processor.min.js"},"_npmUser":{"name":"danigb","email":"danigb@gmail.com"},"repository":{"url":"git+https://github.com/danigb/smplr.git","type":"git"},"_npmVersion":"11.6.2","description":"A Sampled collection of instruments","directories":{},"_nodeVersion":"24.13.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@10.2.3","devDependencies":{"jest":"^29.4.1","tsup":"^8.0.2","ts-jest":"^29.1.2","typedoc":"^0.28.3","prettier":"^3.2.5","@types/jest":"^29.5.12","@changesets/cli":"^2.25.2","@types/audioworklet":"^0.0.74"},"_npmOperationalInternal":{"tmp":"tmp/smplr_0.17.1_1771851575075_0.07126007539827173","host":"s3://npm-registry-packages-npm-production"}},"0.18.0":{"name":"smplr","version":"0.18.0","keywords":["sampler","web","audio","instrument"],"author":{"name":"danigb"},"license":"MIT","_id":"smplr@0.18.0","maintainers":[{"name":"danigb","email":"danigb@gmail.com"}],"homepage":"https://github.com/danigb/smplr#readme","bugs":{"url":"https://github.com/danigb/smplr/issues"},"dist":{"shasum":"185de3f0947517520d2b371430893fe82123f413","tarball":"https://registry.npmjs.org/smplr/-/smplr-0.18.0.tgz","fileCount":8,"integrity":"sha512-FNgpE5IxRcAZEY0mGIo9FsnJD1BuVAuUZWVcvrM8GurODcTmfg/m+krAGCf2ZI5+EGxKUs2b13SFuIVUIOIiSg==","signatures":[{"sig":"MEQCIAzqS1VPkNb81TepWSO69KTXq/M+BxO35l2ryZb+bo6IAiBir2dn/R0ArwNNtBd5X6S5dD0t8vdjrZftJ8tWGbnD7g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":774575},"jest":{"preset":"ts-jest","testPathIgnorePatterns":["/node_modules/","/site/"]},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","engines":{"node":">=14.0.0"},"scripts":{"test":"npm run test:unit && npm run test:types","build":"tsup src/index.ts  --sourcemap --dts --format esm,cjs","publish":"npm run build && npm run test","test:unit":"jest","test:types":"tsc --noEmit","build:worklet:reverb":"esbuild src/reverb/worklet-processor.ts --bundle --minify > src/reverb/processor.min.js"},"_npmUser":{"name":"danigb","email":"danigb@gmail.com"},"repository":{"url":"git+https://github.com/danigb/smplr.git","type":"git"},"_npmVersion":"11.6.2","description":"A Sampled collection of instruments","directories":{},"_nodeVersion":"24.13.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@10.2.3","devDependencies":{"jest":"^29.4.1","tsup":"^8.0.2","ts-jest":"^29.1.2","typedoc":"^0.28.3","prettier":"^3.2.5","@types/jest":"^29.5.12","@changesets/cli":"^2.25.2","@types/audioworklet":"^0.0.74"},"_npmOperationalInternal":{"tmp":"tmp/smplr_0.18.0_1771859530731_0.8828765088445825","host":"s3://npm-registry-packages-npm-production"}},"0.18.1":{"name":"smplr","version":"0.18.1","keywords":["sampler","web","audio","instrument"],"author":{"name":"danigb"},"license":"MIT","_id":"smplr@0.18.1","maintainers":[{"name":"danigb","email":"danigb@gmail.com"}],"homepage":"https://github.com/danigb/smplr#readme","bugs":{"url":"https://github.com/danigb/smplr/issues"},"dist":{"shasum":"de5c33dde815e8f70a416df11ac01dd67288adff","tarball":"https://registry.npmjs.org/smplr/-/smplr-0.18.1.tgz","fileCount":8,"integrity":"sha512-y84Ffcy44x6gtlDC5J5wcZJczqWRcyktD7B7XqcnTNZbXg2acMDW15QXWyfCcImhl/TonrIsdf/gS1XsXg1H6g==","signatures":[{"sig":"MEQCIA7rgbnwtdZUSPPQywfeD1gRq4DvA9tC0/5xh4x5dBMKAiAMEqGCesMzcQs2IT0Z38HnZYdFQSOwVuaO1/ACH00V0A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":781376},"jest":{"preset":"ts-jest","testPathIgnorePatterns":["/node_modules/","/site/"]},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","engines":{"node":">=14.0.0"},"scripts":{"test":"npm run test:unit && npm run test:types","build":"tsup src/index.ts  --sourcemap --dts --format esm,cjs","publish":"npm run build && npm run test","test:unit":"jest","test:types":"tsc --noEmit","build:worklet:reverb":"esbuild src/reverb/worklet-processor.ts --bundle --minify > src/reverb/processor.min.js"},"_npmUser":{"name":"danigb","email":"danigb@gmail.com"},"repository":{"url":"git+https://github.com/danigb/smplr.git","type":"git"},"_npmVersion":"11.6.2","description":"A Sampled collection of instruments","directories":{},"_nodeVersion":"24.13.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@10.2.3","devDependencies":{"jest":"^29.4.1","tsup":"^8.0.2","ts-jest":"^29.1.2","typedoc":"^0.28.3","prettier":"^3.2.5","@types/jest":"^29.5.12","@changesets/cli":"^2.25.2","@types/audioworklet":"^0.0.74"},"_npmOperationalInternal":{"tmp":"tmp/smplr_0.18.1_1771864244518_0.07585328778624367","host":"s3://npm-registry-packages-npm-production"}},"0.19.0":{"name":"smplr","version":"0.19.0","keywords":["sampler","web","audio","instrument"],"author":{"name":"danigb"},"license":"MIT","_id":"smplr@0.19.0","maintainers":[{"name":"danigb","email":"danigb@gmail.com"}],"homepage":"https://github.com/danigb/smplr#readme","bugs":{"url":"https://github.com/danigb/smplr/issues"},"dist":{"shasum":"61099feeb554a2418f79ad5c525a92a2e680b249","tarball":"https://registry.npmjs.org/smplr/-/smplr-0.19.0.tgz","fileCount":8,"integrity":"sha512-UWySTDsrgbsgbJKQE7ZfuZuKoSZ4MxrxegzjgvVmFcdUy8HzSeIzmtDTyRhUbXETUaSgPF7+wr4u4TWVqTKHKA==","signatures":[{"sig":"MEUCIQDNzUOXJHd9kcBmC87t5m3hmaqvy2KkXLUp17seUQodJQIgXgP4nwW4YRPsZsvUkwROKqZUKbOENFNMVQDI2VkqW20=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":809757},"jest":{"preset":"ts-jest","testPathIgnorePatterns":["/node_modules/","/site/"]},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","engines":{"node":">=14.0.0"},"scripts":{"test":"npm run test:unit && npm run test:types","build":"tsup src/index.ts  --sourcemap --dts --format esm,cjs","publish":"npm run build && npm run test","test:unit":"jest","test:types":"tsc --noEmit","build:worklet:reverb":"esbuild src/reverb/worklet-processor.ts --bundle --minify > src/reverb/processor.min.js"},"_npmUser":{"name":"danigb","email":"danigb@gmail.com"},"repository":{"url":"git+https://github.com/danigb/smplr.git","type":"git"},"_npmVersion":"11.6.2","description":"A Sampled collection of instruments","directories":{},"_nodeVersion":"24.13.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@10.2.3","devDependencies":{"jest":"^29.4.1","tsup":"^8.0.2","ts-jest":"^29.1.2","typedoc":"^0.28.3","prettier":"^3.2.5","@types/jest":"^29.5.12","@changesets/cli":"^2.25.2","@types/audioworklet":"^0.0.74"},"_npmOperationalInternal":{"tmp":"tmp/smplr_0.19.0_1773078022195_0.2932062190473601","host":"s3://npm-registry-packages-npm-production"}},"0.20.0":{"name":"smplr","version":"0.20.0","keywords":["sampler","web","audio","instrument"],"author":{"name":"danigb"},"license":"MIT","_id":"smplr@0.20.0","maintainers":[{"name":"danigb","email":"danigb@gmail.com"}],"homepage":"https://github.com/danigb/smplr#readme","bugs":{"url":"https://github.com/danigb/smplr/issues"},"dist":{"shasum":"663675374f85252f8741c72e5eb043be87da94ad","tarball":"https://registry.npmjs.org/smplr/-/smplr-0.20.0.tgz","fileCount":8,"integrity":"sha512-XGxPL4ANBP0qzs30y673HYqvAEl/fJq/SKLv1oJpRuoo0VDqUcRGBz5A99PzN7srKT2WYtFU+yl6uqGHz/21zQ==","signatures":[{"sig":"MEUCIAiefA/CmSsVyB2MQ6Pxp5tCq9Jhw+d7vQgX3nTh6JlOAiEA6us2pQwOTxHaBVBaRRDE8bXO2UyR7b3KBz5fEkGXZ70=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":848802},"jest":{"preset":"ts-jest","testPathIgnorePatterns":["/node_modules/","/site/"]},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","engines":{"node":">=14.0.0"},"scripts":{"test":"npm run test:unit && npm run test:types","build":"tsup src/index.ts  --sourcemap --dts --format esm,cjs","publish":"npm run build && npm run test","test:unit":"jest","test:types":"tsc --noEmit","build:worklet:reverb":"esbuild src/reverb/worklet-processor.ts --bundle --minify > src/reverb/processor.min.js"},"_npmUser":{"name":"danigb","email":"danigb@gmail.com"},"repository":{"url":"git+https://github.com/danigb/smplr.git","type":"git"},"_npmVersion":"11.6.2","description":"A Sampled collection of instruments","directories":{},"_nodeVersion":"24.13.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@10.2.3","devDependencies":{"jest":"^29.4.1","tsup":"^8.5.1","ts-jest":"^29.4.6","typedoc":"^0.28.18","prettier":"^3.8.1","@types/jest":"^29.5.12","@changesets/cli":"^2.30.0","@types/audioworklet":"^0.0.74"},"_npmOperationalInternal":{"tmp":"tmp/smplr_0.20.0_1774279841894_0.2999760791501531","host":"s3://npm-registry-packages-npm-production"}},"0.21.0":{"name":"smplr","version":"0.21.0","keywords":["sampler","web","audio","instrument"],"author":{"name":"danigb"},"license":"MIT","_id":"smplr@0.21.0","maintainers":[{"name":"danigb","email":"danigb@gmail.com"}],"homepage":"https://github.com/danigb/smplr#readme","bugs":{"url":"https://github.com/danigb/smplr/issues"},"dist":{"shasum":"913d77636e8c139981380e5f49c7a12dca53f9fe","tarball":"https://registry.npmjs.org/smplr/-/smplr-0.21.0.tgz","fileCount":8,"integrity":"sha512-NPtOT9ssGdK+qpTvOCdIUlfwVDjnLstFKgZIiWC50MRFXCMiLrYe+nbkuLJWa3G9pA7gloAB4EjzwWqiDXlnDw==","signatures":[{"sig":"MEUCIQD8YnncEuiMb6V/ESSawibN9l5MY0XslYr0uurGoA3+6wIgMnuPVu6LR0IjztG7cWLtSGDcjnc1MS+JDk1iXEwaXQo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":835879},"jest":{"preset":"ts-jest","testPathIgnorePatterns":["/node_modules/","/site/"]},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","engines":{"node":">=14.0.0"},"scripts":{"test":"npm run test:unit && npm run test:types","build":"tsup src/index.ts  --sourcemap --dts --format esm,cjs","format":"prettier --write \"src/**/*.{ts,tsx,js,jsx,json,md}\"","publish":"npm run build && npm run test","test:unit":"jest","test:types":"tsc --noEmit","format:check":"prettier --check \"src/**/*.{ts,tsx,js,jsx,json,md}\"","build:worklet:reverb":"esbuild src/reverb/worklet-processor.ts --bundle --minify > src/reverb/processor.min.js"},"_npmUser":{"name":"danigb","email":"danigb@gmail.com"},"repository":{"url":"git+https://github.com/danigb/smplr.git","type":"git"},"_npmVersion":"11.6.2","description":"A Sampled collection of instruments","directories":{},"_nodeVersion":"24.13.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@10.2.3","devDependencies":{"jest":"^29.4.1","tsup":"^8.5.1","ts-jest":"^29.4.6","typedoc":"^0.28.18","prettier":"^3.8.1","@types/jest":"^29.5.12","@changesets/cli":"^2.30.0","@types/audioworklet":"^0.0.74"},"_npmOperationalInternal":{"tmp":"tmp/smplr_0.21.0_1778956500077_0.7156150508725707","host":"s3://npm-registry-packages-npm-production"}},"0.22.0":{"name":"smplr","version":"0.22.0","keywords":["sampler","web","audio","instrument"],"author":{"name":"danigb"},"license":"MIT","_id":"smplr@0.22.0","maintainers":[{"name":"danigb","email":"danigb@gmail.com"}],"homepage":"https://github.com/danigb/smplr#readme","bugs":{"url":"https://github.com/danigb/smplr/issues"},"dist":{"shasum":"85f9be26ef1e6e383525fa0600ffe768b66d1351","tarball":"https://registry.npmjs.org/smplr/-/smplr-0.22.0.tgz","fileCount":8,"integrity":"sha512-NEhxv7lnzThnyG0ayYJppYAta7RjiJyv85qZ1pJYihWb0uTRMRRE7Bc+8Dt8rKm2ik1XklByWQMQH7xrWmqzHA==","signatures":[{"sig":"MEUCIGaxVsXDnq9rof1hAzvpsOUdcxVN6QqWapIzzgfiAasSAiEAtTSAqWYRNKNGDn8XHljOEJY9EKWPdafiqqwTv2GcTCg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":851319},"jest":{"preset":"ts-jest","testPathIgnorePatterns":["/node_modules/","/site/"]},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","engines":{"node":">=14.0.0"},"scripts":{"test":"npm run test:unit && npm run test:types","build":"tsup src/index.ts  --sourcemap --dts --format esm,cjs","format":"prettier --write \"src/**/*.{ts,tsx,js,jsx,json,md}\"","publish":"npm run build && npm run test","test:unit":"jest","test:types":"tsc --noEmit","format:check":"prettier --check \"src/**/*.{ts,tsx,js,jsx,json,md}\"","build:worklet:reverb":"esbuild src/reverb/worklet-processor.ts --bundle --minify > src/reverb/processor.min.js"},"_npmUser":{"name":"danigb","email":"danigb@gmail.com"},"repository":{"url":"git+https://github.com/danigb/smplr.git","type":"git"},"_npmVersion":"11.6.2","description":"A Sampled collection of instruments","directories":{},"_nodeVersion":"24.13.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@10.2.3","devDependencies":{"jest":"^30.4.2","tsup":"^8.5.1","ts-jest":"^29.4.9","typedoc":"^0.28.19","prettier":"^3.8.3","@types/jest":"^30.0.0","@changesets/cli":"^2.31.0","@types/audioworklet":"^0.0.100"},"_npmOperationalInternal":{"tmp":"tmp/smplr_0.22.0_1779039215685_0.4240627026230199","host":"s3://npm-registry-packages-npm-production"}},"0.23.0":{"name":"smplr","version":"0.23.0","keywords":["sampler","web","audio","instrument"],"author":{"name":"danigb"},"license":"MIT","_id":"smplr@0.23.0","maintainers":[{"name":"danigb","email":"danigb@gmail.com"}],"homepage":"https://github.com/danigb/smplr#readme","bugs":{"url":"https://github.com/danigb/smplr/issues"},"dist":{"shasum":"b6fc2ea1662ae1292b096999752b67a908fb1aed","tarball":"https://registry.npmjs.org/smplr/-/smplr-0.23.0.tgz","fileCount":8,"integrity":"sha512-rlribc2vfUX0E98TIwiBZ4CFwjnuMQF6O3BhESD8CZjc8RJsAq/Nh+cPU/I1qIsnIorFCncDJ6j11c/FVlx7wA==","signatures":[{"sig":"MEQCICcp/BQFFsQ5cYXj5HUSX50YmwzQ0s/XEDMNRIowF1CEAiALZ6zTp3+bpkeHSCW86GllrycY6VuAxeB+J8KNxJ+hew==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":860973},"jest":{"preset":"ts-jest","testPathIgnorePatterns":["/node_modules/","/site/"]},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","engines":{"node":">=14.0.0"},"scripts":{"test":"npm run test:unit && npm run test:types","build":"tsup src/index.ts  --sourcemap --dts --format esm,cjs","format":"prettier --write \"src/**/*.{ts,tsx,js,jsx,json,md}\"","publish":"npm run build && npm run test","test:unit":"jest","test:types":"tsc --noEmit","format:check":"prettier --check \"src/**/*.{ts,tsx,js,jsx,json,md}\"","build:worklet:reverb":"esbuild src/reverb/worklet-processor.ts --bundle --minify > src/reverb/processor.min.js"},"_npmUser":{"name":"danigb","email":"danigb@gmail.com"},"repository":{"url":"git+https://github.com/danigb/smplr.git","type":"git"},"_npmVersion":"11.6.2","description":"A Sampled collection of instruments","directories":{},"_nodeVersion":"24.13.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@10.2.3","devDependencies":{"jest":"^30.4.2","tsup":"^8.5.1","ts-jest":"^29.4.9","typedoc":"^0.28.19","prettier":"^3.8.3","@types/jest":"^30.0.0","@changesets/cli":"^2.31.0","@types/audioworklet":"^0.0.100"},"_npmOperationalInternal":{"tmp":"tmp/smplr_0.23.0_1779049549457_0.9946555164187867","host":"s3://npm-registry-packages-npm-production"}},"0.24.0":{"name":"smplr","version":"0.24.0","keywords":["sampler","web","audio","instrument"],"author":{"name":"danigb"},"license":"MIT","_id":"smplr@0.24.0","maintainers":[{"name":"danigb","email":"danigb@gmail.com"}],"homepage":"https://github.com/danigb/smplr#readme","bugs":{"url":"https://github.com/danigb/smplr/issues"},"dist":{"shasum":"f4bcaed6aa4d87f8569b8614f563919f7261e305","tarball":"https://registry.npmjs.org/smplr/-/smplr-0.24.0.tgz","fileCount":8,"integrity":"sha512-71N10DY9/GLOTKI8AEg3hd2u3DruAityU2HP3TEru7+sN7P6nmPXR5hNToEvKEySmMcIauvQwnCYtiNtJbP5ng==","signatures":[{"sig":"MEYCIQCpAFVB1NpyJx+CnZws6FUBZFm1KS4bEDmZlq05MZ8oTgIhAPMZzSA46RIJM155SMIXuyRKV6jp8IX8b1UXUinYiysA","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":942209},"jest":{"preset":"ts-jest","testPathIgnorePatterns":["/node_modules/","/site/"]},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","engines":{"node":">=14.0.0"},"scripts":{"test":"npm run test:unit && npm run test:types","build":"tsup src/index.ts  --sourcemap --dts --format esm,cjs","format":"prettier --write \"src/**/*.{ts,tsx,js,jsx,json,md}\"","publish":"npm run build && npm run test","test:unit":"jest","test:types":"tsc --noEmit","format:check":"prettier --check \"src/**/*.{ts,tsx,js,jsx,json,md}\"","build:worklet:reverb":"esbuild src/reverb/worklet-processor.ts --bundle --minify > src/reverb/processor.min.js"},"_npmUser":{"name":"danigb","email":"danigb@gmail.com"},"repository":{"url":"git+https://github.com/danigb/smplr.git","type":"git"},"_npmVersion":"11.6.2","description":"A Sampled collection of instruments","directories":{},"_nodeVersion":"24.13.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@10.2.3","devDependencies":{"jest":"^30.4.2","tsup":"^8.5.1","ts-jest":"^29.4.9","typedoc":"^0.28.19","prettier":"^3.8.3","@types/jest":"^30.0.0","@changesets/cli":"^2.31.0","@types/audioworklet":"^0.0.100"},"_npmOperationalInternal":{"tmp":"tmp/smplr_0.24.0_1779103349841_0.4872737483551661","host":"s3://npm-registry-packages-npm-production"}},"0.25.0":{"name":"smplr","version":"0.25.0","keywords":["sampler","web","audio","instrument"],"author":{"name":"danigb"},"license":"MIT","_id":"smplr@0.25.0","maintainers":[{"name":"danigb","email":"danigb@gmail.com"}],"homepage":"https://github.com/danigb/smplr#readme","bugs":{"url":"https://github.com/danigb/smplr/issues"},"dist":{"shasum":"d8fc143e4da3efd18349809483e397a07986ea9c","tarball":"https://registry.npmjs.org/smplr/-/smplr-0.25.0.tgz","fileCount":8,"integrity":"sha512-QnuZhJPaUSEtMWDhqSf/YrIGQ6fWz/8oFx1399+B1phze8wccbCI8a9C8aBirOoeywfXor3MEKsWthLzW5TrzQ==","signatures":[{"sig":"MEYCIQDnzcqlMZmujAThZnKioMP1xTc+PSGOZ6i+s17KSWsgXgIhAO2JBixw4d9EDYQSnn3ggN2IVsNd91ZrFkHvXCFH7E+l","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1024048},"jest":{"preset":"ts-jest","testPathIgnorePatterns":["/node_modules/","/site/"]},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","engines":{"node":">=14.0.0"},"scripts":{"test":"npm run test:unit && npm run test:types","build":"tsup src/index.ts  --sourcemap --dts --format esm,cjs","format":"prettier --write \"src/**/*.{ts,tsx,js,jsx,json,md}\"","publish":"npm run build && npm run test","test:unit":"jest","test:types":"tsc --noEmit","format:check":"prettier --check \"src/**/*.{ts,tsx,js,jsx,json,md}\"","build:worklet:reverb":"esbuild src/reverb/worklet-processor.ts --bundle --minify > src/reverb/processor.min.js"},"_npmUser":{"name":"danigb","email":"danigb@gmail.com"},"repository":{"url":"git+https://github.com/danigb/smplr.git","type":"git"},"_npmVersion":"11.6.2","description":"A Sampled collection of instruments","directories":{},"_nodeVersion":"24.13.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@10.2.3","devDependencies":{"jest":"^30.4.2","tsup":"^8.5.1","ts-jest":"^29.4.9","typedoc":"^0.28.19","prettier":"^3.8.3","@types/jest":"^30.0.0","@changesets/cli":"^2.31.0","@types/audioworklet":"^0.0.100"},"_npmOperationalInternal":{"tmp":"tmp/smplr_0.25.0_1779118977949_0.47755322818613655","host":"s3://npm-registry-packages-npm-production"}},"0.26.0":{"name":"smplr","version":"0.26.0","keywords":["sampler","web","audio","instrument"],"author":{"name":"danigb"},"license":"MIT","_id":"smplr@0.26.0","maintainers":[{"name":"danigb","email":"danigb@gmail.com"}],"homepage":"https://github.com/danigb/smplr#readme","bugs":{"url":"https://github.com/danigb/smplr/issues"},"dist":{"shasum":"3b59d82dd84c059d4081d91d84b739c5de9f0024","tarball":"https://registry.npmjs.org/smplr/-/smplr-0.26.0.tgz","fileCount":8,"integrity":"sha512-01OLo4+RzHvE52aGx1Gh1uEbarIiLWYOQU+t+nYm3iUT4sADTv+M3SbClo4sjE2Q8Im/eKpxWKZRBD8RR8tAEw==","signatures":[{"sig":"MEUCIAfzpZReEn8m/wbRMxQKLH18p4qR7gortu2VHoLDqZLSAiEAmnsQvRqodeEE9Sd8vqlUub07HixywJeDdJ/UIfb1lsM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1028980},"jest":{"preset":"ts-jest","testPathIgnorePatterns":["/node_modules/","/site/"]},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","engines":{"node":">=14.0.0"},"scripts":{"test":"npm run test:unit && npm run test:types","build":"tsup src/index.ts  --sourcemap --dts --format esm,cjs","format":"prettier --write \"src/**/*.{ts,tsx,js,jsx,json,md}\"","publish":"npm run build && npm run test","test:unit":"jest","test:types":"tsc --noEmit","format:check":"prettier --check \"src/**/*.{ts,tsx,js,jsx,json,md}\"","build:worklet:reverb":"esbuild src/reverb/worklet-processor.ts --bundle --minify > src/reverb/processor.min.js"},"_npmUser":{"name":"danigb","email":"danigb@gmail.com"},"repository":{"url":"git+https://github.com/danigb/smplr.git","type":"git"},"_npmVersion":"11.6.2","description":"A Sampled collection of instruments","directories":{},"_nodeVersion":"24.13.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@10.2.3","devDependencies":{"jest":"^30.4.2","tsup":"^8.5.1","ts-jest":"^29.4.9","typedoc":"^0.28.19","prettier":"^3.8.3","@types/jest":"^30.0.0","@changesets/cli":"^2.31.0","@types/audioworklet":"^0.0.100"},"_npmOperationalInternal":{"tmp":"tmp/smplr_0.26.0_1779122331161_0.15211902350001072","host":"s3://npm-registry-packages-npm-production"}},"1.0.0":{"name":"smplr","version":"1.0.0","homepage":"https://github.com/danigb/smplr#readme","description":"A Sampled collection of instruments","main":"dist/index.js","module":"dist/index.mjs","types":"dist/index.d.ts","repository":{"type":"git","url":"git+https://github.com/danigb/smplr.git"},"keywords":["sampler","web","audio","instrument"],"author":{"name":"danigb"},"license":"MIT","bugs":{"url":"https://github.com/danigb/smplr/issues"},"devDependencies":{"@changesets/cli":"^2.31.0","@types/audioworklet":"^0.0.100","@types/jest":"^30.0.0","jest":"^30.4.2","prettier":"^3.8.4","ts-jest":"^29.4.11","tsup":"^8.5.1","typedoc":"^0.28.19","typescript":"^5.6.3"},"overrides":{"esbuild":"^0.28.1"},"publishConfig":{"access":"public"},"scripts":{"build":"tsup src/index.ts  --sourcemap --dts --format esm,cjs","build:worklet:reverb":"esbuild src/reverb/worklet-processor.ts --bundle --minify > src/reverb/processor.min.js","test":"npm run test:unit && npm run test:types","test:unit":"jest","test:types":"tsc --noEmit","lint":"node scripts/check-deprecations.js","format":"prettier --write \"src/**/*.{ts,tsx,js,jsx,json,md}\"","format:check":"prettier --check \"src/**/*.{ts,tsx,js,jsx,json,md}\"","publish":"npm run build && npm run test"},"engines":{"node":">=14.0.0"},"jest":{"preset":"ts-jest","testPathIgnorePatterns":["/node_modules/","/site/"]},"packageManager":"npm@10.2.3","_id":"smplr@1.0.0","_nodeVersion":"24.13.0","_npmVersion":"11.6.2","dist":{"integrity":"sha512-mCggf1Ex9oNOMl3LJNq7qlc3/aotKsH4DRFz0WgB7g7H4P1qUxmENkoqZ8FKj5vFY6CeweGNk7Uz8vOU/exQ7w==","shasum":"bd836bded3a9bf15c0913d686f16983d8520a91a","tarball":"https://registry.npmjs.org/smplr/-/smplr-1.0.0.tgz","fileCount":8,"unpackedSize":1034924,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCyX6AOBhXdijTvAx3ydSMdkOBhD3+6ObbtUDxlRDsxLgIgdMwkNPdpJEpLVM1WQlkSsbUdeT2YjHGxAFE9wBMflb0="}]},"_npmUser":{"name":"danigb","email":"danigb@gmail.com"},"directories":{},"maintainers":[{"name":"danigb","email":"danigb@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/smplr_1.0.0_1781389689023_0.27810338148999225"},"_hasShrinkwrap":false}},"time":{"created":"2015-12-09T23:58:12.055Z","modified":"2026-06-13T22:28:09.310Z","0.1.0":"2015-12-09T23:58:12.055Z","0.3.0":"2023-03-02T01:05:48.682Z","0.4.0":"2023-03-19T11:15:14.400Z","0.4.1":"2023-03-22T17:27:49.004Z","0.4.2":"2023-04-03T06:24:41.033Z","0.4.3":"2023-04-03T06:40:23.098Z","0.5.0":"2023-05-17T17:01:47.467Z","0.5.1":"2023-05-23T19:40:05.011Z","0.6.0":"2023-05-29T20:07:37.498Z","0.6.1":"2023-06-19T14:29:15.604Z","0.7.0":"2023-09-15T14:43:27.770Z","0.8.0":"2023-09-16T19:12:25.285Z","0.8.1":"2023-09-16T21:06:38.273Z","0.10.0":"2023-09-17T18:50:40.627Z","0.10.1":"2023-09-26T19:34:59.734Z","0.10.2":"2023-09-27T08:41:28.253Z","0.10.3":"2023-09-29T18:10:13.000Z","0.11.0":"2023-09-29T21:04:19.136Z","0.11.1":"2023-09-30T21:13:17.762Z","0.11.2":"2023-11-18T15:58:05.766Z","0.11.3":"2023-11-19T15:43:38.153Z","0.12.0":"2023-12-15T16:34:10.084Z","0.12.1":"2023-12-16T08:29:38.820Z","0.12.2":"2024-02-18T12:03:16.363Z","0.12.3":"2024-03-30T08:55:09.664Z","0.13.0":"2024-04-11T15:25:38.196Z","0.13.1":"2024-04-11T15:35:45.515Z","0.13.2":"2024-04-11T15:38:32.926Z","0.13.3":"2024-04-11T15:59:44.370Z","0.13.4":"2024-04-22T05:53:48.038Z","0.14.0":"2024-05-06T06:55:40.033Z","0.15.0":"2024-06-11T18:45:44.613Z","0.15.1":"2024-06-11T18:48:27.812Z","0.16.0":"2024-12-18T08:14:02.924Z","0.16.1":"2024-12-18T08:42:19.178Z","0.16.2":"2025-04-21T07:40:28.416Z","0.16.3":"2025-04-21T07:42:14.690Z","0.16.4":"2026-01-18T18:14:10.722Z","0.17.0":"2026-02-19T17:10:23.580Z","0.17.1":"2026-02-23T12:59:35.238Z","0.18.0":"2026-02-23T15:12:11.057Z","0.18.1":"2026-02-23T16:30:44.743Z","0.19.0":"2026-03-09T17:40:22.379Z","0.20.0":"2026-03-23T15:30:42.189Z","0.21.0":"2026-05-16T18:35:00.278Z","0.22.0":"2026-05-17T17:33:35.833Z","0.23.0":"2026-05-17T20:25:49.618Z","0.24.0":"2026-05-18T11:22:30.004Z","0.25.0":"2026-05-18T15:42:58.184Z","0.26.0":"2026-05-18T16:38:51.351Z","1.0.0":"2026-06-13T22:28:09.196Z"},"bugs":{"url":"https://github.com/danigb/smplr/issues"},"author":{"name":"danigb"},"license":"MIT","homepage":"https://github.com/danigb/smplr#readme","keywords":["sampler","web","audio","instrument"],"repository":{"type":"git","url":"git+https://github.com/danigb/smplr.git"},"description":"A Sampled collection of instruments","maintainers":[{"name":"danigb","email":"danigb@gmail.com"}],"readme":"# [smplr](https://github.com/danigb/smplr)\n\n[![npm version](https://img.shields.io/npm/v/smplr)](https://www.npmjs.com/package/smplr)\n\n> `smplr` is a collection of sampled instruments for Web Audio API ready to be used with no setup required.\n\n## Quick start\n\n**Play a note from a General MIDI soundfont:**\n\n```js\nimport { Soundfont } from \"smplr\";\n\nconst context = new AudioContext();\nconst marimba = Soundfont(context, { instrument: \"marimba\" });\nmarimba.start({ note: 60, velocity: 80 });\n```\n\n**Sequence a beat with a drum machine and a piano on the same clock:**\n\n```js\nimport { Sequencer, SplendidGrandPiano, DrumMachine } from \"smplr\";\n\nconst context = new AudioContext();\nconst piano = SplendidGrandPiano(context);\nconst drums = DrumMachine(context, { instrument: \"TR-808\" });\n\nconst seq = Sequencer(context, { bpm: 110, loop: true });\nseq.addTrack(piano, [\n  { note: \"C4\", at: \"1:1\", duration: \"4n\" },\n  { note: \"E4\", at: \"1:2\", duration: \"4n\" },\n  { note: \"G4\", at: \"1:3\", duration: \"4n\" },\n]);\nseq.addTrack(drums, [\n  { note: \"kick\", at: \"1:1\" },\n  { note: \"snare\", at: \"1:2\" },\n  { note: \"kick\", at: \"1:3\" },\n  { note: \"snare\", at: \"1:4\" },\n]);\nseq.start();\n```\n\n**Render an arpeggio with reverb to a WAV file — offline, no speakers needed:**\n\n```js\nimport { SplendidGrandPiano, Reverb, renderOffline } from \"smplr\";\n\nconst wav = await renderOffline(async (context) => {\n  const piano = SplendidGrandPiano(context);\n  await piano.ready;\n  piano.output.addEffect(\"reverb\", Reverb(context), 0.3);\n  [\"C4\", \"E4\", \"G4\", \"C5\"].forEach((note, i) => {\n    piano.start({ note, time: i * 0.4, duration: 0.4 });\n  });\n});\nwav.downloadWav(\"arpeggio.wav\");\n```\n\nSee demo: https://danigb.github.io/smplr/\n\n#### Library goals\n\n- No setup: specifically, all samples are online, so no need for a server.\n- Easy to use: everything should be intuitive for non-experienced developers\n- Decent sounding: uses high quality open source samples. For better or worse, it is sample based 🤷\n\n## Installation\n\nYou can install the library with a package manager or use it directly by importing from the browser.\n\nSamples are stored at https://github.com/smpldsnds and there is no need to download them. Kudos to all _samplerist_ 🙌\n\n#### Using a package manager\n\nInstall with npm or your favourite package manager:\n\n```\nnpm i smplr\n```\n\n#### Usage from the browser\n\nYou can import directly from the browser. For example:\n\n```html\n<html>\n  <body>\n    <button id=\"btn\">play</button>\n  </body>\n  <script type=\"module\">\n    import { SplendidGrandPiano } from \"https://unpkg.com/smplr/dist/index.mjs\"; // needs to be a url\n    const context = new AudioContext(); // create the audio context\n    const piano = SplendidGrandPiano(context); // create and load the instrument\n\n    document.getElementById(\"btn\").onclick = () => {\n      context.resume(); // enable audio context after a user interaction\n      piano.start({ note: 60, velocity: 80 }); // play the note\n    };\n  </script>\n</html>\n```\n\nThe package needs to be served as a URL from a service like [unpkg](https://unpkg.com) or similar.\n\n## Available instruments\n\n`smplr` ships eleven instruments out of the box. Pick one and jump to its section in the [Instrument reference](#instrument-reference) for setup details.\n\n| Instrument                                  | Description                               | Names helper                 |\n| ------------------------------------------- | ----------------------------------------- | ---------------------------- |\n| [`Sampler`](#sampler)                       | Your own buffers or SFZ-style preset      | —                            |\n| [`Soundfont`](#soundfont)                   | General MIDI soundfonts                   | `getSoundfontNames()`        |\n| [`SplendidGrandPiano`](#splendidgrandpiano) | Sampled Steinway grand, 4 velocity layers | —                            |\n| [`ElectricPiano`](#electric-piano)          | CP80, PianetT, Wurlitzer, TX81Z           | `getElectricPianoNames()`    |\n| [`DrumMachine`](#drum-machines)             | Classic drum machines (TR-808, …)         | `getDrumMachineNames()`      |\n| [`DrumAbuse`](#drumabuse)                   | ~210 machines (Synthabuse collection)     | `getDrumAbuseMachineNames()` |\n| [`Mallet`](#mallets)                        | VCSL mallets                              | `getMalletNames()`           |\n| [`Mellotron`](#mellotron)                   | Mellotron archive samples                 | `getMellotronNames()`        |\n| [`Smolken`](#smolken-double-bass)           | Smolken double bass (Arco/Pizz/Switched)  | `getSmolkenNames()`          |\n| [`Versilian`](#versilian)                   | VCSL multi-instrument (partial support)   | `getVersilianInstruments()`  |\n| [`Soundfont2`](#soundfont2)                 | Reads .sf2 files directly                 | —                            |\n\nEach names helper returns strings to pass as the factory's `instrument` option. `getVersilianInstruments` is async (the catalog is fetched once and cached).\n\nTo build your own instrument, see [Defining your own instrument](#defining-your-own-instrument).\n\n## Using an instrument\n\nThe shared API below applies to every instrument. Instrument-specific options live in the [Instrument reference](#instrument-reference).\n\n### Create and load\n\nEvery smplr instrument is a factory function: call it with an `AudioContext` and an options object to get back an instance.\n\n```js\nimport { SplendidGrandPiano, Soundfont } from \"smplr\";\n\nconst context = new AudioContext();\nconst piano = SplendidGrandPiano(context, { decayTime: 0.5 });\nconst marimba = Soundfont(context, { instrument: \"marimba\" });\n```\n\n#### Wait for audio loading\n\nYou can start playing notes as soon as one sample is loaded. To wait for all of them, await either:\n\n- `piano.ready` — resolves to `void` (preferred for new code).\n\n```js\nconst piano = SplendidGrandPiano(context);\nawait piano.ready;\n```\n\n> Upgrading from older versions? See [MIGRATE.md](./MIGRATE.md).\n\n#### Load progress\n\nTrack how many samples have loaded via the `onLoadProgress` option or the `loadProgress` getter:\n\n```js\nconst piano = SplendidGrandPiano(context, {\n  onLoadProgress: ({ loaded, total }) => {\n    console.log(`${loaded} / ${total} samples loaded`);\n  },\n});\n\n// Or poll at any time:\nconsole.log(piano.loadProgress); // { loaded: 12, total: 48 }\n```\n\n`total` is known before loading starts, so you can display a determinate progress bar.\n\n### Shared configuration options\n\nAll instruments share some configuration options, passed as the second argument to the factory. Every field is optional:\n\n- `volume`: a number from 0 to 127 representing the instrument's global volume. 100 by default.\n- `velocity`: default note velocity (0–127) when not specified per note. 100 by default.\n- `pan`: stereo pan, -1 (full left) to +1 (full right). 0 by default.\n- `destination`: the `AudioNode` the instrument writes to. `AudioContext.destination` by default.\n- `volumeToGain`: a function to map MIDI volume to a linear gain. Uses the MIDI standard curve by default.\n- `storage`: a [storage backend](#caching-samples) used to fetch sample buffers. `HttpStorage` by default.\n- `loader`: a shared `SampleLoader` instance. Pass the same loader to multiple instruments to cache buffers across them (see [Buffer reuse](#buffer-reuse)).\n- `scheduler`: a shared `Scheduler` instance. Construct your own to tune scheduling — for example, `Scheduler(context, { lookaheadMs: 100, intervalMs: 25 })` — or omit to get a per-instrument default.\n- `onLoadProgress`: a function called after each sample buffer is decoded. Receives `{ loaded, total }` where `total` is the full count known before loading starts.\n- `onStart`: called when a note is dispatched to the audio engine. Receives the started note. See ⚠️ note under [Events](#events) on timing precision.\n- `onEnded`: called when each voice's audio node ends. Receives the started note.\n\n### Play notes\n\n#### Start and stop notes\n\nThe `start` function accepts these options:\n\n```js\npiano.start({ note: \"C4\", velocity: 80, time: 5, duration: 1 });\n```\n\n`velocity` (0–127) represents how hard the key is pressed: louder at higher values, and on some instruments it also changes timbre.\n\nThe `start` function returns a `stop` function for the given note:\n\n```js\nconst stopNote = piano.start({ note: 60 });\nstopNote({ time: 10 });\n```\n\nBear in mind that you may need to call [`context.resume()` before playing a note](https://developer.mozilla.org/en-US/docs/Web/API/Web_Audio_API/Best_practices#autoplay_policy)\n\nInstruments have a global `stop` function that can be used to stop all notes:\n\n```js\n// This will stop all notes\npiano.stop();\n```\n\nOr stop the specified one. The argument is a `stopId` — by default the same value you passed as `note`, but you can override it via `start({ note, stopId })`:\n\n```js\npiano.stop(\"C4\"); // stop the note(s) started with `note: \"C4\"`\npiano.stop(60); // stop the note(s) started with `note: 60`\n```\n\n#### Schedule notes\n\nSchedule notes via the `time` and `duration` properties (both in seconds). `time` is measured against `audioContext.currentTime`.\n\nThis plays a C major arpeggio, one note per second:\n\n```js\nconst now = context.currentTime;\n[\"C4\", \"E4\", \"G4\", \"C5\"].forEach((note, i) => {\n  piano.start({ note, time: now + i, duration: 0.5 });\n});\n```\n\n#### Looping\n\nYou can loop a note by using `loop`, `loopStart` and `loopEnd` (positions in seconds):\n\n```js\nconst context = new AudioContext();\nconst sampler = Sampler(context, {\n  buffers: { duh: \"https://example.com/duh-duh-ah.mp3\" },\n});\nsampler.start({\n  note: \"duh\",\n  loop: true,\n  loopStart: 1.0,\n  loopEnd: 9.0,\n});\n```\n\nIf `loop` is true but `loopStart` or `loopEnd` are not specified, 0 and total duration will be used by default, respectively.\n\n### Output\n\n#### Volume\n\nInstrument `output` attribute represents the main output of the instrument. The `output.volume` getter/setter accepts a number where 0 means no volume, and 127 is max volume without amplification:\n\n```js\npiano.output.volume = 80;\npiano.output.volume; // => 80\n```\n\n⚠️ `volume` is global to the instrument, but `velocity` is specific for each note.\n\n#### Pan, detune, and reverse\n\nEvery instrument accepts a `pan` option at construction (`-1` = full left, `+1` = full right):\n\n```js\nconst drums = DrumMachine(context, { instrument: \"TR-808\", pan: -0.5 });\n```\n\nTwo universal setters mutate the playback defaults in place. They apply to notes scheduled **after** the call; in-flight notes are unaffected.\n\n```js\nsampler.setDetune(100); // semitone up (100 cents) for all future notes\nsampler.setReverse(true); // play samples reversed for all future notes\nsampler.setReverse(false); // back to forward playback\n```\n\n#### MIDI CC\n\nSet and read MIDI Control Change values on the instrument:\n\n```js\npiano.setCC(64, 127); // sustain pedal on\npiano.getCC(64); // => 127\npiano.setCC(64, 0); // sustain pedal off\n```\n\nUnset CCs default to `0` (matches MIDI's \"undefined controller defaults to 0\" convention).\n\n### Effects\n\n#### Reverb\n\nA packaged version of the [DattorroReverbNode](https://github.com/khoin/DattorroReverbNode) algorithmic reverb is included.\n\nUse `output.addEffect(name, effect, mix)` to connect an effect using a send bus:\n\n```js\nimport { Reverb, SplendidGrandPiano } from \"smplr\";\nconst reverb = Reverb(context);\nconst piano = SplendidGrandPiano(context, { volume });\npiano.output.addEffect(\"reverb\", reverb, 0.2);\n```\n\nTo change the mix level, use `output.setEffectMix(name, mix)`:\n\n```js\npiano.output.setEffectMix(\"reverb\", 0.5);\n```\n\nSend buses are **post-fader**: they tap the signal after `output.volume` (and after any inserts), so turning `output.volume` down proportionally reduces what reaches the effect. Set `output.volume` to 0 and the send goes silent too.\n\n### Events\n\nTwo events are available: `onStart` and `onEnded`. Both callbacks receive the started note as a parameter, and can be configured globally:\n\n```js\nconst context = new AudioContext();\nconst piano = SplendidGrandPiano(context, {\n  onStart: (note) => {\n    console.log(note.time, context.currentTime);\n  },\n});\n```\n\nor per note basis:\n\n```js\npiano.start({\n  note: \"C4\",\n  duration: 1,\n  onEnded: () => {\n    // will be called after 1 second\n  },\n});\n```\n\nGlobal callbacks will be invoked regardless of whether local events are defined.\n\n⚠️ The invocation time of `onStart` is not exact: it fires slightly before the audio actually starts, by up to the scheduler's lookahead window (200ms by default; configurable via the `scheduler` option — see [Shared configuration options](#shared-configuration-options)).\n\n### Dispose\n\nWhen you're done with an instrument, call `dispose()` to stop all voices, tear down the audio graph, and stop the scheduler. The instance must not be used after this call.\n\n```js\nuseEffect(() => {\n  const piano = SplendidGrandPiano(context);\n  return () => piano.dispose();\n}, []);\n```\n\n### Caching samples\n\nThe default sample sets are hosted on GitHub Pages, which rate-limits requests per second. That can be a problem, especially in a development environment with hot reload (most React frameworks).\n\nTo cache samples in the browser, use a `CacheStorage` object:\n\n```ts\nimport { SplendidGrandPiano, CacheStorage } from \"smplr\";\n\nconst context = new AudioContext();\nconst storage = CacheStorage();\n// First time the instrument loads, will fetch the samples from http. Subsequent times from cache.\nconst piano = SplendidGrandPiano(context, { storage });\n```\n\n⚠️ `CacheStorage` is based on the [Cache API](https://developer.mozilla.org/en-US/docs/Web/API/Cache) and only works in secure environments that run over `https`. Check your framework's documentation for local-HTTPS setup — for example [next-dev-https](https://www.npmjs.com/package/next-dev-https) for Next.js or [vite-plugin-mkcert](https://github.com/liuweiGL/vite-plugin-mkcert) for Vite.\n\n### Using with standardized-audio-context\n\nThis package should be compatible with [standardized-audio-context](https://github.com/chrisguttandin/standardized-audio-context):\n\n```js\nimport { AudioContext } from \"standardized-audio-context\";\n\nconst context = new AudioContext();\nconst piano = SplendidGrandPiano(context);\n```\n\nHowever, if you are using Typescript, you might need to \"force cast\" the types:\n\n```ts\nimport { Soundfont } from \"smplr\";\nimport { AudioContext as StandardizedAudioContext } from \"standardized-audio-context\";\n\nconst context = new StandardizedAudioContext() as unknown as AudioContext;\nconst marimba = Soundfont(context, { instrument: \"marimba\" });\n```\n\nIf you use `Reverb` (or anything else that needs `AudioWorkletNode`), force the `standardized-audio-context` version:\n\n```ts\nimport {\n  AudioWorkletNode,\n  IAudioContext,\n  AudioContext as StandardizedAudioContext,\n} from \"standardized-audio-context\";\n\nwindow.AudioWorkletNode = AudioWorkletNode as any;\nconst context = new StandardizedAudioContext() as unknown as AudioContext;\n\n// ... rest of the code\n```\n\nSee [standardized-audio-context issue #897](https://github.com/chrisguttandin/standardized-audio-context/issues/897) for background on why the cast is required.\n\n## Sequencer\n\n`Sequencer` schedules notes from one or more tracks against any smplr instrument with sample-accurate timing.\n\n```js\nimport { Sequencer, SplendidGrandPiano, DrumMachine } from \"smplr\";\n\nconst context = new AudioContext();\nconst piano = SplendidGrandPiano(context);\nconst drums = DrumMachine(context, { instrument: \"TR-808\" });\n\nconst seq = Sequencer(context, { bpm: 120, loop: true });\n\nseq.addTrack(piano, [\n  { note: \"C4\", at: \"1:1\", duration: \"4n\" },\n  { note: \"E4\", at: \"1:2\", duration: \"4n\" },\n  { note: \"G4\", at: \"1:3\", duration: \"4n\" },\n  { note: \"C5\", at: \"1:4\", duration: \"2n\" },\n]);\n\nseq.addTrack(drums, [\n  { note: \"kick\", at: \"1:1\" },\n  { note: \"snare\", at: \"1:2\" },\n  { note: \"kick\", at: \"1:3\" },\n  { note: \"snare\", at: \"1:4\" },\n]);\n\nseq.loopEnd = \"2:1\"; // 1 bar\nseq.start();\n```\n\n#### Time notation\n\nNote positions and durations accept several formats:\n\n| Format     | Meaning                        |\n| ---------- | ------------------------------ |\n| `\"4n\"`     | quarter note                   |\n| `\"8n\"`     | eighth note                    |\n| `\"4n.\"`    | dotted quarter (1.5×)          |\n| `\"1m\"`     | one measure                    |\n| `\"2:1\"`    | bar 2, beat 1 (1-indexed)      |\n| `\"2:3:48\"` | bar 2, beat 3, +48 ticks       |\n| `96`       | raw ticks (number passthrough) |\n\n#### Constructor options\n\n```js\nconst seq = Sequencer(context, {\n  bpm: 120, // default 120\n  ppq: 480, // pulses per quarter note, default 480\n  timeSignature: 4, // accepts `4` (→ 4/4) or `{ numerator, denominator }`\n  loop: false, // default false\n  loopStart: 0, // loop start position (ticks or string)\n  loopEnd: \"2:1\", // loop end position; defaults to end of longest track\n  lookaheadMs: 200, // scheduling lookahead, default 200\n  intervalMs: 50, // flush interval, default 50\n  humanize: { timingMs: 10, velocity: 8 }, // optional randomisation\n  stepSize: \"16n\", // optional: emit \"step\" events at this interval\n});\n```\n\n`timeSignature` accepts a plain number (interpreted as `{ numerator: n, denominator: 4 }`) or a full object such as `{ numerator: 7, denominator: 8 }` for 7/8 time. The `seq.timeSignature` getter always returns the `{ numerator, denominator }` form.\n\n#### Tracks\n\n```js\nseq.addTrack(piano, notes); // append a track\nseq.addTrack(drums, notes, { id: \"drums\", volume: 0.8 }); // with options\nseq.removeTrack(piano); // remove by instrument reference\nseq.clearTracks(); // remove every track\n```\n\n`addTrack`'s third argument accepts:\n\n| Field      | Type                                       | Description                                                          |\n| ---------- | ------------------------------------------ | -------------------------------------------------------------------- |\n| `id`       | `string`                                   | Stable id for `setTrackVolume` / `muteTrack` / `soloTrack`.          |\n| `humanize` | `{ timingMs?: number; velocity?: number }` | Per-track humanize. Overrides the sequencer-level setting when set.  |\n| `volume`   | `number`                                   | Multiplicative velocity scalar (default 1). `0.5` halves velocities. |\n| `muted`    | `boolean`                                  | When true, this track does not dispatch notes.                       |\n| `solo`     | `boolean`                                  | When true, only soloed tracks play.                                  |\n\nAfter `setPatterns` is called (see [Pattern chain](#pattern-chain-song-mode)), `addTrack` / `removeTrack` / `clearTracks` throw — the chain is owned by the patterns array.\n\n#### Track mixer\n\n```js\nseq.setTrackVolume(\"drums\", 0.6);\nseq.muteTrack(\"drums\");\nseq.unmuteTrack(\"drums\");\nseq.soloTrack(\"lead\");\nseq.unsoloTrack(\"lead\");\n```\n\nMixer methods operate on the **currently-playing pattern** (so per-pattern mute/solo state is automatic when using a pattern chain). Calls with an unknown id are no-ops.\n\n#### Playback\n\n```js\nseq.start(); // start from beginning (or resume from pause if no offset given)\nseq.pause(); // freeze position\nseq.stop(); // stop and reset to 0\nseq.togglePlayPause(); // pause if playing, start/resume otherwise\n\nseq.state; // \"stopped\" | \"playing\" | \"paused\"\n```\n\nIndividual sequenced notes can be stopped by their id:\n\n```js\nseq.stopNote(\"intro-c\"); // stop immediately\nseq.stopNote(\"intro-c\", time); // stop at a scheduled time\n```\n\n#### Tempo and position\n\n```js\nseq.bpm = 140; // change BPM live, no glitch\nseq.timeSignature = 3; // 3/4 (number → { numerator: 3, denominator: 4 })\nseq.timeSignature = { numerator: 7, denominator: 8 }; // 7/8\n\nseq.timeSignature; // → { numerator: 7, denominator: 8 }\n\nseq.position; // current position as \"bar:beat:tick\" string\nseq.position = \"3:1\"; // seek while playing or stopped\n```\n\nThe `\"beat\"` event fires once per denominator-defined note: 4/4 → 4 beats per bar, 6/8 → 6 beats per bar, etc.\n\n#### Loop\n\n```js\nseq.loop = true;\nseq.loopStart = \"1:1\"; // ticks or string notation\nseq.loopEnd = \"3:1\"; // ticks or string notation\n\nseq.progress; // 0..1 within the loop range\n```\n\n#### Pattern API\n\n`scheduleRepeat` fires a callback at a regular musical interval, passing the exact AudioContext time:\n\n```js\nconst cancel = seq.scheduleRepeat((time) => {\n  piano.start({ note: \"C4\", time, duration: 0.1 });\n}, \"8n\"); // every eighth note\n\ncancel(); // stop repeating\n```\n\nAn optional third argument sets the start position:\n\n```js\nseq.scheduleRepeat(callback, \"4n\", \"2:1\"); // start at bar 2\n```\n\n#### Events\n\n```js\nseq.on(\"statechange\", (state) => {\n  // state: \"playing\" | \"paused\" | \"stopped\"\n  setSeqState(state);\n});\n\nseq.on(\"beat\", (beat, time) => {\n  const delay = (time - context.currentTime) * 1000;\n  setTimeout(() => metronome.flash(), delay);\n});\n\nseq.on(\"bar\", (bar, time) => {\n  ui.updateBar(bar);\n});\nseq.on(\"step\", (stepIndex, time) => {\n  ui.flashStep(stepIndex); // only fires when `stepSize` is set in options\n});\nseq.on(\"loop\", () => {\n  console.log(\"looped\");\n});\nseq.on(\"end\", () => {\n  console.log(\"done\");\n});\nseq.on(\"patternChange\", (patternIndex, time) => {\n  ui.highlightPattern(patternIndex); // fires when the chain advances\n});\nseq.on(\"start\", () => {});\nseq.on(\"stop\", () => {});\nseq.on(\"pause\", () => {});\n\nseq.off(\"beat\", handler); // remove a listener\n```\n\nThe `\"step\"` event only fires when the sequencer was constructed with `stepSize` (e.g. `\"16n\"`).\nThe `\"patternChange\"` event only fires when more than one pattern is in the chain.\n\n#### Note events\n\n`noteOn` and `noteOff` events fire when the instrument's `onStart` / `onEnded` callbacks are called, so they are driven by the actual audio playback — not by the scheduling lookahead.\n\n```js\nseq.on(\"noteOn\", (event) => {\n  console.log(event.noteId, event.trackIndex, event.noteIndex);\n  highlight(event.noteId);\n});\nseq.on(\"noteOff\", (event) => {\n  unhighlight(event.noteId);\n});\n```\n\nThe `event` object (`NoteEvent`) contains:\n\n| Field        | Type               | Description                                            |\n| ------------ | ------------------ | ------------------------------------------------------ |\n| `noteId`     | `string \\| number` | The note's `id` if provided, otherwise its array index |\n| `trackIndex` | `number`           | Index of the track in the order it was added           |\n| `noteIndex`  | `number`           | Index of the note within its track's notes array       |\n| `note`       | `SequencerNote`    | The original note object                               |\n\nYou can set a custom `id` on any `SequencerNote` to use as `noteId`:\n\n```js\nseq.addTrack(piano, [\n  { id: \"intro-c\", note: \"C4\", at: \"1:1\", duration: \"4n\" },\n  { id: \"intro-e\", note: \"E4\", at: \"1:2\", duration: \"4n\" },\n]);\n```\n\n#### Humanize\n\nAdd subtle randomisation to timing and velocity for a more natural feel:\n\n```js\nconst seq = Sequencer(context, {\n  bpm: 90,\n  humanize: { timingMs: 12, velocity: 8 },\n});\n```\n\n- `timingMs`: maximum random offset in milliseconds (±). Default 0.\n- `velocity`: maximum random offset in MIDI velocity units (±). Default 0.\n\nPer-track humanize (passed to `addTrack`) overrides the global setting:\n\n```js\nseq.addTrack(piano, notes, { humanize: { timingMs: 0, velocity: 0 } });\n```\n\n#### SequencerNote fields\n\n| Field                  | Type                | Description                                                                   |\n| ---------------------- | ------------------- | ----------------------------------------------------------------------------- |\n| `note`                 | `string \\| number`  | Note name or MIDI number.                                                     |\n| `at`                   | `string \\| number`  | Musical position (ticks or `\"bar:beat[.frac][:ticks]\"` / `\"4n\"` / `\"1m\"`).    |\n| `duration`             | `string \\| number?` | Duration; omit for a one-shot trigger.                                        |\n| `velocity`             | `number?`           | Velocity 0–127. Default 100.                                                  |\n| `id`                   | `string \\| number?` | Used as `noteId` in `noteOn` / `noteOff` events. Default: array index.        |\n| `chance`               | `number?`           | Probability 0–100 that this note fires on each pass. Re-rolled on every loop. |\n| `ratchet`              | `number?`           | Expand into N sub-notes over `duration` (requires `duration`).                |\n| `ratchetVelocityDecay` | `number?`           | Per-step velocity decay; each sub-note scaled by `(1 - decay)^i`.             |\n\nExample:\n\n```js\nseq.addTrack(drums, [\n  {\n    note: \"hat\",\n    at: \"1:4\",\n    duration: \"8n\",\n    ratchet: 4,\n    ratchetVelocityDecay: 0.2,\n  },\n  { note: \"snare\", at: \"1:2\", chance: 50 }, // fires 50% of the time\n]);\n```\n\nWhen `ratchet > 1`, each sub-note's `noteId` is suffixed with `#0`, `#1`, etc., so you can stop an individual sub-voice via `seq.stopNote(\"id#0\")`.\n\n#### Pattern chain (song mode)\n\nFor multi-pattern arrangements (intro → verse → chorus), use `setPatterns`:\n\n```js\nseq.setPatterns([\n  { tracks: [{ instrument: drums, notes: introNotes }], loopEnd: \"1m\" },\n  { tracks: [{ instrument: drums, notes: verseNotes }], loopEnd: \"2m\" },\n  { tracks: [{ instrument: drums, notes: chorusNotes }], loopEnd: \"2m\" },\n]);\n\nseq.chainOrder = [0, 1, 2, 1, 2]; // intro, verse, chorus, verse, chorus\nseq.loop = true; // loop the whole chain\nseq.start();\n\nseq.on(\"patternChange\", (idx) => ui.highlightPattern(idx));\n```\n\n- Each pattern's `tracks` entries accept the same `AddTrackOptions` (`id`, `humanize`, `volume`, `muted`, `solo`) as `addTrack`.\n- `loopEnd` is per-pattern and defaults to the longest track in that pattern.\n- `chainOrder` defaults to `[0, 1, …, n-1]`. Setting it lets you repeat or reorder patterns without duplicating data.\n- With `loop: false` the chain plays once and emits `\"end\"`; with `loop: true` it cycles indefinitely and emits `\"loop\"` each time it wraps.\n- Track mixer methods (`muteTrack`, `setTrackVolume`, etc.) operate on the currently-playing pattern — `muteTrack(\"lead\")` only affects the pattern that owns the `\"lead\"` track.\n\n---\n\n## Offline rendering\n\nRender audio offline (faster than real-time) and export it as a WAV file. Uses `OfflineAudioContext` under the hood.\n\n```js\nimport { renderOffline } from \"smplr\";\n\nconst result = await renderOffline(async (context) => {\n  const piano = SplendidGrandPiano(context);\n  await piano.ready;\n  piano.start({ note: \"C4\", time: 0, duration: 1 });\n  piano.start({ note: \"E4\", time: 0.5, duration: 1 });\n});\n\nresult.downloadWav(\"export.wav\");\n```\n\n#### Options\n\n```js\nconst result = await renderOffline(callback, {\n  duration: 10, // Total duration in seconds (auto-detected if omitted)\n  sampleRate: 48000, // Sample rate (default: 48000)\n  channels: 2, // Number of channels (default: 2)\n});\n```\n\nWhen `duration` is omitted, a 60-second buffer is used and trailing silence is automatically trimmed. Pass an explicit `duration` for longer renders or to preserve trailing silence.\n\n#### RenderResult\n\n`renderOffline` returns a `RenderResult` object:\n\n- `result.audioBuffer` — the raw `AudioBuffer`\n- `result.toWav()` — encode as 32-bit float WAV `Blob` (lossless)\n- `result.toWav16()` — encode as 16-bit integer WAV `Blob` (smaller file)\n- `result.downloadWav(filename?)` — download as 32-bit WAV\n- `result.downloadWav16(filename?)` — download as 16-bit WAV\n- `result.duration` — actual duration in seconds\n- `result.sampleRate` — sample rate used\n\nWAV encoding is lazy — it only happens when you call `toWav()` or `toWav16()`.\n\n#### Buffer reuse\n\nIf you already have an instrument loaded, pass the same `SampleLoader` to avoid re-fetching samples:\n\n```js\nimport { SplendidGrandPiano, SampleLoader, renderOffline } from \"smplr\";\n\nconst loader = SampleLoader(audioContext);\nconst piano = SplendidGrandPiano(audioContext, { loader });\nawait piano.ready;\n\n// Offline render reuses cached buffers — no re-fetch\nconst result = await renderOffline(async (context) => {\n  const offlinePiano = SplendidGrandPiano(context, { loader });\n  await offlinePiano.ready;\n  offlinePiano.start({ note: \"C4\", time: 0, duration: 1 });\n});\n```\n\n#### Bug reports\n\nUse offline rendering to generate reproducible audio files for issue reports. No install needed — just open your browser's DevTools console on any page and paste:\n\n```js\nconst { renderOffline, SplendidGrandPiano } =\n  await import(\"https://esm.sh/smplr\");\n\nconst result = await renderOffline(async (context) => {\n  const piano = SplendidGrandPiano(context);\n  await piano.ready;\n  piano.start({ note: \"C4\", time: 0, duration: 2 });\n});\nresult.downloadWav16(\"bug-report.wav\");\n```\n\nThis will download a WAV file you can attach to your issue or pull request.\n\n---\n\n## Instrument reference\n\nDetailed configuration for each bundled instrument. For the shared API (load, play, output, effects, events), see [Using an instrument](#using-an-instrument).\n\n### Sampler\n\nAn audio buffer sampler. Pass a `buffers` map of name → URL:\n\n#### Buffers mode\n\n```js\nimport { Sampler } from \"smplr\";\n\nconst buffers = {\n  kick: \"https://smpldsnds.github.io/drum-machines/808-mini/kick.m4a\",\n  snare: \"https://smpldsnds.github.io/drum-machines/808-mini/snare-1.m4a\",\n};\nconst sampler = Sampler(new AudioContext(), { buffers });\n```\n\nAnd then use the name of the buffer as note name:\n\n```js\nsampler.start({ note: \"kick\" });\n```\n\n#### Preset mode\n\nFor advanced use cases (per-region pitch/velocity/round-robin, SFZ-like multi-sample instruments, runtime swaps), pass a `SmplrPreset` directly:\n\n```ts\nimport { Sampler, type SmplrPreset } from \"smplr\";\n\nconst kitA: SmplrPreset = {\n  samples: { baseUrl: \"https://cdn.example.com/\", formats: [\"ogg\"] },\n  groups: [\n    {\n      regions: [\n        { sample: \"kick\", keyRange: [60, 60], pitch: 60 },\n        { sample: \"snare\", keyRange: [62, 62], pitch: 62 },\n      ],\n    },\n  ],\n};\n\nconst sampler = Sampler(new AudioContext(), { preset: kitA });\nawait sampler.ready;\nsampler.start({ note: 60 });\n\n// Swap content at runtime\nawait sampler.reload(kitB);\n```\n\nThe full `SmplrPreset` schema is documented in [PRESET_SCHEMA.md](./PRESET_SCHEMA.md). Note: `buffers` and `preset` are mutually exclusive on construction — pass exactly one.\n\n`sampler.reload(input)` accepts either shape (flat buffers record or full `SmplrPreset`), regardless of which mode was used at construction.\n\n### Soundfont\n\nA Soundfont player. By default it loads audio from Benjamin Gleitzman's package of\n[pre-rendered sound fonts](https://github.com/gleitz/midi-js-soundfonts).\n\n```js\nimport { Soundfont, getSoundfontNames, getSoundfontKits } from \"smplr\";\n\nconst marimba = Soundfont(new AudioContext(), { instrument: \"marimba\" });\nmarimba.start({ note: \"C4\" });\n```\n\nIt's intended to be a modern replacement of [soundfont-player](https://github.com/danigb/soundfont-player)\n\n#### Soundfont instruments and kits\n\nUse `getSoundfontNames` to get all available instrument names and `getSoundfontKits` to get kit names.\n\nThere are two kits available: `MusyngKite` or `FluidR3_GM`. The first one is used by default: it sounds better but the samples are heavier.\n\n```js\nconst marimba = Soundfont(context, {\n  instrument: \"clavinet\",\n  kit: \"FluidR3_GM\", // \"MusyngKite\" is used by default if not specified\n});\n```\n\nAlternatively, you can pass your custom url as the instrument. In that case, the `kit` is ignored:\n\n```js\nconst marimba = Soundfont(context, {\n  instrumentUrl:\n    \"https://gleitz.github.io/midi-js-soundfonts/MusyngKite/marimba-mp3.js\",\n});\n```\n\n#### Soundfont sustained notes\n\nYou can enable note looping to make note names indefinitely long by loading loop data:\n\n```js\nconst marimba = Soundfont(context, {\n  instrument: \"cello\",\n  loadLoopData: true,\n});\n```\n\n⚠️ This feature is still experimental and can produces clicks on lot of instruments.\n\n### SplendidGrandPiano\n\nA sampled acoustic piano. It uses Steinway samples with 4 velocity groups from\n[SplendidGrandPiano](https://github.com/sfzinstruments/SplendidGrandPiano)\n\n```js\nimport { SplendidGrandPiano } from \"smplr\";\n\nconst piano = SplendidGrandPiano(new AudioContext());\n\npiano.start({ note: \"C4\" });\n```\n\n#### SplendidGrandPiano constructor\n\nThe second argument of the constructor accepts the following options:\n\n- `baseUrl`: where the piano samples are fetched from. Defaults to the public hosted set on `smpldsnds.github.io`; override only if you mirror the samples yourself.\n- `detune`: global detune in cents (0 if not specified)\n- `velocity`: default velocity (100 if not specified)\n- `volume`: default volume (100 if not specified)\n- `decayTime`: default decay time (0.5 seconds)\n- `notesToLoad`: an object with the following shape: `{ notes: number[], velocityRange: [number, number]}` to specify a subset of notes to load\n\nExample:\n\n```ts\nconst piano = SplendidGrandPiano(context, {\n  detune: -20,\n  volume: 80,\n  notesToLoad: {\n    notes: [60],\n    velocityRange: [1, 127],\n  },\n});\n```\n\n### Electric Piano\n\nA sampled electric pianos. Samples from https://github.com/sfzinstruments/GregSullivan.E-Pianos\n\n```js\nimport { ElectricPiano, getElectricPianoNames } from \"smplr\";\n\nconst instruments = getElectricPianoNames(); // => [\"CP80\", \"PianetT\", \"WurlitzerEP200\", \"TX81Z\"]\n\nconst epiano = ElectricPiano(new AudioContext(), {\n  instrument: \"PianetT\",\n});\n\nepiano.start({ note: \"C4\" });\n\n// Includes a (basic) tremolo effect:\nepiano.tremolo.level(30);\n```\n\nAvailable instruments:\n\n- `CP80`: Yamaha CP80 Electric Grand Piano v1.3 (29-Sep-2004)\n- `PianetT`: Hohner Pianet T (type 2) v1.3 (24-Sep-2004)\n- `WurlitzerEP200`: Wurlitzer EP200 Electric Piano v1.1 (16-May-1999)\n- `TX81Z`: Yamaha TX81Z \"FM Piano\" patch (from the VCSL Electrophones set)\n\n### Mallets\n\nSamples from [The Versilian Community Sample Library](https://github.com/sgossner/VCSL)\n\n```js\nimport { Mallet, getMalletNames } from \"smplr\";\n\nconst instruments = getMalletNames();\n\nconst mallet = Mallet(new AudioContext(), {\n  instrument: instruments[0],\n});\n```\n\n### Mellotron\n\nSamples from [archive.org](https://archive.org/details/mellotron-archive-cd-rom-nki-wav.-7z)\n\n```js\nimport { Mellotron, getMellotronNames } from \"smplr\";\n\nconst instruments = getMellotronNames();\n\nconst mellotron = Mellotron(new AudioContext(), {\n  instrument: instruments[0],\n});\n```\n\n### Drum Machines\n\nSampled drum machines. Samples from different sources:\n\n```js\nimport { DrumMachine, getDrumMachineNames } from \"smplr\";\n\nconst instruments = getDrumMachineNames();\n\nconst context = new AudioContext();\nconst drums = DrumMachine(context, { instrument: \"TR-808\" });\ndrums.start({ note: \"kick\" });\n\n// Drum samples are grouped and can have sample variations:\ndrums.getSampleNames(); // => ['kick-1', 'kick-2', 'snare-1', 'snare-2', ...]\ndrums.getGroupNames(); // => ['kick', 'snare']\ndrums.getSampleNamesForGroup(\"kick\"); // => ['kick-1', 'kick-2']\n\n// You can trigger samples by group name or specific sample\ndrums.start(\"kick\"); // Play the first sample of the group\ndrums.start(\"kick-1\"); // Play this specific sample\n```\n\n### DrumAbuse\n\nSampled instrument for the [Synthabuse](https://www.youtube.com/watch?v=Ay-U9eYKmGA) drum-machine collection — 5 packs covering ~210 classic drum machines and synths. Samples hosted at `smpldsnds.github.io/drum-abuse-{pack}/`.\n\nTwo source modes: load a single machine's full kit, or load a cross-machine instrument list from a pack.\n\n#### Machine mode\n\n```js\nimport { DrumAbuse, getDrumAbuseMachineNames } from \"smplr\";\n\nconst machines = getDrumAbuseMachineNames(); // ~210 machine ids\n\nconst context = new AudioContext();\nconst drums = DrumAbuse(context, {\n  source: { kind: \"machine\", machine: \"roland-tr-808\" },\n});\nawait drums.ready;\n\ndrums.start({ note: \"kick\" });\n\n// Samples are grouped by instrument name, like DrumMachine:\ndrums.getGroupNames(); // => [\"kick\", \"snare\", \"hi-hat\", ...]\ndrums.getSampleNamesForGroup(\"kick\"); // => [\"kick/1\", \"kick/2\", ...]\ndrums.start({ note: \"kick\" }); // first sample in the group\ndrums.start({ note: \"kick/1\" }); // a specific sample\n```\n\nIf a machine has more than one sample set, pass `set` to pick a specific one. Omit to load the first set.\n\n```js\nconst drums = DrumAbuse(context, {\n  source: { kind: \"machine\", machine: \"roland-tr-808\", set: \"kit-a\" },\n});\n```\n\n#### Pack mode\n\nA pack is a cross-machine catalog of named instruments (e.g. all the kicks across `vol1`). Pass `source: { kind: \"pack\", pack, instrument }`:\n\n```js\nimport {\n  DrumAbuse,\n  getDrumAbusePackNames,\n  getDrumAbuseMachinesForPack,\n} from \"smplr\";\n\ngetDrumAbusePackNames(); // => [\"vol1\", \"vol2\", \"vol3\", \"vol4\", \"vol5\"]\ngetDrumAbuseMachinesForPack(\"vol1\"); // => machine ids in vol1\n\nconst drums = DrumAbuse(new AudioContext(), {\n  source: { kind: \"pack\", pack: \"vol1\", instrument: \"bass-drum\" },\n});\n```\n\n### Smolken double bass\n\n```js\nimport { Smolken, getSmolkenNames } from \"smplr\";\n\nconst instruments = getSmolkenNames(); // => Arco, Pizzicato & Switched\n\n// Create an instrument\nconst context = new AudioContext();\nconst doubleBass = Smolken(context, { instrument: \"Arco\" });\nawait doubleBass.ready;\n```\n\n### Versilian\n\nPlays instruments from the [Versilian Community Sample Library](https://github.com/sgossner/VCSL).\n\n⚠️ Not all features are implemented. Some instruments may sound incorrect ⚠️\n\n```js\nimport { Versilian, getVersilianInstruments } from \"smplr\";\n\n// getVersilianInstruments returns a Promise\nconst instrumentNames = await getVersilianInstruments();\n\nconst context = new AudioContext();\nconst versilian = Versilian(context, { instrument: instrumentNames[0] });\n```\n\n### Soundfont2\n\nSampler capable of reading .sf2 files directly.\n\n```ts\nimport { Soundfont2 } from \"smplr\";\nimport { SoundFont2 } from \"soundfont2\";\n\nconst context = new AudioContext();\nconst sampler = Soundfont2(context, {\n  url: \"https://smpldsnds.github.io/soundfonts/soundfonts/galaxy-electric-pianos.sf2\",\n  createSoundfont: (data) => new SoundFont2(data),\n});\n\nsampler.ready.then(() => {\n  // list all available instruments for the soundfont\n  console.log(sampler.instrumentNames);\n\n  // load the first available instrument\n  sampler.loadInstrument(sampler.instrumentNames[0]);\n});\n```\n\n## Defining your own instrument\n\nIf none of the bundled instruments fits your use case, you can author your own with the `Instrument` builder and the `Smplr` interface.\n\nSee **[Defining an instrument](./AUTHORING.md)** for the full authoring guide — sync and async examples, third-party package layout, and how to use `Smplr` as a TypeScript type for generic helpers.\n\n## Upgrading\n\n`smplr` is approaching 1.0; pre-1.0 APIs keep working as deprecated aliases. See [MIGRATE.md](./MIGRATE.md) for the full compatibility table and [CHANGELOG](https://github.com/danigb/smplr/blob/main/CHANGELOG.md) for per-release detail.\n\n## License\n\nMIT License\n","readmeFilename":"README.md","users":{"rchk":true}}