{"_id":"lax.js","_rev":"19-6da23628d3d9691d8a220d15d34cbe47","name":"lax.js","dist-tags":{"latest":"2.0.3","beta":"2.0.0"},"versions":{"1.0.1":{"name":"lax.js","version":"1.0.1","scripts":{"build":"babel src -d lib; uglifyjs lib/lax.js -o lib/lax.min.js -c -m; gzip < lib/lax.min.js > lib/lax.min.js.gz"},"dependencies":{"@babel/cli":"^7.2.3","@babel/core":"^7.3.4","@babel/preset-env":"^7.3.4"},"description":"Simple & light weight (2kb minified & zipped) vanilla javascript plugin to create smooth & beautiful animations when you scrolllll! Harness the power of the most intuitive interaction and make your websites come alive!","license":"MIT","author":{"name":"alexfoxy@gmail.com"},"repository":{"type":"git","url":"git+https://github.com/alexfoxy/laxxx.git"},"main":"index.js","keywords":["javascript","parallax","scroll","animation","effects","css","html"],"gitHead":"a7d0dc2786e57b6b0b1f74b466eb329882591b25","bugs":{"url":"https://github.com/alexfoxy/laxxx/issues"},"homepage":"https://github.com/alexfoxy/laxxx#readme","_id":"lax.js@1.0.1","_npmVersion":"6.1.0","_nodeVersion":"10.5.0","_npmUser":{"name":"alexfoxy","email":"alexfoxy@gmail.com"},"dist":{"integrity":"sha512-xI0CCfXNMHnG5kvn/dVhZTDI+isJCKmkR5Hf40jaXMEPrUlMvmr7jli2GzV0dAXlVM+qokRVyKqfnShtjeW9WA==","shasum":"8cb9821b658be04d4ea6340ba9ea4be78f49a860","tarball":"https://registry.npmjs.org/lax.js/-/lax.js-1.0.1.tgz","fileCount":13,"unpackedSize":145359,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcjP3gCRA9TVsSAnZWagAAkEkP/0DD2tWuhdn0pJ/2kuFJ\nkVGm7xLny7IzVj0TtnQSn3ulji22gdAG5ADr+cwq5QyQVdQZkKGYr9HcUD4G\nbtrXmDA5IE9261kb+RoGBVQwT+214cIUOUFELogeQabMsTHe6/PMjJE14/qH\nF109bCBMVMZXdgO5X8MFlincG7/R2WtU53YtIvGXG8lHiglAzLx9FPOzhL2n\n7Q61dXpMRQRLR3JrBIpke7uGj4UXGdhMGzNuMkTqN8hfoXHvvoEokvpNQqua\nxgov7F3Vpj1Svqt23GPoRnFlE2d6mjWxDn6AI+YCaoOd35e7IgxOI7yKzb09\nHOVYlWyyjsFtlGfXJRXWeBR/ZdUfLq36axiUWF33hdmhnjcWeYEeb4C8qpod\n+UBn4ZHP312dbKjkV8wtPfQgTUIVY12VFtiIkI5VKGo6DbXe2CUCasipEoYc\nQmcaoiD0fPylZ/POi85LP1o7ngH5kI/75JJj0CH9n+7c0qwqZJ1Pqahb8jow\nSAk2WDK+o+Vx6dc70sG0JPFGhk2KP82nRyphi9yPcmKi8WuQzWED/k0m61f+\niQQVyapRFKEF6vQ43dUivF7BZBymG8Q8UPRTIFaYuwyet782eJWuqAj00gsG\n8h1dJc1Edfa9cpmqs3GKzQccF1Q5k6MBmANCY/c0qkHvHr87VJQhu6USUMXL\n+3mc\r\n=YnwP\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDrx8gE2jJjXyw0qys1Vo+f1B0LTTzdqU+4xKgj7c7SiAIhAJQrjAmIVKQU9wnsEDA5erbjwH28xJOvtkciWICMzZg+"}]},"maintainers":[{"name":"alexfoxy","email":"alexfoxy@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/lax.js_1.0.1_1552743903140_0.8379579500694017"},"_hasShrinkwrap":false},"1.0.2":{"name":"lax.js","version":"1.0.2","scripts":{"build":"babel src -d lib; uglifyjs lib/lax.js -o lib/lax.min.js -c -m; gzip < lib/lax.min.js > lib/lax.min.js.gz"},"devDependencies":{"@babel/cli":"^7.2.3","@babel/core":"^7.3.4","@babel/preset-env":"^7.3.4"},"description":"Simple & light weight (2kb minified & zipped) vanilla javascript plugin to create smooth & beautiful animations when you scrolllll! Harness the power of the most intuitive interaction and make your websites come alive!","license":"MIT","author":{"name":"alexfoxy@gmail.com"},"repository":{"type":"git","url":"git+https://github.com/alexfoxy/laxxx.git"},"main":"index.js","keywords":["javascript","parallax","scroll","animation","effects","css","html"],"gitHead":"a7d0dc2786e57b6b0b1f74b466eb329882591b25","bugs":{"url":"https://github.com/alexfoxy/laxxx/issues"},"homepage":"https://github.com/alexfoxy/laxxx#readme","_id":"lax.js@1.0.2","_npmVersion":"6.1.0","_nodeVersion":"10.5.0","_npmUser":{"name":"alexfoxy","email":"alexfoxy@gmail.com"},"dist":{"integrity":"sha512-i13V5DLRq1lYCBHAojd9KFIau561nFdNPlxL4Bkcu4tuDCTegx54inak66LO4KXywLBalsWOnDo/LzpVJYfh7g==","shasum":"67fde79085df56e8a59852bf989985e58bc84ef3","tarball":"https://registry.npmjs.org/lax.js/-/lax.js-1.0.2.tgz","fileCount":13,"unpackedSize":145362,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcjP44CRA9TVsSAnZWagAAkk8P/1Kd0MTQN624D3hNNn0g\nG32eyCnybKD6C8O1l1sNJtVnrYOQRMG5OZw9ynTu0WIK3VDRdqmM3yRFpTq4\nf2HB36IuT7D4JHuRnLCwPtjteeTg3m6xLlzndRYbK31rhL6ZC5aCmBU2FvAp\nd8Nps/f/hMTKLKtslp5LGhtjgvcSqPmoeb7hzyZ+2I5s8+xat1TDhG9Cc/7w\nphD9o1Jg3U4tBt3t5sJjcBst1zHJRDfktoweobobQ3KzQK9e5J+qTdMowpC1\nDldQ4xIpCXv2YNwEqnvHUV+IYGzV6B1Y+HkC33PpeP9/RJ/iUGIkxqHtf7TS\ng2jQHXh3vq3ulUXg/cSmjrB6w2SiYMrMgTkC91QHRf4tZhyWJ5wsrNU2OBo6\nY9li72TCX7fVBYooKfjtD/+CWz8guVxJQXpe5/M19MiElWcYRykHWWhJUF/X\nWnKTh50fQffrN7KEETXA7GU3c8nBKYfu8QYjkXcfaoh3nUJUrT+73MhS92j7\nTmFHoWLPWgi/Ok3+VCPNulRRaN9nGy9+x/rkhlEs1NrgXgOdl2ZrSY3WhSqT\nRDa2rLl0PL3xJUitPexTqQP2kDAVKaECwfZRiAzLqY1/vfokgVOTOTuPhD4a\nCyIHRNq3+80WkxkOegyEtyNbMsMclorXDG4vOKgeIQWqswkIdoyBuaHMa6By\nDGcF\r\n=bWLS\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGbD29/XBU4B8AKsitCuxLcAChdVuN0ERuSXh28RK4v5AiAbOpEUSFFjtiRHkdOj6lC6ycD9GNCSYOkgEMPF+u39tg=="}]},"maintainers":[{"name":"alexfoxy","email":"alexfoxy@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/lax.js_1.0.2_1552743991390_0.4575196784801241"},"_hasShrinkwrap":false},"1.0.3":{"name":"lax.js","version":"1.0.3","scripts":{"build":"babel src -d lib; uglifyjs lib/lax.js -o lib/lax.min.js -c -m; gzip < lib/lax.min.js > lib/lax.min.js.gz"},"devDependencies":{"@babel/cli":"^7.2.3","@babel/core":"^7.3.4","@babel/preset-env":"^7.3.4"},"description":"Simple & light weight (2kb minified & zipped) vanilla javascript plugin to create smooth & beautiful animations when you scrolllll! Harness the power of the most intuitive interaction and make your websites come alive!","license":"MIT","author":{"name":"alexfoxy@gmail.com"},"repository":{"type":"git","url":"git+https://github.com/alexfoxy/laxxx.git"},"main":"lib/lax.min.js","keywords":["javascript","parallax","scroll","animation","effects","css","html"],"gitHead":"08e3719a29161c01ee2b67bd82c750bf623a95e6","bugs":{"url":"https://github.com/alexfoxy/laxxx/issues"},"homepage":"https://github.com/alexfoxy/laxxx#readme","_id":"lax.js@1.0.3","_npmVersion":"6.1.0","_nodeVersion":"10.5.0","_npmUser":{"name":"alexfoxy","email":"alexfoxy@gmail.com"},"dist":{"integrity":"sha512-VGMhXMVfFWbr6Psf/39A/LSBqJCVYJsfib6VMNizVCy3NQCoM9xA+ndWaMKkg1GSnc1bEs/Pd26rU1NjEHXr4g==","shasum":"96f76ada93cc8d33b0ce5c82921512ada4faeaa4","tarball":"https://registry.npmjs.org/lax.js/-/lax.js-1.0.3.tgz","fileCount":13,"unpackedSize":145472,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcjQRuCRA9TVsSAnZWagAAzeEQAI5KqzoObh9XcDhI54y3\nnU0aWmx8bt2/QXmnQPG98pFukU/9aaMa1yR4WAYm3A5w9XFqQL+nGzqE/tWx\nLhEG6UXr7ygiWbayYxKuTMx4HrFbiBXeYBtsWX6NMMMX0YT7kIfu/ZEaNzaM\n6CoK9egzguzslrq5Fr+diPQJ9pKsaBvc0UZ0kF/wubsKTGxJPzRtpKjGK5Iz\nUBOX05goNTOUeq/hp5JSfdrNze9bPcGlmay3pIy2ECzOsZQpez1Q7tzGbm+k\ncrcOyG91ENTOIWbRAkWX3RXFxyxUK4ud2S8+IS9cHIr05CzEpubSCXzYZU2N\nOi04aWBCNHSrFWepXpvwyqhO1mQ7cMoM6PzzbKXcPyWVgHxgQU2md0FSdGqf\npqq6TKHh03sYMuZxSTyLlrzjiVAt+MExEZeZN3ftfgByK6rT3wrlb9dtns/W\nFfydnf3bs11t0VW4Sla8mawYfA3qu6w1RQU2pkPxRYmpJRKBTgw5metNWXI8\nvXDnA69gKYtOl7LfVXYd+1dLeaQKDC6BnILpTizeW/tdAaLq5AU8aDcH1GFc\nHVThUtFsZn0sCzRqECpfp7+Othr5eJSa5sGfcdEr14t/K8KmNpzx/LpLTx+U\nX0O7+47hAIXZCS517oS1lynx0BV3y/e67ew42Muvr+R9qzi9QispEstRJqEd\ndqUN\r\n=6iUT\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCHmqPBj0GVA0V9UrHm1RDSxWdjMZSZLwknd6WYDhM/pQIhAJNUbACPRXmbgwgjB9IlY+ecYWs+C+Ah9PsUidKx8JY+"}]},"maintainers":[{"name":"alexfoxy","email":"alexfoxy@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/lax.js_1.0.3_1552745581834_0.9545548894196689"},"_hasShrinkwrap":false},"1.0.4":{"name":"lax.js","version":"1.0.4","scripts":{"build":"babel src -d lib; uglifyjs lib/lax.js -o lib/lax.min.js -c -m; gzip < lib/lax.min.js > lib/lax.min.js.gz"},"devDependencies":{"@babel/cli":"^7.2.3","@babel/core":"^7.3.4","@babel/preset-env":"^7.3.4"},"description":"Simple & light weight (2kb minified & zipped) vanilla javascript plugin to create smooth & beautiful animations when you scrolllll! Harness the power of the most intuitive interaction and make your websites come alive!","license":"MIT","author":{"name":"alexfoxy@gmail.com"},"repository":{"type":"git","url":"git+https://github.com/alexfoxy/laxxx.git"},"main":"lib/lax.min.js","keywords":["javascript","parallax","scroll","animation","effects","css","html"],"gitHead":"25d890421bbbe5c15fd75bf46606d2439e18a405","bugs":{"url":"https://github.com/alexfoxy/laxxx/issues"},"homepage":"https://github.com/alexfoxy/laxxx#readme","_id":"lax.js@1.0.4","_npmVersion":"6.1.0","_nodeVersion":"10.5.0","_npmUser":{"name":"alexfoxy","email":"alexfoxy@gmail.com"},"dist":{"integrity":"sha512-m1CxuN+puW8ecFAyVF+F9xN69uc+JZXxXK4Xf0EAyKk8xPqIYYySxtg0Noe07a3SsfeTE9rl06OBvjZ3XuY6Tw==","shasum":"d561a279f4bc0de06fffa67c903a986cd1bdc0e0","tarball":"https://registry.npmjs.org/lax.js/-/lax.js-1.0.4.tgz","fileCount":14,"unpackedSize":147943,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcjjOlCRA9TVsSAnZWagAAynQP/2PBz2MhGzIUfVxrVZFA\ng+0bz4MzAXGuLePkfsIIvmvK9bxzQ5Rx//Bf3wl3Hw9MD879kNxcgtzf7uGf\nWiHFetjd9RrGuuSZSEJlH8n0RUk+jTJUrhpIyOVdQ5EZ1KBBNJUU7LiS5nRb\nPPCScDufn3EA5INCPtUnsFXpmVQKQsv83u5FicvLfFH/7PmkljpAeSRRXFFG\nL3ES9r4u2/JobaAaPNB33SKy4RTKxCUYDGMIiGR2BBIPpz42RDnP5varuv+K\nSJBhauKASTIyfbrEZgCtCBIU+fkFVA/ymGuuBMZY2PBM/US47FjomjkadUkc\njO+0ayoKPQ4CahcUUbeHI5rh2Mgb1425h73uQQAUX81udh+vZnyXHW1yRDXM\nfO9u4y8yfKwgJrKqBNQCh/mIUEaDUreSja5/CiZDacFzgudiZl46wQswU4Oo\nZXvOJ2g0rbaiWVXOM9N6w6sTUC/ZlgvJdqSgxqVwT5ANt0OjGpY+A5MrgVOo\nJN37p1KngOCohRYhUgrzj/xQo/Ev2R2jym9CVj3omG4OZ1z5i1nZhPvH9+x5\nJAUyG+hoSCADx4kcKUHF4c524qsPaqzNSkn5XTcju7fFyIwhCEVtHp9TtWCO\nEHpdxpQggBnWI1IDyvQjeJcT05yi0SqlgnRDcgTpMbSeRM5DkxMc3wqAJYtG\naMzr\r\n=WbB8\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDbtdTBGT5oxz69PW9yuLbkC3xDDJTdO6gws54FrS2SwQIhAKv2OA6nN1nQdElQ6DfnE2P/QadaBwcY/afJDkPqPdp6"}]},"maintainers":[{"name":"alexfoxy","email":"alexfoxy@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/lax.js_1.0.4_1552823203975_0.3561425674042946"},"_hasShrinkwrap":false},"1.0.5":{"name":"lax.js","version":"1.0.5","scripts":{"build":"babel src -d lib; uglifyjs lib/lax.js -o lib/lax.min.js -c -m; gzip < lib/lax.min.js > lib/lax.min.js.gz"},"devDependencies":{"@babel/cli":"^7.2.3","@babel/core":"^7.3.4","@babel/preset-env":"^7.3.4"},"description":"Simple & light weight (2kb minified & zipped) vanilla javascript plugin to create smooth & beautiful animations when you scrolllll! Harness the power of the most intuitive interaction and make your websites come alive!","license":"MIT","author":{"name":"alexfoxy@gmail.com"},"repository":{"type":"git","url":"git+https://github.com/alexfoxy/laxxx.git"},"main":"lib/lax.min.js","keywords":["javascript","parallax","scroll","animation","effects","css","html"],"gitHead":"9790b42b2e85794b7b49cbacf1bc2837ec3747d4","bugs":{"url":"https://github.com/alexfoxy/laxxx/issues"},"homepage":"https://github.com/alexfoxy/laxxx#readme","_id":"lax.js@1.0.5","_npmVersion":"6.1.0","_nodeVersion":"10.5.0","_npmUser":{"name":"alexfoxy","email":"alexfoxy@gmail.com"},"dist":{"integrity":"sha512-gkmCKYeWlfaDQmmIYksz9wS1VuclsDLcclhWP+Ap4DzRKfF/tGhMSNt80R7MEGau/sco0Dsv2tTIlZyT/Klvng==","shasum":"23750c5b44a83c1a588429baea5f3f6091ab5ff3","tarball":"https://registry.npmjs.org/lax.js/-/lax.js-1.0.5.tgz","fileCount":14,"unpackedSize":148593,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcj8uiCRA9TVsSAnZWagAArwUP/1GYREH3ztpDTGoN1nTj\nBxd35UPWob6lpWsv276qVm/vlyvcSR/g+IG2CkswSLYrwT4HSpT5xHe0R+Ow\nQlvpxsXzGI8CeZY7fdQTYjwchbRLPt06qqvzkcRjWGmLVVCKUAbhTOCDgRbN\n6ccNGu1d35hc6aSiX6r1Ule0+W7zNrX71xGO2MpX8XWgArx8KAw2eziepxJv\nq/DePs4JE8wDFSFsj4ul/zwuWXtapFSU+ssTWs66yqIiU/CVNVAGnVw9296H\nE8y5m3S8YEH5/2b00C3bFAYPr9BimwpQ9u9X9LkaaruOZqQUhHJxcEn/RlIi\nbX8ejM6lKwcx+4hIIK//SfwwtOz+5mgUV8C7VtrpReICQEADE6OEBLGkDycu\nv/zXUyoOsf8wsQeDw7wtm6H47bxhvzg+EPCh8UOoYk36Nd+5JjJvcYYgpOdJ\nXHAbpZ8oJ1ct7O6EbFtczwcCe0swUXr5W0h3GdwoTU+KbNLNheLf2yku3YIA\nc/ASOpDjbnH7DrVoeT4TmlgW6c6DN2G9/HMdI3hjss7ds3kS+HaG46QPfv9g\ndvgLLQY3c8mOFsB08FC6GNA+F31dAsbPrx4urLVk/AcwhPUHzgnhSgFTFXsI\nrja4lqE/zhK5DUKitZDP81yxqHtnRuKiisFbdZ9gOslq9lxwm5gh530g2BBL\n4wVS\r\n=UGFj\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCLnYzie9OxFBkFhE8JgifLVPLhkvMYkz2umxN8cykjjwIgGjV7qZZruU6Ho+nioAXYgA2gzbtV1mDUltArStu95Jg="}]},"maintainers":[{"name":"alexfoxy","email":"alexfoxy@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/lax.js_1.0.5_1552927650121_0.39396665212161563"},"_hasShrinkwrap":false},"1.1.0":{"name":"lax.js","version":"1.1.0","scripts":{"build":"babel src -d lib; uglifyjs lib/lax.js -o lib/lax.min.js -c -m; gzip < lib/lax.min.js > lib/lax.min.js.gz;"},"devDependencies":{"@babel/cli":"^7.2.3","@babel/core":"^7.3.4","@babel/preset-env":"^7.3.4"},"description":"Simple & light weight (2kb minified & zipped) vanilla javascript plugin to create smooth & beautiful animations when you scrolllll! Harness the power of the most intuitive interaction and make your websites come alive!","license":"MIT","author":{"name":"alexfoxy@gmail.com"},"repository":{"type":"git","url":"git+https://github.com/alexfoxy/laxxx.git"},"main":"lib/lax.min.js","keywords":["javascript","parallax","scroll","animation","effects","css","html"],"gitHead":"027772e364eba42166c7ca3db42984d567d8bc3e","bugs":{"url":"https://github.com/alexfoxy/laxxx/issues"},"homepage":"https://github.com/alexfoxy/laxxx#readme","_id":"lax.js@1.1.0","_npmVersion":"6.1.0","_nodeVersion":"10.5.0","_npmUser":{"name":"alexfoxy","email":"alexfoxy@gmail.com"},"dist":{"integrity":"sha512-MAa1lNztY3dZ8qlmrFPxCkULn4aUE5CixKJVIavyaYNVqUfdkyH3J5GMPTOMZpajMv2j1acFXfeFdyIsqgRqXg==","shasum":"f32e27f6d06daa6a09e97c5dcd0e3f456649afeb","tarball":"https://registry.npmjs.org/lax.js/-/lax.js-1.1.0.tgz","fileCount":15,"unpackedSize":282449,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJckQ2UCRA9TVsSAnZWagAA87EQAJ+/1HIRDzPzjrUiNtmB\n2FWN4uydybdbISWsbzTyqpDsN4XcQC/0h+nZOg/reP16zwSWxfjivu4gLkc+\nmzzgxTB7AGBJVTCijvxcYnDqvsxrX9lQq3byNZLQ5zhzDI2Mu9OD9pijDV0I\nnqdxoxZOjS6L+SdSO074yDF2fPqTwRbPq1Tgyq7DGc9RVbj7dscFVMEfYDWq\ngzHbTNgAbc3pNLPu1kFLb23ZXfpQn/4cNV7t6dvbi/xdCII5alv6d7Wr/Z/w\nsu9A37CVa2ntC7Osshps6sPhzJfnQ+YsPzuL6MxjrJE4mypCMOfro/4Ux9yw\nkquTo5KpZojUq5tu9sxRDu48qkbIIA+V5fOdEW+Zmyj0nxvXn5U9ALY77/2T\nQSNHcz/v2dX97ZXXgNJ4PyMa6muD42z9Z+ZRhnTI5a7ieejUcujvsxkDeciv\nQR0flsufaQF57pjclXGcFXjAA7CzziwBjaEkgcZ5Tc4DZ1wcmFwkhnaVdWoI\n4bFQ4fOEsOobc0Qy2DYALHi0QXQUC7814AxZFfdK8ZEZx/jQLixYFrzoi/0j\nlG/hWAm1HTq1cTd5yl0yPEHXO5NmTij7ySPW+fY1rsDUV7xfTKS9wy+VxW1D\nVNbNgAfa29plGNo4BwnmgG3X05tw8XESucjsjHxUdvcYZocaTU7cFlVcY5ta\nz4rS\r\n=xsBI\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD7aXinat40RAk+IZovmuHw0VZSeNCEXTxeTW+4n8JyvwIhAMMFZXVGpUUbm9SLIBb2pL1CZ9IKdmcriZ6nixgOMQw+"}]},"maintainers":[{"name":"alexfoxy","email":"alexfoxy@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/lax.js_1.1.0_1553010067645_0.3693022578042253"},"_hasShrinkwrap":false},"1.2.0":{"name":"lax.js","version":"1.2.0","scripts":{"build":"babel src -d lib; uglifyjs lib/lax.js -o lib/lax.min.js -c -m; gzip < lib/lax.min.js > lib/lax.min.js.gz;"},"devDependencies":{"@babel/cli":"^7.2.3","@babel/core":"^7.3.4","@babel/preset-env":"^7.3.4"},"description":"Simple & light weight (2kb minified & zipped) vanilla javascript plugin to create smooth & beautiful animations when you scrolllll! Harness the power of the most intuitive interaction and make your websites come alive!","license":"MIT","author":{"name":"alexfoxy@gmail.com"},"repository":{"type":"git","url":"git+https://github.com/alexfoxy/laxxx.git"},"main":"lib/lax.min.js","keywords":["javascript","parallax","scroll","animation","effects","css","html"],"gitHead":"b670d2fd1270b784a4e14274af7c8eaec3e77619","bugs":{"url":"https://github.com/alexfoxy/laxxx/issues"},"homepage":"https://github.com/alexfoxy/laxxx#readme","_id":"lax.js@1.2.0","_npmVersion":"6.1.0","_nodeVersion":"10.5.0","_npmUser":{"name":"alexfoxy","email":"alexfoxy@gmail.com"},"dist":{"integrity":"sha512-WnJA/yQpcW4COEbCkGVeCndtYux4c1pl/ZMvA4zK9SKoWwP1DF+ykfnpDVRlaty15qkDAXReiSOtjf+wtfvp5w==","shasum":"c26f62b24f26b40a33d955bcf8bff80626d74ff7","tarball":"https://registry.npmjs.org/lax.js/-/lax.js-1.2.0.tgz","fileCount":36,"unpackedSize":621053,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcmeq2CRA9TVsSAnZWagAA+fwP/2GuzF9vD0/MxHNURrXz\n+67OWuQTOoLvzXWxnN7Nkc7vBrVOlcBXPWeFtL8V7/dwqBwPuSwmAlQqVR7t\njHhQbhukqqob8OYgO0ItcByHSccQpEpcOfuKsOKuI5+o9VWwopWoywzvJBa2\nx/QeOOyvIbriwMkNXlHz7pjkoOUAw44LdVBNtAX0+eN9yP+1C2CAFy4jBhOA\nrySvYrBmeOu6VYPVBGg4TAUzFlP4oIvFE9z2Y2/InvcPCH7fB0dYB3VRaHil\nZd52AxGGUoOWjjKNrdU02U5yd2pNxMXa9sAStryn2sB2ZOCDVjp/29mefZZy\n0SkJ00EdGOyIw1OMHHAk0SkY1ZSKUMl+LUDiXbP5Ehae+EGkyOGfQ1yyyvNr\nKoXjMiL7nHdrrlv4TztjFSwAkt12tma0pmB06oE8SeoGR9wAjeQ9ItcXaC/p\nOy3Cfn+aizOKpk1GpajDC2SAuJrqS546qn+fxK6ycWzz4csIF0go8gV1hbZJ\njvedmCmXN5AsSYrB1pw2pTub4PNl7rYmuagRcQmyq7DsDg3Zu9p2BkPFnudq\nUflOpYC8AUZzSHG7wpTyBB1HAzzBaK9eJHtSSP3eY24Mng+dTwcGc68zPDC5\njQdamdvzjf9iUBBfw80hjoCDqdDoWMUHvCFijrHyBYyEAqkdV4sZCdGEd1sE\nGWp3\r\n=M8bf\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHIJiWBmoViFRvaNf8ST8kHs913PzAnKUGMFQXrbTMSoAiA3VUkes0TjWDy2/rYvWuCKhxLiZTPy/Vs5JJvbVGo5iA=="}]},"maintainers":[{"name":"alexfoxy","email":"alexfoxy@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/lax.js_1.2.0_1553590965406_0.34077698571983883"},"_hasShrinkwrap":false},"1.2.1":{"name":"lax.js","version":"1.2.1","scripts":{"build":"babel src -d lib; uglifyjs lib/lax.js -o lib/lax.min.js -c -m; gzip < lib/lax.min.js > lib/lax.min.js.gz;"},"devDependencies":{"@babel/cli":"^7.2.3","@babel/core":"^7.3.4","@babel/preset-env":"^7.3.4"},"description":"Simple & light weight (2kb minified & zipped) vanilla javascript plugin to create smooth & beautiful animations when you scrolllll! Harness the power of the most intuitive interaction and make your websites come alive!","license":"MIT","author":{"name":"alexfoxy@gmail.com"},"repository":{"type":"git","url":"git+https://github.com/alexfoxy/laxxx.git"},"main":"lib/lax.min.js","keywords":["javascript","parallax","scroll","animation","effects","css","html"],"gitHead":"e63007979444ce006972f51dcbe3becd2b92363d","bugs":{"url":"https://github.com/alexfoxy/laxxx/issues"},"homepage":"https://github.com/alexfoxy/laxxx#readme","_id":"lax.js@1.2.1","_npmVersion":"6.1.0","_nodeVersion":"10.5.0","_npmUser":{"name":"alexfoxy","email":"alexfoxy@gmail.com"},"dist":{"integrity":"sha512-Oh7HlfotcjSod8WZCJQQfvSqSKwbIZVnSfekGdIPfxqYtrD/MPxvsTnbV9/6gtPllQW9kJk1sWwXYIBdQTfTqA==","shasum":"a99aed2b7c838664b693d376bb921ebbda32e9ec","tarball":"https://registry.npmjs.org/lax.js/-/lax.js-1.2.1.tgz","fileCount":36,"unpackedSize":621120,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcpFCtCRA9TVsSAnZWagAAfEcP/1cPBp2j9O38IgHZ3vlW\ndfCN/1ze2wE/RMfuXzYkVlpaI/0swWmcyXEBPZQWN76AW17nOUNtzdK4Dmxy\nGuvoAR2cl9phlSVY0MQZD8bjnf2z3JgvNlAeKbdxzpROKZ6BmpoU3rrvY7Jo\ndK2+PFrNryDteULEbEmVK35dwdzOs7XIEWZzMlLKqNbW0wI9yLCIQyxTu9Qt\nBzW3UHWKb8mvk3xKZI17kGXpblc6K0ybWw3WBggksC2lOPTuI1pehlxkh77V\n1Cmatv8daTrgSLKpmCVcFoBE0znDiTfOQW8Wg5ZWz7E7JSTKE7T6OFaL6wF4\nDaXXKz1hWv6lWUz9qdvc/RWMz6IyBIn5sZV18DLCs6feLzHCfdER0Y5vReVs\n0tNqq7j+6AvXv6/gcoTahnEkQ0gTE1Om9loP8D5yl/0Mmr7OJ5HEEaK0Elut\nsw0CYo4bGG4vtxUzi+kZzhTZFKvCsEzqYJrdWO8BuV1H5rzoXHnArAQJfmor\nlxDOGvjrWfwru/WLlxQY+pvbZbKJjYTsRi1Emi18DZ4GnCg5rvrD9Yvimq8u\nk/C8CK4XSqR297I64GrbsGRBDP/VVjQMf74OPX4tJ3Q1xGjnREtS/1gAq2d9\nEQ0/1WLO6owp3khy7bk/4zK6Wetc7fuwjfEBP8gX9YDAYRfCii1oVZEx/6fR\niTpS\r\n=WpUK\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDdtirBIRuHC839iKxZgTekbrtYlIzq0sVAPNMINWpRUAIgSC18oryLd0W2qyHLMr4VT5tT6Rt1osKWN/QC8q+X3HQ="}]},"maintainers":[{"name":"alexfoxy","email":"alexfoxy@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/lax.js_1.2.1_1554272429161_0.143210226389628"},"_hasShrinkwrap":false},"1.2.2":{"name":"lax.js","version":"1.2.2","scripts":{"build":"babel src -d lib; uglifyjs lib/lax.js -o lib/lax.min.js -c -m; gzip < lib/lax.min.js > lib/lax.min.js.gz;"},"devDependencies":{"@babel/cli":"^7.2.3","@babel/core":"^7.3.4","@babel/preset-env":"^7.3.4"},"description":"Simple & light weight (2kb minified & zipped) vanilla javascript plugin to create smooth & beautiful animations when you scrolllll! Harness the power of the most intuitive interaction and make your websites come alive!","license":"MIT","author":{"name":"alexfoxy@gmail.com"},"repository":{"type":"git","url":"git+https://github.com/alexfoxy/laxxx.git"},"main":"lib/lax.min.js","keywords":["javascript","parallax","scroll","animation","effects","css","html"],"gitHead":"1b982330107753e178b92acefcf25c2bfd2e7fe5","bugs":{"url":"https://github.com/alexfoxy/laxxx/issues"},"homepage":"https://github.com/alexfoxy/laxxx#readme","_id":"lax.js@1.2.2","_npmVersion":"6.1.0","_nodeVersion":"10.5.0","_npmUser":{"name":"alexfoxy","email":"alexfoxy@gmail.com"},"dist":{"integrity":"sha512-d8s4Qm9LSnXz3tlXqvrRt5bIhBZ1/5QcVnhFg0PKWJIOBxNFFxOxV2wcFhwZskx9ErJOqChByxZxBCxoILS8TQ==","shasum":"c9cbb895bebde167f031149798189ce34ee37584","tarball":"https://registry.npmjs.org/lax.js/-/lax.js-1.2.2.tgz","fileCount":37,"unpackedSize":622727,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcpORnCRA9TVsSAnZWagAA/H4P+wRMFkCdhk6j3o6SytBU\n48xju+yCRkTyl7LbxiK52KM2qgKtWeZUo1w4Wk7ljNJ/A/qwtAciqUZvsdB5\nqN9X1/wADRYCMa8cKSmqjpxllpvKEYklATh+mdyCYlYqZr9Le9sajPGbP0Cd\n6CCRdCBqNtJQqrynvVDISXdOdRKRQDTIPXXALGb5D3EjMGABSKcn7o5OAY6y\noZWnSbbaiKPoKVfK/eNkp7HUGTdhI1sxHva+bu4Im+MPMcTcq+DqPnU5D6Qz\nfo/eTUSh+Xcu+r/qsxnhvsWCixbLcZnqLvqRJSl7n7/dUBcK2ihxTEbudr42\np6Y4TF/7VU2oMEDsw2yNdtKmdVN1G47risZD+RZwNOknUbfUZsEF2yUoSCxS\nlbRVCu7csy7cjmgoth24HJsoin2J1Pt1+qsc/e/u6vqRmA7XKG8LJKC2fvS5\nxvU9HakwEDx71S/BE5jTfiIYWbVIzQXO8eknrDlbDveBJuCn80bY6Qai+4Dc\nRt7sxu/hLfYfhxryr/affu2ExTcqC/mhE+7Le24QD8RAz8AH/IySxy3apdrB\nD2/XGEvCgfUD9kO3SXY7z4cbwAMv4Hbn2TN5Pqm3aDEflGqdR/UdUr94hSyr\nAqDKLVOs+jzvjMNd/YZDGxY6HSDlq6scApsAG/axAp+RNH7/g9kO/+8veQKe\n1PpF\r\n=UKfJ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD/4uhr1gN7LYBzn6dhiRtKlYRShcU7kFp0zLg0wP8aPwIhAKJ2FsYVZOQICClFmTlDwubK1Ei66iTprc/3zpV8i/+G"}]},"maintainers":[{"name":"alexfoxy","email":"alexfoxy@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/lax.js_1.2.2_1554310246853_0.08594826962468138"},"_hasShrinkwrap":false},"1.2.3":{"name":"lax.js","version":"1.2.3","scripts":{"build":"babel src -d lib; uglifyjs lib/lax.js -o lib/lax.min.js -c -m; gzip < lib/lax.min.js > lib/lax.min.js.gz;"},"devDependencies":{"@babel/cli":"^7.2.3","@babel/core":"^7.3.4","@babel/preset-env":"^7.3.4"},"description":"Simple & light weight (2kb minified & zipped) vanilla javascript plugin to create smooth & beautiful animations when you scrolllll! Harness the power of the most intuitive interaction and make your websites come alive!","license":"MIT","author":{"name":"alexfoxy@gmail.com"},"repository":{"type":"git","url":"git+https://github.com/alexfoxy/laxxx.git"},"main":"lib/lax.min.js","keywords":["javascript","parallax","scroll","animation","effects","css","html"],"gitHead":"98fa5f9a6322a04f121d3b703dbf62a83981e757","bugs":{"url":"https://github.com/alexfoxy/laxxx/issues"},"homepage":"https://github.com/alexfoxy/laxxx#readme","_id":"lax.js@1.2.3","_npmVersion":"6.1.0","_nodeVersion":"10.5.0","_npmUser":{"name":"alexfoxy","email":"alexfoxy@gmail.com"},"dist":{"integrity":"sha512-997ORcgFcL6Hag1QBe0KbNl9WEtm7okf9fLKvo/hv05CUSWEwsyXAtZLKOqsnbgcaJ6yHZUNtJUzMaplf78Z4w==","shasum":"ee19230a20f637f6bfd77281b1aa7a8d62172ad4","tarball":"https://registry.npmjs.org/lax.js/-/lax.js-1.2.3.tgz","fileCount":37,"unpackedSize":623573,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcpnksCRA9TVsSAnZWagAAeBEP/Ao1OSmpM84BwuLy7Fy2\n8DBt8PgC2+5tIg0tAg3oCOTSNWm12iswqcYtmk1+y+ghJK3OhCWpwe3tHDiB\ndgt8HUwYkq14sHXIoUWHSdZbTI/eG3d16nh0a5Vm8/snxPWHBvfaEoSt0d9k\nNmW1cga1gJsQPUIxYzg8wPRypAoEb6aRWE6eQVm7vEunxNMW553q6f1Bfu6j\nb7vedPcJ1xACqRCgFLTdxto52d4rjgZ3wPTldx9Hn8JFEU0UffNCeyC7aQXM\njRRF2WXGJQReV0LZz1nLPICcVr88UVajYTO43Tyjy+EmEt6b87m80uacLw78\nAd0RRbEwRxF6IW/PPTWWnSVGVbKhzoOe+QxCWasA3gzngjVr9vHucYm8PZoS\nI2Dqc1e+ImHWlDHQtkqyQOyY+kdJcnT8ILxfuAes0/FBkcuV3D0GTEvYPTaH\nsY5V/7jRrZ3Go6nRD+/04tCjHVsk7lV4F1m5bq6B96VOUh/5naV3TglKAG0n\nZT99xCzBNvB99Z03xgKV86dUS7ELoLsFQ/6JDu72IpLxkWvJCygRSwSJ1KH6\nMVuL+rrY8mv4MzGda/d4SwozLrRFAZXomNSgya0GHAevzs6E05pSMhGoy7bg\ntPSkJq8/KCaYYNJd+c5oMzJ/w6aY8id4H/sAcrVIxPUlnGBedz1MTLy+bv8j\nI2L/\r\n=fX1V\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBJvsuEOtGYMxFSzMMbsq855xGXR3VSZgi1DWk7KsN9sAiAqzCLEYXB6p1NReWtvA0ZrarqoxUg0Y+2a4rCyU7/nVw=="}]},"maintainers":[{"name":"alexfoxy","email":"alexfoxy@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/lax.js_1.2.3_1554413868030_0.18304737177794728"},"_hasShrinkwrap":false},"1.2.5":{"name":"lax.js","version":"1.2.5","scripts":{"build":"babel src -d lib; uglifyjs lib/lax.js -o lib/lax.min.js -c -m; gzip < lib/lax.min.js > lib/lax.min.js.gz;"},"devDependencies":{"@babel/cli":"^7.5.0","@babel/core":"^7.5.0","@babel/preset-env":"^7.5.0"},"description":"Simple & light weight (2kb minified & zipped) vanilla javascript plugin to create smooth & beautiful animations when you scrolllll! Harness the power of the most intuitive interaction and make your websites come alive!","license":"MIT","author":{"name":"alexfoxy@gmail.com"},"repository":{"type":"git","url":"git+https://github.com/alexfoxy/laxxx.git"},"main":"lib/lax.min.js","keywords":["javascript","parallax","scroll","animation","effects","css","html"],"gitHead":"1e1067f632cbe4e19633f7455707398c476f16e1","bugs":{"url":"https://github.com/alexfoxy/laxxx/issues"},"homepage":"https://github.com/alexfoxy/laxxx#readme","_id":"lax.js@1.2.5","_nodeVersion":"12.4.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-Ytf7ZUhn2YLtyYoUFT8KpoRYvzw0awTr66J0vrp4NpwPaXPp504yhvsrqtP6ZDny3/Y7UOQsWHylV9iLl3cuoQ==","shasum":"cf4279be9f604a0bb20fd3e808af97879c246c3d","tarball":"https://registry.npmjs.org/lax.js/-/lax.js-1.2.5.tgz","fileCount":36,"unpackedSize":537673,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdpd2OCRA9TVsSAnZWagAAL00QAJnabkxI0GAMqJaRCIww\ntICtfoDILDWTxRHQpC3skCA/Pc3sUiNQa/f0vvQzqGu+n+fmNnq9CddahCS1\njZAdrXSZX+xdaVaJzC24gPeaLpA/nQ07s+qzYKwjImE+VJUxcwOw4j5DPHBz\n4/RPvqx76snfKzkTad6rtTAkAvgQBUzoljz00i+OJsqLi5A0DNNdq72Xnabr\nqBLfGObw47ScTPFCkc1Yo1fS7aet8caj+HguRSBGZJ67WPbhKF7mZQcVQsvY\nzruZpyUYzTfMM40+quZE0aogEOsOyvWAFjiA9UPNedGcXezyi/ycPBlsZfSI\n6g66IMRYYwCpDRo4/fXgaL3AaCMDSO8P5wWtwO5suDJAWawm1mGP2JGtcwnJ\nxitFtTb4fPL9rZjFkNxfwaJ+qukQ1HW/T5Q3otzCSrKv/hfY2ANZhdLz2kRP\n78+uT9q4jOfvUM0azuh0Ff+XFfqGjtlbC0UfZ1vdrlt9aysZHa0E7NcH1dLc\nqMryZIDfqV8taEuza2UqkVmkzSzRYNzDFiJ/srXql5PeG17UktBscbmhml8I\nmQBRAO2G0kVLwb9V3e9vBq7yq2DIl/FRlsjHtNb4U5zy9XfmLII4gRf7Fb2a\nF5Oi5Sm8TA04IU4ezAFv/HHvbUiJMkx6Wotz6rheytMfQWJmjGbYWXw/P6GG\nz/tx\r\n=uKsQ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBtiXUTnk2GQQXG/bt4t/4eVhEaI0OVmwNWUwoYwOq/UAiBImja+GWD3hikPMKOoFLxcUeVOy+R85vGKAb46GvQrjA=="}]},"maintainers":[{"name":"alexfoxy","email":"alexfoxy@gmail.com"}],"_npmUser":{"name":"alexfoxy","email":"alexfoxy@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/lax.js_1.2.5_1571151245260_0.18460278517150308"},"_hasShrinkwrap":false},"2.0.0":{"name":"lax.js","version":"2.0.0","scripts":{"build":"babel src -d lib && uglifyjs lib/lax.js -o lib/lax.min.js -c -m && gzip -c lib/lax.min.js > lib/lax.min.js.gz"},"devDependencies":{"@babel/cli":"^7.12.1","@babel/core":"^7.12.3","@babel/plugin-proposal-class-properties":"^7.12.1","@babel/preset-env":"^7.12.1","uglify-js":"^3.9.4"},"description":"Simple & lightweight (<4kb gzipped) vanilla JavaScript plugin to create smooth & beautiful animations from user interactions when you scrolllll! Harness the power of the most intuitive interaction and make your websites come alive!","license":"MIT","author":{"name":"alexfoxy@gmail.com"},"repository":{"type":"git","url":"git+https://github.com/alexfoxy/lax.js.git"},"main":"lib/lax.min.js","keywords":["javascript","parallax","scroll","animation","effects","css","html"],"dependencies":{},"readme":"# lax.js\n\nSimple & lightweight (<4kb gzipped) vanilla JavaScript plugin to create smooth & beautiful animations when you scrolllll! Harness the power of the most intuitive interaction and make your websites come alive!\n\n### [What's new with 2.0](#version-20-improvements)\n\n## Examples\n\n[TODO]\n\n# Documentation\n\n### 1. Getting started\n\n- [Setup](#setup)\n- [Usage with UI frameworks](#usage-with-react-vue-emberjs--dom-changes)\n- [Using presets](#using-presets)\n- [Adding drivers](#adding-drivers)\n- [Adding elements](#adding-elements)\n\n### 2. Going deeper\n\n- [Custom animations](#custom-animations)\n- [Optimising performance](#optimising-performance)\n\n### 3. Glossary\n\n- [CSS properties](#css-properties)\n- [Special values](#special-values)\n- [Supported easings](#supported-easings)\n\n# Getting started\n\n## Setup\n\nTo implement lax you need to create at least one _driver_, to provide values for animations, as well as the element animation bindings. Below is a simple example:\n\n```html\n<!-- JS -->\n<script>\n  window.onload = function() {\n    lax.init()\n\n    // Add a driver that we use to control our animations\n    lax.addDriver('scrollY', function() {\n      return document.body.scrollTop\n    })\n\n    // Add animation bindings to elements\n    lax.addElements('.selector', {\n      scrollY: {\n        translateX: [\n          [\"elInY\", \"elCenterY\", \"elOutY\"],\n          [0, 'screenWidth/2', 'screenWidth'],\n        ]\n      }\n    }\n  })\n</script>\n\n<!-- HTML -->\n<div class=\"selector\">Hello</div>\n```\n\n## Using presets\n\nThe easiest way to get started is to use presets via html classes. For example: \n\n```html\n<div class=\"lax lax_preset_fadeIn-50-100 lax_preset_spin\"></div>\n```\n\nMultiple presets can be chained together and they can be customised to suit your needs. Use the [preset explorer](docs/preset-explorer) to explore effects and see a simple example [here](docs/examples/html-inline.html).\n\n## DOM behavior and usage with Frameworks \n\nTo increase performance, `lax.js` indexes the list of elements to animate when the page loads. If you're using a library like React, Vue or EmberJS, it is likely that you are adding elements after the initial window.onload. Because of this you will need to call `lax.addElements` when you add components to the DOM that you want to animate, and `lax.removeElements` when the component unmounts.\n\n- React - Coming soon\n- Vue.js - Coming soon\n- Angular.js - Coming soon\n\n## Adding drivers\n\nDrivers provide the values that _drive_ your animations. To set up a driver just call `lax.addDriver` with a name and a method which returns a number. This method is called every frame to calculate the animations so keep the method as computationally _light_ as possible. The example below will be the most common use case for lax which returns the scrollY position of the window.\n\n```javascript\nlax.addDriver(\n  'scrollY',                          // Driver name\n  function(laxFrame) {                     \n    return document.body.scrollTop    // Value method\n  },\n  { }                                 // Options\n)\n```\n\n### Driver options\n\n#### `inertiaEnabled: boolean = false`\n\nIf enabled, the driver will calculate the speed at which its value is changing. Used to add inertia to elements using the [inertia element option](#inertia-number).\n\nSee this in action in the [inertia example](#).\n\n#### `frameStep: number = 1`\n\nBy default each driver updates its value every animation frame, around ~60 times per second. You can use the `frameStep` to reduce frequency of the driver value updating. For example a value of `2` would only update ~30 times per second and a value of `60` would only update about once per second.\n\n## Adding elements\n\nYou can add lax animations to an element using JavaScript or inline HTML.\n\nUsing the `addElements` method:\n\n```javascript\nlax.addElements(\n  '.selector',  // Element selector rule\n  {             // Animation data\n    scrollY: {  \n      opacity: [\n        [0, 100],\n        [1, 0]\n      ]\n    }\n  },\n  {             \n    style: {}   // Element options\n  }\n)\n```\n\n### Element options\n\n#### `style: StyleObject`\n\nAdd static CSS to each element, for example:\n\n```css\n{\n  transform: '200ms scale ease-in-out';\n}\n```\n\n# Going deeper\n\n## Custom animations\nCustom animations are defined using an object.\n\n```javascript\n// Animation data\n{\n  scrollY: {                // Driver name\n    translateX: [           // CSS property\n      ['elInY', 'elOutY'],  // Driver value map\n      [0, 'screenWidth'],   // Animation value map\n      {\n        inertia: 10        // Options\n      }\n    ],\n    opacity: [\n      // etc\n    ]\n  }\n}\n```\n\n### Driver name\nThe name of the driver you want to use as a source of values to map to your animation, for example, the `document`'s scrollY position. Read about adding drivers [here](#adding-drivers).\n\n### CSS property\nThe name of the CSS property you want to animate, for example `opacity` or `rotate`. See a list of supported properties [here](#css-properties).\n\n> Some css properties, for example `box-shadow`, require a custom function to build the style string. To do this use the [cssFn](#cssfn-value-number--string) element option.\n\n### Value maps\nThe value maps are used to interpolate the driver value and output a value for your CSS property. For example:\n\n```javascript\n[0, 200, 800]  // Driver value map\n[0, 10,  20]   // Animation value map\n\n// Result\n\n| In  | Out |\n| --- | --- |\n| 0   | 0   |\n| 100 | 5   |\n| 200 | 10  |\n| 500 | 15  |\n| 800 | 20  |\n```\n\nWithin the maps you can use strings for simple formulas as well as use special values. e.g:\n\n```javascript\n['elInY', 'elCenterY-200', 'elCenterY',\n```\n\nSee a list of available values [here](#special-values).\n\nYou can also use mobile breakpoints within animation maps for more flexibility.\n\n```javascript\nscrollY: {\n  translateX: [\n    ['elInY', 'elCenterY', 'elOutY'],\n    {\n      500: [10, 20, 50], // Screen width < 500\n      900: [30, 40, 60], // Screen width > 500 and < 900\n      1400: [30, 40, 60], // Screen width > 900\n    },\n  ];\n}\n```\n\n### Options\n\n#### `modValue: number | undefined`\nSet this option to modulus the value from the driver, for example if you want to loop the animation value as the driver value continues to increase.\n\n#### `frameStep: number = 1`\nBy default each animation updates its value every animation frame, around ~60 times per second. You can use the `frameStep` to reduce frequency of the animation updating. For example a value of `2` would only update ~30 times per second and a value of `60` would only update about once per second.\n\n#### `inertia: number`\nUse to add inertia to your animations. Use in combination with the [inertiaEnabled](#inertiaenabled-boolean--false) driver option.\n\nSee inertia in action [here](/docs/examples/inertia.html).\n\n#### `inertiaMode: \"normal\" | \"absolute\"`\nUse in combination with `inertia`. If set to `absolute` the inertia value will always be a positive number via the `Math.abs` operator.\n\n#### `cssUnit: string = \"\"`\nDefine the unit to be appended to the end of the value, for example \nFor example `px` `deg`\n\n#### `onUpdate: (driverValues: Object, domElement: DomElement) => void`\nA method called every frame with the current driverValues and domElement. For example This can be used to toggle classes on an element. See this in action [here](/docs/examples/on-update.html).\n\nThe driver values are formatted as follows:\n```js\n{\n  scrollY: [  // driverName\n    100,      // driverValue\n    0         // driverInertia\n  ]\n}\n```\n\n#### `cssFn: (value: number) => string`\nSome CSS properties require more complex strings as values. For example, `box-shadow` has multiple values that could be modified by a lax animation.\n\n```javascript\n// Box-shadow example\n(val) => {\n  return `${val}px ${val}px ${val}px rgba(0,0,0,0.5)`;\n};\n```\n\n# Glossary\n\n## CSS properties\n\n| name       |\n| ---------- |\n| opacity    |\n| scaleX     |\n| scaleY     |\n| scale      |\n| skewX      |\n| skewY      |\n| skew       |\n| rotateX    |\n| rotateY    |\n| rotate     |\n| translateX |\n| translateY |\n| translateZ |\n| blur       |\n| hue-rotate |\n| brightness |\n\n## Special values\n\n| key          | value                                                                            |\n| ------------ | -------------------------------------------------------------------------------- |\n| screenWidth  | current width of the screen                                                      |\n| screenHeight | current height of the screen                                                     |\n| pageWidth    | width of the document                                                            |\n| pageHeight   | height of the document                                                           |\n| elWidth      | width of the element                                                             |\n| elHeight     | height of the element                                                            |\n| elInY        | window scrollY position when element will appear at the bottom of the screen     |\n| elOutY       | window scrollY position when element will disappear at the top of the screen     |\n| elCenterY    | window scrollY position when element will be centered vertically on the screen   |\n| elInX        | window scrollX position when element will appear at the right of the screen      |\n| elOutX       | window scrollX position when element will disappear at the left of the screen    |\n| elCenterX    | window scrollX position when element will be centered horizontally on the screen |\n| index        | index of the element when added using `lax.addElements`                          |\n\n## Supported easings\n\n| name           |\n| -------------- |\n| easeInQuad     |\n| easeOutQuad    |\n| easeInOutQuad  |\n| easeInCubic    |\n| easeOutCubic   |\n| easeInOutCubic |\n| easeInQuart    |\n| easeOutQuart   |\n| easeInOutQuart |\n| easeInQuint    |\n| easeOutQuint   |\n| easeInOutQuint |\n| easeOutBounce  |\n| easeInBounce   |\n| easeOutBack    |\n| easeInBack     |","readmeFilename":"README.md","gitHead":"702f26f3d3e39bd024ec06843a7ce05cf72868c0","bugs":{"url":"https://github.com/alexfoxy/lax.js/issues"},"homepage":"https://github.com/alexfoxy/lax.js#readme","_id":"lax.js@2.0.0","_nodeVersion":"12.19.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-dqHzJ0110T336wGYcp3ZhGoNaku06VS3U83XCIF7S4El52t0Uqy4li3mz5ExqlzSi521UuK4kHOb2RytnP7ozg==","shasum":"802b4b636f3969ef6ad9066576c0c62b5024026a","tarball":"https://registry.npmjs.org/lax.js/-/lax.js-2.0.0.tgz","fileCount":35,"unpackedSize":2740201,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfr99JCRA9TVsSAnZWagAAb5IP/RW3bGsEIyEENfd+EDua\nAzsWrvGDbutuCnA4+I2rReeBf00RwvXe6LiBzsAX3ouNb5LPrsod06T6uBCG\nd6mZ2XZrXW9Kz8TPDI2/ozW9bTbBdXAvp6XeHrJEp5IHZ7u60P9PyyLr3fNo\nJ5jx7oj4ID1H0aNkPUuI0pA4SpYmFQifNghlWRF24pnR+aeYtf5EDSm9Yo0m\nvpb4ib38mH5vD9ybJfZ+FYPgF6FYcD1Gw5cVLA7mqv/5DbklY0Ffb+nkoKwS\nH3OEvpXxFnm7nvtfviH9X2wS7Lz6D9rW/BspJi3MiXH4CYmC2CblCmnAcj7+\nceSQRZlelLi4JUnWPefUNwPqYapnvxOaCJ7sG/epYs/axAzV0ePeAVuvacnf\nDWKW7vRt4gmxhdkW378OQZJU9xmMXKvJpZMKEGCUIdhU694VddwB36Q7Pzkx\n+mhMULYvcz59nUFETihS9jHnDo3xiTLflv17l5mNYxbHOkMmppx8ZolWamBp\ndoLHp/GzyqtdtnR+0DbL9VmXIbsEGQYENCa0FrQCHzV3/TuGl4lOjzZq7M0P\nZxaxGnLXhsCvnQkNr0C97aoliGQIS6O7nZF54T+AuNeIKTAES0fHH8F4FpW4\n54IwbnZHSvYGo939LgQki18l4GfZ1ZY3j8HMFz8VH1sqPwphK+MbicBCTjWR\nSDQD\r\n=cIcR\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCqpMh9j0ilRmtyDGB3oQphWBemtsl9pL8ZUHTuYajpAwIhAJL11CD5pVI3yRBKyNuo9khPCPOQf+741x/i6l7unv/z"}]},"_npmUser":{"name":"alexfoxy","email":"alexfoxy@gmail.com"},"directories":{},"maintainers":[{"name":"alexfoxy","email":"alexfoxy@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/lax.js_2.0.0_1605361480921_0.701441653387266"},"_hasShrinkwrap":false},"2.0.1":{"name":"lax.js","version":"2.0.1","scripts":{"build":"babel src -d lib && uglifyjs lib/lax.js -o lib/lax.min.js -c -m && gzip -c lib/lax.min.js > lib/lax.min.js.gz && cp lib/lax.min.js docs/lib/lax.min.js"},"devDependencies":{"@babel/cli":"^7.12.1","@babel/core":"^7.12.3","@babel/plugin-proposal-class-properties":"^7.12.1","@babel/preset-env":"^7.12.1","uglify-js":"^3.9.4"},"description":"Simple & lightweight (<4kb gzipped) vanilla JavaScript library to create smooth & beautiful animations when you scroll.","license":"MIT","author":{"name":"alexfoxy@gmail.com"},"repository":{"type":"git","url":"git+https://github.com/alexfoxy/lax.js.git"},"main":"lib/lax.min.js","keywords":["javascript","lax","laxxx","lax.js","laxjs","parallax","scroll","animation","effects","css","html"],"dependencies":{},"gitHead":"5db870e8387f6522909e28b40fb54d5fd97304b6","bugs":{"url":"https://github.com/alexfoxy/lax.js/issues"},"homepage":"https://github.com/alexfoxy/lax.js#readme","_id":"lax.js@2.0.1","_nodeVersion":"12.19.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-P+8NW5/6uuOvAoktDA6qOLoPDX82JLo1i5RAZ39rgoxH2P9imQ0znc1E28lYEcetlc+PuSgOpmQDD3xg83Z+bA==","shasum":"8a0454c2bad4c711770f247ecb4f42c37a621bcd","tarball":"https://registry.npmjs.org/lax.js/-/lax.js-2.0.1.tgz","fileCount":36,"unpackedSize":2754595,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfr/+cCRA9TVsSAnZWagAAn5wP/j7cUAL7kJJ0zbF41dN4\nJBfypG8ZvkEAapnpgwwiJi4MOqI0JVt9hy4V2fog0Wbmmzu6BarBGKxvHxw2\nAaZi36KH0fjexZXjMG5H9VF3U1JczgGHbu6o77pZ4E+AxQG7/SjMVDMj+odL\n6bOaVnhToTLzLrSwrsUT7WZV1KsqsWLHnpkADBQFyizqHgxUmkJ+jYNEw0hf\nTX5UJ/J4GYTkftZP/fn+VS7BbUJjbSgyXsnUrA67kTKKgRvdxpl6M0kmC5Z5\nwIAjR0Bj8/9kZudUqIyBxVYgEiIlwCllRLJbopmQC1s7KikwTojKuGXoimqU\ngm9uILjvufuyEQcWeMeieshUUcmgiyq3Sm8+gwl0SLwbow+X89hPIP9aHurc\n3SijgkgBdYCVBncmdqVhu5BVvTSNTH6dWgCpkiy+dzo4mUUxP3fve0WQB2V5\n5tcD+NEzxSDjJDrw4xt7odM+o9ptb1KR0p2iugrGXT3mv0VLqcvzZwxczPlI\ng9gUpCCNtx3K0LfNVUMUR942yeHrrTrT2bgsNtmohTycoqY8Aq4sadary3sE\n1HL7xJDTSxWGtQy883fonBKXUmCaIrGtwANbJSRkskSGJgvvUoGsxOxO5DVc\nzy3TXg8DMi7Fn5Ar+zesA7W0IB/4Rx8eDJ6uIEM07UhpkUrWhZOh+ulELSd6\n9pIn\r\n=DhFm\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHZWd2vaO3YO03D9T2rNZiNgXdeGjPvfmXY4ET9Fza13AiEAlfUCGjFneFXYjZn9jyVUGzXhRDDgHevuYSXg5uboTzw="}]},"_npmUser":{"name":"alexfoxy","email":"alexfoxy@gmail.com"},"directories":{},"maintainers":[{"name":"alexfoxy","email":"alexfoxy@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/lax.js_2.0.1_1605369755584_0.35301459781549993"},"_hasShrinkwrap":false},"2.0.2":{"name":"lax.js","version":"2.0.2","scripts":{"build":"babel src -d lib && uglifyjs lib/lax.js -o lib/lax.min.js -c -m && gzip -c lib/lax.min.js > lib/lax.min.js.gz && cp lib/lax.min.js docs/lib/lax.min.js"},"devDependencies":{"@babel/cli":"^7.12.1","@babel/core":"^7.12.3","@babel/plugin-proposal-class-properties":"^7.12.1","@babel/preset-env":"^7.12.1","uglify-js":"^3.9.4"},"description":"Simple & lightweight (<4kb gzipped) vanilla JavaScript library to create smooth & beautiful animations when you scroll.","license":"MIT","author":{"name":"alexfoxy@gmail.com"},"repository":{"type":"git","url":"https://github.com/alexfoxy/lax.js"},"main":"lib/lax.min.js","keywords":["javascript","lax","laxxx","lax.js","laxjs","parallax","scroll","animation","effects","css","html"],"dependencies":{},"licenseText":"MIT License\n\nCopyright (c) 2020 Alex Fox\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"lax.js@2.0.2","dist":{"shasum":"26fc310d4dd6f3b3d809f4488d5586160682feae","integrity":"sha512-RxWYnpRzc1JwDFLDhBPLdCGg94K8ZjWJwQNxJxQTDtsfoFiNh9cGv77VBQ2wFqCN8YE5CGSUGSVav6eGkfBF3A==","tarball":"https://registry.npmjs.org/lax.js/-/lax.js-2.0.2.tgz","fileCount":47,"unpackedSize":2755443,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfsq2cCRA9TVsSAnZWagAAo5kP/AyMZQ+cCH2w4M0Kus15\nHKZwQsVsrYiAQ8cd5zd/JRu6RbswTWED4geGBjclfrPERskOaLT72zjHzOuR\nEJTA86Kfh3/Bg21fqMqzmK1IOFdnzWWgWVwErkVdMf1nSBSxCXiCbJYNfgoo\n3sgg8j1l5BNs21NrdJ88As+IYi0g/0RkkmJkyVscnHiklLBpQS+lyB6+ENnV\nNiAeuT3Jn7BtdzKHEveGYT6J4Dq1GpQBJyt6dRfdSzz5pq8w2JPD4PuM1Tlb\nhmFSpxLNtV4xHJpr+lmXfG17iupucIQY+w01ct1zuO1br2WYKDVR80NBf/O8\nzXpcDgRp6OMl+kvbHI5Fevd/WLA1r6MQXnTEs2sb7iAx3997f58Ey09Aa1fv\np1Eyvy1zngYs+6FwnyB1y9EfmLXdUo/ZHFgUBP0DwofT69BzO8B/5zkGXJam\nTuJImCv92HyKlaZYqQUbZYxIkmA/0km5H+9QszL+uWMaunK2j2O/BkJelizp\n1/DVM3yfqA2qLcJ1cRp1sAQvJj/dUgv2PPOuvZYF8ICCUxRArclbLcbGkVtL\nUOJykfOjfgm3qwudNO2FZFPpKSbGAdgD6p8Ru4putdqJfFEw6ztuVxwFiR5T\nvB5lThEr/2dzS65FznX2Tq5IgXht+xlgbI05TdXZfbPVNk4qkr9VXXREWb9o\n+1X3\r\n=XnIN\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCqKbyRnNAW08yluJIv/nodCdNN0ElrEerRnW3xnllr9QIhAKocpG3nyyeJMEeIxgjZ2Is9VYVVvqfCss0dRT9zV/Em"}]},"_npmUser":{"name":"alexfoxy","email":"alexfoxy@gmail.com"},"directories":{},"maintainers":[{"name":"alexfoxy","email":"alexfoxy@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/lax.js_2.0.2_1605545371587_0.7560091975115084"},"_hasShrinkwrap":false},"2.0.3":{"name":"lax.js","version":"2.0.3","scripts":{"build":"babel src -d lib && uglifyjs lib/lax.js -o lib/lax.min.js -c -m && gzip -c lib/lax.min.js > lib/lax.min.js.gz && cp lib/lax.min.js docs/lib/lax.min.js"},"devDependencies":{"@babel/cli":"^7.12.1","@babel/core":"^7.12.3","@babel/plugin-proposal-class-properties":"^7.12.1","@babel/preset-env":"^7.12.1","uglify-js":"^3.9.4"},"description":"Simple & lightweight (<4kb gzipped) vanilla JavaScript library to create smooth & beautiful animations when you scroll.","license":"MIT","author":{"name":"alexfoxy@gmail.com"},"repository":{"type":"git","url":"git+https://github.com/alexfoxy/lax.js.git"},"main":"lib/lax.min.js","keywords":["javascript","lax","laxxx","lax.js","laxjs","parallax","scroll","animation","effects","css","html"],"dependencies":{},"gitHead":"607c580c92c193473ca6f7a093635925649fc4e9","bugs":{"url":"https://github.com/alexfoxy/lax.js/issues"},"homepage":"https://github.com/alexfoxy/lax.js#readme","_id":"lax.js@2.0.3","_nodeVersion":"12.19.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-q2q0jVRwruvFdQZeeE3OwIszRIkey6CItPmB+BcTUFPgHd2R8LI+bntAI7d2GJEjheu79mzQ++MROkODuZoXlA==","shasum":"74aed57a628db42fcfa91b7a746cec443a611a38","tarball":"https://registry.npmjs.org/lax.js/-/lax.js-2.0.3.tgz","fileCount":38,"unpackedSize":2757380,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf6i2mCRA9TVsSAnZWagAASSEP/2uIF5pD/TFBF7zHeged\nB+EXHpzZboC7pzq3rxZ02f4brDw1biuA8OXKLcSV1a9nBbpHDHsWwllIMdId\nGdhe6aANi96nmkBGn/rgalpvRtL2QNpBmauY2FOl3MX5lfeufEVavaH+UyHC\n9liBx7Dg93UlXTVIHZHnYU4AX1siSy+HBhtIcQI/DiqMwAb3+PaSsoSMKXSv\noQmoWbkKWFgL0EtS6O608SISNWA3QqudCH7ldwPFsdcyKbT5QsK972WqJtRI\nP6Gvf2Nxp9i/ySFhWf73e1aK5FMvrTMyur/o364OBVIqRuXrcJjMSbCzQJJf\nCJ8pOczLF/Ushbky8W2YINF2OcIeL5x0TxjY3i0oPwwiL3YymEyE84wS9cEl\nC81aO6sKocm3pMlZu/x+EooQjLWJtIKr3hpNwsrvrMhjO7SYDj5hcxb+BLKy\nYCWN/YVEWUITCcQfhGc3AVBzrROPsWXc7mLPiX8/xGBO+YtcW2niMsnTxMDG\n3V2JWOmbI/iLeDY63XzftqDtm0bzsColg63RCvAwjoijYgUD3D0qlXZ2k5wD\nzs26+YRsxkn2O/gZrVGTH7MNTd9+XKjDOlFNgB3bnv8KpPSQm0AL8p6EkZ0H\nmKbzLVy9KctMIoB5USKRR+A1CLyZEaJX4ZROgfsxUQ6gmATM4CHnwpxKXXl9\nM41M\r\n=IVQW\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDYo2rNAfdKd6shXs9osGy58lPXajU4MFmNLTJ+7sjfrAIhAOZ0/U/vQ1FXyoiLWBWjUumr/GqAoRI5mPRkhUsZmAiO"}]},"_npmUser":{"name":"alexfoxy","email":"alexfoxy@gmail.com"},"directories":{},"maintainers":[{"name":"alexfoxy","email":"alexfoxy@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/lax.js_2.0.3_1609182629461_0.14325344151047203"},"_hasShrinkwrap":false}},"time":{"created":"2019-03-16T13:45:03.140Z","1.0.1":"2019-03-16T13:45:03.572Z","modified":"2023-06-12T09:57:34.041Z","1.0.2":"2019-03-16T13:46:31.618Z","1.0.3":"2019-03-16T14:13:02.142Z","1.0.4":"2019-03-17T11:46:45.122Z","1.0.5":"2019-03-18T16:47:30.248Z","1.1.0":"2019-03-19T15:41:07.795Z","1.2.0":"2019-03-26T09:02:45.577Z","1.2.1":"2019-04-03T06:20:29.314Z","1.2.2":"2019-04-03T16:50:47.031Z","1.2.3":"2019-04-04T21:37:48.244Z","1.2.5":"2019-10-15T14:54:05.483Z","2.0.0":"2020-11-14T13:44:41.168Z","2.0.1":"2020-11-14T16:02:35.793Z","2.0.2":"2020-11-16T16:49:31.749Z","2.0.3":"2020-12-28T19:10:29.657Z"},"maintainers":[{"name":"alexfoxy","email":"alexfoxy@gmail.com"}],"description":"Simple & lightweight (<4kb gzipped) vanilla JavaScript library to create smooth & beautiful animations when you scroll.","keywords":["javascript","lax","laxxx","lax.js","laxjs","parallax","scroll","animation","effects","css","html"],"repository":{"type":"git","url":"git+https://github.com/alexfoxy/lax.js.git"},"author":{"name":"alexfoxy@gmail.com"},"license":"MIT","readme":"# lax.js\n\nSimple & lightweight (<4kb gzipped) vanilla JavaScript library to create smooth & beautiful animations when you scroll. \n\n![Lax 2.0 Gif](https://i.imgur.com/XNvvAOv.gif)\n\n[>> DEMO <<](https://alexfox.dev/lax.js/)\n\n---\n## What's new with Lax.js 2.0\nLax.js 2.0 has been completely re-written with a focus on modularity and flexibility giving you more tools to create awesome animations.\n- New javascript animation syntax, allowing for more advanced effect combos\n- Use any value to drive animations, for example mouse position, time of day .. and of course scroll!\n- Animations can be given inertia when scrolling\n- Create custom CSS bindings \n- Animation easings\n- And much more..\n\n## Examples\n- [Scroll effect](https://alexfox.dev/lax.js/examples/scroll)\n- [Horizontal snap scroll](https://alexfox.dev/lax.js/examples/snap-scroll)\n- [Inertia](https://alexfox.dev/lax.js/examples/inertia)\n- [Video/Gif playback](https://alexfox.dev/lax.js/examples/sprite)\n- [Cursor position](https://alexfox.dev/lax.js/examples/cursor)\n- [Text input](https://alexfox.dev/lax.js/examples/input)\n- [Update HTML content](https://alexfox.dev/lax.js/examples/on-update)\n- [Preset Explorer](https://alexfox.dev/lax.js/preset-explorer)\n\n\n# Documentation\n\n### 1. Getting started\n\n- [Setup](#setup)\n- [Using presets](#using-presets)\n- [Usage with UI frameworks](#dom-behavior-and-usage-with-frameworks)\n- [Adding drivers](#adding-drivers)\n- [Adding elements](#adding-elements)\n\n### 2. Going deeper\n\n- [Custom animations](#custom-animations)\n- [Optimising performance](#optimising-performance)\n\n### 3. Glossary\n\n- [CSS properties](#css-properties)\n- [Special values](#special-values)\n- [Supported easings](#supported-easings)\n\n# Getting started\n\n### NPM Setup\n\n```bash\n# https://www.npmjs.com/package/lax.js\n\nnpm install lax.js\nyarn add lax.js\n```\n```js\nimport lax from 'lax.js'\n```\n\n### HTML setup\n\n```html\n<script src=\"path-to-lax.min.js\"></script>\n<!-- or via CDN -->\n<script src=\"https://cdn.jsdelivr.net/npm/lax.js\" ></script>\n```\n\n\n## Setup\n\nTo implement lax you need to create at least one _driver_, to provide values for animations, as well as the element animation bindings. Below is a simple example:\n\n```html\n<!-- JS -->\n<script>\n  window.onload = function () {\n    lax.init()\n\n    // Add a driver that we use to control our animations\n    lax.addDriver('scrollY', function () {\n      return window.scrollY\n    })\n\n    // Add animation bindings to elements\n    lax.addElements('.selector', {\n      scrollY: {\n        translateX: [\n          [\"elInY\", \"elCenterY\", \"elOutY\"],\n          [0, 'screenWidth/2', 'screenWidth'],\n        ]\n      }\n    })\n  }\n</script>\n\n<!-- HTML -->\n<div class=\"selector\">Hello</div>\n```\n\n## Using presets\n\nThe easiest way to get started is to use presets via html classes. For example: \n\n```html\n<div class=\"lax lax_preset_fadeIn:50:100 lax_preset_spin\"></div>\n```\n\nMultiple presets can be chained together and they can be customised to suit your needs. Use the [preset explorer](https://alexfox.dev/lax.js/preset-explorer) to explore effects and see a simple example [here](https://alexfox.dev/lax.js/html-inline).\n\n## DOM behavior and usage with Frameworks \n\nTo increase performance, `lax.js` indexes the list of elements to animate when the page loads. If you're using a library like React, Vue or EmberJS, it is likely that you are adding elements after the initial window.onload. Because of this you will need to call `lax.addElements` when you add components to the DOM that you want to animate, and `lax.removeElements` when the component unmounts.\n\nPlease find a React example [here](https://codesandbox.io/s/laxjs-react-example-nc4h7). Other examples will be available soon for Vue.js and Angular.\n\n## Adding drivers\n\nDrivers provide the values that _drive_ your animations. To set up a driver just call `lax.addDriver` with a name and a function which returns a number. This method is called every frame to calculate the animations so keep the method as computationally _light_ as possible. The example below will be the most common use case for lax which returns the scrollY position of the window.\n\n```javascript\nlax.addDriver(\n  'scrollY',                          // Driver name\n  function(laxFrame) {                     \n    return window.scrollY    // Value method\n  },\n  { }                                 // Options\n)\n```\n\n### Driver options\n\n#### `inertiaEnabled: boolean = false`\n\nIf enabled, the driver will calculate the speed at which its value is changing. Used to add inertia to elements using the [inertia element option](#inertia-number).\n\nSee this in action in the [here](https://alexfox.dev/lax.js/examples/inertia).\n\n#### `frameStep: number = 1`\n\nBy default each driver updates its value every animation frame, around ~60 times per second. You can use the `frameStep` to reduce frequency of the driver value updating. For example a value of `2` would only update ~30 times per second and a value of `60` would only update about once per second.\n\n## Adding elements\n\nYou can add lax animations to an element using the `addElements` method:\n\n```javascript\nlax.addElements(\n  '.selector',  // Element selector rule\n  {             // Animation data\n    scrollY: {  \n      opacity: [\n        [0, 100],\n        [1, 0]\n      ]\n    }\n  },\n  {             \n    style: {}   // Element options\n  }\n)\n```\n\n### Element options\n\n#### `style: StyleObject`\n\nAdd static CSS to each element, for example:\n\n```css\n{\n  transform: '200ms scale ease-in-out';\n}\n```\n\n#### `onUpdate: (driverValues: Object, domElement: DomElement) => void`\nA method called every frame with the current driverValues and domElement. This could be used to toggle classes on an element or set innerHTML. See it in action [here](https://alexfox.dev/lax.js/examples/on-update).\n\nThe driver values are formatted as follows:\n```js\n{\n  scrollY: [  // Driver name\n    100,      // Driver value\n    0         // Driver inertia\n  ]\n}\n```\n\n# Going deeper\n\n## Custom animations\nCustom animations are defined using an object.\n\n```javascript\n// Animation data\n{\n  scrollY: {                // Driver name\n    translateX: [           // CSS property\n      ['elInY', 'elOutY'],  // Driver value map\n      [0, 'screenWidth'],   // Animation value map\n      {\n        inertia: 10        // Options\n      }\n    ],\n    opacity: [\n      // etc\n    ]\n  }\n}\n```\n\n### Driver name\nThe name of the driver you want to use as a source of values to map to your animation, for example, the document's scrollY position. Read about adding drivers [here](#adding-drivers).\n\n### CSS property\nThe name of the CSS property you want to animate, for example `opacity` or `rotate`. See a list of supported properties [here](#css-properties).\n\n> Some CSS properties, for example `box-shadow`, require a custom function to build the style string. To do this use the [cssFn](#cssfn-value-number--string) element option.\n\n### Value maps\nThe value maps are used to interpolate the driver value and output a value for your CSS property. For example:\n\n```javascript\n[0, 200, 800]  // Driver value map\n[0, 10,  20]   // Animation value map\n\n// Result\n\n| In  | Out |\n| --- | --- |\n| 0   | 0   |\n| 100 | 5   |\n| 200 | 10  |\n| 500 | 15  |\n| 800 | 20  |\n```\n\nWithin the maps you can use strings for simple formulas as well as use special values. e.g:\n\n```javascript\n['elInY', 'elCenterY-200', 'elCenterY',\n```\n\nSee a list of available values [here](#special-values).\n\nYou can also use mobile breakpoints within animation maps for more flexibility.\n\n```javascript\nscrollY: {\n  translateX: [\n    ['elInY', 'elCenterY', 'elOutY'],\n    {\n      500: [10, 20, 50], // Screen width < 500\n      900: [30, 40, 60], // Screen width > 500 and < 900\n      1400: [30, 40, 60], // Screen width > 900\n    },\n  ];\n}\n```\n\n### Options\n\n#### `modValue: number | undefined`\nSet this option to modulus the value from the driver, for example if you want to loop the animation value as the driver value continues to increase.\n\n#### `frameStep: number = 1`\nBy default each animation updates its value every animation frame, around ~60 times per second. You can use the `frameStep` to reduce frequency of the animation updating. For example a value of `2` would only update ~30 times per second and a value of `60` would only update about once per second.\n\n#### `inertia: number`\nUse to add inertia to your animations. Use in combination with the [inertiaEnabled](#inertiaenabled-boolean--false) driver option.\n\nSee inertia in action [here](https://alexfox.dev/lax.js/examples/inertia).\n\n\n#### `inertiaMode: \"normal\" | \"absolute\"`\nUse in combination with `inertia`. If set to `absolute` the inertia value will always be a positive number via the `Math.abs` operator.\n\n#### `cssUnit: string = \"\"`\nDefine the unit to be appended to the end of the value, for example \nFor example `px` `deg`\n\n#### `cssFn: (value: number, domElement: DomElement) => number | string`\nSome CSS properties require more complex strings as values. For example, `box-shadow` has multiple values that could be modified by a lax animation.\n\n```javascript\n// Box-shadow example\n(val) => {\n  return `${val}px ${val}px ${val}px rgba(0,0,0,0.5)`;\n};\n```\n\n#### `easing: string`\nSee a list of available values [here](#supported-easings).\n\n## Optimising performance\nLax.js has been designed to be performant but there are a few things to bare in mind when creating your websites.\n- Smaller elements perform better. \n- Postion `fixed` and `absolute` elements perform best as they do not trigger a layout change when updated.\n- Off-screen elements do not need to be updated so consider that when creating your animation value maps.\n- The css properties `blur`, `hue-rotate` and `brightness` are graphically intensive and do not run as smoothly as the other available properties.\n\n# Glossary\n\n## CSS properties\n\n| name       |\n| ---------- |\n| opacity    |\n| scaleX     |\n| scaleY     |\n| scale      |\n| skewX      |\n| skewY      |\n| skew       |\n| rotateX    |\n| rotateY    |\n| rotate     |\n| translateX |\n| translateY |\n| translateZ |\n| blur       |\n| hue-rotate |\n| brightness |\n\n## Special values\n\n| key          | value                                                                            |\n| ------------ | -------------------------------------------------------------------------------- |\n| screenWidth  | current width of the screen                                                      |\n| screenHeight | current height of the screen                                                     |\n| pageWidth    | width of the document                                                            |\n| pageHeight   | height of the document                                                           |\n| elWidth      | width of the element                                                             |\n| elHeight     | height of the element                                                            |\n| elInY        | window scrollY position when element will appear at the bottom of the screen     |\n| elOutY       | window scrollY position when element will disappear at the top of the screen     |\n| elCenterY    | window scrollY position when element will be centered vertically on the screen   |\n| elInX        | window scrollX position when element will appear at the right of the screen      |\n| elOutX       | window scrollX position when element will disappear at the left of the screen    |\n| elCenterX    | window scrollX position when element will be centered horizontally on the screen |\n| index        | index of the element when added using `lax.addElements`                          |\n\n## Supported easings\n\n| name           |\n| -------------- |\n| easeInQuad     |\n| easeOutQuad    |\n| easeInOutQuad  |\n| easeInCubic    |\n| easeOutCubic   |\n| easeInOutCubic |\n| easeInQuart    |\n| easeOutQuart   |\n| easeInOutQuart |\n| easeInQuint    |\n| easeOutQuint   |\n| easeInOutQuint |\n| easeOutBounce  |\n| easeInBounce   |\n| easeOutBack    |\n| easeInBack     |\n","readmeFilename":"README.md","homepage":"https://github.com/alexfoxy/lax.js#readme","bugs":{"url":"https://github.com/alexfoxy/lax.js/issues"},"users":{"hdusy":true,"baixi233":true}}