{"_id":"classy-loader","_rev":"33-dc13957ecf60f7302717cc7e3858f9d1","name":"classy-loader","description":"Classy-loader is a powerful tool for React application to manage your CSS/JS DOM elements class names.   This loader connects JS and CSS class names so you can syncronize and obfuscate them.   It has a smart built-in mechanism to merge your class names wi","dist-tags":{"latest":"1.3.3"},"versions":{"1.0.0":{"name":"classy-loader","author":{"name":"Bushmakin Stas","email":"bushstas@mail.ru"},"main":"lib/index.js","version":"1.0.0","bugs":{"url":"https://github.com/bushstas/classy-loader/issues"},"repository":{"type":"git","url":"git+https://github.com/bushstas/classy-loader.git"},"gitHead":"39c8fba24dafa18d51f67112269eac86caed2c49","description":"Classy-loader is a powerful tool to manage your CSS/JS DOM elements class names","homepage":"https://github.com/bushstas/classy-loader#readme","_id":"classy-loader@1.0.0","_npmVersion":"5.4.2","_nodeVersion":"8.7.0","_npmUser":{"name":"bushstas","email":"bushstas@mail.ru"},"dist":{"integrity":"sha512-SJSWVRIiWMzhb5mIYj6FQ2IkX+XRq9zHI1sHwVLX5Oeux6sYXG8tYw6MwovA5eEfhxw4J6yiLBgM/v46FVfGCw==","shasum":"8cc453712fcdd25ae0a9d75830c340f37ec13f24","tarball":"https://registry.npmjs.org/classy-loader/-/classy-loader-1.0.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBoARjkxd9jZnhFcgC9Ir2VNzNIAUZZ5Kmq1U9SqNdG6AiEAn8lwe7QmTEbOhloinTFP8yY8vvDN2TfIdCSqhOBd6is="}]},"maintainers":[{"name":"bushstas","email":"bushstas@mail.ru"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/classy-loader-1.0.0.tgz_1513406382657_0.5597647274844348"},"directories":{}},"1.0.1":{"name":"classy-loader","author":{"name":"Bushmakin Stas","email":"bushstas@mail.ru"},"main":"lib/index.js","version":"1.0.1","bugs":{"url":"https://github.com/bushstas/classy-loader/issues"},"repository":{"type":"git","url":"git+https://github.com/bushstas/classy-loader.git"},"gitHead":"0c4fb33824975500f8c38d00d2c3282273097f30","description":"Classy-loader is a powerful tool for React application to manage your CSS/JS DOM elements class names.<br> This loader connects JS and CSS class names so you can syncronize and obfuscate them.<br> It has a smart built-in mechanism to merge your class name","homepage":"https://github.com/bushstas/classy-loader#readme","_id":"classy-loader@1.0.1","_npmVersion":"5.4.2","_nodeVersion":"8.7.0","_npmUser":{"name":"bushstas","email":"bushstas@mail.ru"},"dist":{"integrity":"sha512-Utako0qVA68lZ1psZJNuWKG2jL3fLYLYqGa4AOf/yx5QiVAA/czAEYLvVr8hxSDabZV9rq8uFIeB3PuE//57rA==","shasum":"ba93c69198d165610fbccd17bc7e365471b2ffc8","tarball":"https://registry.npmjs.org/classy-loader/-/classy-loader-1.0.1.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDB5mBoW9ufqbiJFmGHg6JyksTCudPfg5xrdmpAqfVauAiAylk8TVabKWcvCYOh+2LL+ngntjN+Jg01hWXY7hKhLSQ=="}]},"maintainers":[{"name":"bushstas","email":"bushstas@mail.ru"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/classy-loader-1.0.1.tgz_1513414633496_0.8287793500348926"},"directories":{}},"1.0.2":{"name":"classy-loader","author":{"name":"Bushmakin Stas","email":"bushstas@mail.ru"},"main":"lib/index.js","version":"1.0.2","bugs":{"url":"https://github.com/bushstas/classy-loader/issues"},"repository":{"type":"git","url":"git+https://github.com/bushstas/classy-loader.git"},"gitHead":"540d26b2803b1a31860f4694a0bfb00e8b6b0a3f","description":"Classy-loader is a powerful tool for React application to manage your CSS/JS DOM elements class names.<br> This loader connects JS and CSS class names so you can syncronize and obfuscate them.<br> It has a smart built-in mechanism to merge your class name","homepage":"https://github.com/bushstas/classy-loader#readme","_id":"classy-loader@1.0.2","_npmVersion":"5.4.2","_nodeVersion":"8.7.0","_npmUser":{"name":"bushstas","email":"bushstas@mail.ru"},"dist":{"integrity":"sha512-sLw0BpNk65NLQT5tn5gVNf0G57Ku5Xnz0qiaO99piilcDGjXQCt09Yu6BDvHEre7eC7diNJ2w315YKAJTablAw==","shasum":"e3b58fe6a4a43ce4852d0bd92f5ff878f103ba81","tarball":"https://registry.npmjs.org/classy-loader/-/classy-loader-1.0.2.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICmn+BvgDO4Gn3NJE8vnZbcdeY7pzToC6sxEgEWaUZ5AAiEAzDUgtMhq+DLnEV+U5K5U+rzx0VDFvP6f/IVoubnK990="}]},"maintainers":[{"name":"bushstas","email":"bushstas@mail.ru"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/classy-loader-1.0.2.tgz_1513438762309_0.637214062968269"},"directories":{}},"1.0.3":{"name":"classy-loader","author":{"name":"Bushmakin Stas","email":"bushstas@mail.ru"},"main":"lib/index.js","version":"1.0.3","bugs":{"url":"https://github.com/bushstas/classy-loader/issues"},"repository":{"type":"git","url":"git+https://github.com/bushstas/classy-loader.git"},"gitHead":"1f669c1da200a593c5f710c7709ded0e89deebae","description":"Classy-loader is a powerful tool for React application to manage your CSS/JS DOM elements class names.<br> This loader connects JS and CSS class names so you can syncronize and obfuscate them.<br> It has a smart built-in mechanism to merge your class name","homepage":"https://github.com/bushstas/classy-loader#readme","_id":"classy-loader@1.0.3","_npmVersion":"5.4.2","_nodeVersion":"8.7.0","_npmUser":{"name":"bushstas","email":"bushstas@mail.ru"},"dist":{"integrity":"sha512-D9SM/zqncaYEQvbnEkhyriKbdX6awh8YRzzGoheOwx4viYfV6AqLZyL/3Nlk2yomFfko7LfOyUJDHZYhfq0sbA==","shasum":"fa804f6e247144d1a8f84f45d2c7584bba20e057","tarball":"https://registry.npmjs.org/classy-loader/-/classy-loader-1.0.3.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD1EOcXwDnBA7BGHttTEvrD54SycPqT8ft7CpTdVSx5rQIgKgGVV1/Gx1ViWLy931dFWhS8DuzhLL9nrMxgFKnNTG4="}]},"maintainers":[{"name":"bushstas","email":"bushstas@mail.ru"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/classy-loader-1.0.3.tgz_1513439731563_0.7718767304904759"},"directories":{}},"1.0.4":{"name":"classy-loader","author":{"name":"Bushmakin Stas","email":"bushstas@mail.ru"},"main":"lib/index.js","version":"1.0.4","bugs":{"url":"https://github.com/bushstas/classy-loader/issues"},"repository":{"type":"git","url":"git+https://github.com/bushstas/classy-loader.git"},"gitHead":"1f669c1da200a593c5f710c7709ded0e89deebae","description":"Classy-loader is a powerful tool for React application to manage your CSS/JS DOM elements class names.<br> This loader connects JS and CSS class names so you can syncronize and obfuscate them.<br> It has a smart built-in mechanism to merge your class name","homepage":"https://github.com/bushstas/classy-loader#readme","_id":"classy-loader@1.0.4","_npmVersion":"5.4.2","_nodeVersion":"8.7.0","_npmUser":{"name":"bushstas","email":"bushstas@mail.ru"},"dist":{"integrity":"sha512-BiM5OFhr1JOwLnYCHooXCmP+BoVRU5+xeYFsPdHsWAvZtEz2VeYHmmUY3QfDtguCEHo9ZTk5DnsyvI0V9UJYzA==","shasum":"c56da1ed096ba399fd9902472f37bb3140e8ea3f","tarball":"https://registry.npmjs.org/classy-loader/-/classy-loader-1.0.4.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIC8TNVnwwZEUGKBdRJ8NSLAWuI1hA5r16BqATzXMN7opAiAD97ABk3hClUKqtV820o6TWuMrlhSxYHzcmfrZ46inUg=="}]},"maintainers":[{"name":"bushstas","email":"bushstas@mail.ru"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/classy-loader-1.0.4.tgz_1513440061308_0.5318439612165093"},"directories":{}},"1.0.5":{"name":"classy-loader","author":{"name":"Bushmakin Stas","email":"bushstas@mail.ru"},"main":"lib/index.js","version":"1.0.5","bugs":{"url":"https://github.com/bushstas/classy-loader/issues"},"repository":{"type":"git","url":"git+https://github.com/bushstas/classy-loader.git"},"gitHead":"afea90ff11c5a82392823fa9492a2a08e80c1908","description":"Classy-loader is a powerful tool for React application to manage your CSS/JS DOM elements class names.<br> This loader connects JS and CSS class names so you can syncronize and obfuscate them.<br> It has a smart built-in mechanism to merge your class name","homepage":"https://github.com/bushstas/classy-loader#readme","_id":"classy-loader@1.0.5","_npmVersion":"5.4.2","_nodeVersion":"8.7.0","_npmUser":{"name":"bushstas","email":"bushstas@mail.ru"},"dist":{"integrity":"sha512-9VZnILHsxBSO/PGGA4T2GQRM3gI1tw5T9HxQSfdI99LyyFfScIE393j0fFdBJkhpOAhB47MHe5lGFWbXusUFVA==","shasum":"d98286072d4b7f32508355acc20936bd361ebf5f","tarball":"https://registry.npmjs.org/classy-loader/-/classy-loader-1.0.5.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCDdtXCcKwG5EqkXMsolLLvTth0so87izdYLCIZ816TRwIhAIkwAObLphVF2UY0KjvRDfDP+wpQSOa7oAk6mfXZLoWn"}]},"maintainers":[{"name":"bushstas","email":"bushstas@mail.ru"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/classy-loader-1.0.5.tgz_1513490691315_0.23072160664014518"},"directories":{}},"1.0.6":{"name":"classy-loader","author":{"name":"Bushmakin Stas","email":"bushstas@mail.ru"},"main":"lib/index.js","version":"1.0.6","bugs":{"url":"https://github.com/bushstas/classy-loader/issues"},"repository":{"type":"git","url":"git+https://github.com/bushstas/classy-loader.git"},"gitHead":"a5ce1319673613fab74835a2f99fb0a11305cc4a","description":"Classy-loader is a powerful tool for React application to manage your CSS/JS DOM elements class names.   This loader connects JS and CSS class names so you can syncronize and obfuscate them.   It has a smart built-in mechanism to merge your class names wi","homepage":"https://github.com/bushstas/classy-loader#readme","_id":"classy-loader@1.0.6","_npmVersion":"5.4.2","_nodeVersion":"8.7.0","_npmUser":{"name":"bushstas","email":"bushstas@mail.ru"},"dist":{"integrity":"sha512-V6lKAK6Hb9CZw2Wawvzd7ASGZJnvbyqCZurhCL5cKgElTaQpQgYb3rBK3X0QGUA/uZx1D4CjEhkM1aDyPzoggA==","shasum":"28e92fbf0d94589d2d42099b6d72db55fca26196","tarball":"https://registry.npmjs.org/classy-loader/-/classy-loader-1.0.6.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCmHpM7s3ZLJIVdo1KOHcYKUSglDPsenyijHcTouwRtIAIgKnAV0dWGKFnOxLf/9zihLyXsOOYyK5/c/6gJlWu8M8M="}]},"maintainers":[{"name":"bushstas","email":"bushstas@mail.ru"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/classy-loader-1.0.6.tgz_1513498281863_0.276386936660856"},"directories":{}},"1.0.7":{"name":"classy-loader","author":{"name":"Bushmakin Stas","email":"bushstas@mail.ru"},"main":"lib/index.js","version":"1.0.7","bugs":{"url":"https://github.com/bushstas/classy-loader/issues"},"repository":{"type":"git","url":"git+https://github.com/bushstas/classy-loader.git"},"gitHead":"8a7d1f4d140483a4a7a110eb6900b44dd1a0bf3f","description":"Classy-loader is a powerful tool for React application to manage your CSS/JS DOM elements class names.   This loader connects JS and CSS class names so you can syncronize and obfuscate them.   It has a smart built-in mechanism to merge your class names wi","homepage":"https://github.com/bushstas/classy-loader#readme","_id":"classy-loader@1.0.7","_npmVersion":"5.4.2","_nodeVersion":"8.7.0","_npmUser":{"name":"bushstas","email":"bushstas@mail.ru"},"dist":{"integrity":"sha512-60Dn7DAVl1zmTVHKdZpTK7rVCdF8T02h/CK1PkOm4rxY2SxBxt5W4fPayKcfpfYCXTh2z4jqYOFOTGZa3LsOIA==","shasum":"25ccebc393971c29f59bd5f157bba01dac74fe27","tarball":"https://registry.npmjs.org/classy-loader/-/classy-loader-1.0.7.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC6cjm3Yzt/7r6axzR63fNI7Y1si2bDR9wdGBrg6ea0vgIhAI1BH3xeqS0lpl/5zeSFZIzSiUQ7c84XwRzwAsnMmEp/"}]},"maintainers":[{"name":"bushstas","email":"bushstas@mail.ru"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/classy-loader-1.0.7.tgz_1513506157208_0.5969210339244455"},"directories":{}},"1.0.8":{"name":"classy-loader","author":{"name":"Bushmakin Stas","email":"bushstas@mail.ru"},"main":"lib/index.js","version":"1.0.8","bugs":{"url":"https://github.com/bushstas/classy-loader/issues"},"repository":{"type":"git","url":"git+https://github.com/bushstas/classy-loader.git"},"gitHead":"824ea5f1ea98bf3f2326aa4997185b111ab18f03","description":"Classy-loader is a powerful tool for React application to manage your CSS/JS DOM elements class names.   This loader connects JS and CSS class names so you can syncronize and obfuscate them.   It has a smart built-in mechanism to merge your class names wi","homepage":"https://github.com/bushstas/classy-loader#readme","_id":"classy-loader@1.0.8","_npmVersion":"5.4.2","_nodeVersion":"8.7.0","_npmUser":{"name":"bushstas","email":"bushstas@mail.ru"},"dist":{"integrity":"sha512-CyCnjLXlJstVd0iIh8KSG4xXInr5d/86L/nIGJiBPPKIaCuYod2SQNgsPoAdRxd1ou6PrFoZqHkp9IBVof5VsQ==","shasum":"7a8ecd3bc0c8b8e3726049a3f834da906c8e4191","tarball":"https://registry.npmjs.org/classy-loader/-/classy-loader-1.0.8.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICPCeC/v8hSAKoC6RtxW5JyN1k24qvkS4TgOcvc+ZoW5AiEAqKvIoRHFCNlM0iNQ5VvRXIjEvEeJUaihPr16vUkN+AI="}]},"maintainers":[{"name":"bushstas","email":"bushstas@mail.ru"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/classy-loader-1.0.8.tgz_1513516276518_0.41294168191961944"},"directories":{}},"1.1.0":{"name":"classy-loader","author":{"name":"Bushmakin Stas","email":"bushstas@mail.ru"},"main":"lib/index.js","version":"1.1.0","bugs":{"url":"https://github.com/bushstas/classy-loader/issues"},"repository":{"type":"git","url":"git+https://github.com/bushstas/classy-loader.git"},"gitHead":"fec324c6a8dfb6595e405a6cf9930964be2dbd22","description":"Classy-loader is a powerful tool for React application to manage your CSS/JS DOM elements class names.   This loader connects JS and CSS class names so you can syncronize and obfuscate them.   It has a smart built-in mechanism to merge your class names wi","homepage":"https://github.com/bushstas/classy-loader#readme","_id":"classy-loader@1.1.0","_npmVersion":"5.4.2","_nodeVersion":"8.7.0","_npmUser":{"name":"bushstas","email":"bushstas@mail.ru"},"dist":{"integrity":"sha512-Nzz5xB/cvDdXZaD3Y3PL8TBdyIXM7zue+oVQh/EOn6P8L83HdP97zQzvWMMxRXDw+tI4eun26QRQmvPfPW5+7A==","shasum":"0c47a5f68b413b1ef6078b4206381ab726539867","tarball":"https://registry.npmjs.org/classy-loader/-/classy-loader-1.1.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAFux4CChz9cYMXUPn6GxXg5/tlVuJF2VcMnGgRo0l2bAiEA4pUbO10zZHU33r5h5AprbKeTiRCMuF4YIZztp0brLVg="}]},"maintainers":[{"name":"bushstas","email":"bushstas@mail.ru"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/classy-loader-1.1.0.tgz_1513532911627_0.9278958842623979"},"directories":{}},"1.1.1":{"name":"classy-loader","author":{"name":"Bushmakin Stas","email":"bushstas@mail.ru"},"main":"lib/index.js","version":"1.1.1","bugs":{"url":"https://github.com/bushstas/classy-loader/issues"},"repository":{"type":"git","url":"git+https://github.com/bushstas/classy-loader.git"},"gitHead":"b71d9df33d7c5465d4956cf19e9606e3d22309fc","description":"Classy-loader is a powerful tool for React application to manage your CSS/JS DOM elements class names.   This loader connects JS and CSS class names so you can syncronize and obfuscate them.   It has a smart built-in mechanism to merge your class names wi","homepage":"https://github.com/bushstas/classy-loader#readme","_id":"classy-loader@1.1.1","_npmVersion":"5.4.2","_nodeVersion":"8.7.0","_npmUser":{"name":"bushstas","email":"bushstas@mail.ru"},"dist":{"integrity":"sha512-07kvx1K7opD56suc0iZx7SQ4E5QNwLaf4wR5Zz3suJP3PNO0kC0b9RNgCzCMr0GaR7zYQXEtF3UZSis8cX8suQ==","shasum":"8be12079f77f6689026cbc290ceb185dd131bacc","tarball":"https://registry.npmjs.org/classy-loader/-/classy-loader-1.1.1.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHUO2JsNevqILHLXGqPEG/7N9pgtd+gITCfJOtErHV+4AiEA0+yY+cRUUf3HuInCA671+L5qavg72hogsg3xjXQsU6s="}]},"maintainers":[{"name":"bushstas","email":"bushstas@mail.ru"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/classy-loader-1.1.1.tgz_1513533408373_0.5043445636983961"},"directories":{}},"1.1.2":{"name":"classy-loader","author":{"name":"Bushmakin Stas","email":"bushstas@mail.ru"},"main":"lib/index.js","version":"1.1.2","bugs":{"url":"https://github.com/bushstas/classy-loader/issues"},"repository":{"type":"git","url":"git+https://github.com/bushstas/classy-loader.git"},"gitHead":"e1c760e1a662d39f60ef822a6c94403b97588f29","description":"Classy-loader is a powerful tool for React application to manage your CSS/JS DOM elements class names.   This loader connects JS and CSS class names so you can syncronize and obfuscate them.   It has a smart built-in mechanism to merge your class names wi","homepage":"https://github.com/bushstas/classy-loader#readme","_id":"classy-loader@1.1.2","_npmVersion":"5.4.2","_nodeVersion":"8.7.0","_npmUser":{"name":"bushstas","email":"bushstas@mail.ru"},"dist":{"integrity":"sha512-qCnA3FCV99ImieN8+1wnL54qZxQ0MIsBIx5u4GTXIGT0xyrjHIfHevydeUiAncqyUcxxhfSw0yCOCoS+O4bmuQ==","shasum":"3f6cdb64b6c7a95c2db7be5a3469baed5c6bc47c","tarball":"https://registry.npmjs.org/classy-loader/-/classy-loader-1.1.2.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBbaIVHk2ChaVK7cNMzySMPL3uiBCMWFFbovFfnG/mE+AiBi8i6Ye0GFsIb0G8MLGv4Y9DsWi2RKmMdu5mpWnr3rRA=="}]},"maintainers":[{"name":"bushstas","email":"bushstas@mail.ru"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/classy-loader-1.1.2.tgz_1513534555866_0.650694731157273"},"directories":{}},"1.1.3":{"name":"classy-loader","author":{"name":"Bushmakin Stas","email":"bushstas@mail.ru"},"main":"lib/index.js","version":"1.1.3","bugs":{"url":"https://github.com/bushstas/classy-loader/issues"},"repository":{"type":"git","url":"git+https://github.com/bushstas/classy-loader.git"},"gitHead":"4c0a4aaa7e11b8fb1ceb98e2f158f7cc7294c2b4","description":"Classy-loader is a powerful tool for React application to manage your CSS/JS DOM elements class names.   This loader connects JS and CSS class names so you can syncronize and obfuscate them.   It has a smart built-in mechanism to merge your class names wi","homepage":"https://github.com/bushstas/classy-loader#readme","_id":"classy-loader@1.1.3","_npmVersion":"5.5.1","_nodeVersion":"9.2.0","_npmUser":{"name":"bushstas","email":"bushstas@mail.ru"},"dist":{"integrity":"sha512-JON7BoAFX6J7I7SRZZPzgEXaD1ffvXSIkHHo33dOZBwgWcQVBYuy5ve6/FhmJ4QJd4RzvYiYwzkdEqQAuiNFag==","shasum":"8d479a949fa8ede6ea09707a3973a3628bd7f56b","tarball":"https://registry.npmjs.org/classy-loader/-/classy-loader-1.1.3.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQClDBXbT909lH8+LHP4HhLa6W6aQ9C3MJVR4DeMzm9xhwIgZlwPoXYBTzYdXQRSEslj347CJ1hj09rw/NI5TvAIEso="}]},"maintainers":[{"name":"bushstas","email":"bushstas@mail.ru"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/classy-loader-1.1.3.tgz_1513587757231_0.4295898510608822"},"directories":{}},"1.1.4":{"name":"classy-loader","author":{"name":"Bushmakin Stas","email":"bushstas@mail.ru"},"main":"lib/index.js","version":"1.1.4","bugs":{"url":"https://github.com/bushstas/classy-loader/issues"},"repository":{"type":"git","url":"git+https://github.com/bushstas/classy-loader.git"},"gitHead":"12e6f5db92f0518048aad9e86919b2363bfbece5","description":"Classy-loader is a powerful tool for React application to manage your CSS/JS DOM elements class names.   This loader connects JS and CSS class names so you can syncronize and obfuscate them.   It has a smart built-in mechanism to merge your class names wi","homepage":"https://github.com/bushstas/classy-loader#readme","_id":"classy-loader@1.1.4","_npmVersion":"5.5.1","_nodeVersion":"9.2.0","_npmUser":{"name":"bushstas","email":"bushstas@mail.ru"},"dist":{"integrity":"sha512-qP+z4JleUVSji0CAC0T/YHLP/XT0bsC2JD4eLxT0tktInchCKpPIMU0W22/00Gv06khnTOdMshvNaPy4M1BD1Q==","shasum":"640b8727fa2bd098cc03e176853eead1523cd85c","tarball":"https://registry.npmjs.org/classy-loader/-/classy-loader-1.1.4.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIB6PZBZzF5grNJRX+F2oeKgKpHswd3gFct9pW5wM/D1JAiAdjL31rDRHPU19FzHzjzg0SxRz6p2DnvtRcx4IWlBT1w=="}]},"maintainers":[{"name":"bushstas","email":"bushstas@mail.ru"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/classy-loader-1.1.4.tgz_1513607521875_0.29059485741890967"},"directories":{}},"1.1.5":{"name":"classy-loader","author":{"name":"Bushmakin Stas","email":"bushstas@mail.ru"},"main":"lib/index.js","version":"1.1.5","bugs":{"url":"https://github.com/bushstas/classy-loader/issues"},"repository":{"type":"git","url":"git+https://github.com/bushstas/classy-loader.git"},"gitHead":"b5e6ecde7bb51ebdb64d3e4a2184e4f78e158d7a","description":"Classy-loader is a powerful tool for React application to manage your CSS/JS DOM elements class names.   This loader connects JS and CSS class names so you can syncronize and obfuscate them.   It has a smart built-in mechanism to merge your class names wi","homepage":"https://github.com/bushstas/classy-loader#readme","_id":"classy-loader@1.1.5","_npmVersion":"5.5.1","_nodeVersion":"9.2.0","_npmUser":{"name":"bushstas","email":"bushstas@mail.ru"},"dist":{"integrity":"sha512-71LEbp4JCng52hJYstmmBG3wpkSGBqtxwHz1/IC5KiI4Vh/JuZthX5/3CXdXSh2CURJFYCevhMgH9NNPfpO+7w==","shasum":"57acb8a2042e96fb6628eb10afd4cea93a261b80","tarball":"https://registry.npmjs.org/classy-loader/-/classy-loader-1.1.5.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDGyYWoZqZz8Q+1GJ2AoTBw17KmzO/zbnlXhfiPInfpoQIhANAhUbD+LdJq5Xc5inMW9VJV0UCGIrLvKAScrrKk83De"}]},"maintainers":[{"name":"bushstas","email":"bushstas@mail.ru"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/classy-loader-1.1.5.tgz_1513607821513_0.4262795133981854"},"directories":{}},"1.1.6":{"name":"classy-loader","author":{"name":"Bushmakin Stas","email":"bushstas@mail.ru"},"main":"lib/index.js","version":"1.1.6","bugs":{"url":"https://github.com/bushstas/classy-loader/issues"},"repository":{"type":"git","url":"git+https://github.com/bushstas/classy-loader.git"},"gitHead":"3cff8603a1339ace3c4fc2313ec158cf7644e49e","description":"Classy-loader is a powerful tool for React application to manage your CSS/JS DOM elements class names.   This loader connects JS and CSS class names so you can syncronize and obfuscate them.   It has a smart built-in mechanism to merge your class names wi","homepage":"https://github.com/bushstas/classy-loader#readme","_id":"classy-loader@1.1.6","_npmVersion":"5.5.1","_nodeVersion":"9.2.0","_npmUser":{"name":"bushstas","email":"bushstas@mail.ru"},"dist":{"integrity":"sha512-ETD+yVZ5QR1kIQYWgXG8XTvDFc5hN692Bdm96RajxpNmHV+TzOH2t0tbFCritFa7F5n7jns18Xek0SpzsjMUmw==","shasum":"a0c3bc11efbdeaa9775a1ebd6e517cfcc3164eca","tarball":"https://registry.npmjs.org/classy-loader/-/classy-loader-1.1.6.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC3eUxQx6cUZTLqPQEsQY6XkOcAPIbiKXRDTrKrInQ4lgIhALXI75G8q939+5UaYB0myeA443MiSmvLN7Eru1Qc3Dy+"}]},"maintainers":[{"name":"bushstas","email":"bushstas@mail.ru"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/classy-loader-1.1.6.tgz_1513608435090_0.5190075084101409"},"directories":{}},"1.1.7":{"name":"classy-loader","author":{"name":"Bushmakin Stas","email":"bushstas@mail.ru"},"main":"lib/index.js","version":"1.1.7","bugs":{"url":"https://github.com/bushstas/classy-loader/issues"},"repository":{"type":"git","url":"git+https://github.com/bushstas/classy-loader.git"},"gitHead":"08ad2f14db4951cc7d7a43f753884b161d846adf","description":"Classy-loader is a powerful tool for React application to manage your CSS/JS DOM elements class names.   This loader connects JS and CSS class names so you can syncronize and obfuscate them.   It has a smart built-in mechanism to merge your class names wi","homepage":"https://github.com/bushstas/classy-loader#readme","_id":"classy-loader@1.1.7","_npmVersion":"5.4.2","_nodeVersion":"8.7.0","_npmUser":{"name":"bushstas","email":"bushstas@mail.ru"},"dist":{"integrity":"sha512-C86bw+x9ORV1QYokFk9spE7PVoaxDaGc1hnFK9M4DmNZ12soy3u/Sa8DP9cZb7WQmY6Bof4Kx29ftdL9kmclKg==","shasum":"10b0f0e38ba5273fe06f1f6ea725b4b35c1000a7","tarball":"https://registry.npmjs.org/classy-loader/-/classy-loader-1.1.7.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICabYEsoKrF0W02PcKU0IC1FkXPAf0sbOGQbYgg60+mkAiEAqr1qYctWnLwNCOYjvS6h6yHQf3qW33n7Z3kdoVYEwVU="}]},"maintainers":[{"name":"bushstas","email":"bushstas@mail.ru"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/classy-loader-1.1.7.tgz_1513622372286_0.13911511399783194"},"directories":{}},"1.1.8":{"name":"classy-loader","author":{"name":"Bushmakin Stas","email":"bushstas@mail.ru"},"main":"lib/index.js","version":"1.1.8","bugs":{"url":"https://github.com/bushstas/classy-loader/issues"},"repository":{"type":"git","url":"git+https://github.com/bushstas/classy-loader.git"},"gitHead":"9a539cc788587e0ca61320c3af3175391783b33e","description":"Classy-loader is a powerful tool for React application to manage your CSS/JS DOM elements class names.   This loader connects JS and CSS class names so you can syncronize and obfuscate them.   It has a smart built-in mechanism to merge your class names wi","homepage":"https://github.com/bushstas/classy-loader#readme","_id":"classy-loader@1.1.8","_npmVersion":"5.4.2","_nodeVersion":"8.7.0","_npmUser":{"name":"bushstas","email":"bushstas@mail.ru"},"dist":{"integrity":"sha512-qSt1BSyDYnXNvuDNaXXaIistqZkEsClew9EpmqEj9RFG4fxVimj+7haYXO3dtPxPgtsXpFfK3Le0HdjUls+w0g==","shasum":"b9561a53fdada24c63b388f3e643f0ace5b174c4","tarball":"https://registry.npmjs.org/classy-loader/-/classy-loader-1.1.8.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIF8ZLz/JviOvhidlmQtUfg0bqGkHsiZKmRlrHDymD6sJAiB5nIvIf8B8o5iiK+Q2hWGFPiCEFSqOcq1vnoZtgb/SQA=="}]},"maintainers":[{"name":"bushstas","email":"bushstas@mail.ru"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/classy-loader-1.1.8.tgz_1513627015600_0.6743083260953426"},"directories":{}},"1.1.9":{"name":"classy-loader","author":{"name":"Bushmakin Stas","email":"bushstas@mail.ru"},"main":"lib/index.js","version":"1.1.9","bugs":{"url":"https://github.com/bushstas/classy-loader/issues"},"repository":{"type":"git","url":"git+https://github.com/bushstas/classy-loader.git"},"gitHead":"2787deaed943f488962ae7b492df09189f64b22f","description":"Classy-loader is a powerful tool for React application to manage your CSS/JS DOM elements class names.   This loader connects JS and CSS class names so you can syncronize and obfuscate them.   It has a smart built-in mechanism to merge your class names wi","homepage":"https://github.com/bushstas/classy-loader#readme","_id":"classy-loader@1.1.9","_npmVersion":"5.4.2","_nodeVersion":"8.7.0","_npmUser":{"name":"bushstas","email":"bushstas@mail.ru"},"dist":{"integrity":"sha512-hTDdiJPf4hsswCgkTMHcvqzceLrnvgfEFJjDVC7UsaJiU3sJO1oeL4CnyccWi7sk8bJhRSudgVuzrSNjZj8TmA==","shasum":"f0ddae32dfc476bdbf571daa72767b4054e3cd56","tarball":"https://registry.npmjs.org/classy-loader/-/classy-loader-1.1.9.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDAB+IiJtFrmzv31HwYhiA0Q+aCAnv1tLVCX1D7fJqc4wIgChrO877hxwt63mLnqMV/CXHZn5CGUWUP+9OuZf8X2hY="}]},"maintainers":[{"name":"bushstas","email":"bushstas@mail.ru"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/classy-loader-1.1.9.tgz_1513627290539_0.9496170824859291"},"directories":{}},"1.2.1":{"name":"classy-loader","author":{"name":"Bushmakin Stas","email":"bushstas@mail.ru"},"main":"lib/index.js","version":"1.2.1","bugs":{"url":"https://github.com/bushstas/classy-loader/issues"},"repository":{"type":"git","url":"git+https://github.com/bushstas/classy-loader.git"},"gitHead":"c5f3582735220f7cd2d9fa156be5fa7bd5c1804a","description":"Classy-loader is a powerful tool for React application to manage your CSS/JS DOM elements class names.   This loader connects JS and CSS class names so you can syncronize and obfuscate them.   It has a smart built-in mechanism to merge your class names wi","homepage":"https://github.com/bushstas/classy-loader#readme","_id":"classy-loader@1.2.1","_npmVersion":"5.5.1","_nodeVersion":"9.2.0","_npmUser":{"name":"bushstas","email":"bushstas@mail.ru"},"dist":{"integrity":"sha512-WEzKwcbw+x+F+HDaLEOf8Oere7y4CITXIoFoaked9VbomKzaV5wzO8CqaG7vB4kWx1jI9sWVuTyxQ5A9TyzmNQ==","shasum":"87b18fca3564e5cdaa9ab8fef9614e9bb0998bdb","tarball":"https://registry.npmjs.org/classy-loader/-/classy-loader-1.2.1.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFaP2utkdzdYr4J15onqKOufSrgWRqEvEBgHJig6uiOZAiEAhRFJGhCG33YpszsIfaz3KlmjAIhpVrNI0cq1GyrqrT0="}]},"maintainers":[{"name":"bushstas","email":"bushstas@mail.ru"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/classy-loader-1.2.1.tgz_1513862213889_0.3986045583151281"},"directories":{}},"1.2.2":{"name":"classy-loader","author":{"name":"Bushmakin Stas","email":"bushstas@mail.ru"},"main":"lib/index.js","version":"1.2.2","bugs":{"url":"https://github.com/bushstas/classy-loader/issues"},"repository":{"type":"git","url":"git+https://github.com/bushstas/classy-loader.git"},"gitHead":"c0fd58245cfc57eeae302f5384b1699374935cb7","description":"Classy-loader is a powerful tool for React application to manage your CSS/JS DOM elements class names.   This loader connects JS and CSS class names so you can syncronize and obfuscate them.   It has a smart built-in mechanism to merge your class names wi","homepage":"https://github.com/bushstas/classy-loader#readme","_id":"classy-loader@1.2.2","_npmVersion":"5.5.1","_nodeVersion":"9.2.0","_npmUser":{"name":"bushstas","email":"bushstas@mail.ru"},"dist":{"integrity":"sha512-7idNkUNJ0pGmvxRYxdQoAgzykEOHyjOIECacfBi1evsxDNkEKC+rG3rwaIva+iX+9FkLoEfBXW8vvvG9PY/5fQ==","shasum":"b038fe7c3de5845d22d4a90fd6b8b060319634eb","tarball":"https://registry.npmjs.org/classy-loader/-/classy-loader-1.2.2.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCpaMtZaEnO2jrXLqmTCTeNaTNdBJOi/R+hwZPWAKb8cgIhAIGJoZucfobJfCnaEwsLmFMS4ZT/qAp9lLoycRdn+wrB"}]},"maintainers":[{"name":"bushstas","email":"bushstas@mail.ru"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/classy-loader-1.2.2.tgz_1513863235174_0.33457972086034715"},"directories":{}},"1.2.3":{"name":"classy-loader","author":{"name":"Bushmakin Stas","email":"bushstas@mail.ru"},"main":"lib/index.js","version":"1.2.3","bugs":{"url":"https://github.com/bushstas/classy-loader/issues"},"repository":{"type":"git","url":"git+https://github.com/bushstas/classy-loader.git"},"gitHead":"4fefaf411bf3740a97425ceb414c75e370e1793f","description":"Classy-loader is a powerful tool for React application to manage your CSS/JS DOM elements class names.   This loader connects JS and CSS class names so you can syncronize and obfuscate them.   It has a smart built-in mechanism to merge your class names wi","homepage":"https://github.com/bushstas/classy-loader#readme","_id":"classy-loader@1.2.3","_npmVersion":"5.5.1","_nodeVersion":"9.2.0","_npmUser":{"name":"bushstas","email":"bushstas@mail.ru"},"dist":{"integrity":"sha512-oMvsDlM3oKcVDlpswbxRFXS9zktNW2g9JiEbEye4Du3aZvSZmEihWpVVGZ8aGnE7IsoYOT/GrGCj/I8woe55YA==","shasum":"1ce7976260f47321c015cc7a568ed681db8ecaa0","tarball":"https://registry.npmjs.org/classy-loader/-/classy-loader-1.2.3.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAxoflgj8spnFTW9AwJDzsXNJMWlZBdX7Upsf+s4Q/g2AiALVkdfv5g2Ol8JB/igXor87ypEViwdhRQq13efgqqiMA=="}]},"maintainers":[{"name":"bushstas","email":"bushstas@mail.ru"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/classy-loader-1.2.3.tgz_1513865308596_0.11060897819697857"},"directories":{}},"1.2.4":{"name":"classy-loader","author":{"name":"Bushmakin Stas","email":"bushstas@mail.ru"},"main":"lib/index.js","version":"1.2.4","bugs":{"url":"https://github.com/bushstas/classy-loader/issues"},"repository":{"type":"git","url":"git+https://github.com/bushstas/classy-loader.git"},"gitHead":"140c03e8dd3527edb37aac8383e5a5c9d929c851","description":"Classy-loader is a powerful tool for React application to manage your CSS/JS DOM elements class names.   This loader connects JS and CSS class names so you can syncronize and obfuscate them.   It has a smart built-in mechanism to merge your class names wi","homepage":"https://github.com/bushstas/classy-loader#readme","_id":"classy-loader@1.2.4","_npmVersion":"5.5.1","_nodeVersion":"9.2.0","_npmUser":{"name":"bushstas","email":"bushstas@mail.ru"},"dist":{"integrity":"sha512-DyKE3qpc1lBgZWE3ciUmI2Li4BcZMj/SLLazQ2w7KFGSGq1XVi1nxQQP5CbFPAXS7CzBPsOAZ9n5JpRMSkNA9A==","shasum":"8ea2be7d9431720740e4fa51c1b2a03df2319fc7","tarball":"https://registry.npmjs.org/classy-loader/-/classy-loader-1.2.4.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCd+lywZIUm/JdEfVTpLAAL2DUm6dPsspvltqBVDQI8IgIgNkC/i+Qu2ZSgr+BtNyO8NqRqHeU8UfFH0fB9YVpxtcY="}]},"maintainers":[{"name":"bushstas","email":"bushstas@mail.ru"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/classy-loader-1.2.4.tgz_1513931307751_0.6998862042091787"},"directories":{}},"1.2.5":{"name":"classy-loader","author":{"name":"Bushmakin Stas","email":"bushstas@mail.ru"},"main":"lib/index.js","version":"1.2.5","bugs":{"url":"https://github.com/bushstas/classy-loader/issues"},"repository":{"type":"git","url":"git+https://github.com/bushstas/classy-loader.git"},"gitHead":"fdf5be8b579d16b2981ad6370dd0268bf9411b5d","description":"Classy-loader is a powerful tool for React application to manage your CSS/JS DOM elements class names.   This loader connects JS and CSS class names so you can syncronize and obfuscate them.   It has a smart built-in mechanism to merge your class names wi","homepage":"https://github.com/bushstas/classy-loader#readme","_id":"classy-loader@1.2.5","_npmVersion":"5.4.2","_nodeVersion":"8.7.0","_npmUser":{"name":"bushstas","email":"bushstas@mail.ru"},"dist":{"integrity":"sha512-7vpjAKdauFyGq5rwb9a5YSpnPVNxmxUQvByWj15gUNbDL0hCx/WgiV1Nimf01T/RJpt3xFmkLjPwILcxqQY9sQ==","shasum":"43303a026f1d46ee3868aa8fc8d78b8a3411b73e","tarball":"https://registry.npmjs.org/classy-loader/-/classy-loader-1.2.5.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCqwdCKOe0rWQzHsiCnijlQ4wYv6E0Gz6Idv4bdweyyiwIgETT4G+XoydyZ4TUq1GhddNhJWQRgrsJttXov9FkcnAQ="}]},"maintainers":[{"name":"bushstas","email":"bushstas@mail.ru"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/classy-loader-1.2.5.tgz_1513962852813_0.9567595543339849"},"directories":{}},"1.2.6":{"name":"classy-loader","author":{"name":"Bushmakin Stas","email":"bushstas@mail.ru"},"main":"lib/index.js","version":"1.2.6","bugs":{"url":"https://github.com/bushstas/classy-loader/issues"},"repository":{"type":"git","url":"git+https://github.com/bushstas/classy-loader.git"},"gitHead":"c370c951a4da8d35612e002d3243d76f1fd8979c","description":"Classy-loader is a powerful tool for React application to manage your CSS/JS DOM elements class names.   This loader connects JS and CSS class names so you can syncronize and obfuscate them.   It has a smart built-in mechanism to merge your class names wi","homepage":"https://github.com/bushstas/classy-loader#readme","_id":"classy-loader@1.2.6","_npmVersion":"5.4.2","_nodeVersion":"8.7.0","_npmUser":{"name":"bushstas","email":"bushstas@mail.ru"},"dist":{"integrity":"sha512-qCgw4cBt+kdQ+0rn/bAmjJnlp6tVcu/ZYwoZQ/Y8e2DgnqOd2vPITn8cPD7bCyT+DTWHn8ZJjoDS5IK7zbTS/g==","shasum":"af65edaa39dfb470c3ad5af3e23a34b0dabce563","tarball":"https://registry.npmjs.org/classy-loader/-/classy-loader-1.2.6.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCmAKM7DGydqgbwLZQVBFa3gvb6PWpVue/V6yGTZe77XAIgHT+IQXE1isHJeZBzu0gDSwdkCCl4KD/nl7SeLBCvc1E="}]},"maintainers":[{"name":"bushstas","email":"bushstas@mail.ru"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/classy-loader-1.2.6.tgz_1514009956945_0.8274993286468089"},"directories":{}},"1.2.7":{"name":"classy-loader","author":{"name":"Bushmakin Stas","email":"bushstas@mail.ru"},"main":"lib/index.js","version":"1.2.7","bugs":{"url":"https://github.com/bushstas/classy-loader/issues"},"repository":{"type":"git","url":"git+https://github.com/bushstas/classy-loader.git"},"gitHead":"a32864183d3b155ddaa3dd6ab9b19055b5236005","description":"Classy-loader is a powerful tool for React application to manage your CSS/JS DOM elements class names.   This loader connects JS and CSS class names so you can syncronize and obfuscate them.   It has a smart built-in mechanism to merge your class names wi","homepage":"https://github.com/bushstas/classy-loader#readme","_id":"classy-loader@1.2.7","_npmVersion":"5.4.2","_nodeVersion":"8.7.0","_npmUser":{"name":"bushstas","email":"bushstas@mail.ru"},"dist":{"integrity":"sha512-yb2tLLw7/xWtIYCeSpFdG5AUeFIh07iBZlkqV1RFtrNZlG147BxfH50xeWBEpajzFQMb04UXTj/TqRm74bBAvA==","shasum":"1b2795390f7961161193573047517fb2c316d6f9","tarball":"https://registry.npmjs.org/classy-loader/-/classy-loader-1.2.7.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIH6PdTg6f4ikohyzxBpZHvMGijUtINFwKTkzx6ogkENoAiEAhhNoES2MO2yasJHItsDu0ykutMXqMnxcbEZS9hCw6bk="}]},"maintainers":[{"name":"bushstas","email":"bushstas@mail.ru"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/classy-loader-1.2.7.tgz_1514010519855_0.13378334697335958"},"directories":{}},"1.2.8":{"name":"classy-loader","author":{"name":"Bushmakin Stas","email":"bushstas@mail.ru"},"main":"lib/index.js","version":"1.2.8","bugs":{"url":"https://github.com/bushstas/classy-loader/issues"},"repository":{"type":"git","url":"git+https://github.com/bushstas/classy-loader.git"},"gitHead":"c159751380fec07ef60ca6b682a251d33d3954a7","description":"Classy-loader is a powerful tool for React application to manage your CSS/JS DOM elements class names.   This loader connects JS and CSS class names so you can syncronize and obfuscate them.   It has a smart built-in mechanism to merge your class names wi","homepage":"https://github.com/bushstas/classy-loader#readme","_id":"classy-loader@1.2.8","_npmVersion":"5.4.2","_nodeVersion":"8.7.0","_npmUser":{"name":"bushstas","email":"bushstas@mail.ru"},"dist":{"integrity":"sha512-tDojRSTLHwFRTgSzOWZpyKG/kT8LujDzMBbZrQisqxvOn4YYrYnA4ODexJcWw8LwO8KL+5cz02SsdkS9Ol7Lkg==","shasum":"acf45ab75394f1ce558bcde2761b84495bc100ac","tarball":"https://registry.npmjs.org/classy-loader/-/classy-loader-1.2.8.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFKd2P3UwPSHpvxujHmOpWt1LeEeGj3O9a08iy0tMAt6AiEAqI2EaX2e5w0ggJkuOsT45w42uLXMhv9EgHhmhgX6XUE="}]},"maintainers":[{"name":"bushstas","email":"bushstas@mail.ru"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/classy-loader-1.2.8.tgz_1514025794353_0.8553743117954582"},"directories":{}},"1.2.9":{"name":"classy-loader","author":{"name":"Bushmakin Stas","email":"bushstas@mail.ru"},"main":"lib/index.js","version":"1.2.9","bugs":{"url":"https://github.com/bushstas/classy-loader/issues"},"repository":{"type":"git","url":"git+https://github.com/bushstas/classy-loader.git"},"gitHead":"cecf795625fe0f579f966d397d990a1968fcf819","description":"Classy-loader is a powerful tool for React application to manage your CSS/JS DOM elements class names.   This loader connects JS and CSS class names so you can syncronize and obfuscate them.   It has a smart built-in mechanism to merge your class names wi","homepage":"https://github.com/bushstas/classy-loader#readme","_id":"classy-loader@1.2.9","_npmVersion":"5.4.2","_nodeVersion":"8.7.0","_npmUser":{"name":"bushstas","email":"bushstas@mail.ru"},"dist":{"integrity":"sha512-R6EXY1cAfEtaYPk+ma8czrtGIuCyJnjcW4nJrfLakWZnp4TMWkGE4IZPSWrYNsfd0jLxOTVeKFKlacOKwARSzQ==","shasum":"40f8dd47f9521c858506f5d7928e4718e6b83383","tarball":"https://registry.npmjs.org/classy-loader/-/classy-loader-1.2.9.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIH9/Kftpo/4woV9Vmo1AVbEGKLQzG4K+wAGJTl4VvG2rAiAl4HFgS94Ap/ZZnghfTgQFI/maR7nNDCW4zQY/yLUIXA=="}]},"maintainers":[{"name":"bushstas","email":"bushstas@mail.ru"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/classy-loader-1.2.9.tgz_1515162198870_0.8468314460478723"},"directories":{}},"1.3.0":{"name":"classy-loader","author":{"name":"Bushmakin Stas","email":"bushstas@mail.ru"},"main":"lib/index.js","version":"1.3.0","bugs":{"url":"https://github.com/bushstas/classy-loader/issues"},"repository":{"type":"git","url":"git+https://github.com/bushstas/classy-loader.git"},"gitHead":"e439a3089faac1f2388b05c8744e2e8083f942b3","description":"Classy-loader is a powerful tool for React application to manage your CSS/JS DOM elements class names.   This loader connects JS and CSS class names so you can syncronize and obfuscate them.   It has a smart built-in mechanism to merge your class names wi","homepage":"https://github.com/bushstas/classy-loader#readme","_id":"classy-loader@1.3.0","_npmVersion":"5.5.1","_nodeVersion":"9.2.0","_npmUser":{"name":"bushstas","email":"bushstas@mail.ru"},"dist":{"integrity":"sha512-LQvQK8z082chFLrzLVbcfI36RoFLVdJKM09rxx1iLjKpiDa4QjyHEBMsaTSEAFXAMein+igWrKPKnhh/N960OA==","shasum":"0517718f6d43529c32e3c19336bdcc4ae42576b7","tarball":"https://registry.npmjs.org/classy-loader/-/classy-loader-1.3.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDfZhGWXQ5DxzgvVXi+GlQPskEYyJ2tinib+fkdQNuEWAiEA/UbKvtUthnZmR/lvanO5HoFl6gWhOUrZUiVo8x0vdx4="}]},"maintainers":[{"name":"bushstas","email":"bushstas@mail.ru"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/classy-loader-1.3.0.tgz_1515659845982_0.2364672429393977"},"directories":{}},"1.3.1":{"name":"classy-loader","author":{"name":"Bushmakin Stas","email":"bushstas@mail.ru"},"main":"lib/index.js","version":"1.3.1","bugs":{"url":"https://github.com/bushstas/classy-loader/issues"},"repository":{"type":"git","url":"git+https://github.com/bushstas/classy-loader.git"},"gitHead":"d876fa7a4a3cb9b62cf8fd2c5e760bfabf971b69","description":"Classy-loader is a powerful tool for React application to manage your CSS/JS DOM elements class names.   This loader connects JS and CSS class names so you can syncronize and obfuscate them.   It has a smart built-in mechanism to merge your class names wi","homepage":"https://github.com/bushstas/classy-loader#readme","_id":"classy-loader@1.3.1","_npmVersion":"5.5.1","_nodeVersion":"9.2.0","_npmUser":{"name":"bushstas","email":"bushstas@mail.ru"},"dist":{"integrity":"sha512-NjdBnVjDBrLYhgxUz3afEM1rCuiXD9L+SogYJTM2eK7fDiepamWfZQVIZ8/CVevFBTgZFOz0ERK29irztjTavA==","shasum":"ac1feb4ec5da93ed9db7edaa21dc82dbdbfcbacb","tarball":"https://registry.npmjs.org/classy-loader/-/classy-loader-1.3.1.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDALeH07iA6c76gW4WpGJAPCOO6be7D9heGpFdRYFBmVwIgIpByXRArfU9vwRD/LiMvBPt49DYHtwowxKojBZiQnFQ="}]},"maintainers":[{"name":"bushstas","email":"bushstas@mail.ru"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/classy-loader-1.3.1.tgz_1516889500043_0.3755892589688301"},"directories":{}},"1.3.2":{"name":"classy-loader","author":{"name":"Bushmakin Stas","email":"bushstas@mail.ru"},"main":"lib/index.js","version":"1.3.2","bugs":{"url":"https://github.com/bushstas/classy-loader/issues"},"repository":{"type":"git","url":"git+https://github.com/bushstas/classy-loader.git"},"gitHead":"5e9264b88ec873040e59a904d0e960c71fb9d554","description":"Classy-loader is a powerful tool for React application to manage your CSS/JS DOM elements class names.   This loader connects JS and CSS class names so you can syncronize and obfuscate them.   It has a smart built-in mechanism to merge your class names wi","homepage":"https://github.com/bushstas/classy-loader#readme","_id":"classy-loader@1.3.2","_npmVersion":"5.4.2","_nodeVersion":"8.7.0","_npmUser":{"name":"bushstas","email":"bushstas@mail.ru"},"dist":{"integrity":"sha512-5eD2dDdbiHHM8xMbDJQLKYtE0Lu1+ONVX6ueWyEvyOJCyZhDHsguZnuILBCFSeA0W8k4VO4vo2DI7vBO/v/DSg==","shasum":"08da65bd7bf251839d3066fc9becea80e3c673b2","tarball":"https://registry.npmjs.org/classy-loader/-/classy-loader-1.3.2.tgz","fileCount":6,"unpackedSize":112601,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDaCOOEhuMN56JEtBEbPaXSx+XX58MyqZCAm6goJIVeHAiBZxEB8Wu8Eo8KmbC5nY3JmIJn78FTqdNKMI+TOwFg6HA=="}]},"maintainers":[{"name":"bushstas","email":"bushstas@mail.ru"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/classy-loader_1.3.2_1518849466600_0.9144900979996471"},"_hasShrinkwrap":false},"1.3.3":{"name":"classy-loader","author":{"name":"Bushmakin Stas","email":"bushstas@mail.ru"},"main":"lib/index.js","version":"1.3.3","bugs":{"url":"https://github.com/bushstas/classy-loader/issues"},"repository":{"type":"git","url":"git+https://github.com/bushstas/classy-loader.git"},"gitHead":"5e27dec119ba1a5cff2c3ec5a787e1d118af7f30","description":"Classy-loader is a powerful tool for React application to manage your CSS/JS DOM elements class names.   This loader connects JS and CSS class names so you can syncronize and obfuscate them.   It has a smart built-in mechanism to merge your class names wi","homepage":"https://github.com/bushstas/classy-loader#readme","_id":"classy-loader@1.3.3","_npmVersion":"5.5.1","_nodeVersion":"9.2.0","_npmUser":{"name":"bushstas","email":"bushstas@mail.ru"},"dist":{"integrity":"sha512-DALxp/AbxcZ7jofeRUe8sb2boVMgiWr3gXwzScjINzyYcWXwy0T2VUCHSa4OMXGekSVQ52C/VvAWONMR9aR/5g==","shasum":"c7463e145a904964614b86ed4f9e0ef6e431c3e3","tarball":"https://registry.npmjs.org/classy-loader/-/classy-loader-1.3.3.tgz","fileCount":6,"unpackedSize":112750,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa4tdpCRA9TVsSAnZWagAAGVEP/34pWYrKzrfjZXtg3BB+\ntidOts4baErfdkLzOgks//OEzfQCGWIt0RPCe3CzhaI3uDpd9ChY9R7pc1WD\nzxEVQODJ2lzeghREkO97H/W3OBKRM7r+WPcX1fK07tViExEkEGTPqR5LEfxC\nD/P6N5TMGpuSi0VQTaROMZbzAoGMZI5wBVNLJIZ6jipKhAfe2/TXpDrfQXU0\n+9GvIW2nmWGDkrhQGId6Gstuh7ycX3N7UWvWlIpaVYQisheXE/P3L6BGvZge\n8UBvHd38uLsT/FsEWdoy0xrq1JqjjCrZ+C60Td3wTYOEM84MN3CTqjhtjmV2\nfuHa+pF1D+8UY/eRjI5lVk+a1rPNl/OzRF20Cc3PEF7juWBhnUkGoQzb2D7F\nD+1aZS3wvhKuDy+PnSTceAI5doWxVQPeh2CtDA3ajtOc9I+4g09dCuvlAeeu\nyy8gOFnPytouwVP+bvNEpEBaL8uHjJlQw4LF0NdyQzLt2gS4Ktr9pTnLM0J/\n7Jhc0+EAFy8ihyzHSKons9n3PFaG1rjzj5zlaAyfFjTaoNXgL48Uma3y5TqC\nwUt1X/Wsm+nq2SgnTOOJRoy6R6yi6DQIIqPPgU/j36w4bSyNSjShbx83zmUt\nE2i0H3JcuA3OfskuKe/rukBoJaL74Nh0zqr3KmvlBmoWJ4VSacHZoWYtjFra\nbKa3\r\n=CAFA\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC4shqB0Ev0Q9GR1KeJbhMwkYmgAKadxORIPQlzZtMZIQIgbeS7FxIX95ZQGanHBa4MwqcS8NtGFDlPFa6RsmWbKbg="}]},"maintainers":[{"name":"bushstas","email":"bushstas@mail.ru"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/classy-loader_1.3.3_1524815719820_0.6263200654500147"},"_hasShrinkwrap":false}},"readme":"# classy-loader [![npm](https://img.shields.io/npm/v/classy-loader.svg?style=flat-square)](https://www.npmjs.com/package/classy-loader)\n\nClassy-loader is a powerful tool for React application to manage your CSS/JS DOM elements class names.  \nThis loader connects JS and CSS class names so you can syncronize and obfuscate them.  \nIt has a smart built-in mechanism to merge your class names within JS code by using string queries.  \nIt has a very flexible organization and perfectly helps to avoid css class name conflicts within complex applications.\n\n## Installation\n\n### NPM\n\n```sh\nnpm install --save classy-loader\n```\n\n### An example to play\n[Link to Github repository](https://github.com/bushstas/classy-loader-example.git)\n\n## Adding to Webpack config\n\n### At first you need to set required config.\n\n```javascript\nconst classy = require('classy-loader');\nclassy.init({\n    attributeName: 'class',\n    extraAttributeName: 'classes',\n    globalPrefix: 'awesome-example-app',\n    delimiter: '-',\n    obfuscation: false,\n    obfuscatedLength: 4,\n    autoPrefixMode: false,\n    prefixAutoResolving: false,\n    cssAutoImport: true\n});\n\n\n//...\nmodule: {\n  rules: [\n    {\n      test: /\\.js$/, \n      loaders: [\n        {\n            loader: 'babel-loader',\n            options: {\n               //....\n            }\n        },\n        {\n            loader: 'classy-loader?parser=js'\n        }\n      ]\n    },\n    {\n      test: /\\.s?css$/,\n      loader: ExtractTextPlugin.extract(\n          {\n              fallback: 'style-loader',\n              use: [\n                  'css-loader?root=...',\n                  'sass-loader',\n                  'classy-loader?parser=css'\n              ]\n          }\n      )\n    }\n  ]\n}\n//...\n```\nSo it should be added after babel and standart css loaders to be processed first.\n\n### attributeName\n\nAn attribute name of DOM elements, that will be parsed by loader.  \nIt can be whatever word you like and will be changed to className attribute.  \nBy default, it has value \"class\".\n\n```javascript\nrender() {\n  return (\n    <div class=\".self\">\n      ...\n    </div>\n  )\n}\n```\n\nor\n\n```javascript\nrender() {\n  return (\n    <div whateverName=\".self\">\n      ...\n    </div>\n  )\n}\n```\nSo \"class\" and \"whateverName\" are our attributeNames.  \nAnd after processing we'll get parsed value:\n\n```javascript\nrender() {\n  return (\n    <div className=\"awesome-example-app\">\n      ...\n    </div>\n  )\n}\n```\nSo **\"self\"** is a keyword that means your global or local prefix.  \nIn this case we don't have a local prefix, so it will be our globalPrefix from the config we set up above.\n\n### extraAttributeName\n\nAn attribute name of React elements, that will be parsed by loader.  \nIt be whatever word you like but not will be changed.  \nBy default, it has value \"classes\".\n\n```javascript\nrender() {\n  return (\n    <Button classes=\".action-button awesome-button\">\n      Do it!\n    </Button>\n  )\n}\n```\n\nAnd after processing we'll get the same attribute \"classes\" but parsed:\n\n```javascript\nrender() {\n  return (\n    <Button classes=\"awesome-example-app-action-button awesome-button\">\n      Do it!\n    </Button>\n  )\n}\n```\nIf you need to parse a string to valid class names use **$classy**:\n```javascript\nlet className = $classy(\".item item $classes\");\n```\nIt produces this code:\n```javascript\nimport classy from 'classy-loader/classy';\n// ....\nlet className = classy(\"awesome-example-app-item\", \"item\", classes);\n```\n\n### globalPrefix\n\nA prefix that will be added to your element class names.  \nSpecial syntax will tell the loader whether add prefixes or not.  \nBy default, it has an empty value, so it means no prefix will be added if a local prefix not specified.\n\n```javascript\nrender() {\n  return (\n    <div class=\".thing\">\n      ...\n    </div>\n  )\n}\n```\n\nwill be\n\n```javascript\nrender() {\n  return (\n    <div className=\"awesome-example-app-thing\">\n      ...\n    </div>\n  )\n}\n```\nThe point means class name should have a prefix.  \nMore about parser syntax is written below.\n\n### delimiter\n\nA symbol or word that class names and prefixes will be joined with.  \nBy default, it has value \"-\".\n\n```javascript\nrender() {\n  return (\n    <div class=\".some-item\">\n      ...\n    </div>\n  )\n}\n```\n\nSo if we have our delimiter like \"\\_\", we will have\n\n```javascript\nrender() {\n  return (\n    <div className=\"awesome-example-app_some-item\">\n      ...\n    </div>\n  )\n}\n```\n\n### prefixAutoResolving\n\nIf this is not false the loader will try to resolve the local prefix by itself.  \nBy default, it has value false.  \nThere are three variants:  \n\n#### `prefixAutoResolving: \"content\"`\nAt first the loader will try to find a line with:  \n**export default (class|function) MySuperClassName**    \n  \nThen tries with:  \n**export default connect(...)(MySuperClassName)**  \n  \nThen tries with:  \n**class MySuperClassName**    \n  \nAnd at last it will get the first line with:  \n**function MySuperClassName**    \n  \nso \"MySuperClassName\" will be parsed to \"my\" + delimiter + \"super\" + delimiter + \"class\" + delimiter + \"name\".  \n\nFor CSS files the loader will search for JS index file in the same directory  \nand then get local prefix from the file, so JS and CSS will be syncronized.  \nYou should put your JS loaders first before CSS loaders, because CSS parser will need cached JS prefixes.\n\n```javascript\nexport default class MySuperButton extends React.Component {\n  render() {\n    return (\n      <div class=\".self\">\n        <span class=\".inner\">\n          ....\n        </span>\n      </div>\n    )\n  }\n}\n```\n\nwill be\n\n```javascript\nexport default class MySuperButton extends React.Component {\n  render() {\n    return (\n      <div className=\"awesome-example-app-my-super-button\">\n        <span className=\"awesome-example-app-my-super-button-inner\">\n          ....\n        </span>\n      </div>\n    )\n  }\n}\n```\nAlso you can define JS/CSS local prefixes with special directives.  \nMore about JS/CSS directives see below.\n\n  \n#### `prefixAutoResolving: \"file\"`\nThe loader will try to form local prefixes from JS/CSS file names:  \n\"SuperItem.js\" or \"super-item.js\" or \"super_item.js\"\nto prefix \"super\" + delimiter + \"item\"  \nso you'll have to syncronize JS and CSS file names\n\n  \n\n\n#### `prefixAutoResolving: \"folder\"`\nThe loader will try to form local prefixes from JS/CSS folder names:  \n\"SuperItem/index.js\" or \"super-item/some.js\" or \"super_item/any.js\"\nto prefix \"super\" + delimiter + \"item\"  \nso JS and CSS will be syncronized as they are both located in the same directory (aren't they?)\n\n\n### obfuscation\n\nIf true the loader will obfuscate class names in both JS and CSS files.  \nBe careful, you should check that all class names in JS defined with classy **\"attributeName\"** and **extraAttributeName**  \nor special **$classy** syntax (see below).  \nBy default, it has value false.  \n\n```javascript\nrender() {\n  return (\n    <div class=\".button small\">\n      ...\n    </div>\n  )\n}\n```\nwill become\n\n```javascript\nrender() {\n  return (\n    <div className=\"w4fq5wq dhet7s5\">\n      ...\n    </div>\n  )\n}\n```\n\n### obfuscatedLength\n\nLength of obfuscated class names.  \nBy default, it has value \"7\".  \nSo if you have **\"obfuscatedLength\"** equal 4\n\n```javascript\nrender() {\n  return (\n    <div className=\"ald8 jd6g\">\n      ...\n    </div>\n  )\n}\n```\n\n### autoPrefixMode\n\nLoader will automatically add prefixes to your class names.  \nSo you should use different format of class name query.  \nBy default, it is false.    \n\nFor example this is a query for non-automatic mode (prefixAutoResolving set to \"content\")\n\n```javascript\nexport default class Container extends React.Component {\n  render() {\n    return (\n      <div class=\".self wide ..area\">\n        <div class=\".content content\">\n          ...\n        </div>\n      </div>\n    )\n  }\n}\n```\nwill be\n\n```javascript\nexport default class Container extends React.Component {\n  render() {\n    return (\n      <div className=\"awesome-example-app-container wide awesome-example-app-area\">\n        <div class=\"awesome-example-app-container-content content\">\n          ...\n        </div>\n      </div>\n    )\n  }\n}\n```\n\nHere the local prefix is \"awesome-example-app-container\" (global prefix plus the local prefix auto resolved from class name \"Container\").  \nSo in this mode you need to add point(s) for prefixes: one for the local prefix and two points for global prefix.    \n\nAnd finally an example of a query for automatic mode (prefixAutoResolving set to \"content\").  \nIn the end we'll get the same result.\n\n```javascript\nexport default class Container extends React.Component {\n  render() {\n    return (\n      <div class=\"self ..wide .area\">\n        <div class=\"content ..content\">\n          ...\n        </div>\n      </div>\n    )\n  }\n}\n```\nwill be the same\n\n```javascript\nexport default class Container extends React.Component {\n  render() {\n    return (\n      <div className=\"awesome-example-app-container wide awesome-example-app-area\">\n        <div class=\"awesome-example-app-container-content content\">\n          ...\n        </div>\n      </div>\n    )\n  }\n}\n```\n\nIn this mode you don't need to add a point for local prefix, one point for global one and two for class name without prefix.    \n\nSo in css files this principle works the same (you need to add the same points or not to add):    \nNone-automatic mode\n\n```scss\n/* directive that defines our local prefix (adds additional prefix to global one) */\n.with.addedPrefix.container;\n\n..self {\n  position: relative;\n\n  &...area {\n    background-color: #eee;\n    border: 1px solid #aaa;\n  }\n\n  &.wide {\n    width: 80%;\n  }\n\n  ..content {\n    padding: 10px;\n\n    &.content {\n      padding-top: 0;\n    }\n  }\n}\n```\n\nwill be\n\n```css\n.awesome-example-app-container {\n  position: relative;\n\n  &.awesome-example-app-area {\n    background-color: #eee;\n    border: 1px solid #aaa;\n  }\n\n  &.wide {\n    width: 80%;\n  }\n\n  .awesome-example-app-container-content {\n    padding: 10px;\n\n    &.content {\n      padding-top: 0;\n    }\n  }\n}\n```\n\nAnd the automatic mode\n\n```scss\n/* directive that defines our local prefix (adds additional prefix to global one) */\n.with.addedPrefix.container;\n\n.self {\n  position: relative;\n\n  &..area {\n    background-color: #eee;\n    border: 1px solid #aaa;\n  }\n\n  &...wide {\n    width: 80%;\n  }\n\n  .content {\n    padding: 10px;\n\n    &...content {\n      padding-top: 0;\n    }\n  }\n}\n```\n\nwill give the same result\n\n```css\n.awesome-example-app-container {\n  position: relative;\n\n  &.awesome-example-app-area {\n    background-color: #eee;\n    border: 1px solid #aaa;\n  }\n\n  &.wide {\n    width: 80%;\n  }\n\n  .awesome-example-app-container-content {\n    padding: 10px;\n\n    &.content {\n      padding-top: 0;\n    }\n  }\n}\n```\n### cssAutoImport\n\nLoader will automatically add imports of CSS files from the same directory.  \nIf value is true, loader will try to find files with name \"index\".  \nIf value is a string, loader will try to find files with names equal to this string.  \nIf value is an array, loader will try to find files with names equal to each item which is string or true (index).  \nIt will try to find files with different extensions: \"css\", \"scss\", \"less\", \"sass\".  \nAll found files will added to the bundle.  \nBy default, it is false.   \n\n## Directives\n\n### JS directives\n\n<ul>\n<li>\n<h3>with prefix 'some-prefix';</h3>\nCreates a local version of the global prefix that overrides defined in config.  \nTwo points still give common global prefix.\n</li>\n</ul>\n\n```javascript\n// non-automatic mode\n// prefixAutoResolving: \"content\"\n// ...imports\n\nwith prefix 'crazy-app';\n\nexport default class Container extends React.Component {\n  render() {\n    return (\n      <div class=\".self\">\n        <div class=\".title ..bigger\">\n          ...\n        </div>\n        <div class=\".content\">\n          ...\n        </div>\n      </div>\n    )\n  }\n}\n```\n\nwill be\n\n```javascript\n// ...imports\n\nexport default class Container extends React.Component {\n  render() {\n    return (\n      <div class=\"crazy-app-container\">\n        <div class=\"crazy-app-container-title awesome-example-app-bigger\">\n          ...\n        </div>\n        <div class=\"crazy-app-container-title\">\n          ...\n        </div>\n      </div>\n    )\n  }\n}\n```\n\nthe result when **\"prefixAutoResolving\"** set to false, so we don't have additional local prefix,  \njust overrided global\n\n```javascript\n// ...imports\n\nexport default class Container extends React.Component {\n  render() {\n    return (\n      <div class=\"crazy-app\">\n        <div class=\"crazy-app-title awesome-example-app-bigger\">\n          ...\n        </div>\n        <div class=\"crazy-app-title\">\n          ...\n        </div>\n      </div>\n    )\n  }\n}\n```\n<ul>\n<li>\n<h3>with auto prefix 'some-prefix';</h3>\nEvertrhing the same as in the case above plus gives automatic mode within a file.\n</li>\n</ul>\n\n<ul>\n<li>\n<h3>with addedPrefix 'some-additional-prefix';</h3>\nSets an additional prefix for local use.  \nThis directive do the same thing like param **\"prefixAutoResolving\"** so it will cancel auto detecting.\n</li>\n</ul>\n\n```javascript\n// non-automatic mode\n// ...imports\n\nwith addedPrefix 'dialog';\n\nexport default class Dialog extends React.Component {\n  render() {\n    return (\n      <div class=\".self\">\n        <div class=\".title ..bigger\">\n          ...\n        </div>\n        <div class=\".content\">\n          ...\n        </div>\n      </div>\n    )\n  }\n}\n```\n\nwill be\n\n```javascript\n// ...imports\n\nexport default class Dialog extends React.Component {\n  render() {\n    return (\n      <div class=\"awesome-example-app-dialog\">\n        <div class=\"awesome-example-app-dialog-title awesome-example-app-bigger\">\n          ...\n        </div>\n        <div class=\"awesome-example-app-dialog-content\">\n          ...\n        </div>\n      </div>\n    )\n  }\n}\n```\n\n<ul>\n<li>\n<h3>with auto addedPrefix 'some-additional-prefix';</h3>\nEvertrhing the same as in the case above plus gives automatic mode within a file.\n</li>\n</ul>\n\n<ul>\n<li>\n<h3>with auto prefix;</h3>\nGives the automatic mode within a file.\n</li>\n</ul>\n\n\n### CSS directives\n\nCSS directives do absolutly the same and look pretty much like JS versions, except the last one\n\n<ul>\n<li>\n<h3>.with.prefix.some-prefix;</h3>\n</li>\n<li>\n<h3>.with.auto.prefix.some-prefix;</h3>\n</li>\n<li>\n<h3>.with.addedPrefix.additional-prefix;</h3>\n</li>\n<li>\n<h3>.with.auto.addedPrefix.additional-prefix;</h3>\n</li>\n<li>\n<h3>.with.auto.prefix;</h3>\n</li>\n<li>\n<h3>.with.no.prefix;</h3>\nTells the loader not to add any prefixes, so \"..\" / \"...\" points will be as \".\"\n</li>\n</ul>\n  \n\n## String queries syntax\n\n```javascript\nrender() {\n  return (\n    <div class=\"name .name ..name $name $$name prefix::name ~name .$name ..$name\">\n      ...\n    </div>\n  )\n}\n```\n### name\nGives class name without prefixes in non-automatic mode.  \nGives class name with a local prefix in automatic mode.\n```javascript\nrender() {\n  return (\n    <div className=\"name\">\n      ...\n    </div>\n\n    //and\n\n    <div className=\"local-prefix-name\">\n      ...\n    </div>\n  )\n}\n```\n### .name\nGives class name with a local prefix in non-automatic mode.  \nGives class name with a global prefix in automatic mode.\n```javascript\nrender() {\n  return (\n    <div className=\"local-prefix-name\">\n      ...\n    </div>\n\n    //and\n\n    <div className=\"global-prefix-name\">\n      ...\n    </div>\n  )\n}\n```\n### ..name\nGives class name with a global prefix in non-automatic mode.  \nGives class name without prefixes in automatic mode.\n```javascript\nrender() {\n  return (\n    <div className=\"global-prefix-name\">\n      ...\n    </div>\n\n    //and\n\n    <div className=\"name\">\n      ...\n    </div>\n  )\n}\n```\n\n### $name\nMerges a class name or an array of class names from a variable.  \nThe loader automatically adds import of required module for class name merging.  \nThe variable should already contain classes with prefixes or be already obfuscated.\n```javascript\nrender() {\n  return (\n    <div className={classy(name)}>\n      ...\n    </div>\n  )\n}\n```\nan example how to make it work:  \n\nin a parent using **extraAttributeName: \"classes\"**    \n```javascript\nrender() {\n  return (\n    <Icon classes=\"..large green\">\n      resize\n    </Icon>\n  )\n}\n```\nin the Icon\n```javascript\nwith addedPrefix 'icon';\n\nexport default function Icon({classes, children}) {\n  return (\n    <i class=\".self $classes material-icons\">\n      {children}\n    </i>\n  )\n}\n```\n\nso we will have \n\nin a parent\n```javascript\nrender() {\n  return (\n    <Icon classes=\"awesome-example-app-large green\">\n      resize\n    </Icon>\n  )\n}\n```\nin the Icon \"import\" will be automatically added\n```javascript\nimport classy from 'classy-loader/classy';\n\nexport default function Icon({classes, children}) {\n  return (\n    <i className={classy(\"awesome-example-app-icon\", classes, \"material-icons\")}>\n      {children}\n    </i>\n  )\n}\n```\n\nso this is how the code will look like in a bundle\n```javascript\nreturn _react2.default.createElement(\n  'i',\n  _extends({\n    className: (0, _classy2.default)(\"awesome-example-app-icon\", classes, \"material-icons\")\n  }),\n  children\n);\n```\n### $$name\nThe same as **$name** but tells the loader that this variable is a valid string and not an array or undefined,  \nso don't need to use merge function\n```javascript\nrender() {\n  return (\n    <div class=\"$classes\">\n        <div class=\"$$className\">\n           ...\n        </div>\n    </div>\n  )\n}\n```\nwill be\n```javascript\nrender() {\n  return (\n    <div className={classy(classes)}>\n      <div className={className}>\n        ...\n      </div>\n    </div>\n  )\n}\n```\n\n### prefix::name\nAdds needed addiotinal prefix to class name.  \nSee the example with the Icon above.  \nLet's modify this a little bit.  \nAdded prefix is a local prefix in relation to the Icon.\n```javascript\nrender() {\n  return (\n    <Icon classes=\"..large green\">\n      <span class=\"icon::thing\">\n        resize\n      </span>\n    </Icon>\n  )\n}\n```\nalso you can use just code like this for the same purpose, but first variant adds delimiter by itself\n```javascript\nrender() {\n  return (\n    <Icon classes=\"..large green\">\n      <span class=\"..icon-thing\">\n        resize\n      </span>\n    </Icon>\n  )\n}\n```\nso we will have this html\n```html\n<i className=\"awesome-example-app-icon awesome-example-app-large green material-icons\">\n  <span class=\"awesome-example-app-icon-thing\">\n    resize\n  </span>\n</i>\n```\n\n### ~name\nMake added prefix from tag name in which attributeName located.  \n\n```javascript\nrender() {\n  return (\n    <SomeComponent \n      classes=\"~name\"\n      menu={(\n        <SomeMenu\n          classes=\"~cool-menu\"/>\n      )}>\n      ...content\n    </SomeComponent>\n  )\n}\n```\nwill be\n```javascript\nrender() {\n  return (\n    <SomeComponent \n      classes=\"awesome-example-app-some-component-name\"\n      menu={(\n        <SomeMenu\n          classes=\"awesome-example-app-some-menu-cool-menu\"/>\n      )}>\n      ...content\n    </SomeComponent>\n  )\n}\n```\n\n### .$name\nDynamical class name, local prefix plus value of a given variable.  \nIt's always local prefix regardless whether the mode automatic or not.\n```javascript\nwith addedPrefix 'tab';\n\nexport default function Tab({classes, children, isActive}) {\n  render() {\n    let className = isActive ? 'active' : 'inactive';\n    return (\n      <div class=\".self .$className $classes\">\n          {children}\n      </div>\n    )\n  }\n}\n```\nwill be\n```javascript\nimport classy from 'classy-loader/classy';\n\nexport default function Tab({classes, children, isActive}) {\n  render() {\n    let className = isActive ? 'active' : 'inactive';\n    return (\n      <div className={classy(\"awesome-example-app-tab\", \"awesome-example-app-tab-\" + className,  classes)}>\n          {children}\n      </div>\n    )\n  }\n}\n```\n\n### ..$name\nDynamical class name, global prefix plus value of a given variable.  \nIt's always global prefix regardless whether the mode automatic or not.\n```javascript\nwith addedPrefix 'button';\n\nexport default class Button extends React.Component {\n  render() {\n    let className = 'active';\n    return (\n      <div classes=\".self ..$className\">\n          ...\n      </div>\n    )\n  }\n}\n```\nwill be\n```javascript\nexport default class Button extends React.Component {\n  render() {\n    let className = 'active';\n    return (\n      <div className={\"awesome-example-app-button awesome-example-app-\" + className}>\n          ...\n      </div>\n    )\n  }\n}\n```\n\nIt's impossible to obfuscate dynamical class names so there are special fake **$classy** functions to make roadmaps for obfuscation.  \n\nThis ia an example:  \n```javascript\nlet className = $classy(color, '..color-', ['red', 'green']);\nclassName = $classy(number, '.color-', ['blue', 'yellow']);\nclassName = $classy(number, '..', ['one', 'two']);\nclassName = $classy(quality, '.', ['good', 'bad']);\nclassName = $classy(name, '', ['John', 'Rick']);\n```\nHere is the result for the non-automatic mode:\n```javascript\nlet className = {\n  red: 'awesome-example-app-color-red',\n  green: 'awesome-example-app-color-green'\n}[color];\n\nclassName = {\n  blue: 'awesome-example-app-button-color-blue',\n  yellow: 'awesome-example-app-button-color-yellow'\n}[color];\n\nclassName = {\n  one: 'awesome-example-app-one',\n  two: 'awesome-example-app-two'\n}[number];\n\nclassName = {\n  good: 'awesome-example-app-button-good',\n  bad: 'awesome-example-app-button-bad'\n}[quality];\n\nclassName = {\n  John: 'John',\n  Rick: 'Rick'\n}[name];\n```\nAnd then the automatic mode will give this result:\n```javascript\nlet className = {\n  red: 'color-red',\n  green: 'color-green'\n}[color];\n\nclassName = {\n  blue: 'awesome-example-app-color-blue',\n  yellow: 'awesome-example-app-color-yellow'\n}[color];\n\nclassName = {\n  one: 'one',\n  two: 'two'\n}[number];\n\nclassName = {\n  good: 'awesome-example-app-good',\n  bad: 'awesome-example-app-bad'\n}[quality];\n\nclassName = {\n  John: 'awesome-example-app-button-John',\n  Rick: 'awesome-example-app-button-Rick'\n}[name];\n```\nSo variable \"className\" will have a real class name value and it can be obfuscated:\n```javascript\nlet className = {\n  red: 'hby457r',\n  green: 'fhelf76',\n  blue: 'dh409gl',\n  yellow: 'sl58sgf',\n  orange: 'dl50gak',\n  ...\n}[color];\n```\nAnother way to make a roadmap with different class name patterns.\n```javascript\nlet className = $classy(colorValue, {\n  red: \"..red item::reddish\",\n  green: \"..green ..greenish\",\n  ...\n});\n```\nIt produces this code:\n```javascript\nlet className = {\n  red: 'awesome-example-app-red awesome-example-app-item-reddish',\n  green: 'awesome-example-app-green awesome-example-app-greenish',\n  ...\n}[colorValue];\n```\nAlso there is the third way to use **$classy**:\n```javascript\nwith addedPrefix 'catalog';\n// ....\nlet className = $classy(\".item item ..some-item $classes\");\n```\nIt produces this code:\n```javascript\nimport classy from 'classy-loader/classy';\n// ....\nlet className = classy(\"awesome-example-app-catalog-item\", \"item\", \"awesome-example-app-some-item\", classes);\n```\n## Conditional queries\n\n### Simple at first\n```javascript\n// all with globalPrefix = 'app'\n// all with autoPrefixMode = false\n// all with addedPrefix = 'item'\n\nrender() {\n  let active = true;\n  return (\n    <div class=\"name $active?active\">\n      ...\n    </div>\n    <div class=\".name $active?.active\">\n      ...\n    </div>\n    <div class=\"$active?..active:..inactive\">\n      ...\n    </div>\n    <div class=\"$active?$className:disabled\">\n      ...\n    </div>\n    <div class=\"$!active?inactive\">\n      ...\n    </div>\n  )\n}\n```\nwill become\n```javascript\nrender() {\n  let active = true;\n  return (\n    <div className={classy(\"name\", active ? \"active\" : \"\")}>\n      ...\n    </div>\n    <div className={classy(\"app-item-name\", active ? \"app-item-active\" : \"\")}>\n      ...\n    </div>\n    <div className={classy(active ? \"app-active\" : \"app-inactive\")}>\n      ...\n    </div>\n     <div className={classy(active ? className : \"disabled\")}>\n      ...\n    </div>\n    <div className={classy(!active ? \"inactive\" : \"\")} >\n      ...\n    </div>\n  )\n}\n```\nYou can have spaces next to symbols \"?\" and \":\" like\n```javascript\nrender() {\n  return (\n    <div class=\"$active ? active : inactive\">\n      ...\n    </div>\n  )\n}\n```\nBut not in conditional parts\n```javascript\nrender() {\n  return (\n    <div class=\"$active === true ? active : inactive\">\n      ...\n    </div>\n  )\n}\n```\nThis query will produce incorrect class name something like\n```javascript\nrender() {\n  return (\n    <div className=\"1 === true active inactive\">\n      ...\n    </div>\n  )\n}\n```\nIf you want to have spaces in conditions use parentheses\n```javascript\nrender() {\n  return (\n    <div class=\"$(active == 'something') ? active : inactive\">\n      ...\n    </div>\n  )\n}\n```\nYou can have only one variable sign \"$\" in your condition, it should be first of course\n```javascript\nrender() {\n  return (\n    <div class=\"$index==count-1 ? active : inactive\">\n      ...\n    </div>\n    \n    // or\n\n    <div class=\"$( index == count - 1 ) ? active : inactive\">\n      ...\n    </div>\n  )\n}\n```\n\n## And finally super short cherry on the cake querries\n```javascript\nrender() {\n  return (\n    <div class=\"$?active $?.active $?..active\">\n      ...\n    </div>\n  )\n}\n```\nwill be\n```javascript\nrender() {\n  return (\n    <div className={classy(active ? \"active\" : \"\", active ? \"local-prefix-active\" : \"\", active ? \"global-prefix-active\" : \"\")}>\n      ...\n    </div>\n  )\n}\n```\nAnd with negative sign\n```javascript\nrender() {\n  return (\n    <div class=\"!$?active !$?.active !$?..active\">\n      ...\n    </div>\n  )\n}\n```\nwill be\n```javascript\nrender() {\n  return (\n    <div className={classy(!active ? \"active\" : \"\", !active ? \"local-prefix-active\" : \"\", !active ? \"global-prefix-active\" : \"\")}>\n      ...\n    </div>\n  )\n}\n```\nPoints work the same as usual\n\n## CSS syntax\n\n### Non-automatic prefix mode\nOne point for real class name without prefix.  \nTwo points for class names with local prefix.  \nThree points for class names with global prefix.  \n**\"Self\"** is a keywords that means local prefix itself or global if local one not defined\n\n```scss\n..self {\n  ..title {\n\n  }\n  ..content {\n\n  }\n  ...active {\n\n  }\n  .item {\n\n  }\n}\n```\n\n### Automatic prefix mode\nOne point for class names with local prefix.  \nTwo points for class names with global prefix.  \nThree points for real class name without prefix.  \n\n```scss\n.self {\n  .title {\n\n  }\n  .content {\n\n  }\n  ..active {\n\n  }\n  ...item {\n\n  }\n}\n```\n\nIf a local prefix not defined global one will be added instead\n\n## CSS shorcutty special syntax\n\nHere's an example\n```scss\n.container {\n  var .abs.w100.h200.bc-000.c-fff.fs15;\n}\n```\nwill be\n```scss\n.container {\n  position: absolute;\n  width: 100px;\n  height: 200px;\n  background-color: #000;\n  color: #fff;\n  font-size: 15px;\n}\n```\ncan be also with spaces, should end with a semicolon or a new line\n```scss\n.container {\n  var .fix .l .r .t .b .z999 .o3;\n}\n```\nwill be\ncan be also with spaces, should end with a semicolon or a new line\n```scss\n.container {\n  position: fixed;\n  left: 0;\n  right: 0;\n  top: 0;\n  bottom: 0;\n  z-index: 999;\n  opacity: 0.3;\n}\n```\n### Full list of shorcuts\n\n<details>\n<summary>Click to expand</summary>  \n  \n**rubb** = left: 0; right: 0; top: 0; bottom: 0;  \n**l** = left: 0;  \n**lau** = left: 'auto';  \n**l10** = left: 10px;  \n**l-10** = left: -10px;  \n**l50p** = left: 50%;  \n**l-50p** = left: -50%;  \n\n**r** = right: 0;  \n**rau** = right: 'auto';  \n**r10** = right: 10px;  \n**r-10** = right: -10px;  \n**r50p** = right: 50%;  \n**r-50p** = right: -50%;  \n\n**t** = top: 0;  \n**tau** = top: 'auto';  \n**t10** = top: 10px;  \n**t-10** = top: -10px;  \n**t50p** = top: 50%;  \n**t-50p** = top: -50%;  \n\n**b** = bottom: 0;  \n**bau** = bottom: 'auto';  \n**b10** = bottom: 10px;  \n**b-10** = bottom: -10px;  \n**b50p** = bottom: 50%;  \n**b-50p** = bottom: -50%;  \n\n**z10** = z-index: 10;  \n\n**wa** = width: auto;  \n**w** = width: 100%;  \n**w100** = width: 100px;  \n**w50p** = width: 50%;  \n\n**ha** = height: auto;  \n**h** = height: 100%;  \n**h150** = height: 150px;  \n**h20p** = height: 20%;  \n\n**wh** = width: 100%; height: 100%;  \n**wh20** = width: 20px; height: 20px;  \n**wh20p** = width: 20%; height: 20%;  \n\n**mnw** = min-width: 0;  \n**mnw100** = min-width: 100px;  \n**mnh** = min-height: 0;  \n**mnh100** = min-height: 100px;  \n**mxw** = max-width: none;  \n**mxw100** = max-width: 100px;  \n**mxh** = max-height: none;  \n**mxh100** = max-height: 100px;  \n\n**auto** = margin: auto;  \n**m** = margin: 0;  \n**m5** = margin: 5px;  \n**m10-5** = margin: 10px 5px;  \n**m10-5-10-5** = margin: 10px 5px 10px 5px;  \n\n**ml** = margin-left: 0;  \n**ml5** = margin-left: 5px;  \n**ml-5** = margin-left: -5px;  \n**ml5p** = margin-left: 5%;  \n**ml-5p** = margin-left: -5%;  \n\n**mr** = margin-right: 0;  \n**mr5** = margin-right: 5px;  \n**mr-5** = margin-right: -5px;  \n**mr5p** = margin-right: 5%;  \n**mr-5p** = margin-right: -5%;  \n\n**mt** = margin-top: 0;  \n**mt5** = margin-top: 5px;  \n**mt-5** = margin-top: -5px;  \n**mt5p** = margin-top: 5%;  \n**mt-5p** = margin-top: -5%;  \n\n**mb** = margin-bottom: 0;  \n**mb5** = margin-bottom: 5px;  \n**mb-5** = margin-bottom: -5px;  \n**mb5p** = margin-bottom: 5%;  \n**mb-5p** = margin-bottom: -5%;  \n\n**p** = padding: 0;  \n**p5** = padding: 5px;  \n**p10-5** = padding: 10px 5px;  \n**p10-5-10-5** = padding: 10px 5px 10px 5px;    \n\n**pl** = padding-left: 0;  \n**pl5** = padding-left: 5px;  \n**pl-5** = padding-left: -5px;  \n**pl5p** = padding-left: 5%;  \n**pl-5p** = padding-left: -5%;  \n\n**pr** = padding-right: 0;  \n**pr5** = padding-right: 5px;  \n**pr-5** = padding-right: -5px;  \n**pr5p** = padding-right: 5%;  \n**pr-5p** = padding-right: -5%;  \n\n**pt** = padding-top: 0;  \n**pt5** = padding-top: 5px;  \n**pt-5** = padding-top: -5px;  \n**pt5p** = padding-top: 5%;  \n**pt-5p** = padding-top: -5%;  \n\n**pb** = padding-bottom: 0;  \n**pb5** = padding-bottom: 5px;  \n**pb-5** = padding-bottom: -5px;  \n**pb5p** = padding-bottom: 5%;  \n**pb-5p** = padding-bottom: -5%;  \n\n**flex** = display: flex;  \n**flcen** = align-item: center; justify-content: center;  \n**bl** = display: block;  \n**inb** = display: inline-block;  \n**none** = display: none;  \n**inl** = display: inline;  \n\n**fix** = position: fixed;  \n**abs** = position: absolute;  \n**rel** = position: relative;  \n**box** = box-sizing: border-box;  \n\n**ova** = overflow: auto;  \n**ovh** = overflow: hidden;  \n**ovv** = overflow: visible;  \n**ovs** = overflow: scroll;  \n\n**lt** = text-align: left;  \n**rt** = text-align: right;  \n**cen** = text-align: center;  \n**just** = text-align: justify;  \n\n**vtop** = vertical-align: top;  \n**vmid** = vertical-align: middle;  \n**vbot** = vertical-align: bottom;  \n**col** = border-collapse: collapse;  \n**lfix** = table-layout: fixed;  \n\n**cur** = cursor: default;  \n**cur-name** = cursor: name;  \n**pntr** = cursor: pointer;  \n**cnt** = content: \"\";  \n**nor** = resize: none;  \n**nosel** = user-select: none; -moz-user-select: none; -webkit-user-select: none;  \n\n**fl** = float: left;  \n**fr** = float: right;  \n**clr** = clear: both;  \n\n**bold** = font-weight: bold;  \n**norm** = font-weight: normal;  \n**it** = font-style: italic;  \n**un** = text-decoration: underline;  \n\n**lh** = line-height: 0;  \n**lh20** = line-height: 20px;  \n**ls** = letter-spacing: 0;  \n**ls2** = letter-spacing: 2px;  \n**fs** = font-size: 0;  \n**fs15** = font-size: 15px;  \n**ff-name** = font-family: name;    \n\n**o** = opacity: 0;  \n**o5** = opacity: 0.5;  \n**o10** = opacity: 1;  \n\n**ol** = outline: 0;  \n**ol-000** = outline: 1px solid #000;  \n**ol-EEE-2** = outline: 2px solid #EEE;  \n**ol-EEE-2-dashed** = outline: 2px dashed #EEE;  \n\n**bo** = border: 0;  \n**bo-000** = border: 1px solid #000;  \n**bo-EEE-2** = border: 2px solid #EEE;  \n**bo-EEE-2-dashed** = border: 2px dashed #EEE;  \n\n**bol** = border-left: 0;  \n**bol-000** = border-left: 1px solid #000;  \n**bol-EEE-2** = border-left: 2px solid #EEE;  \n**bol-EEE-2-dashed** = border-left: 2px dashed #EEE;  \n\n**bor** = border-right: 0;  \n**bor-000** = border-right: 1px solid #000;  \n**bor-EEE-2** = border-right: 2px solid #EEE;  \n**bor-EEE-2-dashed** = border-right: 2px dashed #EEE;  \n\n**bot** = border-top: 0;  \n**bot-000** = border-top: 1px solid #000;  \n**bot-EEE-2** = border-top: 2px solid #EEE;  \n**bot-EEE-2-dashed** = border-top: 2px dashed #EEE;  \n\n**bob** = border-bottom: 0;  \n**bob-000** = border-bottom: 1px solid #000;  \n**bob-EEE-2** = border-bottom: 2px solid #EEE;  \n**bob-EEE-2-dashed** = border-bottom: 2px dashed #EEE;  \n\n**br** = border-radius: 0;  \n**br5** = border-radius: 5px;  \n**br50p** = border-radius: 50%;  \n**br5-10-10-0** = border-radius: 5px 10px 10px 0;  \n\n**bsp** = border-spacing: 0;  \n**bsp2** = border-spacing: 2px;\n\n**trans** = background-color: transparent;  \n**c-fff** = color: #fff;  \n**bc-fff** = background-color: #fff;  \n**boc-fff** = border-color: #fff;  \n\n**shad** = box-shadow: none;  \n**shad-000-10** = box-shadow: 0 0 10px #000;  \n**shad-000-10-1-1** = box-shadow: 1px 1px 10px #000;  \n**shad-in-000-10** = box-shadow: inset 0 0 10px #000;  \n**shad-in-000-10-1-1** = box-shadow: inset 1px 1px 10px #000;  \n\n**tshad** = text-shadow: none;  \n**tshad-000-2** = text-shadow: 0 0 2px #000;  \n**tshad-000-2-1-1** = text-shadow: 1px 1px 2px #000;  \n\n**tra-c-3-bc-3-o-3** = transition: color 0.3s, background-color 0.3s, opacity 0.3s;  \n**rot20** = transform: rotate(20deg);  \n**rot-45** = transform: rotate(-45deg);  \n**ell** = text-overflow: ellipsis; overflow: hidden; white-space: nowrap;  \n**nowr** = white-space: nowrap;  \n**hid** = visibility: hidden;  \n\n**norep** = background-repeat: no-repeat;  \n**repx** = background-repeat: repeat-x;  \n**repy** = background-repeat: repeat-y;  \n**cvr** = background-size: cover;  \n\n**bpcen** = background-position: 50% 50%;  \n**bp-20-20** = background-position: 20px 20px;  \n**bp-50p-20p** = background-position: 20% 20%;  \n**bp-c-b** = background-position: center bottom;  \n**bp-r-t** = background-position: right top;  \n**bp-l-10** = background-position: left 10px;  \n</details>\n\n### Background image style shortcuts\n\nYou need to define source directories of images with these directives.  \nDefine few sources if you need. Just duplicate lines with different paths to folders (not files)\n\n```scss\n.with.image.source '../../assets/images/';\n.with.image.source './bg-images';\n.with.image.source './images/gifs';\n.with.image.source '../svgs';\n```\nAnd then use code like this:\n\n```scss\n.item {\n  var .png-arrow.jpg-bg.jpeg-line.png2-some-image;\n  var .gif3-preloader.svg4-icon;\n}\n```\nSo add number 2 (3) if an image is from the second (third) source.  \nShortcuts are named as image file extentions (PNG, GIF, JPG, JPEG, SVG).  \nSecond parts are image file names.  \n  \nSo you will have these styles:\n\n```scss\n.item {\n  background-image: url(../../assets/images/arrow.png);\n  background-image: url(../../assets/images/bg.jpg);\n  background-image: url(../../assets/images/line.jpeg);\n  background-image: url(./bg-images/some-image.png);\n  background-image: url(./images/gifs/preloader.gif);\n  background-image: url(../svgs/icon.svg);\n}\n```\nSo shortcuts look like this:  \n\n<details>\n<summary>Click to expand</summary>  \n\n**png-png-filename** = background-image: url(../some/path/png-filename.png);  \n**jpg-jpg_filename** = background-image: url(../some/path/jpg_filename.jpg);  \n**jpeg-oneMoreJpgFilename** = background-image: url(../some/path/oneMoreJpgFilename.jpeg);  \n**gif-giffy** = background-image: url(../some/path/giffy.gif);  \n**svg-blabla** = background-image: url(../some/path/blabla.svg);  \n  \nOf cource you can add number of source folder  \n  \n**png2-a** = background-image: url(../path/to/second/source/a.png);  \n**gif33-d** = background-image: url(../path/to/33-th/source/d.gif);  \n  \nThis two lines do the same  \n  \n**jpg-e** = background-image: url(../path/to/first/source/e.jpg);  \n**jpg1-e** = background-image: url(../path/to/first/source/e.jpg);  \n</details>","maintainers":[{"name":"bushstas","email":"bushstas@mail.ru"}],"time":{"modified":"2022-04-12T06:35:10.421Z","created":"2017-12-16T06:39:43.562Z","1.0.0":"2017-12-16T06:39:43.562Z","1.0.1":"2017-12-16T08:57:13.682Z","1.0.2":"2017-12-16T15:39:23.473Z","1.0.3":"2017-12-16T15:55:32.742Z","1.0.4":"2017-12-16T16:01:02.491Z","1.0.5":"2017-12-17T06:04:52.432Z","1.0.6":"2017-12-17T08:11:23.027Z","1.0.7":"2017-12-17T10:22:38.337Z","1.0.8":"2017-12-17T13:11:16.714Z","1.1.0":"2017-12-17T17:48:32.838Z","1.1.1":"2017-12-17T17:56:49.584Z","1.1.2":"2017-12-17T18:15:57.072Z","1.1.3":"2017-12-18T09:02:38.389Z","1.1.4":"2017-12-18T14:32:03.080Z","1.1.5":"2017-12-18T14:37:02.693Z","1.1.6":"2017-12-18T14:47:16.248Z","1.1.7":"2017-12-18T18:39:33.459Z","1.1.8":"2017-12-18T19:56:56.777Z","1.1.9":"2017-12-18T20:01:30.621Z","1.2.1":"2017-12-21T13:16:54.970Z","1.2.2":"2017-12-21T13:33:56.267Z","1.2.3":"2017-12-21T14:08:29.727Z","1.2.4":"2017-12-22T08:28:28.885Z","1.2.5":"2017-12-22T17:14:13.974Z","1.2.6":"2017-12-23T06:19:18.101Z","1.2.7":"2017-12-23T06:28:41.146Z","1.2.8":"2017-12-23T10:43:15.405Z","1.2.9":"2018-01-05T14:23:20.087Z","1.3.0":"2018-01-11T08:37:27.113Z","1.3.1":"2018-01-25T14:11:41.074Z","1.3.2":"2018-02-17T06:37:46.696Z","1.3.3":"2018-04-27T07:55:19.950Z"},"homepage":"https://github.com/bushstas/classy-loader#readme","repository":{"type":"git","url":"git+https://github.com/bushstas/classy-loader.git"},"author":{"name":"Bushmakin Stas","email":"bushstas@mail.ru"},"bugs":{"url":"https://github.com/bushstas/classy-loader/issues"},"readmeFilename":"README.md"}