{"_id":"styled-matter","_rev":"34-06b8c3fc5f0cbe156b1db2e06a8facc4","name":"styled-matter","dist-tags":{"latest":"0.5.0","alpha":"0.3.4-alpha.6"},"versions":{"0.1.0":{"name":"styled-matter","version":"0.1.0","description":"One React component to style them all","main":"dist/index.js","scripts":{"start":"babel src --watch --out-dir dist --presets=@babel/preset-env"},"repository":{"type":"git","url":"git+https://github.com/woro83c/styled-matter.git"},"keywords":[],"author":{"name":"Michael Worobec","email":"woro83c@gmail.com","url":"https://woro83c.com"},"license":"ISC","bugs":{"url":"https://github.com/woro83c/styled-matter/issues"},"homepage":"https://github.com/woro83c/styled-matter#readme","devDependencies":{"@babel/cli":"^7.7.4","@babel/core":"^7.7.4","@babel/preset-env":"^7.7.4","eslint":"^6.7.1","eslint-config-prettier":"^6.7.0","eslint-plugin-prettier":"^3.1.1","eslint-plugin-react":"^7.17.0","prettier":"1.19.1"},"dependencies":{"@emotion/core":"^10.0.22","emotion-theming":"^10.0.19","lodash.get":"^4.4.2","react":"^16.12.0"},"gitHead":"78061bca45b1ba18b3abecf763f8ce19f40cb53a","_id":"styled-matter@0.1.0","_npmVersion":"6.4.1","_nodeVersion":"10.13.0","_npmUser":{"name":"woro83c","email":"woro83c@gmail.com"},"dist":{"integrity":"sha512-aSeHmwheGFJlerKNfeW1N5Lj6WgoZhfbZCF3wyc9lbyyC4Le4kc5q7hv/Y8Ya3CHQuIiCam/a8lMwU4zbPga3g==","shasum":"6d500e41d934940fbc37014ca7cc13349bbb7799","tarball":"https://registry.npmjs.org/styled-matter/-/styled-matter-0.1.0.tgz","fileCount":10,"unpackedSize":31542,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd4elWCRA9TVsSAnZWagAA2fUP/R0ocUFc6wnQ6DlTl/Sp\njZsa3c1mjiF0icF4CkdqwYM8JjodA5v4jpELFYSd+XQ8DBZEQLjL2lQLCL3N\nEeqZIrDtAeWU7MzpSZ1AA2QNv/e/SX5aiSaP5DZcqKyzM4jRsmJSZwQvEzFB\nlK0lYOFsFZL8d2CjOdmE3QJ8zQE6PF/YX58g4lTgYa8oeyGcODDoiuQM6BsQ\nTBTr9Ve+kWhJO9Bbu5oRTjKdeMbAZ6oXPcoWAVFXD4+6z5BXgpwfr8WV5Bum\n5VulYsGLmlSIZvh9Qq4CoujsHKv6ay4xN1MqTVwz3aXMxW63q8V+P0fz5VHt\ny5Jin2heX2uZ7LREf7tx3x5f/y8VgKNCdFz8Ij0O19xbsiPcOQz+lJAyuuGl\njT20CZ4bi1T8jZrZ/LqvF4sllgJH+WLneG8LKwFrKXPL5gtZdcY0ZbkKEJIx\nUO1phinfHW/JYG7t/mUjN2OGafs7J+lrbJux8jDNHF5pkNXEvwYhezZL/2Yu\n87MAnSDVKjhTAq7O4UBGFsxbpNePdKyb6laKfHWOYE6l1duIKesVww+2XDCz\nie+E05Qpg+yl5xX/bQ1Hkr7HYIkshUfYIiJ/5p3TjaztzpRWYjUkYgFEX1PG\nqxt4xToJZzNKDmGejMe4gP8o1gxULAi8CkxNj6vx8wQno42RiW4bLn2AQ5V9\nIgQO\r\n=jPhO\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDrRSbobk6bP1Az9tprmtZ1G3pfB53V0uZY1cnbcLw2yQIhALmHxhC9kI0URj50tUr5EdbpmRcBw0cWjRyOC0edX25Y"}]},"maintainers":[{"name":"woro83c","email":"woro83c@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/styled-matter_0.1.0_1575086421723_0.24219309011531753"},"_hasShrinkwrap":false},"0.1.1":{"name":"styled-matter","version":"0.1.1","description":"One React component to style them all","main":"dist/index.js","scripts":{"start":"babel src --watch --out-dir dist --presets=@babel/preset-env"},"repository":{"type":"git","url":"git+https://github.com/woro83c/styled-matter.git"},"keywords":[],"author":{"name":"Michael Worobec","email":"woro83c@gmail.com","url":"https://woro83c.com"},"license":"ISC","bugs":{"url":"https://github.com/woro83c/styled-matter/issues"},"homepage":"https://github.com/woro83c/styled-matter#readme","dependencies":{"lodash.get":"^4.4.2"},"devDependencies":{"@babel/cli":"^7.7.4","@babel/core":"^7.7.4","@babel/preset-env":"^7.7.4","eslint":"^6.7.1","eslint-config-prettier":"^6.7.0","eslint-plugin-prettier":"^3.1.1","eslint-plugin-react":"^7.17.0","prettier":"1.19.1"},"peerDependencies":{"@emotion/core":"^10.0.22","emotion-theming":"^10.0.19","react":"^16.12.0"},"gitHead":"0cea802eee46a21cd559f179af4def359ffee9bc","_id":"styled-matter@0.1.1","_npmVersion":"6.4.1","_nodeVersion":"10.13.0","_npmUser":{"name":"woro83c","email":"woro83c@gmail.com"},"dist":{"integrity":"sha512-GfLA5u9uOLlHVQyWRolWhJo5qwaOjQ71VAnV/sQRV9IYHbNbbBuWiBxv7Cq0Aw5Jme1t0a1GOVBDaALghUGIcQ==","shasum":"64dda47eb2bdf6a9a9cf3a845d68e82e047f6290","tarball":"https://registry.npmjs.org/styled-matter/-/styled-matter-0.1.1.tgz","fileCount":10,"unpackedSize":32553,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd5X9dCRA9TVsSAnZWagAAln0QAJ09A//SKq9YyMKps7Qb\np4yOAb457qDVDU0bdB5ILCNYDJ7P031EDheF6fwHAauwdU/2ujaZcGMZjgZg\nsVHfeWQViC5DcAOS6QeAxqCWHi1Z8kGdGiwhI8Dl77ETZRv0Wuj6QhAIHXAF\ndNOZ0jz7vJJVvDyiS2qRCHQhc8tXGO3Al1IRlR0/YXnq1rv1+kHbQ2CzvYzW\nWUofa0rEbKo/7fKXbq8sNzQWhYDxrNimkGVb/3RpeGiv770S7XmnJ0lexzC7\nL7GXXKlK55FJ+l2DcKrx/sicSxUXhXl/l4GoA4n5BcCVdJ8OTdn7WQY9l/8l\nyxSTa9yq6ezLgwy7+uURwn5exmQF+RK+QE/jiaBBtp1Z/uIpGu2RjXDFmgEX\n2WcezKsSvVgFfLZRt8SoQ08KbxFtGHJ5leKgDq7VFqhlhPLVWrOohHX72pwS\nS1qeh4+02YTuynfXSiYAK28UBfAu+uR8GLxNS0gK6VBVpW4ljpMCURQE+nBS\no7xFn607EtIfKhRAQMY1ehc1d+Z8xVBiJ3RDwZ+qX8X8IUi5RgwMgg4hNY8G\nkyAAVOK6uS0A/Fdlgmvr2O8blnyi0zM+AwP819dCHXxSlv6HitHJjTboIj8T\nz5x0SFWpqXESvhffMw+4Br8lrPZHiY88TmE2z+VRNisGN50soG8xYAwgunzL\ne8TE\r\n=txW9\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDpaMBvQQ1yh/UaDEy7YGgpKvRxCiNEG6SJd545NRfeIgIhAM2zeM8Dm1dJJi7XLtVDjr4bxhn+X2a8XrunZus1Bdyp"}]},"maintainers":[{"name":"woro83c","email":"woro83c@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/styled-matter_0.1.1_1575321437386_0.19839349877280954"},"_hasShrinkwrap":false},"0.1.2":{"name":"styled-matter","version":"0.1.2","description":"One React component to style them all","main":"dist/index.js","scripts":{"dev":"babel src --watch --out-dir dist --presets=@babel/preset-env","build":"babel src --out-dir dist --presets=@babel/preset-env"},"repository":{"type":"git","url":"git+https://github.com/woro83c/styled-matter.git"},"keywords":[],"author":{"name":"Michael Worobec","email":"woro83c@gmail.com","url":"https://woro83c.com"},"license":"ISC","bugs":{"url":"https://github.com/woro83c/styled-matter/issues"},"homepage":"https://github.com/woro83c/styled-matter#readme","dependencies":{"@emotion/is-prop-valid":"^0.8.5","lodash.get":"^4.4.2"},"devDependencies":{"@babel/cli":"^7.7.5","@babel/core":"^7.7.5","@babel/preset-env":"^7.7.6","eslint":"^6.7.2","eslint-config-prettier":"^6.7.0","eslint-plugin-prettier":"^3.1.1","eslint-plugin-react":"^7.17.0","prettier":"1.19.1"},"peerDependencies":{"@emotion/core":"^10.0.22","react":"^16.12.0"},"gitHead":"febbda085b2ae5a299569404ce522e95602b851c","_id":"styled-matter@0.1.2","_npmVersion":"6.4.1","_nodeVersion":"10.13.0","_npmUser":{"name":"woro83c","email":"woro83c@gmail.com"},"dist":{"integrity":"sha512-2JLKUMmJAVbSSQfI1FC+IRSR+HbWflYQMxRhZX78JPLsm1eLChN6gDWmiJj5mrzPJZS8fY+K+ej1XI019DeMrw==","shasum":"ea020283d53f8a5a37e39b127f2fbe522d351e49","tarball":"https://registry.npmjs.org/styled-matter/-/styled-matter-0.1.2.tgz","fileCount":11,"unpackedSize":34924,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd7Le9CRA9TVsSAnZWagAA33UQAJbnND5LfRRg4mN3HvVQ\nsoA4MgRUFvbRoNICBaW5TDnFv88pR2pZnZwexNhuhSjcJqem5z3+OgQljbcX\npXqPob1Ewh8zoXo59f78qJhJVND1ng297rvYttTZsS6AW0IiAT15oldeLLJK\nn+4bem1GvT3ztCMWU+zNo42W7mNJ8g3xQksaGWTX0bj44pEyV8FAO1PjGi+3\ns2hm11TzwDHyZqLSC/jsLKdGMeWKXshgIUwMh6cQEEQ6h9jvUni+DXrquolM\nELYS34rNPFPEqWcn6Xe990Dr+DnrRHzQOJbafBxsztz3r8Fz1/7eUJLgjQaP\nTkldpLADwgG3vAGmRhDaGC1l+pQBlTDpXDmlddSHM0t6e4nmth2n/wIOMcSJ\nVHqPu/CYxyYasxdcvkmRX7ex084y/B3VzNykzZRIjVIpjpad9QF8agldEs3I\n5cWqPtckuVG+XT+Puv52E9s7fPR9ZfgZ1qOiMw1nQecFd+ZYdkJgCcidHzNZ\n8rKVMMsT0NPHhNVf7irPRzbTl4keo69NX/dP6428Xs8gHChnTWsJF88NJLfb\nKGkli/HNiBvCxDBcG88Z/zYbnKclB+hMiXugj3DbexcU1MxZZT0MrzEEHFX6\n9EJuAj+8NTcm6LbqgX+3zspwJsdrHz7dXLbRZdVF20ytmqPO1J+lTHrTbIva\n+Zba\r\n=1GpX\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICCQXmVero3HHn2dgfrpDfhTQAYoE71QSjHf3BXJm4BjAiEAp/rUlcKYulkhEFTfndnpDPQh0VIuLYdGtIwA3rXFdwE="}]},"maintainers":[{"name":"woro83c","email":"woro83c@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/styled-matter_0.1.2_1575794620980_0.14285167753729633"},"_hasShrinkwrap":false},"0.1.4":{"name":"styled-matter","version":"0.1.4","description":"One React component to style them all","main":"dist/index.js","scripts":{"dev":"babel src --watch --out-dir dist --presets=@babel/preset-env","build":"babel src --out-dir dist --presets=@babel/preset-env"},"repository":{"type":"git","url":"git+https://github.com/woro83c/styled-matter.git"},"keywords":[],"author":{"name":"Michael Worobec","email":"woro83c@gmail.com","url":"https://woro83c.com"},"license":"ISC","bugs":{"url":"https://github.com/woro83c/styled-matter/issues"},"homepage":"https://github.com/woro83c/styled-matter#readme","dependencies":{"@emotion/is-prop-valid":"^0.8.5","lodash.get":"^4.4.2"},"devDependencies":{"@babel/cli":"^7.7.5","@babel/core":"^7.7.5","@babel/preset-env":"^7.7.6","eslint":"^6.7.2","eslint-config-prettier":"^6.7.0","eslint-plugin-prettier":"^3.1.1","eslint-plugin-react":"^7.17.0","prettier":"1.19.1"},"peerDependencies":{"@emotion/core":"^10.0.22","react":"^16.12.0"},"gitHead":"7e0ec6aafb4dc7afc9de361f1728b40d2137bf4d","_id":"styled-matter@0.1.4","_npmVersion":"6.4.1","_nodeVersion":"10.13.0","_npmUser":{"name":"woro83c","email":"woro83c@gmail.com"},"dist":{"integrity":"sha512-Sl5lEejjwd/wr0j+hc1JNLSyBlgb2oXm8+5VH+SysluvkPC/Tcl6xVJjGxAyiPze0368ijCYawdlo0v7GvYShg==","shasum":"c2aad40b8471fbaeebbb492cd914532be74751fa","tarball":"https://registry.npmjs.org/styled-matter/-/styled-matter-0.1.4.tgz","fileCount":11,"unpackedSize":33986,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd7/XqCRA9TVsSAnZWagAAkk8P/0rh/Et4pC8BrjzqA5bR\nzpLOR9p4Tq8BOzpbpBc7YvF3WBq/cOvDTIs1aqAsDfnjjRyHEgOry4OtUbx0\n+aig76jNsYmK4/pgCAOEXPkSN8oIKJKHgkQzWaLQyTlNDICl2dQPMRs/WhA7\n51CF/s2sa9A7aAa1FMDfdT2EnjlTa3MWmOVGXyMoMqsgLdF93ysa+6KcZp0n\nQszjusufMc49Cq77LG9ykaHwYvOrwlt4SnfE3u9hM5MUY46pYIB8eFBgDmcC\nW9ly3MD+wl7g2+bOdxUlq+g+B09XCVCAw6WH14Hz/Q1mnvR+1D9cfdO1E1PU\nlPh55CiAtFJmNtsdnioS+Q4R1CnADvcEfi/pQp4StjNWJjvCqEbgJYzgXo27\nhvAXiFKCbBJ0hesduOj65u76yHP3UXIhiMTIah6JDKWPq6qOkB4CH5YQoVN4\na2ttKSM/26Xe+/LDpJdSfQQLIDVVZsYbXt6jdxgWBpkC4MFxD3PWDJ3JolDw\n7DtrqXsUEbtRF0t1g7zqF/hGJiZtm/h6nLaf4Tp+byFOQ4jksfBKuFUnNVF5\nmLffSanBDce1BO3qKLXVmTT6FHtyIuXnpxxPy/vRFtd1nDAJxWrCB0qqmfXl\nEd+wn/3oKujl2XafOlNqDIHHhOYaPDfSNDoY/S/GhJStiolqVzGD1Ad7Aw6Q\nWWBE\r\n=k6MR\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDYalC8N/Ximwe8xtkJW0pTrZQN2H7RnoV0N+Lj2C4bPwIhAIKi/NXSp+92DleS9Cv5bZ3UJ++XmsNN3B1DtN9MjVFJ"}]},"maintainers":[{"name":"woro83c","email":"woro83c@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/styled-matter_0.1.4_1576007145665_0.4931814981291023"},"_hasShrinkwrap":false},"0.1.5":{"name":"styled-matter","version":"0.1.5","description":"One React component to style them all","main":"dist/index.js","scripts":{"dev":"babel src --watch --out-dir dist --presets=@babel/preset-env","build":"babel src --out-dir dist --presets=@babel/preset-env"},"repository":{"type":"git","url":"git+https://github.com/woro83c/styled-matter.git"},"keywords":[],"author":{"name":"Michael Worobec","email":"woro83c@gmail.com","url":"https://woro83c.com"},"license":"ISC","bugs":{"url":"https://github.com/woro83c/styled-matter/issues"},"homepage":"https://github.com/woro83c/styled-matter#readme","dependencies":{"@emotion/is-prop-valid":"^0.8.5","lodash.get":"^4.4.2"},"devDependencies":{"@babel/cli":"^7.7.5","@babel/core":"^7.7.5","@babel/preset-env":"^7.7.6","eslint":"^6.7.2","eslint-config-prettier":"^6.7.0","eslint-plugin-prettier":"^3.1.1","eslint-plugin-react":"^7.17.0","prettier":"1.19.1"},"peerDependencies":{"@emotion/core":"^10.0.22","react":"^16.12.0"},"gitHead":"e05bc1cf21f632098c359bcd227add5e3ec010a0","_id":"styled-matter@0.1.5","_npmVersion":"6.4.1","_nodeVersion":"10.13.0","_npmUser":{"name":"woro83c","email":"woro83c@gmail.com"},"dist":{"integrity":"sha512-4vEZbpn+v+J9MG28znfEYv6xkGSE46QZ6gFKFCZB6DwdQjd/GYoPfGSblwHyrXjNj7FxRvnCXukfgAokIcctyw==","shasum":"0ccf2be079ba4300db45f2d85b554d1e60ca2429","tarball":"https://registry.npmjs.org/styled-matter/-/styled-matter-0.1.5.tgz","fileCount":11,"unpackedSize":41450,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd/y1ECRA9TVsSAnZWagAAdY4QAJzA+xqdpKYX0s4ocGMJ\nXqr9RJzAEBEJiRwE8Y3oKJiwWFrZy/J3luY7er8asdOSyvbzRzsEZt+ELjhH\nJgq9mF+yoCE6LGtfU16p/L21WE7Ow5adKOZ5hUYF4mk1qgO1L/hcSsOUA2ZP\nFcZ6rNNjFrldIknXVKa6GhwB5ARViLMStH1n6pInzp3nDkJ23b1tdbPnXpXo\n2Kwl9j38Li+mRo4EpHVo6nqdjK9DhDHRY77sLqjw/k2mqO+f7vd6v1vPNsXD\nBwyc/fd0U9xpUo4LiWkV7lYoWkyTuuEobUgyp8hsL+oKtei9tetayFlsknew\nnJpJBNX5tNzExHziKV2j3Y2IwsjepP5Rd1h9U5laDLo5EVqHqJebGyDmlB48\nwjDLR9epPbIW0TLOY+PhizFzB3rKZuRUGZCpq1YnNA9nCnSmHFI0bV/tbpEh\nYMYeUZ3SXtjgc+Xw2L3R2mhq/R7YlMFgsbEkzsjJ1/EltN9vRJcQMezeA8nG\nlzww/QF8xjs8Npq1PgSi2dsqZ6ouytBeffctbmTFz5LEkAqyGHl8bfkkfq+S\nnQWMRdeINyYMr9N9vomtSU7pJf9ZRV1jQH2PewqO5lFLR29ksa+pLGo2w6tA\nD6l8791ZTKVtDj5qrYbLMer+3z64howI6mtwcgPuPFne3mfDMbKvMzAjXPf/\ntMAw\r\n=Gd/e\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGp8O1cDMyDuhBdnJVOMAbUusthr8bkXpROj/03Hf4yOAiEAyLZiDDTwcdvvZXxug53t9qDvB7QCzyPXtxwN2nDCAvg="}]},"maintainers":[{"name":"woro83c","email":"woro83c@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/styled-matter_0.1.5_1577004355697_0.2503687003607822"},"_hasShrinkwrap":false},"0.1.6":{"name":"styled-matter","version":"0.1.6","description":"One React component to style them all","main":"dist/index.js","scripts":{"dev":"babel src --watch --out-dir dist --presets=@babel/preset-env","build":"babel src --out-dir dist --presets=@babel/preset-env"},"repository":{"type":"git","url":"git+https://github.com/woro83c/styled-matter.git"},"keywords":[],"author":{"name":"Michael Worobec","email":"woro83c@gmail.com","url":"https://woro83c.com"},"license":"ISC","bugs":{"url":"https://github.com/woro83c/styled-matter/issues"},"homepage":"https://github.com/woro83c/styled-matter#readme","dependencies":{"@emotion/is-prop-valid":"^0.8.5","lodash.get":"^4.4.2"},"devDependencies":{"@babel/cli":"^7.7.5","@babel/core":"^7.7.5","@babel/preset-env":"^7.7.6","eslint":"^6.7.2","eslint-config-prettier":"^6.7.0","eslint-plugin-prettier":"^3.1.1","eslint-plugin-react":"^7.17.0","prettier":"1.19.1"},"peerDependencies":{"@emotion/core":"^10.0.22","react":"^16.12.0"},"gitHead":"e8b9e3135d1e431d7c5111761c6d06bf1d9b669c","_id":"styled-matter@0.1.6","_npmVersion":"6.4.1","_nodeVersion":"10.13.0","_npmUser":{"name":"woro83c","email":"woro83c@gmail.com"},"dist":{"integrity":"sha512-xDexHooWvJv8uQqkX3+4Ur0DiflFxF2iFSkZ2mWdnjREvVe9wjGpuoW+yE7D72kSZAQZoP/cPSFLJLDpF3GsgA==","shasum":"ec771b877117dfcf0e9e3dacbdd8a50e1a52cc78","tarball":"https://registry.npmjs.org/styled-matter/-/styled-matter-0.1.6.tgz","fileCount":11,"unpackedSize":42839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeAFBACRA9TVsSAnZWagAAx1sQAJepbomXmUdj5eEyz9S2\nU0ZQfZ4+Dyb52EvzgEtfXPeZp5JOxXtAwlCQAHGipbaRgdrO3w2lxYPjYQ1m\n29XOWHUe5bqlaLsRQWyB218AX/xd0eWn4TQZFaUJUVNVekqp8OhEsZbpIakY\ncXfFSet4fqWiJtJoLnzsfgYLFgoe+VItFsiOtYJnAJ/VqimIwn2jw1MGfcUw\ngtiAUO7gIQxhJyer5ksGBbIqT5DuP8p3vxXsTYoryw82zo8an9OrHndih9RZ\nlHVmv2G84dtdPuNC/xI673RQ3B4vqZybgzWVcAXC72f3ACt2SmcIys5Don7+\nFWL1ZLwssJwhIS57XWnC1R+4X8o7hkBimuMszd/xQ07vvfDEiQGQtDZosOeQ\njfEDxIjmdgODp7381ylVtjxguuygqJgw+845OfNiLLGMGEm5FGzSuL/mErhh\nwIU6w53r6VAWNy8rnHs2MuW67ol4BG7CE2p53igbEHZsijzCKYbAvNTbF1lV\nJbbHcveXNaPZ2+I55jCWIQ9BO5/LvBFpov37sGcWzhQr4k/kr4nF+c1uYU4b\nyjyJJuqYyTGGUddCYk+U39OSvG/IiBcIv+v6QrAoDufJ235i8bzQIf6ktAIq\nv+b0bdO7Qn6sjya51W65vNGKozpCMEEXBwrO+WMYx+adDbk7Vwxcfy5ldR7W\nDWHg\r\n=kYrk\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC3u2IbG8AdQ9+EcM4nKFrciO1UyEAFIDMslVYhXQqC1wIgU+jrwRG/jg4iLhb2WOlH5k7sTiqHgq6zg/DX4ggF0l4="}]},"maintainers":[{"name":"woro83c","email":"woro83c@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/styled-matter_0.1.6_1577078847735_0.23685720704857682"},"_hasShrinkwrap":false},"0.1.7":{"name":"styled-matter","version":"0.1.7","description":"One React component to style them all","main":"dist/index.js","scripts":{"dev":"babel src --watch --out-dir dist --presets=@babel/preset-env","build":"babel src --out-dir dist --presets=@babel/preset-env"},"repository":{"type":"git","url":"git+https://github.com/woro83c/styled-matter.git"},"keywords":[],"author":{"name":"Michael Worobec","email":"woro83c@gmail.com","url":"https://woro83c.com"},"license":"ISC","bugs":{"url":"https://github.com/woro83c/styled-matter/issues"},"homepage":"https://github.com/woro83c/styled-matter#readme","dependencies":{"@emotion/is-prop-valid":"^0.8.5"},"devDependencies":{"@babel/cli":"^7.7.5","@babel/core":"^7.7.5","@babel/preset-env":"^7.7.6","eslint":"^6.7.2","eslint-config-prettier":"^6.7.0","eslint-plugin-prettier":"^3.1.1","eslint-plugin-react":"^7.17.0","prettier":"1.19.1"},"peerDependencies":{"@emotion/core":"^10.0.22","react":"^16.12.0"},"gitHead":"3257805f7f5f15ec05ca6de376d23fe4a56909df","_id":"styled-matter@0.1.7","_npmVersion":"6.4.1","_nodeVersion":"10.13.0","_npmUser":{"name":"woro83c","email":"woro83c@gmail.com"},"dist":{"integrity":"sha512-WW3kC5dRJPforfhpgvuUDC+mSYcSXuFWTKxmVfkrV+s1SugUG3MYIh2LfE5t/2+W8doNd+fRopPX1GTYxsQHOA==","shasum":"311c5761f0e42d4cc29bd5bd7247e652c1f1ad8c","tarball":"https://registry.npmjs.org/styled-matter/-/styled-matter-0.1.7.tgz","fileCount":11,"unpackedSize":41662,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeZdowCRA9TVsSAnZWagAAtBcP/1sC+NH4lZ+5mzje1jBY\nW8fCv3c4suPYY6nnco2DfVPml9ry285srP3bot5mGHftTKmd6vI44iSm+dU/\nziYazl4NP2Oxi38ArnwpDwWLqjQDitsxCpEXTstatditY+EMDybgXgBsys7h\nBLu0HHY1pQVAWlh74Tsx90w8ha5cYwWxXcfMPli2EmA9VpO+7iX8n7aq65r/\nWfNfP8drHPKghMNjxXNYtGB+nHse9Y+5aBitpunRIWI3NlSf6a8fYGTdbFK/\nTkodqYYdu1pxRltFn49F+Lj79BrEPFORYwvFNeSMmC6saJAm44rbkXRAmfMH\nOjgitGjxc6vkQKmMZeohgABUwij5L7LsuI/obk7W5T0wI3sgr4Ew8MzxiaaB\nX43bHNT1JR27ReFoZZCEMF/JidpGWlnLZZQumCxN8OVHZb/60BA/FD5b2kkT\ngCnRfnGeW3E6wrQhqRmDZhOHqmcRU8jtWLg0K3mVVboksDAflUl1KOHHoPlJ\nwzNQDW7Loz8ePp+ib834oRLJTSWCk8SZ1Qq3VYuFkGVGsALO0bvgY53HJTck\nOE6r+uo4j6fQmRbwrkNfbmWKvkH28IKHD0Hh06k4UKeK7Zfl1FDPVdtlHTk/\nGnHGHILOpQTq1nuBmP1hW9zVPE/r/K+iIK0ptp3XR/BNbhTniT6CwdAyRqCg\nMJOE\r\n=V/ZB\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGqOOl4resw1IgrDaDDtclwyKG1TyjIP7k+SCxwvZTGGAiEA/0jq0oOBHVf7TEN7YaxSgBaQz0SY2vMnhlFExaiwj7s="}]},"maintainers":[{"name":"woro83c","email":"woro83c@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/styled-matter_0.1.7_1583733296191_0.715999234002163"},"_hasShrinkwrap":false},"0.1.8":{"name":"styled-matter","version":"0.1.8","description":"One React component to style them all","main":"dist/index.js","scripts":{"dev":"babel src --watch --out-dir dist --presets=@babel/preset-env","build":"babel src --out-dir dist --presets=@babel/preset-env"},"repository":{"type":"git","url":"git+https://github.com/woro83c/styled-matter.git"},"keywords":[],"author":{"name":"Michael Worobec","email":"woro83c@gmail.com","url":"https://woro83c.com"},"license":"ISC","bugs":{"url":"https://github.com/woro83c/styled-matter/issues"},"homepage":"https://github.com/woro83c/styled-matter#readme","dependencies":{"@emotion/is-prop-valid":"^0.8.8"},"devDependencies":{"@babel/cli":"^7.8.4","@babel/core":"^7.8.7","@babel/preset-env":"^7.8.7","eslint":"^6.8.0","eslint-config-prettier":"^6.10.0","eslint-plugin-prettier":"^3.1.2","eslint-plugin-react":"^7.19.0","prettier":"1.19.1"},"peerDependencies":{"@emotion/core":"^10.0.28","react":"^16.13.0"},"gitHead":"f321b3dd75c58ad3182a4d4b856246a12642875d","_id":"styled-matter@0.1.8","_npmVersion":"6.4.1","_nodeVersion":"10.13.0","_npmUser":{"name":"woro83c","email":"woro83c@gmail.com"},"dist":{"integrity":"sha512-kp7t4I/3zl2nx3rmApXkAErTYio9POwP27ps/Jn+qqSuC+sYzfM0jd54GBYIJCDMKwAs1/jIaeZoHjDPCAWpQA==","shasum":"30b5f3f74da5a918e5fb47ed1ba7f6b4e3e40bf8","tarball":"https://registry.npmjs.org/styled-matter/-/styled-matter-0.1.8.tgz","fileCount":11,"unpackedSize":41663,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJebVjMCRA9TVsSAnZWagAA0DgP/iylKYUI0vGlvJn1GkMi\nOGwjneqpLd5GVhrF+pJfn9Mc5cvBjMDOSQsDF19KZNDcugrUO+9cC9Uk+r2m\nGPbxVwWo3KJvz/6izEBheCQJ1ILWCcBf1ECsxEu9pQ6EkCBOBd/bOidjYRQ0\nApuInMt8NiUmr3qA6xbym9wGaCQ5WpDYeC+XzfXmnuXBM/SPPeGmDNJWrfuJ\nB9kD1HUldW0xBvG4wGaCCnEK8QoWNzvT1SLH8+/jRUwC/+1L9lyDC+FO5fQ7\nLDWx6WurQxEwxkkaJRsB9nU54WbNep2odn6JhLwoNKPvYoGOjPikMHbgXIYn\nh8jm4YG2fjaxiQrpqFUsr7+jIQDpvsDEKx+o+A4P0dWexU/UJBmZlGQt+XNj\nBYOcTkfsrDuOPxFsco3ify1yEmRr0ehuylGtf8Cz9MhdTYANivtCASHtXdk5\np7HGBWcbL/Les72NZ5NUcvwofxOTrDwAl5mk7j6kxtdD+904Lusyh2fUp3lO\nskn7LKDILM4wXc0JRG8ohDE96LVwuxTSS4je5w8hhzdBtf1a5r/+jTKndunz\nwSTF3LdaT20DfbI4hpb8OQGWFP48wAthmtHR7QKNdptmZKuCXHMYR134fXLK\nZce1in+2ZY72NmmNQdn2Bb9TCL1CTFvrFlNSupD3KZzjxQaZbjKaEhmmkLfc\nVTni\r\n=YOfi\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC3lvR1h/YvoGIbjwqNxhIobdXA1hxi64nefhITfNps/AIhALDlJ0sfltasO4I1ruL4WTofMiMxtF+jY5Y38tZGIxaE"}]},"maintainers":[{"name":"woro83c","email":"woro83c@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/styled-matter_0.1.8_1584224460226_0.9346050086276081"},"_hasShrinkwrap":false},"0.1.9":{"name":"styled-matter","version":"0.1.9","description":"One React component to style them all","main":"dist/index.js","scripts":{"dev":"babel src --watch --out-dir dist --presets=@babel/preset-env","build":"babel src --out-dir dist --presets=@babel/preset-env"},"repository":{"type":"git","url":"git+https://github.com/woro83c/styled-matter.git"},"keywords":[],"author":{"name":"Michael Worobec","email":"woro83c@gmail.com","url":"https://woro83c.com"},"license":"ISC","bugs":{"url":"https://github.com/woro83c/styled-matter/issues"},"homepage":"https://github.com/woro83c/styled-matter#readme","dependencies":{"@emotion/is-prop-valid":"^0.8.8"},"devDependencies":{"@babel/cli":"^7.8.4","@babel/core":"^7.9.0","@babel/preset-env":"^7.9.5","eslint":"^6.8.0","eslint-config-prettier":"^6.10.1","eslint-plugin-prettier":"^3.1.2","eslint-plugin-react":"^7.19.0","prettier":"2.0.4"},"peerDependencies":{"@emotion/core":"^10.0.28","react":"^16.13.1"},"gitHead":"0e7a06c66a50d140b2f2f4de2b3cd7b8bd08a0c1","_id":"styled-matter@0.1.9","_npmVersion":"6.4.1","_nodeVersion":"10.13.0","_npmUser":{"name":"woro83c","email":"woro83c@gmail.com"},"dist":{"integrity":"sha512-dmzLUDDOEYxg0PIg2o0eZ8KHqBYDsQRFVRTPWBVTqObJM83qrNOps4g/TKsYY6LXSk1LLUzk7GJPryM3MQP5qQ==","shasum":"877042024631e5df141f90275e1453e98f7ee0d0","tarball":"https://registry.npmjs.org/styled-matter/-/styled-matter-0.1.9.tgz","fileCount":11,"unpackedSize":48568,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeklYYCRA9TVsSAnZWagAAvvEP/jKuZt/4tnr0TF/rTojS\nlBLuUO5DoPGMB68a+8vv1f999jjdqPsqbkNf4dgHCTfnSt5Iwt0+JPJ2uw2l\noOJJSMRnB5fGWwNo/U16mPhCJsyxfXF+53RcKk+lLQISBu0ypKbIT2sqRMyC\nWmWnP9UIH746c4s+hum6BU8B41mv1w/HbC3LM/UqGh4CAaRZ7I0w8xiGhNEK\nie86IvVT/hRjahwP8miiJetz1Th0pipJsZuWa6rjpMBa457fTR2cfuJXKmqo\nzC+sqRptCV6dBmIgHBaY7TGXsHQmCuF4SYMwN0x5J+OeJR5plOXgWgUu4atL\niyfbSiiqdIM6D0mYERqKePruAo13ZxTH99h0UbYomktfjfMdA3S77vyUOEkH\nugHlJ+wZiNmLBPSsXh7PdTrwRuZWVJed7wIlrdz7YwjmxSuIl7Cpv3BIBMNT\n1tmsuWUV2D5AhE0hgcPVz/3fN9T3Fn7/7fsCWTNVzG+HqsVWT+Gc6WJbCR+B\nG4OWpSRfyIwmdc654dMKTNKII/d03QHIs+Kaj4j0kQ8uH5N8h48upBzTwIU/\nH9sL1wnD7Q9S/hz/UcAhQifLp5A1LS4QrD7l5qd8R2L3nqGU0H8GQ48McOjF\nkK1Cx41au3Kge+oRePdJKMJRFEMM5ynlHaSG/abEOcZV+ogNnnqZlE6myM4y\nweDp\r\n=+36B\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCHIFasrlnzR3anMegKrqtNnnMa2Frs/XwfjSEjUfx7FQIhAItMghEVAC2kW3e26FN63ygPzWy3wjfW0v2A1XwxChiv"}]},"maintainers":[{"name":"woro83c","email":"woro83c@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/styled-matter_0.1.9_1586648599940_0.8458534683591745"},"_hasShrinkwrap":false},"0.2.0":{"name":"styled-matter","version":"0.2.0","description":"One React component to style them all","main":"dist/index.js","scripts":{"dev":"babel src --watch --out-dir dist --presets=@babel/preset-env","build":"babel src --out-dir dist --presets=@babel/preset-env"},"repository":{"type":"git","url":"git+https://github.com/woro83c/styled-matter.git"},"keywords":[],"author":{"name":"Michael Worobec","email":"woro83c@gmail.com","url":"https://woro83c.com"},"license":"ISC","bugs":{"url":"https://github.com/woro83c/styled-matter/issues"},"homepage":"https://github.com/woro83c/styled-matter#readme","dependencies":{"@emotion/is-prop-valid":"^0.8.8"},"devDependencies":{"@babel/cli":"^7.8.4","@babel/core":"^7.9.0","@babel/preset-env":"^7.9.5","eslint":"^6.8.0","eslint-config-prettier":"^6.10.1","eslint-plugin-prettier":"^3.1.3","eslint-plugin-react":"^7.19.0","prettier":"2.0.4"},"peerDependencies":{"@emotion/core":"^10.0.28","react":"^16.13.1"},"gitHead":"55e07bdaff0a58911c6e211e6438c5c95acf7d5d","_id":"styled-matter@0.2.0","_npmVersion":"6.4.1","_nodeVersion":"10.13.0","_npmUser":{"name":"woro83c","email":"woro83c@gmail.com"},"dist":{"integrity":"sha512-cmFzv+trZ0caVRXV/x7o9eXHR74R2EH0KfyG3yZaINrGaSnxjVnUJu2zW0riGDWgyGus7SdnB5PYcg3GYbEjQQ==","shasum":"6fa77438386258031d1471c60b1509b8cecc7842","tarball":"https://registry.npmjs.org/styled-matter/-/styled-matter-0.2.0.tgz","fileCount":11,"unpackedSize":50288,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJelD+HCRA9TVsSAnZWagAAVEwP/1Md+s4I49ER+pgN4iBu\n1a710SxfcTTipfidnDcFtbJYWFuQ5Fls1rgVS0E+9Pq7nFA6I/Bbno5FDovv\neu1V33ylTbwoEWKsA1bC7dv3TDIuSKFe/AuXJg2ADvMNp0x0Ro681vEcJ4gI\nE2yb3+TPgxIN2xR0v9yQSeNGtvc5edQEvLKal37q3VnAlv+VClsWAiEe1Kfv\n/LEIbfffLoT3qmyvBgX2v3OIndddAE7POog7AVxn1Z7R9DpDal+JHRKSblpP\nAP9bSbR8CFvs8UufqThsxYuN7YQEIS9D3cTqw6o268tCW3B08+k+dQ965viP\nIfPY1GvnrkxhJgxGQ1T1lVNElINRfvtm0dq5ruwi49aW4YS0v7JPg+ur6Gm3\ni+I9Ej6ICfWUxq9J0QiVAbfJVkQ9RGXjXP4/Gp3oi+8DPE1Jf9e0HBslay4A\nGA1haSdw60vspNhe5ZBQ4n9cOol4XdKgbnwv9v1ZycmWtudKUn3TF4K69sf4\nB6778Fkv5sqslJwsVsnJAxCMomeKQTteCftRk84MmL/2O6xDEkc3RKPUCILs\nIba2tnHg1r/oZZYAXao9Y4Gp1GXczpUKwqBvMGkM9jwn8QVpacbdUlTIs8rK\nG7G3Ht8COrse902E4ulMxrA3pLM50ggpVA9IwJqPNCdbFWpgFY3ZETXcifZQ\n41d7\r\n=JSqB\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDJcSJiHlMRMRg3bi/j+/ksFe+1UzYDHTYoaQKOtrgICAiBcIiUbKSD0k9nJEUThTLuYcejs9Mxw/YEDvm7f3GmDtw=="}]},"maintainers":[{"name":"woro83c","email":"woro83c@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/styled-matter_0.2.0_1586773895415_0.6345641297902502"},"_hasShrinkwrap":false},"0.2.1":{"name":"styled-matter","version":"0.2.1","description":"One React component to style them all","main":"dist/index.js","scripts":{"dev":"babel src --watch --out-dir dist --presets=@babel/preset-env","build":"babel src --out-dir dist --presets=@babel/preset-env"},"repository":{"type":"git","url":"git+https://github.com/woro83c/styled-matter.git"},"keywords":[],"author":{"name":"Michael Worobec","email":"woro83c@gmail.com","url":"https://woro83c.com"},"license":"ISC","bugs":{"url":"https://github.com/woro83c/styled-matter/issues"},"homepage":"https://github.com/woro83c/styled-matter#readme","dependencies":{"@emotion/is-prop-valid":"^0.8.8"},"devDependencies":{"@babel/cli":"^7.8.4","@babel/core":"^7.9.0","@babel/preset-env":"^7.9.5","eslint":"^6.8.0","eslint-config-prettier":"^6.10.1","eslint-plugin-prettier":"^3.1.3","eslint-plugin-react":"^7.19.0","prettier":"2.0.4"},"peerDependencies":{"@emotion/core":"^10.0.28","react":"^16.13.1"},"gitHead":"0cb5ab323642fb10723c42a27331f71f7bd06b57","_id":"styled-matter@0.2.1","_npmVersion":"6.4.1","_nodeVersion":"10.13.0","_npmUser":{"name":"woro83c","email":"woro83c@gmail.com"},"dist":{"integrity":"sha512-wPfS2KlFHPqrhBg7dctI5NQxjVWbXSsG94Fto+NId8yhYYW8KfBhfKvMG1hpSKw02acVTT59CIEGb/95a50zVA==","shasum":"70c6f77d69b9f955de37a7d38daa4c0bcf9087aa","tarball":"https://registry.npmjs.org/styled-matter/-/styled-matter-0.2.1.tgz","fileCount":11,"unpackedSize":47032,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeliyUCRA9TVsSAnZWagAAOtAP/jzKlgr/PqRJ8Jk2s6vU\nTwe5cy5sq8NW7K61N5MDh3RfVRc3/0t1mIUrHBvBt8GcMWyMTAOAa4zq97kk\nR3uTXuP1B+Q1DJiUbMHypfrdH+JmAKu/ro7FOQw9RQ125kzLzNguEFbID/28\ngUsTuucr5GNF3wghpbRmO9sQmoBUDaMaT78ynELzTmf9XdBG/mAcvNfEfNcQ\nD+mJAf4MsI4gf7ZFQbqA/wyAe7tAF2cwl1hqVV3bPGjaKu3XdkXvEYFwHqTm\nW6pnrIs3TSA5ax+sS6ihK5N/SEQsQlXyO3CGYQF1bHOujqwrbH4VhzfsP+SG\npHl+aIjd+0vp9mxnA7BwM10m+d4BqCPNTvEfosbAd8ozipMh/9SuzEqASu2b\nM7+eukvvRbVvMQb0SzocDbaIkYdS/6gdRCehCVHi/MSKOXH04GbCpWPyveJh\n3+972ednWt74UnBlWKuH3NeUYeSL/fFXzrVsPOwCOuzxv2UdyWjNYY2OuVc2\nfIXs6LRjJ8W84xHlSpm8swrwwTG5aGMFYfdKe6SvWLufqZw1gLe4SkjY6Q1T\nB4IGF3ebmb4ymMGCuML2EiHjAzNmC+CbtrQBc1nXf1qn7FGBdYXN/sqFFvKo\nvF2cWY5aK3wdA5NKcFPKjAINvvKrCi+FmPNWe1kPzns4iqvsIYBMjtV/hsD1\nZGMf\r\n=QNLi\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDZVshsKEp44z8vG7ZkmmB9F5JRhq2rLsvi85WfBRJ89gIgW3q/OytLQv5fKZt3F0VHct4greTfLBeoI8RSX+6Rnm4="}]},"maintainers":[{"name":"woro83c","email":"woro83c@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/styled-matter_0.2.1_1586900116052_0.550316867723279"},"_hasShrinkwrap":false},"0.2.2":{"name":"styled-matter","version":"0.2.2","description":"One React component to style them all","main":"dist/index.js","scripts":{"dev":"babel src --watch --out-dir dist --presets=@babel/preset-env","build":"babel src --out-dir dist --presets=@babel/preset-env"},"repository":{"type":"git","url":"git+https://github.com/woro83c/styled-matter.git"},"keywords":[],"author":{"name":"Michael Worobec","email":"woro83c@gmail.com","url":"https://woro83c.com"},"license":"ISC","bugs":{"url":"https://github.com/woro83c/styled-matter/issues"},"homepage":"https://github.com/woro83c/styled-matter#readme","dependencies":{"@emotion/is-prop-valid":"^0.8.8"},"devDependencies":{"@babel/cli":"^7.8.4","@babel/core":"^7.9.0","@babel/preset-env":"^7.9.5","eslint":"^6.8.0","eslint-config-prettier":"^6.10.1","eslint-plugin-prettier":"^3.1.3","eslint-plugin-react":"^7.19.0","prettier":"2.0.4"},"peerDependencies":{"@emotion/core":"^10.0.28","react":"^16.13.1"},"gitHead":"245d63151f7040c79b67a06f45019e10c46cc7bc","_id":"styled-matter@0.2.2","_npmVersion":"6.4.1","_nodeVersion":"10.13.0","_npmUser":{"name":"woro83c","email":"woro83c@gmail.com"},"dist":{"integrity":"sha512-jXthjXW5h8rIItRC3OK0/+6fmVCcrANBkOg/rOzOsqYaepH0E0fWJhwT+3YsfDzKd7aHeBwjPlTXogvsIdU6cA==","shasum":"3b3f24ced61fb0edce6da5334c5edeaeffd0e6c1","tarball":"https://registry.npmjs.org/styled-matter/-/styled-matter-0.2.2.tgz","fileCount":11,"unpackedSize":47281,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJemrwgCRA9TVsSAnZWagAA1ucP/j5yMePQIQrVqvGSgolv\nHqueAYkdUlDFoywDZVJ5GeC1ZawCbEe4qH2EgkteDDZjz6QiWRuKKzN2PtJd\n6fSAqHTlWsHMQTOSbMD83dauYsP09bhppcbr2srXjsQDFrZiylEKhHjVMav2\nJ0msPnIdzN9F8YlQocopR1B+QCZV190LzyiCasYJcBjDhbpIqSi3ClzVQjyD\nJqlKKfh+wOoX8//7EKDVjN8r3/B33XVbx1XCuNtDRv2oL1fib+NlEWn18sJo\ngZkhWYt24UsNNlRRnRwNB9ld2/SQuWY9Jk/gFgdHnS7i9ub9da/zlQ+yE+Gk\nqC4Yv2CRJNg+p3AKsH+9No97R90pLrC+8GgSaVD/og4ijwskdI+qT+tDXBWw\nJzhtF3UdiVxeK6n+YXtFWSPmIArtf7dJI1XWL5apO+/6ccRnKHjTpxPw9h12\nmply7bWkzDI2GzRjY61Mtj5UB4Lzy9jK48iDDi0AlxupMysbDIC1nmLZwxgU\ntMS4uNa0GrJNLBTomxY9K/4lGWddKwuTk5xpYjMb+f7V9PLR94sHhXYjnGWK\nDsgKPSfoBz+gZ5ObQWOdtqouzjSUNW0EFD0oSeb4W1h6SJ/XE3l82221mnYa\ncDJHpHetqPT2yIDFbZcmYB3zRwWuXhJwOIInCpiBwRRiIIPPmb0KVYqU+4EM\nOPwF\r\n=Io8u\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEBGsm/eJPe5ruyh/EtOX/Qw0I1kHLbrCBzVrzGTWP8oAiEAk1T/63NJon32ts0kagNdaavuqfsOLnLRbTpc0G+Echk="}]},"maintainers":[{"name":"woro83c","email":"woro83c@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/styled-matter_0.2.2_1587199008100_0.4585136303275552"},"_hasShrinkwrap":false},"0.3.0":{"name":"styled-matter","version":"0.3.0","description":"One React component to style them all","main":"dist/index.js","scripts":{"dev":"babel src --watch --out-dir dist --presets=@babel/preset-env","build":"babel src --out-dir dist --presets=@babel/preset-env"},"repository":{"type":"git","url":"git+https://github.com/woro83c/styled-matter.git"},"keywords":[],"author":{"name":"Michael Worobec","email":"woro83c@gmail.com","url":"https://woro83c.com"},"license":"ISC","bugs":{"url":"https://github.com/woro83c/styled-matter/issues"},"homepage":"https://github.com/woro83c/styled-matter#readme","dependencies":{"@emotion/is-prop-valid":"^0.8.8"},"devDependencies":{"@babel/cli":"^7.8.4","@babel/core":"^7.9.0","@babel/preset-env":"^7.9.5","eslint":"^6.8.0","eslint-config-prettier":"^6.10.1","eslint-plugin-prettier":"^3.1.3","eslint-plugin-react":"^7.19.0","prettier":"2.0.4"},"peerDependencies":{"@emotion/core":"^10.0.28","react":"^16.13.1"},"gitHead":"84bedc42f37d6ce244e8d7cab975c4c01c255e92","_id":"styled-matter@0.3.0","_npmVersion":"6.4.1","_nodeVersion":"10.13.0","_npmUser":{"name":"woro83c","email":"woro83c@gmail.com"},"dist":{"integrity":"sha512-n1J0kIXXZeUJkUlVA/eU8BipGMOA2cjsHkXNr7rQsasucyCgCE8QLQRzRLepZSrwS5NdnXDfANf3pKhmPPGfoA==","shasum":"4b0ad9db2447981985c02e153aabf8f442ea70b6","tarball":"https://registry.npmjs.org/styled-matter/-/styled-matter-0.3.0.tgz","fileCount":11,"unpackedSize":48171,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJem/R7CRA9TVsSAnZWagAAYMYP/itMrBi5crS+DBc2K5Xa\nqPp1X8wLTa/oVlgegr1IJw81fASRknCNkeX4wDveifiik3Us4xUvIHSXI1MF\nKHOujh0sMosXKaLjyylU/KfpFVK2jm6SrsaBK7hyypiwRf57E0PAZ5yfiRcd\nd/WOBhPRCjgvsxDdNFXo44c1IBAKXotoSpSIY+tMfKIAVXBsWjQharKh8HhQ\n9KdYO3VsdSFl6Y3x4ZGS1fmcsy/OhsWvM3lTCM1ZMR6rdHJEoZI4q08vyTug\nUWbBKMnnLgUU7oqJbHVtV2uepDiero3zldxeMp/0MW5bW8KqohUusmRfAHIc\nW6QBozVl2Zy9qsXT6yiELvhwF2feEfLPLoI0DA3ASodxMMWoql7ENAhQQ0dt\nULlTJdOEZj0qM6P8sxdZVB+1zSv87KMqUxzEQrEAVHnAgAAvqg90Vick28O1\nedyRj2K3GsHFmEUUwNvDDkYvWUuYv0xUrY7vYFCOXx7X/fnQPiKLqy3pzhZC\nBbQGqQrUiikXZxJoJ4o198CFMq4QDyLaa0jontmvBRDRgovEToWaCRD8WQk9\nHK4X50nRxrCQnyH1LhXsLZz8PTV7RIMdc862YbkynNBRu3rTUAidCZsR3n87\nkixSydcVeJDI/JUicBlT5hgwuHAo714z+B+QUxZV0l79sEFms3XFzDCR1YOE\nqy2i\r\n=UV2i\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCygcbhXlf88tEOQAqDJZiVlP8naHPl1JLrZkdd2n7vUgIgMBDi4AiKn7RGz1I1cfTB5nIA2EAuAegjt4wBBnkQktE="}]},"maintainers":[{"name":"woro83c","email":"woro83c@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/styled-matter_0.3.0_1587278970537_0.5760208444490265"},"_hasShrinkwrap":false},"0.3.1":{"name":"styled-matter","version":"0.3.1","description":"One React component to style them all","main":"dist/index.js","scripts":{"dev":"babel src --watch --out-dir dist --presets=@babel/preset-env","build":"babel src --out-dir dist --presets=@babel/preset-env"},"repository":{"type":"git","url":"git+https://github.com/woro83c/styled-matter.git"},"keywords":[],"author":{"name":"Michael Worobec","email":"woro83c@gmail.com","url":"https://woro83c.com"},"license":"ISC","bugs":{"url":"https://github.com/woro83c/styled-matter/issues"},"homepage":"https://github.com/woro83c/styled-matter#readme","dependencies":{"@emotion/is-prop-valid":"^0.8.8"},"devDependencies":{"@babel/cli":"^7.8.4","@babel/core":"^7.9.0","@babel/preset-env":"^7.9.5","eslint":"^6.8.0","eslint-config-prettier":"^6.11.0","eslint-plugin-prettier":"^3.1.3","eslint-plugin-react":"^7.19.0","prettier":"2.0.5"},"peerDependencies":{"@emotion/core":"^10.0.28","react":"^16.13.1"},"gitHead":"b9942f35ce1e98b768a2e0e463930f59173c2b07","_id":"styled-matter@0.3.1","_npmVersion":"6.4.1","_nodeVersion":"10.13.0","_npmUser":{"name":"woro83c","email":"woro83c@gmail.com"},"dist":{"integrity":"sha512-BHvvgj625/gq5199sI9wc0oLHllnVjdWL/RT93IGF6XcjnymHiwewtKLCKY8EMIzKUBRpObsGPYq7daO2rQ9bA==","shasum":"bd51198c97420abf8e7eda96601e542b1ce2324a","tarball":"https://registry.npmjs.org/styled-matter/-/styled-matter-0.3.1.tgz","fileCount":11,"unpackedSize":49500,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJepSLXCRA9TVsSAnZWagAAn20P/0Peb5qLe6oonX87XNkB\nPU6bXmNxJeGi7ODbImJZu9ZZT2sQjSVRQ/M6WiF4KTM1M8OvuZrA63Ld4LgQ\nbloLjI1GQUPilvIrsikLFh8+V3Yfm6IkDGnJ0GpHPtop3jqsZ2hTbx9+u/ue\nOF+fPncNn9wWfGWK88l56BqrDUTMnbbaX1a6nDBnZIxoQc/cx7VBNH24Zmkh\nex3CHo8ZBOnAc68UFejlMG9C1ezQuChigwukd9mZXha6c+KlpIMj6lT0iXhn\nrGHzcHJArOkjyjNjcI9a5YiH+xbOl2omxjvK3qEV2sXgaVGqGN1XWYNMlwtN\npcWyXToD8JzVpQf4pukv3jXcK3n2bl9u4djlp58BUvDQhIIEGHgkoXmFJYkV\nSLx2E5MBe3BlgsBDeklMh/4rxtbJRmJba/8lPkG/7i5wuW/F6e9E1qoUF4Iw\n4jaycYEa2XscirVmloX46o7qxX3/PoqoI3oico8pqd7YyKXAwqYvXZWkBgXQ\nM8NBH3NejvmHi1nGC4aoKyB/J7HQvDXy8pQKzvwX/vzX9oVinWNjfAkitq60\n1mn806Vm9wTEDNyKTACIsBuhQ5Stk9RcJ5q6QE83gSrO+CN5garVIDaZBj+v\nnQQ3PuvI0fSgH0NY220HSJMJitxfLnirPQIicxhGsfWnN7h8bCxZoF+mfUDs\n3IzB\r\n=BxOz\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAtga7+tgfxUqq1k8hMJoHtE+xVNI640n07wSrKOlBFRAiArWrmEZSslhdsISQkAL5PK4uj7cMGXIyEBAHPO9/tsgg=="}]},"maintainers":[{"name":"woro83c","email":"woro83c@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/styled-matter_0.3.1_1587880663410_0.8356888269213731"},"_hasShrinkwrap":false},"0.3.2":{"name":"styled-matter","version":"0.3.2","description":"One React component to style them all","main":"dist/index.js","scripts":{"dev":"babel src --watch --out-dir dist --presets=@babel/preset-env","build":"babel src --out-dir dist --presets=@babel/preset-env"},"repository":{"type":"git","url":"git+https://github.com/woro83c/styled-matter.git"},"keywords":[],"author":{"name":"Michael Worobec","email":"woro83c@gmail.com","url":"https://woro83c.com"},"license":"ISC","bugs":{"url":"https://github.com/woro83c/styled-matter/issues"},"homepage":"https://github.com/woro83c/styled-matter#readme","dependencies":{"@emotion/is-prop-valid":"^0.8.8"},"devDependencies":{"@babel/cli":"^7.8.4","@babel/core":"^7.9.0","@babel/preset-env":"^7.9.5","eslint":"^6.8.0","eslint-config-prettier":"^6.11.0","eslint-plugin-prettier":"^3.1.3","eslint-plugin-react":"^7.19.0","prettier":"2.0.5"},"peerDependencies":{"@emotion/core":"^10.0.28","react":"^16.13.1"},"gitHead":"4e3c32cbf3d253467b660e361e6d2e9c51fb7dce","_id":"styled-matter@0.3.2","_npmVersion":"6.4.1","_nodeVersion":"10.13.0","_npmUser":{"name":"woro83c","email":"woro83c@gmail.com"},"dist":{"integrity":"sha512-tJ0dIq85DxRsfCmyE2YRZIaVI+skv0SB46YInFdJeYVkH+qBnUFds3aBnswfBIAtkidSOWS78MmRW6vWfc637g==","shasum":"1379f3f85cc92a19a4aa3d306bf2a58777363cc9","tarball":"https://registry.npmjs.org/styled-matter/-/styled-matter-0.3.2.tgz","fileCount":11,"unpackedSize":49496,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJepSbPCRA9TVsSAnZWagAAgF0P/3HP0utWJxwoelFpZb1V\nfF61kwXJvUb1jvvA7Ve0rvdHyh+XEbB6QLr01NZ497pODXfSAQ8PdwrTmYGP\n9/bujrq5As3/K67zIgAP42kXSvgCnKyL3svj+sJUB85CTqOdT4QA/dXK8L9G\naYBmFLWdbJXPU2+MSD4HkVYbO7H9qJUITbqgNSQk0lu5Bjs6dxYby50cQgST\nY1uJ9S4PRKRV8z9zs4x64XEemu+2gFB/c3y2xAc3HvHqSakT1pGnYXvH23/G\nCq1FtL8tLDUbnqvTQLZ8mjwafPCFx6CmCHXT//akAkgOKxdKQD94qNgNkwA7\nwgQeFI4JjkaQyJHdY1Tcw0IKnXXyprqg5poiGU7+IyfSfiSy99AGdpBN1twg\na/MwLUvfmtwPK6U3BqgvMWC1mbkUEWvey8d1yWtLQsu8mV7mqieck0w3mQNG\nEsKbXDH+dt7P/nAi4fwxpO5J390Dl9gfirPyBOjp53h/zifBY+nSDuiVA5ws\n2PagPi3Ul8Sh31SqFdZVDA3ppy5Jfn7xlUyCVkfWbdRO0GKCGS1tpHhSXhBy\n+c/whKmeQQb/guaU6xH52m+qSsNoHqUi8MyvKvnIeZcXAHd8adkhur3bSqfQ\nXB9S83/+FEXM9dCHuWzSyjbIq+wSmvxYTOKsIO/+eGDFbxKyFYy0bZKSPGcI\n/bD/\r\n=TiqX\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDtJz/vpaOf3oYroNMzVhny0bha8atB1X4PCeoF0CTxMwIhAOuwp+r9n+yHnnM8MuUTjLy0Wz+n0QM+5YMadcnpIAiE"}]},"maintainers":[{"name":"woro83c","email":"woro83c@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/styled-matter_0.3.2_1587881679236_0.1465955086449613"},"_hasShrinkwrap":false},"0.3.3":{"name":"styled-matter","version":"0.3.3","description":"One React component to style them all","main":"dist/index.js","scripts":{"dev":"babel src --watch --out-dir dist --presets=@babel/preset-env","build":"babel src --out-dir dist --presets=@babel/preset-env"},"repository":{"type":"git","url":"git+https://github.com/woro83c/styled-matter.git"},"keywords":[],"author":{"name":"Michael Worobec","email":"woro83c@gmail.com","url":"https://woro83c.com"},"license":"ISC","bugs":{"url":"https://github.com/woro83c/styled-matter/issues"},"homepage":"https://github.com/woro83c/styled-matter#readme","dependencies":{"@emotion/is-prop-valid":"^0.8.8"},"devDependencies":{"@babel/cli":"^7.8.4","@babel/core":"^7.9.0","@babel/preset-env":"^7.9.5","eslint":"^6.8.0","eslint-config-prettier":"^6.11.0","eslint-plugin-prettier":"^3.1.3","eslint-plugin-react":"^7.19.0","prettier":"2.0.5"},"peerDependencies":{"@emotion/core":"^10.0.28","react":"^16.13.1"},"gitHead":"67090c0bef3a3c1a1218b58f9f2940328d4c2eb4","_id":"styled-matter@0.3.3","_npmVersion":"6.4.1","_nodeVersion":"10.13.0","_npmUser":{"name":"woro83c","email":"woro83c@gmail.com"},"dist":{"integrity":"sha512-6PEKzjEtFQ5bGdUaht9oSoGpbtpAgv/X13cQPGXy4UXz8IHR+9GtjimRRADV/awS0tTWdAeYXl6yTiW0YHpqfA==","shasum":"23725add3ded8abbd35d7b5469b5868f72df71d7","tarball":"https://registry.npmjs.org/styled-matter/-/styled-matter-0.3.3.tgz","fileCount":11,"unpackedSize":49538,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJephCmCRA9TVsSAnZWagAAG4gP/AmTpNiujGqR6a7QZANk\nrL53agRrmu9Wxc1RNRJanjtrbZimY9awM/ukXJmAWbvJaHX3UzD5eSPnSPDa\nkbpKL9LV6CrOaMpwV1PMHciN6NwVMlN0hLK4gjvjU2rwLhsntklhQ4xs164b\nVCBkFlUgLvJzxMyxPcEne7gkAhxcvceJoADdwGse2vfKwHhFpSsQgQGwlGdq\nzp3WNrzE3BUceG6ZuWf2+NzoLxLzqOebr9yYOdd+Msx76OIAHTkdiemlr0gF\nY2xJ53oxYEtsAn1l3z7+BfVoKljVeHJnqVUZEIFuusGJ3wTHMEnroBiRVrqx\nT7ZU28dd75ih+5f6LsV/JGApcUzRtc0cGYyqoZuJY8OKcyJbUpQOzxXNU9+b\n1UyVVkB4EHaG+IsJ+AS/DrqU1dC5Q7Zg/h7oEv89FLn9PoUumF6ycN2xn7oa\ndjQKQ4wR7hp3KJJVDdT4Aj/z5kbp7I+OTDp5hT8NPLmasWC47fFE5bnDlSs3\nqVN6FMX+JywPp60/EbkjfMog7zQaP6loW8TygcQhr7m+N2wfzHKk8J7ElAli\nkDHT34m/vDFS1e47y4xtsCbDJeO6sVNCKi433X+UvdVAUPptn+UV9xKV80m8\nCmmKILR1SP6IDEUMP6nVFAkFDT1+lVTV/E1Ge65u0vwMZZHnSxgwF0kd/h2i\nq8GB\r\n=5SSU\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCf57sHAFO0HWWe0WQbA9MxV78gyR+S5fjXf5ukOdhczwIgKxoh4SQadfAw9oA+cubfhH579NwsaphUXz6SLYFj6mw="}]},"maintainers":[{"name":"woro83c","email":"woro83c@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/styled-matter_0.3.3_1587941541447_0.48365237177485865"},"_hasShrinkwrap":false},"0.3.4-alpha":{"name":"styled-matter","version":"0.3.4-alpha","description":"One bit of UI to style them all","main":"dist/index.js","scripts":{"dev":"babel src --watch --out-dir dist --presets=@babel/preset-env","build":"babel src --out-dir dist --presets=@babel/preset-env"},"repository":{"type":"git","url":"git+https://github.com/woro83c/styled-matter.git"},"keywords":[],"author":{"name":"Michael Worobec","email":"woro83c@gmail.com","url":"https://woro83c.com"},"license":"ISC","bugs":{"url":"https://github.com/woro83c/styled-matter/issues"},"homepage":"https://github.com/woro83c/styled-matter#readme","dependencies":{"@emotion/is-prop-valid":"^0.8.8"},"devDependencies":{"@babel/cli":"^7.8.4","@babel/core":"^7.9.6","@babel/preset-env":"^7.9.6","eslint":"^6.8.0","eslint-config-prettier":"^6.11.0","eslint-plugin-prettier":"^3.1.3","eslint-plugin-react":"^7.19.0","prettier":"2.0.5"},"peerDependencies":{"@emotion/core":"^10.0.28","react":"^16.13.1"},"readme":"# Styled Matter [Sm]\n\nOne bit of UI to style them all\n\n```jsx\nimport createUI from 'styled-matter'\n\nconst UI = createUI()\nconst { H1, P, Button, ...etc } = UI\n\nfunction Intro() {\n  return (\n    <>\n      <H1 fontSize=\"7,,8,9\" mt={0} mb={6}>\n        Styled Matter\n      </H1>\n      <P fontSize={4} mt={0} mb={6}>\n        One bit of UI to style them all\n      </P>\n      <Button\n        bg=\"primary\"\n        border=\"1px solid transparent\"\n        color=\"white\"\n        fontSize=\",,3,4\"\n        fontWeight=\"bold\"\n        px=\"6,,,7\"\n        py=\"3,,,4\"\n        rounded={4}\n      >\n        Get started\n      </Button>\n    </>\n  )\n}\n```\n\n## Give it a whirl\n\n[Check out the demo sandbox](https://codesandbox.io/s/github/woro83c/styled-matter/tree/master/sandbox)\n\n## Features\n\n- CSS-as-props - style your app using theme-aware CSS props only\n- Cleaner responsive styles with CSS _expressions_\n- Easy to grok markup using HTML-like primitives\n- Reduced boilerplate - create all primitive UI with a single line\n- Embeds - customize nested JSX elements with ease\n\n## Getting started\n\nInstall Styled Matter and its dependencies:\n\n```sh\nnpm install styled-matter @emotion/core\n```\n\n### Create UI\n\nCreate and export a UI object for use across your app:\n\n```js\n// ui.js\nimport createUI from 'styled-matter'\n\nexport default createUI()\n```\n\n> **Note:** The `createUI` function also accepts a `config` object, making UI and style props highly configurable - see [Custom UI](#custom-ui).\n\n### Use UI\n\nAll HTML and SVG elements are made available as capitalized keys on the UI object. Import the UI object and destructure components as needed:\n\n```jsx\n// intro.js\nimport UI from './ui'\n\nconst { H1, P, Button } = UI\n\nfunction Intro() {\n  return (\n    <>\n      <H1>Styled Matter</H1>\n      <P>Hello, world!</P>\n      <Button>Get started</Button>\n    </>\n  )\n}\n```\n\n> **Note:** Some component names have been converted into uppercase - see [acronyms](https://github.com/woro83c/styled-matter/blob/master/src/tags.js#L140).\n\n### Style UI\n\nStyle your UI entirely with style props - simply use [object styles](https://emotion.sh/docs/object-styles) to write plain old CSS directly in your markup:\n\n```jsx\nfunction Intro() {\n  return (\n    <>\n      <H1 marginTop={0} marginBottom=\"1.5rem\">\n        Styled Matter\n      </H1>\n      <P marginTop={0} marginBottom=\"1.5rem\">\n        Hello, world!\n      </P>\n      <Button\n        backgroundColor=\"magenta\"\n        borderRadius={4}\n        color=\"white\"\n        display=\"inline-block\"\n        fontWeight=\"bold\"\n        padding=\"1rem 2rem\"\n      >\n        Get started\n      </Button>\n    </>\n  )\n}\n```\n\n> **Note:** Values containing commas must be escaped using single quotes - see [Responsive styles](#responsive-styles).\n\n### Aliases\n\nFree your markup from bloat using aliases. Sourced from popular CSS frameworks, Styled Matter uses common shorthand syntax to alias some of the more verbose prop names for you:\n\n```diff\nfunction Intro() {\n  return (\n    <>\n-     <H1 marginTop={0} marginBottom=\"1.5rem\">\n+     <H1 mt={0} mb=\"1.5rem\">\n        Styled Matter\n      </H1>\n-     <P marginTop={0} marginBottom=\"1.5rem\">\n+     <P mt={0} mb=\"1.5rem\">\n        Hello, world!\n      </P>\n      <Button\n-       backgroundColor=\"magenta\"\n-       borderRadius={4}\n+       bg=\"magenta\"\n        color=\"white\"\n        display=\"inline-block\"\n        fontWeight=\"bold\"\n-       padding=\"1rem 2rem\"\n+       p=\"1rem 2rem\"\n+       rounded={4}\n      >\n        Get started\n      </Button>\n    </>\n  )\n}\n```\n\n### Theming\n\nGet started by creating a theme object - theme objects should conform to the [System UI Theme Specification](https://system-ui.com/theme):\n\n```js\n// theme.js\nexport default {\n  space: [\n    0,\n    '.25rem',\n    '.5rem',\n    '.75rem',\n    '1rem',\n    '1.25rem',\n    '1.5rem',\n    '2rem',\n  ],\n  colors: {\n    primary: 'magenta',\n    dark: 'hsl(0, 0%, 10%)',\n  }\n}\n```\n\nUsing Emotion's theming library, we can now make these values accessible to all our UI via style props. Start by installing the library:\n\n```sh\nnpm install emotion-theming\n```\n\nWrap the root of your application with Emotion's `<ThemeProvider>`, passing it your theme object:\n\n```jsx\nimport { ThemeProvider } from 'emotion-theming'\nimport theme from './theme'\n\nfunction App() {\n  return (\n    <ThemeProvider theme={theme}>\n      <Intro />\n    </ThemeProvider>\n  )\n}\n```\n\nNow, let's update our `<Intro>` component to use values from our theme:\n\n```diff\nfunction Intro() {\n  return (\n    <>\n-     <H1 mt={0} mb=\"1.5rem\">\n+     <H1 mt={0} mb={6}>\n        Styled Matter\n      </H1>\n-     <P mt={0} mb=\"1.5rem\">\n+     <P mt={0} mb={6}>\n        Hello, world!\n      </P>\n      <Button\n-       bg=\"magenta\"\n+       bg=\"primary\"\n        color=\"white\"\n        display=\"inline-block\"\n        fontWeight=\"bold\"\n-       p=\"1rem 2rem\"\n+       px={7}\n+       py={4}\n        rounded={4}\n      >\n        Get started\n      </Button>\n    </>\n  )\n}\n```\n\nNiceeee 👌\n\n## Responsive styles\n\nCommon to utility-first frameworks is the ability to quickly set responsive styles directly in your markup. It's an approach that works really well to begin with, but as complexity increases - especially across breakpoints - markup can become bloated and hard to read.\n\nEnter CSS **expressions**.\n\nUsing the `<Button>` element from our previous example, let's try to make it more responsive. As the screen widens, we want to:\n\n- Increase its font size, and\n- Increase its padding\n\nWhile this is a slightly contrived example, here's how one might achieve this using [Tailwind CSS](https://tailwindcss.com):\n\n```jsx\n<Button className=\"bg-primary text-white inline-block md:text-lg lg:text-xl font-bold px-6 py-3 lg:px-7 lg:py-4 rounded-4\">\n  Get started\n</Button>\n```\n\nAs you can see, it can be hard to tell what's going on here. Each utility is one of _many_ making up the salad. We can do much better though.\n\nUsing CSS expressions, we can target any or all breakpoints with a single style prop. We do it by passing a string literal containing values _separated by commas_ - with each comma representing the gap between breakpoints:\n\n```diff\n<Button\n  bg=\"primary\"\n  color=\"white\"\n  display=\"inline-block\"\n+ fontSize=\",,lg,xl\"\n  fontWeight=\"bold\"\n- px={7}\n- py={4}\n+ px=\"6,,,7\"\n+ py=\"3,,,4\"\n  rounded={4}\n>\n  Get started\n</Button>\n```\n\nUsing this syntax, we quickly get a feel for how this will look across breakpoints. Specifically, we can see:\n\n- Font size increasing at the 2nd and 3rd breakpoints, and\n- Padding increasing at the 3rd\n\n### Escaping values\n\nDue to the use of commas when separating values, _values containing commas_ must be wrapped in **single quotes** in order for them to be properly recognized.\n\n👍 Styled Matter will **correctly** recognize a single value here:\n\n```jsx\n<Button bg=\"'rgb(255, 0, 255)'\">\n  Yep\n</Button>\n```\n\n👎 Styled Matter will **incorrectly** recognize three values here, i.e., `rgb(255`, `0`, and `255)`:\n\n```jsx\n<Button bg=\"rgb(255, 0, 255)\">\n  Nope\n</Button>\n```\n\n## Extra CSS\n\nUse the `xcss` prop to style what you can't using standard style props alone. It extends Emotion's `css` prop, allowing it to [pick up values from your theme](#theming) while also supporting [aliases](#aliases).\n\n### Hover\n\n```jsx\n<Button\n  bg=\"transparent\"\n  border=\"1px solid\"\n  color=\"primary\"\n  xcss={{\n    '&:hover': {\n      bg: 'primary',\n      color: 'white'\n    }\n  }}\n>\n  Get started\n</Button>\n```\n\n### Group-hover\n\n```jsx\n<Div\n  bg=\"white\"\n  xcss={{\n    '&:hover': {\n      bg: 'primary',\n    },\n    '&:hover *': {\n      color: 'white'\n    }\n  }}\n>\n  <H5 color=\"dark\">Card title</H5>\n  <A href=\"#\" color=\"dark\">Card link</A>\n</Div>\n```\n\n## Pseudo-elements\n\n```jsx\nconst { Before, After } = UI\n\nrender(\n  <Button>\n    <Before mr=\".2em\">🚀</Before>\n    Get started\n  </Button>\n)\n```\n\n## Components\n\nUse `componentize` to set default props _automatically_ when composing components:\n\n```jsx\nimport { componentize } from 'styled-matter'\nimport UI from './ui'\n\nconst Button = componentize(\n  <UI.Button\n    bg=\"primary\"\n    color=\"white\"\n    display=\"inline-block\"\n    fontSize=\",,lg,xl\"\n    fontWeight=\"bold\"\n    px=\"6,,,7\"\n    py=\"3,,,4\"\n    rounded={4}\n  />\n)\n```\n\n### `as` prop\n\nUse the `as` prop to update the underlying element to be rendered:\n\n```jsx\n<Button as=\"a\" href=\"#getting-started\">\n  Get started\n</Button>\n```\n\n### Embeds\n\n[Composing components can be tricky](https://css-tricks.com/considerations-for-creating-a-card-component/), and refactoring a component for the sake of a one-off customization can be especially annoying. Using **embeds** though, we can remedy this.\n\nUsing a `<Card>` component as a base, let's assume we need to customize its inner link elements. To do this, start by adding some CSS classes to its link elements to serve as identifiers for later.\n\n```diff\nfunction Card({ children, ...rest }) {\n  return (\n    <Div {...rest}>\n      <Img src=\"https://source.unsplash.com/random\" alt=\"\">\n      <H5>Card title</H5>\n\n      {children}\n\n-     <A href=\"#\">Card link</A>\n-     <A href=\"#\">Another link</A>\n+     <A href=\"#\" className=\"link card-link\">Card link</A>\n+     <A href=\"#\" className=\"link another-link\">Another link</A>\n    </Div>\n  )\n}\n```\n\nUsing these classes, we can now reach within our `<Card>` component to customize each of its inner link elements - here's how:\n\n#### Embed elements\n\n_An embed element is simply one JSX element that replaces another._\n\nTo embed an element, pass it as a prop just like any other - except an embed _must_ be marked by a single dollar symbol ($) prepended to its name:\n\n```jsx\n<Card\n  $card-link={(\n    <Tooltip id=\"my-tooltip\" title=\"My tooltip\">\n      <A href=\"#\">My link</A>\n    </Tooltip>\n  )}\n/>\n```\n\nSimilarly - using the `link` class - we can override _all_ link elements while still leaning on their initial props:\n\n```jsx\n<Card\n  $link={({ key, ...rest }) => (\n    <Tooltip id={key} title={rest.children}>\n      <A {...rest} />\n    </Tooltip>\n  )}\n/>\n```\n\nOr, we can even remove all links entirely:\n\n```jsx\n<Card $link={null} />\n```\n\nVoilà! No refactor required 😎\n\n#### Embed props\n\nTo override element props only, simply pass a props object:\n\n```jsx\n<Card $link={{ color: 'white' }} />\n```\n\n## Custom UI\n\nCustomize UI by passing a config object to the `createUI` function:\n\n```js\n// ui.js\nimport createUI from 'styled-matter'\nimport config from './config'\n\nexport default createUI(config)\n```\n\n> **Note**: For an example, see [default config](https://github.com/woro83c/styled-matter/blob/master/src/default-config.js).\n\n\n## Roadmap\n\n- Improve documentation\n","readmeFilename":"README.md","gitHead":"b00f5bea4051447245444c7387a7a821a9986f43","_id":"styled-matter@0.3.4-alpha","_nodeVersion":"12.16.3","_npmVersion":"6.14.4","dist":{"integrity":"sha512-kLj1Njhmj2XJ5+7qxMg7F5hSToMZWty8AuMOfsd5aoqdzVamN34zSob52zrz8ddKXOESUtUIWWzH1u1GCHSDRw==","shasum":"c8aca4b9968809cdcab46024778cff8680841a6b","tarball":"https://registry.npmjs.org/styled-matter/-/styled-matter-0.3.4-alpha.tgz","fileCount":11,"unpackedSize":53882,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeq5sXCRA9TVsSAnZWagAA7ggP/20iKuL0DE+6sMySAwRA\n7D2JwpdoTJjeiCEqhwBpto51DzExJnl4seySylY3dRDaGbHWWj9ziStYtw4P\nclE/DobEhfH+KsgXU+zlqG/nlUH2dsWkLDhUVT2IwKuGfIOFv7cd2PIp01n9\nCZub8zfCONW5GlU9HUhmsA9ocSBKeCDopzV1uG2jSTOIvwOyeALyOLJLUL/7\nUUoKxQhXZxGMQ7qHcbh6VKwzpj9ilaOQDsXtZuQD90MrKf/kGAPnWACaBAZo\n1djm1wcDFHfjtSt78f7KMbSSHWRUi+3gYz4nnGr8xIAuYHsxvKiQNNg94PAU\n2ZbOXArSXJ+Fs5wz0QJSpgsWastAGIkIVwI9qrRe2snb4LfR54kqZGfmTNd7\ndwjU9KjYo+yiXCSrVQY+dQoTrtacw6nSWFZ+qfarHs7jWE/AVyBZ8g4C3nsw\nPXSGTlj5nLFfmsV6PRkYxY9P2JY1XJ5CLBocL16xgteSDn46ffn9RtZqPxex\nXMFeyl/Y4en9BzaGG47EH5LPLUkvXDTZA+J6+5VqBADTGmIQ98l4RzjvRG1H\nucALTLoMSboQiJwhEbAogU3Ilh7e4OMNBFoBvZuoVOg51o8cE+mzhjqNXWMG\no3EczVL2CXzPgyXigAQawFW6y0XC9wimxDuvIFbeWkuh9OBz2waBMTZHUi2j\n06xH\r\n=HghT\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGaiYr2eV+F5WoO0X1HQsG8qPvutStOsRzEpPqillxWgAiEAuMPZXLLvKo9srccvBAcg5xx91vxFEq4d9qKajSVkbw4="}]},"maintainers":[{"name":"woro83c","email":"woro83c@gmail.com"}],"_npmUser":{"name":"woro83c","email":"woro83c@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/styled-matter_0.3.4-alpha_1588304663019_0.7188133217983232"},"_hasShrinkwrap":false},"0.3.4-alpha.1":{"name":"styled-matter","version":"0.3.4-alpha.1","description":"One bit of UI to style them all","main":"dist/index.js","scripts":{"dev":"babel src --watch --out-dir dist --presets=@babel/preset-env","build":"babel src --out-dir dist --presets=@babel/preset-env"},"repository":{"type":"git","url":"git+https://github.com/woro83c/styled-matter.git"},"keywords":[],"author":{"name":"Michael Worobec","email":"woro83c@gmail.com","url":"https://woro83c.com"},"license":"ISC","bugs":{"url":"https://github.com/woro83c/styled-matter/issues"},"homepage":"https://github.com/woro83c/styled-matter#readme","dependencies":{"@emotion/is-prop-valid":"^0.8.8"},"devDependencies":{"@babel/cli":"^7.8.4","@babel/core":"^7.9.6","@babel/preset-env":"^7.9.6","eslint":"^6.8.0","eslint-config-prettier":"^6.11.0","eslint-plugin-prettier":"^3.1.3","eslint-plugin-react":"^7.19.0","prettier":"2.0.5"},"peerDependencies":{"@emotion/core":"^10.0.28","react":"^16.13.1"},"readme":"# Styled Matter [Sm]\n\nOne bit of UI to style them all\n\n```jsx\nimport createUI from 'styled-matter'\n\nconst UI = createUI()\nconst { H1, P, Button, ...etc } = UI\n\nfunction Intro() {\n  return (\n    <>\n      <H1 fontSize=\"7,,8,9\" mt={0} mb={6}>\n        Styled Matter\n      </H1>\n      <P fontSize={4} mt={0} mb={6}>\n        One bit of UI to style them all\n      </P>\n      <Button\n        bg=\"primary\"\n        border=\"1px solid transparent\"\n        color=\"white\"\n        fontSize=\",,3,4\"\n        fontWeight=\"bold\"\n        px=\"6,,,7\"\n        py=\"3,,,4\"\n        rounded={4}\n      >\n        Get started\n      </Button>\n    </>\n  )\n}\n```\n\n## Give it a whirl\n\n[Check out the demo sandbox](https://codesandbox.io/s/github/woro83c/styled-matter/tree/master/sandbox)\n\n## Features\n\n- CSS-as-props - style your app using theme-aware CSS props only\n- Cleaner responsive styles with CSS _expressions_\n- Easy to grok markup using HTML-like primitives\n- Reduced boilerplate - create all primitive UI with a single line\n- Embeds - customize nested JSX elements with ease\n\n## Getting started\n\nInstall Styled Matter and its dependencies:\n\n```sh\nnpm install styled-matter @emotion/core\n```\n\n### Create UI\n\nCreate and export a UI object for use across your app:\n\n```js\n// ui.js\nimport createUI from 'styled-matter'\n\nexport default createUI()\n```\n\n> **Note:** The `createUI` function also accepts a `config` object, making UI and style props highly configurable - see [Custom UI](#custom-ui).\n\n### Use UI\n\nAll HTML and SVG elements are made available as capitalized keys on the UI object. Import the UI object and destructure components as needed:\n\n```jsx\n// intro.js\nimport UI from './ui'\n\nconst { H1, P, Button } = UI\n\nfunction Intro() {\n  return (\n    <>\n      <H1>Styled Matter</H1>\n      <P>Hello, world!</P>\n      <Button>Get started</Button>\n    </>\n  )\n}\n```\n\n> **Note:** Some component names have been converted into uppercase - see [acronyms](https://github.com/woro83c/styled-matter/blob/master/src/tags.js#L140).\n\n### Style UI\n\nStyle your UI entirely with style props - simply use [object styles](https://emotion.sh/docs/object-styles) to write plain old CSS directly in your markup:\n\n```jsx\nfunction Intro() {\n  return (\n    <>\n      <H1 marginTop={0} marginBottom=\"1.5rem\">\n        Styled Matter\n      </H1>\n      <P marginTop={0} marginBottom=\"1.5rem\">\n        Hello, world!\n      </P>\n      <Button\n        backgroundColor=\"magenta\"\n        borderRadius={4}\n        color=\"white\"\n        display=\"inline-block\"\n        fontWeight=\"bold\"\n        padding=\"1rem 2rem\"\n      >\n        Get started\n      </Button>\n    </>\n  )\n}\n```\n\n> **Note:** Values containing commas must be escaped using single quotes - see [Responsive styles](#responsive-styles).\n\n### Aliases\n\nFree your markup from bloat using aliases. Sourced from popular CSS frameworks, Styled Matter uses common shorthand syntax to alias some of the more verbose prop names for you:\n\n```diff\nfunction Intro() {\n  return (\n    <>\n-     <H1 marginTop={0} marginBottom=\"1.5rem\">\n+     <H1 mt={0} mb=\"1.5rem\">\n        Styled Matter\n      </H1>\n-     <P marginTop={0} marginBottom=\"1.5rem\">\n+     <P mt={0} mb=\"1.5rem\">\n        Hello, world!\n      </P>\n      <Button\n-       backgroundColor=\"magenta\"\n-       borderRadius={4}\n+       bg=\"magenta\"\n        color=\"white\"\n        display=\"inline-block\"\n        fontWeight=\"bold\"\n-       padding=\"1rem 2rem\"\n+       p=\"1rem 2rem\"\n+       rounded={4}\n      >\n        Get started\n      </Button>\n    </>\n  )\n}\n```\n\n### Theming\n\nGet started by creating a theme object - theme objects should conform to the [System UI Theme Specification](https://system-ui.com/theme):\n\n```js\n// theme.js\nexport default {\n  space: [\n    0,\n    '.25rem',\n    '.5rem',\n    '.75rem',\n    '1rem',\n    '1.25rem',\n    '1.5rem',\n    '2rem',\n  ],\n  colors: {\n    primary: 'magenta',\n    dark: 'hsl(0, 0%, 10%)',\n  }\n}\n```\n\nUsing Emotion's theming library, we can now make these values accessible to all our UI via style props. Start by installing the library:\n\n```sh\nnpm install emotion-theming\n```\n\nWrap the root of your application with Emotion's `<ThemeProvider>`, passing it your theme object:\n\n```jsx\nimport { ThemeProvider } from 'emotion-theming'\nimport theme from './theme'\n\nfunction App() {\n  return (\n    <ThemeProvider theme={theme}>\n      <Intro />\n    </ThemeProvider>\n  )\n}\n```\n\nNow, let's update our `<Intro>` component to use values from our theme:\n\n```diff\nfunction Intro() {\n  return (\n    <>\n-     <H1 mt={0} mb=\"1.5rem\">\n+     <H1 mt={0} mb={6}>\n        Styled Matter\n      </H1>\n-     <P mt={0} mb=\"1.5rem\">\n+     <P mt={0} mb={6}>\n        Hello, world!\n      </P>\n      <Button\n-       bg=\"magenta\"\n+       bg=\"primary\"\n        color=\"white\"\n        display=\"inline-block\"\n        fontWeight=\"bold\"\n-       p=\"1rem 2rem\"\n+       px={7}\n+       py={4}\n        rounded={4}\n      >\n        Get started\n      </Button>\n    </>\n  )\n}\n```\n\nNiceeee 👌\n\n## Responsive styles\n\nCommon to utility-first frameworks is the ability to quickly set responsive styles directly in your markup. It's an approach that works really well to begin with, but as complexity increases - especially across breakpoints - markup can become bloated and hard to read.\n\nEnter CSS **expressions**.\n\nUsing the `<Button>` element from our previous example, let's try to make it more responsive. As the screen widens, we want to:\n\n- Increase its font size, and\n- Increase its padding\n\nWhile this is a slightly contrived example, here's how one might achieve this using [Tailwind CSS](https://tailwindcss.com):\n\n```jsx\n<Button className=\"bg-primary text-white inline-block md:text-lg lg:text-xl font-bold px-6 py-3 lg:px-7 lg:py-4 rounded-4\">\n  Get started\n</Button>\n```\n\nAs you can see, it can be hard to tell what's going on here. Each utility is one of _many_ making up the salad. We can do much better though.\n\nUsing CSS expressions, we can target any or all breakpoints with a single style prop. We do it by passing a string literal containing values _separated by commas_ - with each comma representing the gap between breakpoints:\n\n```diff\n<Button\n  bg=\"primary\"\n  color=\"white\"\n  display=\"inline-block\"\n+ fontSize=\",,lg,xl\"\n  fontWeight=\"bold\"\n- px={7}\n- py={4}\n+ px=\"6,,,7\"\n+ py=\"3,,,4\"\n  rounded={4}\n>\n  Get started\n</Button>\n```\n\nUsing this syntax, we quickly get a feel for how this will look across breakpoints. Specifically, we can see:\n\n- Font size increasing at the 2nd and 3rd breakpoints, and\n- Padding increasing at the 3rd\n\n### Escaping values\n\nDue to the use of commas when separating values, _values containing commas_ must be wrapped in **single quotes** in order for them to be properly recognized.\n\n👍 Styled Matter will **correctly** recognize a single value here:\n\n```jsx\n<Button bg=\"'rgb(255, 0, 255)'\">\n  Yep\n</Button>\n```\n\n👎 Styled Matter will **incorrectly** recognize three values here, i.e., `rgb(255`, `0`, and `255)`:\n\n```jsx\n<Button bg=\"rgb(255, 0, 255)\">\n  Nope\n</Button>\n```\n\n## Extra CSS\n\nUse the `xcss` prop to style what you can't using standard style props alone. It extends Emotion's `css` prop, allowing it to [pick up values from your theme](#theming) while also supporting [aliases](#aliases).\n\n### Hover\n\n```jsx\n<Button\n  bg=\"transparent\"\n  border=\"1px solid\"\n  color=\"primary\"\n  xcss={{\n    '&:hover': {\n      bg: 'primary',\n      color: 'white'\n    }\n  }}\n>\n  Get started\n</Button>\n```\n\n### Group-hover\n\n```jsx\n<Div\n  bg=\"white\"\n  xcss={{\n    '&:hover': {\n      bg: 'primary',\n    },\n    '&:hover *': {\n      color: 'white'\n    }\n  }}\n>\n  <H5 color=\"dark\">Card title</H5>\n  <A href=\"#\" color=\"dark\">Card link</A>\n</Div>\n```\n\n## Pseudo-elements\n\n```jsx\nconst { Before, After } = UI\n\nrender(\n  <Button>\n    <Before mr=\".2em\">🚀</Before>\n    Get started\n  </Button>\n)\n```\n\n## Components\n\nUse `componentize` to set default props _automatically_ when composing components:\n\n```jsx\nimport { componentize } from 'styled-matter'\nimport UI from './ui'\n\nconst Button = componentize(\n  <UI.Button\n    bg=\"primary\"\n    color=\"white\"\n    display=\"inline-block\"\n    fontSize=\",,lg,xl\"\n    fontWeight=\"bold\"\n    px=\"6,,,7\"\n    py=\"3,,,4\"\n    rounded={4}\n  />\n)\n```\n\n### `as` prop\n\nUse the `as` prop to update the underlying element to be rendered:\n\n```jsx\n<Button as=\"a\" href=\"#getting-started\">\n  Get started\n</Button>\n```\n\n### Embeds\n\n[Composing components can be tricky](https://css-tricks.com/considerations-for-creating-a-card-component/), and refactoring a component for the sake of a one-off customization can be especially annoying. Using **embeds** though, we can remedy this.\n\nUsing a `<Card>` component as a base, let's assume we need to customize its inner link elements. To do this, start by adding some CSS classes to its link elements to serve as identifiers for later.\n\n```diff\nfunction Card({ children, ...rest }) {\n  return (\n    <Div {...rest}>\n      <Img src=\"https://source.unsplash.com/random\" alt=\"\">\n      <H5>Card title</H5>\n\n      {children}\n\n-     <A href=\"#\">Card link</A>\n-     <A href=\"#\">Another link</A>\n+     <A href=\"#\" className=\"link card-link\">Card link</A>\n+     <A href=\"#\" className=\"link another-link\">Another link</A>\n    </Div>\n  )\n}\n```\n\nUsing these classes, we can now reach within our `<Card>` component to customize each of its inner link elements - here's how:\n\n#### Embed elements\n\n_An embed element is simply one JSX element that replaces another._\n\nTo embed an element, pass it as a prop just like any other - except an embed _must_ be marked by a single dollar symbol ($) prepended to its name:\n\n```jsx\n<Card\n  $card-link={(\n    <Tooltip id=\"my-tooltip\" title=\"My tooltip\">\n      <A href=\"#\">My link</A>\n    </Tooltip>\n  )}\n/>\n```\n\nSimilarly - using the `link` class - we can override _all_ link elements while still leaning on their initial props:\n\n```jsx\n<Card\n  $link={({ key, ...rest }) => (\n    <Tooltip id={key} title={rest.children}>\n      <A {...rest} />\n    </Tooltip>\n  )}\n/>\n```\n\nOr, we can even remove all links entirely:\n\n```jsx\n<Card $link={null} />\n```\n\nVoilà! No refactor required 😎\n\n#### Embed props\n\nTo override element props only, simply pass a props object:\n\n```jsx\n<Card $link={{ color: 'white' }} />\n```\n\n## Custom UI\n\nCustomize UI by passing a config object to the `createUI` function:\n\n```js\n// ui.js\nimport createUI from 'styled-matter'\nimport config from './config'\n\nexport default createUI(config)\n```\n\n> **Note**: For an example, see [default config](https://github.com/woro83c/styled-matter/blob/master/src/default-config.js).\n\n\n## Roadmap\n\n- Improve documentation\n","readmeFilename":"README.md","gitHead":"502b67a362154feb5f4d5016ac4022d45537a0fe","_id":"styled-matter@0.3.4-alpha.1","_nodeVersion":"12.16.3","_npmVersion":"6.14.4","dist":{"integrity":"sha512-5MKvsCQWQyEfPrgiQhmBuD02BoM29E5rQckEYJy4FlmrfCsQ38vQ7RqrGZ4jBf9HGJvIzArpTJQXsCHz+h0sAQ==","shasum":"7f394aacb0e00776abfe9097036b823c26afab49","tarball":"https://registry.npmjs.org/styled-matter/-/styled-matter-0.3.4-alpha.1.tgz","fileCount":11,"unpackedSize":54194,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeq+hSCRA9TVsSAnZWagAACQwP/2vRixdsRfcrnaO8Wd1x\nbUp3YDh9Qd0yOBDG8E1W5WZtr9FfYI82CgO0RbsMDSAheqZkK2bXtQbvRXTS\nuck6FbPVrtxcLWiPQV4DoNo+ILF14cKio7vMPCHzFlrwbxOZtD6a8i2GSMyl\nOl5ygGt48IaY0SB3Aef34VhI/t1lH7G/ZQ0qeUicnZvaavEvpGEoHwI63sQd\n29D1ue42lXAmUzIgVRThLiQdkpbic7JFDdv1ZemA9/vYZV+1mK9kdN1dF6tx\npPfM2RccwoVzZL8sJz/3i1wxOsRJOEf7tFzKBQMUbUNvXcJAO7xUAQSUctLB\n2f5ebIXS+cEGuRx89564h5wKJSk3JRRNKH3R8ZeKQTkLUCDvEDdo3yAYjpY+\n//37ZvJukvzGNynMtji8zhxZzEVAlSz049v1waNWBVUK6Qjlf8SXc3bcFUUC\nSZ76gRao9B9F+Y7ZbElOFMOphKqDd00B2e5d8gNnBSymIpVrA2HhbW/XJzOZ\nS0U6y5pp22iI8/Vw1KiOdtwUjTycAHUK18A7m4/NkylY2xgeQtA4GdHc4018\n5tc/zggEkcxjnzwINSr0wROb4yadj5gMAXz7NirpmOWD+oIU+FWBzGgaLCev\nsEQnR0EEtJXkEoOWHp0ssufosuKuGCXCukfHCtHGnOByUjPKf3KJeSXi2zxq\nPB7r\r\n=Yixw\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDA+1gu20TnS60xUhC+O7clpes0Lya0G5lEUe5DJVbKtQIhALX3WJOWuZdiggBMV7X9OBcWijLsGKAsuT9lBHUrmDIq"}]},"maintainers":[{"name":"woro83c","email":"woro83c@gmail.com"}],"_npmUser":{"name":"woro83c","email":"woro83c@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/styled-matter_0.3.4-alpha.1_1588324433625_0.3107342612357169"},"_hasShrinkwrap":false},"0.3.4-alpha.2":{"name":"styled-matter","version":"0.3.4-alpha.2","description":"One bit of UI to style them all","main":"dist/index.js","scripts":{"dev":"babel src --watch --out-dir dist --presets=@babel/preset-env","build":"babel src --out-dir dist --presets=@babel/preset-env"},"repository":{"type":"git","url":"git+https://github.com/woro83c/styled-matter.git"},"keywords":[],"author":{"name":"Michael Worobec","email":"woro83c@gmail.com","url":"https://woro83c.com"},"license":"ISC","bugs":{"url":"https://github.com/woro83c/styled-matter/issues"},"homepage":"https://github.com/woro83c/styled-matter#readme","dependencies":{"@emotion/is-prop-valid":"^0.8.8"},"devDependencies":{"@babel/cli":"^7.8.4","@babel/core":"^7.9.6","@babel/preset-env":"^7.9.6","eslint":"^6.8.0","eslint-config-prettier":"^6.11.0","eslint-plugin-prettier":"^3.1.3","eslint-plugin-react":"^7.19.0","prettier":"2.0.5"},"peerDependencies":{"@emotion/core":"^10.0.28","react":"^16.13.1"},"readme":"# Styled Matter [Sm]\n\nOne bit of UI to style them all\n\n```jsx\nimport createUI from 'styled-matter'\n\nconst UI = createUI()\nconst { H1, P, Button, ...etc } = UI\n\nfunction Intro() {\n  return (\n    <>\n      <H1 fontSize=\"7,,8,9\" mt={0} mb={6}>\n        Styled Matter\n      </H1>\n      <P fontSize={4} mt={0} mb={6}>\n        One bit of UI to style them all\n      </P>\n      <Button\n        bg=\"primary\"\n        border=\"1px solid transparent\"\n        color=\"white\"\n        fontSize=\",,3,4\"\n        fontWeight=\"bold\"\n        px=\"6,,,7\"\n        py=\"3,,,4\"\n        rounded={4}\n      >\n        Get started\n      </Button>\n    </>\n  )\n}\n```\n\n## Give it a whirl\n\n[Check out the demo sandbox](https://codesandbox.io/s/github/woro83c/styled-matter/tree/master/sandbox)\n\n## Features\n\n- CSS-as-props - style your app using theme-aware CSS props only\n- Cleaner responsive styles with CSS _expressions_\n- Easy to grok markup using HTML-like primitives\n- Reduced boilerplate - create all primitive UI with a single line\n- Embeds - customize nested JSX elements with ease\n\n## Getting started\n\nInstall Styled Matter and its dependencies:\n\n```sh\nnpm install styled-matter @emotion/core\n```\n\n### Create UI\n\nCreate and export a UI object for use across your app:\n\n```js\n// ui.js\nimport createUI from 'styled-matter'\n\nexport default createUI()\n```\n\n> **Note:** The `createUI` function also accepts a `config` object, making UI and style props highly configurable - see [Custom UI](#custom-ui).\n\n### Use UI\n\nAll HTML and SVG elements are made available as capitalized keys on the UI object. Import the UI object and destructure components as needed:\n\n```jsx\n// intro.js\nimport UI from './ui'\n\nconst { H1, P, Button } = UI\n\nfunction Intro() {\n  return (\n    <>\n      <H1>Styled Matter</H1>\n      <P>Hello, world!</P>\n      <Button>Get started</Button>\n    </>\n  )\n}\n```\n\n> **Note:** Some component names have been converted into uppercase - see [acronyms](https://github.com/woro83c/styled-matter/blob/master/src/tags.js#L140).\n\n### Style UI\n\nStyle your UI entirely with style props - simply use [object styles](https://emotion.sh/docs/object-styles) to write plain old CSS directly in your markup:\n\n```jsx\nfunction Intro() {\n  return (\n    <>\n      <H1 marginTop={0} marginBottom=\"1.5rem\">\n        Styled Matter\n      </H1>\n      <P marginTop={0} marginBottom=\"1.5rem\">\n        Hello, world!\n      </P>\n      <Button\n        backgroundColor=\"magenta\"\n        borderRadius={4}\n        color=\"white\"\n        display=\"inline-block\"\n        fontWeight=\"bold\"\n        padding=\"1rem 2rem\"\n      >\n        Get started\n      </Button>\n    </>\n  )\n}\n```\n\n> **Note:** Values containing commas must be escaped using single quotes - see [Responsive styles](#responsive-styles).\n\n### Aliases\n\nFree your markup from bloat using aliases. Sourced from popular CSS frameworks, Styled Matter uses common shorthand syntax to alias some of the more verbose prop names for you:\n\n```diff\nfunction Intro() {\n  return (\n    <>\n-     <H1 marginTop={0} marginBottom=\"1.5rem\">\n+     <H1 mt={0} mb=\"1.5rem\">\n        Styled Matter\n      </H1>\n-     <P marginTop={0} marginBottom=\"1.5rem\">\n+     <P mt={0} mb=\"1.5rem\">\n        Hello, world!\n      </P>\n      <Button\n-       backgroundColor=\"magenta\"\n-       borderRadius={4}\n+       bg=\"magenta\"\n        color=\"white\"\n        display=\"inline-block\"\n        fontWeight=\"bold\"\n-       padding=\"1rem 2rem\"\n+       p=\"1rem 2rem\"\n+       rounded={4}\n      >\n        Get started\n      </Button>\n    </>\n  )\n}\n```\n\n### Theming\n\nGet started by creating a theme object - theme objects should conform to the [System UI Theme Specification](https://system-ui.com/theme):\n\n```js\n// theme.js\nexport default {\n  space: [\n    0,\n    '.25rem',\n    '.5rem',\n    '.75rem',\n    '1rem',\n    '1.25rem',\n    '1.5rem',\n    '2rem',\n  ],\n  colors: {\n    primary: 'magenta',\n    dark: 'hsl(0, 0%, 10%)',\n  }\n}\n```\n\nUsing Emotion's theming library, we can now make these values accessible to all our UI via style props. Start by installing the library:\n\n```sh\nnpm install emotion-theming\n```\n\nWrap the root of your application with Emotion's `<ThemeProvider>`, passing it your theme object:\n\n```jsx\nimport { ThemeProvider } from 'emotion-theming'\nimport theme from './theme'\n\nfunction App() {\n  return (\n    <ThemeProvider theme={theme}>\n      <Intro />\n    </ThemeProvider>\n  )\n}\n```\n\nNow, let's update our `<Intro>` component to use values from our theme:\n\n```diff\nfunction Intro() {\n  return (\n    <>\n-     <H1 mt={0} mb=\"1.5rem\">\n+     <H1 mt={0} mb={6}>\n        Styled Matter\n      </H1>\n-     <P mt={0} mb=\"1.5rem\">\n+     <P mt={0} mb={6}>\n        Hello, world!\n      </P>\n      <Button\n-       bg=\"magenta\"\n+       bg=\"primary\"\n        color=\"white\"\n        display=\"inline-block\"\n        fontWeight=\"bold\"\n-       p=\"1rem 2rem\"\n+       px={7}\n+       py={4}\n        rounded={4}\n      >\n        Get started\n      </Button>\n    </>\n  )\n}\n```\n\nNiceeee 👌\n\n## Responsive styles\n\nCommon to utility-first frameworks is the ability to quickly set responsive styles directly in your markup. It's an approach that works really well to begin with, but as complexity increases - especially across breakpoints - markup can become bloated and hard to read.\n\nEnter CSS **expressions**.\n\nUsing the `<Button>` element from our previous example, let's try to make it more responsive. As the screen widens, we want to:\n\n- Increase its font size, and\n- Increase its padding\n\nWhile this is a slightly contrived example, here's how one might achieve this using [Tailwind CSS](https://tailwindcss.com):\n\n```jsx\n<Button className=\"bg-primary text-white inline-block md:text-lg lg:text-xl font-bold px-6 py-3 lg:px-7 lg:py-4 rounded-4\">\n  Get started\n</Button>\n```\n\nAs you can see, it can be hard to tell what's going on here. Each utility is one of _many_ making up the salad. We can do much better though.\n\nUsing CSS expressions, we can target any or all breakpoints with a single style prop. We do it by passing a string literal containing values _separated by commas_ - with each comma representing the gap between breakpoints:\n\n```diff\n<Button\n  bg=\"primary\"\n  color=\"white\"\n  display=\"inline-block\"\n+ fontSize=\",,lg,xl\"\n  fontWeight=\"bold\"\n- px={7}\n- py={4}\n+ px=\"6,,,7\"\n+ py=\"3,,,4\"\n  rounded={4}\n>\n  Get started\n</Button>\n```\n\nUsing this syntax, we quickly get a feel for how this will look across breakpoints. Specifically, we can see:\n\n- Font size increasing at the 2nd and 3rd breakpoints, and\n- Padding increasing at the 3rd\n\n### Escaping values\n\nDue to the use of commas when separating values, _values containing commas_ must be wrapped in **single quotes** in order for them to be properly recognized.\n\n👍 Styled Matter will **correctly** recognize a single value here:\n\n```jsx\n<Button bg=\"'rgb(255, 0, 255)'\">\n  Yep\n</Button>\n```\n\n👎 Styled Matter will **incorrectly** recognize three values here, i.e., `rgb(255`, `0`, and `255)`:\n\n```jsx\n<Button bg=\"rgb(255, 0, 255)\">\n  Nope\n</Button>\n```\n\n## Extra CSS\n\nUse the `xcss` prop to style what you can't using standard style props alone. It extends Emotion's `css` prop, allowing it to [pick up values from your theme](#theming) while also supporting [aliases](#aliases).\n\n### Hover\n\n```jsx\n<Button\n  bg=\"transparent\"\n  border=\"1px solid\"\n  color=\"primary\"\n  xcss={{\n    '&:hover': {\n      bg: 'primary',\n      color: 'white'\n    }\n  }}\n>\n  Get started\n</Button>\n```\n\n### Group-hover\n\n```jsx\n<Div\n  bg=\"white\"\n  xcss={{\n    '&:hover': {\n      bg: 'primary',\n    },\n    '&:hover *': {\n      color: 'white'\n    }\n  }}\n>\n  <H5 color=\"dark\">Card title</H5>\n  <A href=\"#\" color=\"dark\">Card link</A>\n</Div>\n```\n\n## Pseudo-elements\n\n```jsx\nconst { Before, After } = UI\n\nrender(\n  <Button>\n    <Before mr=\".2em\">🚀</Before>\n    Get started\n  </Button>\n)\n```\n\n## Components\n\nUse `componentize` to set default props _automatically_ when composing components:\n\n```jsx\nimport { componentize } from 'styled-matter'\nimport UI from './ui'\n\nconst Button = componentize(\n  <UI.Button\n    bg=\"primary\"\n    color=\"white\"\n    display=\"inline-block\"\n    fontSize=\",,lg,xl\"\n    fontWeight=\"bold\"\n    px=\"6,,,7\"\n    py=\"3,,,4\"\n    rounded={4}\n  />\n)\n```\n\n### `as` prop\n\nUse the `as` prop to update the underlying element to be rendered:\n\n```jsx\n<Button as=\"a\" href=\"#getting-started\">\n  Get started\n</Button>\n```\n\n### Embeds\n\n[Composing components can be tricky](https://css-tricks.com/considerations-for-creating-a-card-component/), and refactoring a component for the sake of a one-off customization can be especially annoying. Using **embeds** though, we can remedy this.\n\nUsing a `<Card>` component as a base, let's assume we need to customize its inner link elements. To do this, start by adding some CSS classes to its link elements to serve as identifiers for later.\n\n```diff\nfunction Card({ children, ...rest }) {\n  return (\n    <Div {...rest}>\n      <Img src=\"https://source.unsplash.com/random\" alt=\"\">\n      <H5>Card title</H5>\n\n      {children}\n\n-     <A href=\"#\">Card link</A>\n-     <A href=\"#\">Another link</A>\n+     <A href=\"#\" className=\"link card-link\">Card link</A>\n+     <A href=\"#\" className=\"link another-link\">Another link</A>\n    </Div>\n  )\n}\n```\n\nUsing these classes, we can now reach within our `<Card>` component to customize each of its inner link elements - here's how:\n\n#### Embed elements\n\n_An embed element is simply one JSX element that replaces another._\n\nTo embed an element, pass it as a prop just like any other - except an embed _must_ be marked by a single dollar symbol ($) prepended to its name:\n\n```jsx\n<Card\n  $card-link={(\n    <Tooltip id=\"my-tooltip\" title=\"My tooltip\">\n      <A href=\"#\">My link</A>\n    </Tooltip>\n  )}\n/>\n```\n\nSimilarly - using the `link` class - we can override _all_ link elements while still leaning on their initial props:\n\n```jsx\n<Card\n  $link={({ key, ...rest }) => (\n    <Tooltip id={key} title={rest.children}>\n      <A {...rest} />\n    </Tooltip>\n  )}\n/>\n```\n\nOr, we can even remove all links entirely:\n\n```jsx\n<Card $link={null} />\n```\n\nVoilà! No refactor required 😎\n\n#### Embed props\n\nTo override element props only, simply pass a props object:\n\n```jsx\n<Card $link={{ color: 'white' }} />\n```\n\n## Custom UI\n\nCustomize UI by passing a config object to the `createUI` function:\n\n```js\n// ui.js\nimport createUI from 'styled-matter'\nimport config from './config'\n\nexport default createUI(config)\n```\n\n> **Note**: For an example, see [default config](https://github.com/woro83c/styled-matter/blob/master/src/default-config.js).\n\n\n## Roadmap\n\n- Improve documentation\n","readmeFilename":"README.md","gitHead":"dc0f5b4ac362f40ab0002f2bd470fccfeb8f283e","_id":"styled-matter@0.3.4-alpha.2","_nodeVersion":"12.16.3","_npmVersion":"6.14.4","dist":{"integrity":"sha512-5cMgeAN280XCCTd/N27fFiu6CnDXPA32nBbW+NmnfX4u6JMTW+q5OCjqj7/lsRk9Yo9QJJtHpicFxhWq+mps4g==","shasum":"0a83f0564cb19d955020377fa2b63098f6f58216","tarball":"https://registry.npmjs.org/styled-matter/-/styled-matter-0.3.4-alpha.2.tgz","fileCount":11,"unpackedSize":54196,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJerL7yCRA9TVsSAnZWagAAXpUQAJhbQcB1lNcTHlKL8yYp\nPnKaPaV17PfztqIqJDDOrI+wcwdn+dOYkBHIK0MrHaq4/LfoOS4Xy98I9uwV\ngefo07iFl2POo2eLh3+mQwZbych/tcjegRWKKhJsGcjpcnoKDzF8aeVLJ/fR\naV+fhgklWNXJgPhfzREVb19r9teDrum+SCJXBlr+jnOf3+crXn4LHQHysQ7o\nXIyZj7mXICZ7HiPHam1G/kYIoD5T3f1t7Ui8n8LTX82IhaG75mKWz/8Jb0/f\nO5tMyAYD2fDZThfQvKJiVNtkSz2Nnnhq1QSEATRq+O4cvpNd8TJK0EuIyZKo\n42P5pq8vY0ARy3JkAuufxuVyrz86LlbEwEoBk+JnIbiGBO6R02rrh02s9xcr\nPn+O9eODNjRzAiqBWIS34VGtz60QBCo+qIuNK+f7XLVnlo9FILzfZG8MRbDq\n7gdxyKy/X0ww91eM3de/ZQXVCkF5A5wKBGtCCc8xkBp0D2KcFHyDr0R5D64l\nxI5wwiRNacjYlF0chaoA7pT/4Kg/WS2gicbek2LKdPXWKzElSaNnDsYRUKNo\nVKU9wHAmxsl5IZwSrKlRyrbZnjPa8L1/m8BaEVL2QzVQJSb0/U9w1Zw0PW8N\nBiN2SPsEgKD9+aXdwCBZ3S9MKWE9KHmRKsAs6CDx1wxgnY5KIl0C4gCzELHA\n+AGG\r\n=INjU\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEmyJ4D4Ptu/QDacKN5qxqXKlqcHm4XvH1DYfwSWaG2zAiAJdpyAFCY7caesP4+q9ryVDG16WVKb0ppkayUxAltq9A=="}]},"maintainers":[{"name":"woro83c","email":"woro83c@gmail.com"}],"_npmUser":{"name":"woro83c","email":"woro83c@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/styled-matter_0.3.4-alpha.2_1588379377849_0.32060087776057355"},"_hasShrinkwrap":false},"0.3.4-alpha.3":{"name":"styled-matter","version":"0.3.4-alpha.3","description":"One bit of UI to style them all","main":"dist/index.js","scripts":{"dev":"babel src --watch --out-dir dist --presets=@babel/preset-env","build":"babel src --out-dir dist --presets=@babel/preset-env"},"repository":{"type":"git","url":"git+https://github.com/woro83c/styled-matter.git"},"keywords":[],"author":{"name":"Michael Worobec","email":"woro83c@gmail.com","url":"https://woro83c.com"},"license":"ISC","bugs":{"url":"https://github.com/woro83c/styled-matter/issues"},"homepage":"https://github.com/woro83c/styled-matter#readme","dependencies":{"@emotion/is-prop-valid":"^0.8.8"},"devDependencies":{"@babel/cli":"^7.8.4","@babel/core":"^7.9.6","@babel/preset-env":"^7.9.6","eslint":"^6.8.0","eslint-config-prettier":"^6.11.0","eslint-plugin-prettier":"^3.1.3","eslint-plugin-react":"^7.19.0","prettier":"2.0.5"},"peerDependencies":{"@emotion/core":"^10.0.28","react":"^16.13.1"},"readme":"# Styled Matter [Sm]\n\nOne bit of UI to style them all\n\n```jsx\nimport createUI from 'styled-matter'\n\nconst UI = createUI()\nconst { H1, P, Button, ...etc } = UI\n\nfunction Intro() {\n  return (\n    <>\n      <H1 fontSize=\"7,,8,9\" mt={0} mb={6}>\n        Styled Matter\n      </H1>\n      <P fontSize={4} mt={0} mb={6}>\n        One bit of UI to style them all\n      </P>\n      <Button\n        bg=\"primary\"\n        border=\"1px solid transparent\"\n        color=\"white\"\n        fontSize=\",,3,4\"\n        fontWeight=\"bold\"\n        px=\"6,,,7\"\n        py=\"3,,,4\"\n        rounded={4}\n      >\n        Get started\n      </Button>\n    </>\n  )\n}\n```\n\n## Give it a whirl\n\n[Check out the demo sandbox](https://codesandbox.io/s/github/woro83c/styled-matter/tree/master/sandbox)\n\n## Features\n\n- CSS-as-props - style your app using theme-aware CSS props only\n- Cleaner responsive styles with CSS _expressions_\n- Easy to grok markup using HTML-like primitives\n- Reduced boilerplate - create all primitive UI with a single line\n- Embeds - customize nested JSX elements with ease\n\n## Getting started\n\nInstall Styled Matter and its dependencies:\n\n```sh\nnpm install styled-matter @emotion/core\n```\n\n### Create UI\n\nCreate and export a UI object for use across your app:\n\n```js\n// ui.js\nimport createUI from 'styled-matter'\n\nexport default createUI()\n```\n\n> **Note:** The `createUI` function also accepts a `config` object, making UI and style props highly configurable - see [Custom UI](#custom-ui).\n\n### Use UI\n\nAll HTML and SVG elements are made available as capitalized keys on the UI object. Import the UI object and destructure components as needed:\n\n```jsx\n// intro.js\nimport UI from './ui'\n\nconst { H1, P, Button } = UI\n\nfunction Intro() {\n  return (\n    <>\n      <H1>Styled Matter</H1>\n      <P>Hello, world!</P>\n      <Button>Get started</Button>\n    </>\n  )\n}\n```\n\n> **Note:** Some component names have been converted into uppercase - see [acronyms](https://github.com/woro83c/styled-matter/blob/master/src/tags.js#L140).\n\n### Style UI\n\nStyle your UI entirely with style props - simply use [object styles](https://emotion.sh/docs/object-styles) to write plain old CSS directly in your markup:\n\n```jsx\nfunction Intro() {\n  return (\n    <>\n      <H1 marginTop={0} marginBottom=\"1.5rem\">\n        Styled Matter\n      </H1>\n      <P marginTop={0} marginBottom=\"1.5rem\">\n        Hello, world!\n      </P>\n      <Button\n        backgroundColor=\"magenta\"\n        borderRadius={4}\n        color=\"white\"\n        display=\"inline-block\"\n        fontWeight=\"bold\"\n        padding=\"1rem 2rem\"\n      >\n        Get started\n      </Button>\n    </>\n  )\n}\n```\n\n> **Note:** Values containing commas must be escaped using single quotes - see [Responsive styles](#responsive-styles).\n\n### Aliases\n\nFree your markup from bloat using aliases. Sourced from popular CSS frameworks, Styled Matter uses common shorthand syntax to alias some of the more verbose prop names for you:\n\n```diff\nfunction Intro() {\n  return (\n    <>\n-     <H1 marginTop={0} marginBottom=\"1.5rem\">\n+     <H1 mt={0} mb=\"1.5rem\">\n        Styled Matter\n      </H1>\n-     <P marginTop={0} marginBottom=\"1.5rem\">\n+     <P mt={0} mb=\"1.5rem\">\n        Hello, world!\n      </P>\n      <Button\n-       backgroundColor=\"magenta\"\n-       borderRadius={4}\n+       bg=\"magenta\"\n        color=\"white\"\n        display=\"inline-block\"\n        fontWeight=\"bold\"\n-       padding=\"1rem 2rem\"\n+       p=\"1rem 2rem\"\n+       rounded={4}\n      >\n        Get started\n      </Button>\n    </>\n  )\n}\n```\n\n### Theming\n\nGet started by creating a theme object - theme objects should conform to the [System UI Theme Specification](https://system-ui.com/theme):\n\n```js\n// theme.js\nexport default {\n  space: [\n    0,\n    '.25rem',\n    '.5rem',\n    '.75rem',\n    '1rem',\n    '1.25rem',\n    '1.5rem',\n    '2rem',\n  ],\n  colors: {\n    primary: 'magenta',\n    dark: 'hsl(0, 0%, 10%)',\n  }\n}\n```\n\nUsing Emotion's theming library, we can now make these values accessible to all our UI via style props. Start by installing the library:\n\n```sh\nnpm install emotion-theming\n```\n\nWrap the root of your application with Emotion's `<ThemeProvider>`, passing it your theme object:\n\n```jsx\nimport { ThemeProvider } from 'emotion-theming'\nimport theme from './theme'\n\nfunction App() {\n  return (\n    <ThemeProvider theme={theme}>\n      <Intro />\n    </ThemeProvider>\n  )\n}\n```\n\nNow, let's update our `<Intro>` component to use values from our theme:\n\n```diff\nfunction Intro() {\n  return (\n    <>\n-     <H1 mt={0} mb=\"1.5rem\">\n+     <H1 mt={0} mb={6}>\n        Styled Matter\n      </H1>\n-     <P mt={0} mb=\"1.5rem\">\n+     <P mt={0} mb={6}>\n        Hello, world!\n      </P>\n      <Button\n-       bg=\"magenta\"\n+       bg=\"primary\"\n        color=\"white\"\n        display=\"inline-block\"\n        fontWeight=\"bold\"\n-       p=\"1rem 2rem\"\n+       px={7}\n+       py={4}\n        rounded={4}\n      >\n        Get started\n      </Button>\n    </>\n  )\n}\n```\n\nNiceeee 👌\n\n## Responsive styles\n\nCommon to utility-first frameworks is the ability to quickly set responsive styles directly in your markup. It's an approach that works really well to begin with, but as complexity increases - especially across breakpoints - markup can become bloated and hard to read.\n\nEnter CSS **expressions**.\n\nUsing the `<Button>` element from our previous example, let's try to make it more responsive. As the screen widens, we want to:\n\n- Increase its font size, and\n- Increase its padding\n\nWhile this is a slightly contrived example, here's how one might achieve this using [Tailwind CSS](https://tailwindcss.com):\n\n```jsx\n<Button className=\"bg-primary text-white inline-block md:text-lg lg:text-xl font-bold px-6 py-3 lg:px-7 lg:py-4 rounded-4\">\n  Get started\n</Button>\n```\n\nAs you can see, it can be hard to tell what's going on here. Each utility is one of _many_ making up the salad. We can do much better though.\n\nUsing CSS expressions, we can target any or all breakpoints with a single style prop. We do it by passing a string literal containing values _separated by commas_ - with each comma representing the gap between breakpoints:\n\n```diff\n<Button\n  bg=\"primary\"\n  color=\"white\"\n  display=\"inline-block\"\n+ fontSize=\",,lg,xl\"\n  fontWeight=\"bold\"\n- px={7}\n- py={4}\n+ px=\"6,,,7\"\n+ py=\"3,,,4\"\n  rounded={4}\n>\n  Get started\n</Button>\n```\n\nUsing this syntax, we quickly get a feel for how this will look across breakpoints. Specifically, we can see:\n\n- Font size increasing at the 2nd and 3rd breakpoints, and\n- Padding increasing at the 3rd\n\n### Escaping values\n\nDue to the use of commas when separating values, _values containing commas_ must be wrapped in **single quotes** in order for them to be properly recognized.\n\n👍 Styled Matter will **correctly** recognize a single value here:\n\n```jsx\n<Button bg=\"'rgb(255, 0, 255)'\">\n  Yep\n</Button>\n```\n\n👎 Styled Matter will **incorrectly** recognize three values here, i.e., `rgb(255`, `0`, and `255)`:\n\n```jsx\n<Button bg=\"rgb(255, 0, 255)\">\n  Nope\n</Button>\n```\n\n## Extra CSS\n\nUse the `xcss` prop to style what you can't using standard style props alone. It extends Emotion's `css` prop, allowing it to [pick up values from your theme](#theming) while also supporting [aliases](#aliases).\n\n### Hover\n\n```jsx\n<Button\n  bg=\"transparent\"\n  border=\"1px solid\"\n  color=\"primary\"\n  xcss={{\n    '&:hover': {\n      bg: 'primary',\n      color: 'white'\n    }\n  }}\n>\n  Get started\n</Button>\n```\n\n### Group-hover\n\n```jsx\n<Div\n  bg=\"white\"\n  xcss={{\n    '&:hover': {\n      bg: 'primary',\n    },\n    '&:hover *': {\n      color: 'white'\n    }\n  }}\n>\n  <H5 color=\"dark\">Card title</H5>\n  <A href=\"#\" color=\"dark\">Card link</A>\n</Div>\n```\n\n## Pseudo-elements\n\n```jsx\nconst { Before, After } = UI\n\nrender(\n  <Button>\n    <Before mr=\".2em\">🚀</Before>\n    Get started\n  </Button>\n)\n```\n\n## Components\n\nUse `componentize` to set default props _automatically_ when composing components:\n\n```jsx\nimport { componentize } from 'styled-matter'\nimport UI from './ui'\n\nconst Button = componentize(\n  <UI.Button\n    bg=\"primary\"\n    color=\"white\"\n    display=\"inline-block\"\n    fontSize=\",,lg,xl\"\n    fontWeight=\"bold\"\n    px=\"6,,,7\"\n    py=\"3,,,4\"\n    rounded={4}\n  />\n)\n```\n\n### `as` prop\n\nUse the `as` prop to update the underlying element to be rendered:\n\n```jsx\n<Button as=\"a\" href=\"#getting-started\">\n  Get started\n</Button>\n```\n\n### Embeds\n\n[Composing components can be tricky](https://css-tricks.com/considerations-for-creating-a-card-component/), and refactoring a component for the sake of a one-off customization can be especially annoying. Using **embeds** though, we can remedy this.\n\nUsing a `<Card>` component as a base, let's assume we need to customize its inner link elements. To do this, start by adding some CSS classes to its link elements to serve as identifiers for later.\n\n```diff\nfunction Card({ children, ...rest }) {\n  return (\n    <Div {...rest}>\n      <Img src=\"https://source.unsplash.com/random\" alt=\"\">\n      <H5>Card title</H5>\n\n      {children}\n\n-     <A href=\"#\">Card link</A>\n-     <A href=\"#\">Another link</A>\n+     <A href=\"#\" className=\"link card-link\">Card link</A>\n+     <A href=\"#\" className=\"link another-link\">Another link</A>\n    </Div>\n  )\n}\n```\n\nUsing these classes, we can now reach within our `<Card>` component to customize each of its inner link elements - here's how:\n\n#### Embed elements\n\n_An embed element is simply one JSX element that replaces another._\n\nTo embed an element, pass it as a prop just like any other - except an embed _must_ be marked by a single dollar symbol ($) prepended to its name:\n\n```jsx\n<Card\n  $card-link={(\n    <Tooltip id=\"my-tooltip\" title=\"My tooltip\">\n      <A href=\"#\">My link</A>\n    </Tooltip>\n  )}\n/>\n```\n\nSimilarly - using the `link` class - we can override _all_ link elements while still leaning on their initial props:\n\n```jsx\n<Card\n  $link={({ key, ...rest }) => (\n    <Tooltip id={key} title={rest.children}>\n      <A {...rest} />\n    </Tooltip>\n  )}\n/>\n```\n\nOr, we can even remove all links entirely:\n\n```jsx\n<Card $link={null} />\n```\n\nVoilà! No refactor required 😎\n\n#### Embed props\n\nTo override element props only, simply pass a props object:\n\n```jsx\n<Card $link={{ color: 'white' }} />\n```\n\n## Custom UI\n\nCustomize UI by passing a config object to the `createUI` function:\n\n```js\n// ui.js\nimport createUI from 'styled-matter'\nimport config from './config'\n\nexport default createUI(config)\n```\n\n> **Note**: For an example, see [default config](https://github.com/woro83c/styled-matter/blob/master/src/default-config.js).\n\n## Roadmap\n\n- Improve documentation\n","readmeFilename":"README.md","gitHead":"ab58ff6700577720ed3745e148f26759bfc5cd7f","_id":"styled-matter@0.3.4-alpha.3","_nodeVersion":"12.16.3","_npmVersion":"6.14.4","dist":{"integrity":"sha512-TQrQj4wdjWY33Nkp7/O5ewz8xjYXiy9sv7DmGBxLDRI+Xd2o+HjHbW4s/gFBA86MR+jFkWndEIfFLHsPDsrBbQ==","shasum":"56518ad24fa2894518c94f002d12612053bbd1d6","tarball":"https://registry.npmjs.org/styled-matter/-/styled-matter-0.3.4-alpha.3.tgz","fileCount":11,"unpackedSize":54417,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJesRHbCRA9TVsSAnZWagAA+94P/0BWRq9EkK/I2CHvKatW\n1Cf/gX4e2Ykgny1hI+oF3v0A/M/fridqT3Bhtyf4bPy0BGp6/G+P4FyPs6rx\ngWixdDCCPS8fD/B6SdJg1S943V1f76urNDqm+fDml2Zrt/MgodmyRCqZrcv1\nfIV9C4rK+tYH2+//hfgunNlL4xzjUmWQ0VgsoWGkOScG+deO7QuKPkLRgVs2\nEl+pXNaWGA+rnMak/wcvz/Bx5UaoJ4qFtY3fb9b/2Kn0gFy/FfD2zwp2OcLF\nDQNrGrOXTfai11kZYRbGV/BtzUuR/6uabHk4wAELMGPDq6k68n73C8VnjhiB\niGzuTWgyhTpP8s+7SWqbLlLpTNguiPpS3gn0iwfO4hjSGTRNlV0Qes+tOP5z\ntM/iut1B19+WPUEDPLWdlG9WOMVt7KVf9F5bZknYZtgdPhJuJSjnZ+3GyVGl\nJhFRmGAPJEJ55sVIm4AHfGlt8Lwqx4pSUaqJQNxJ0WIYPQHTyg1jemWQZ6yo\nTjmlWq6rEXowP/QiQumbZPAxXDc22H5aaUmQ8kJq4QRxLHYlAv0mljMgGOtw\nqVtWGEenMOhA+NHgFAWL/nHWzaX1q6SRCrwsshlpP9PT6xncJLvWpSbr33N1\nd4fWRs1ALcslX/VWSzYZFVqW51nth72bB8LV+flxf8PDVGgJwHBBs+TviZqX\nicyP\r\n=rt+Q\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDRRImRA/RtMjCHj3Yxv9ARjnwf6kNFzJ53vnq6nC3D2QIhAP9d9OEC0rciP+DCr7P7vTlnivsDksNSnzBVmeSDEQYL"}]},"maintainers":[{"name":"woro83c","email":"woro83c@gmail.com"}],"_npmUser":{"name":"woro83c","email":"woro83c@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/styled-matter_0.3.4-alpha.3_1588662747353_0.7644034477220376"},"_hasShrinkwrap":false},"0.3.4-alpha.4":{"name":"styled-matter","version":"0.3.4-alpha.4","description":"One bit of UI to style them all","main":"dist/index.js","scripts":{"dev":"babel src --watch --out-dir dist --presets=@babel/preset-env","build":"babel src --out-dir dist --presets=@babel/preset-env"},"repository":{"type":"git","url":"git+https://github.com/woro83c/styled-matter.git"},"keywords":[],"author":{"name":"Michael Worobec","email":"woro83c@gmail.com","url":"https://woro83c.com"},"license":"ISC","bugs":{"url":"https://github.com/woro83c/styled-matter/issues"},"homepage":"https://github.com/woro83c/styled-matter#readme","dependencies":{"@emotion/is-prop-valid":"^0.8.8"},"devDependencies":{"@babel/cli":"^7.8.4","@babel/core":"^7.9.6","@babel/preset-env":"^7.9.6","eslint":"^6.8.0","eslint-config-prettier":"^6.11.0","eslint-plugin-import":"^2.20.2","eslint-plugin-prettier":"^3.1.3","eslint-plugin-react":"^7.19.0","prettier":"2.0.5"},"peerDependencies":{"@emotion/core":"^10.0.28","react":"^16.13.1"},"readme":"# Styled Matter [Sm]\n\nOne bit of UI to style them all\n\n```jsx\nimport createUI from 'styled-matter'\n\nconst UI = createUI()\nconst { H1, P, Button, ...etc } = UI\n\nfunction Intro() {\n  return (\n    <>\n      <H1 fontSize=\"7,,8,9\" mt={0} mb={6}>\n        Styled Matter\n      </H1>\n      <P fontSize={4} mt={0} mb={6}>\n        One bit of UI to style them all\n      </P>\n      <Button\n        bg=\"primary\"\n        border=\"1px solid transparent\"\n        color=\"white\"\n        fontSize=\",,3,4\"\n        fontWeight=\"bold\"\n        px=\"6,,,7\"\n        py=\"3,,,4\"\n        rounded={4}\n      >\n        Get started\n      </Button>\n    </>\n  )\n}\n```\n\n## Give it a whirl\n\n[Check out the demo sandbox](https://codesandbox.io/s/github/woro83c/styled-matter/tree/master/sandbox)\n\n## Features\n\n- CSS-as-props - style your app using theme-aware CSS props only\n- Cleaner responsive styles with CSS _expressions_\n- Easy to grok markup using HTML-like primitives\n- Reduced boilerplate - create all primitive UI with a single line\n- Embeds - customize nested JSX elements with ease\n\n## Getting started\n\nInstall Styled Matter and its dependencies:\n\n```sh\nnpm install styled-matter @emotion/core\n```\n\n### Create UI\n\nCreate and export a UI object for use across your app:\n\n```js\n// ui.js\nimport createUI from 'styled-matter'\n\nexport default createUI()\n```\n\n> **Note:** The `createUI` function also accepts a `config` object, making UI and style props highly configurable - see [Custom UI](#custom-ui).\n\n### Use UI\n\nAll HTML and SVG elements are made available as capitalized keys on the UI object. Import the UI object and destructure components as needed:\n\n```jsx\n// intro.js\nimport UI from './ui'\n\nconst { H1, P, Button } = UI\n\nfunction Intro() {\n  return (\n    <>\n      <H1>Styled Matter</H1>\n      <P>Hello, world!</P>\n      <Button>Get started</Button>\n    </>\n  )\n}\n```\n\n> **Note:** Some component names have been converted into uppercase - see [acronyms](https://github.com/woro83c/styled-matter/blob/master/src/tags.js#L140).\n\n### Style UI\n\nStyle your UI entirely with style props - simply use [object styles](https://emotion.sh/docs/object-styles) to write plain old CSS directly in your markup:\n\n```jsx\nfunction Intro() {\n  return (\n    <>\n      <H1 marginTop={0} marginBottom=\"1.5rem\">\n        Styled Matter\n      </H1>\n      <P marginTop={0} marginBottom=\"1.5rem\">\n        Hello, world!\n      </P>\n      <Button\n        backgroundColor=\"magenta\"\n        borderRadius={4}\n        color=\"white\"\n        display=\"inline-block\"\n        fontWeight=\"bold\"\n        padding=\"1rem 2rem\"\n      >\n        Get started\n      </Button>\n    </>\n  )\n}\n```\n\n> **Note:** Values containing commas must be escaped using single quotes - see [Responsive styles](#responsive-styles).\n\n### Aliases\n\nFree your markup from bloat using aliases. Sourced from popular CSS frameworks, Styled Matter uses common shorthand syntax to alias some of the more verbose prop names for you:\n\n```diff\nfunction Intro() {\n  return (\n    <>\n-     <H1 marginTop={0} marginBottom=\"1.5rem\">\n+     <H1 mt={0} mb=\"1.5rem\">\n        Styled Matter\n      </H1>\n-     <P marginTop={0} marginBottom=\"1.5rem\">\n+     <P mt={0} mb=\"1.5rem\">\n        Hello, world!\n      </P>\n      <Button\n-       backgroundColor=\"magenta\"\n-       borderRadius={4}\n+       bg=\"magenta\"\n        color=\"white\"\n        display=\"inline-block\"\n        fontWeight=\"bold\"\n-       padding=\"1rem 2rem\"\n+       p=\"1rem 2rem\"\n+       rounded={4}\n      >\n        Get started\n      </Button>\n    </>\n  )\n}\n```\n\n### Theming\n\nGet started by creating a theme object - theme objects should conform to the [System UI Theme Specification](https://system-ui.com/theme):\n\n```js\n// theme.js\nexport default {\n  space: [\n    0,\n    '.25rem',\n    '.5rem',\n    '.75rem',\n    '1rem',\n    '1.25rem',\n    '1.5rem',\n    '2rem',\n  ],\n  colors: {\n    primary: 'magenta',\n    dark: 'hsl(0, 0%, 10%)',\n  }\n}\n```\n\nUsing Emotion's theming library, we can now make these values accessible to all our UI via style props. Start by installing the library:\n\n```sh\nnpm install emotion-theming\n```\n\nWrap the root of your application with Emotion's `<ThemeProvider>`, passing it your theme object:\n\n```jsx\nimport { ThemeProvider } from 'emotion-theming'\nimport theme from './theme'\n\nfunction App() {\n  return (\n    <ThemeProvider theme={theme}>\n      <Intro />\n    </ThemeProvider>\n  )\n}\n```\n\nNow, let's update our `<Intro>` component to use values from our theme:\n\n```diff\nfunction Intro() {\n  return (\n    <>\n-     <H1 mt={0} mb=\"1.5rem\">\n+     <H1 mt={0} mb={6}>\n        Styled Matter\n      </H1>\n-     <P mt={0} mb=\"1.5rem\">\n+     <P mt={0} mb={6}>\n        Hello, world!\n      </P>\n      <Button\n-       bg=\"magenta\"\n+       bg=\"primary\"\n        color=\"white\"\n        display=\"inline-block\"\n        fontWeight=\"bold\"\n-       p=\"1rem 2rem\"\n+       px={7}\n+       py={4}\n        rounded={4}\n      >\n        Get started\n      </Button>\n    </>\n  )\n}\n```\n\nNiceeee 👌\n\n## Responsive styles\n\nCommon to utility-first frameworks is the ability to quickly set responsive styles directly in your markup. It's an approach that works really well to begin with, but as complexity increases - especially across breakpoints - markup can become bloated and hard to read.\n\nEnter CSS **expressions**.\n\nUsing the `<Button>` element from our previous example, let's try to make it more responsive. As the screen widens, we want to:\n\n- Increase its font size, and\n- Increase its padding\n\nWhile this is a slightly contrived example, here's how one might achieve this using [Tailwind CSS](https://tailwindcss.com):\n\n```jsx\n<Button className=\"bg-primary text-white inline-block md:text-lg lg:text-xl font-bold px-6 py-3 lg:px-7 lg:py-4 rounded-4\">\n  Get started\n</Button>\n```\n\nAs you can see, it can be hard to tell what's going on here. Each utility is one of _many_ making up the salad. We can do much better though.\n\nUsing CSS expressions, we can target any or all breakpoints with a single style prop. We do it by passing a string literal containing values _separated by commas_ - with each comma representing the gap between breakpoints:\n\n```diff\n<Button\n  bg=\"primary\"\n  color=\"white\"\n  display=\"inline-block\"\n+ fontSize=\",,lg,xl\"\n  fontWeight=\"bold\"\n- px={7}\n- py={4}\n+ px=\"6,,,7\"\n+ py=\"3,,,4\"\n  rounded={4}\n>\n  Get started\n</Button>\n```\n\nUsing this syntax, we quickly get a feel for how this will look across breakpoints. Specifically, we can see:\n\n- Font size increasing at the 2nd and 3rd breakpoints, and\n- Padding increasing at the 3rd\n\n### Escaping values\n\nDue to the use of commas when separating values, _values containing commas_ must be wrapped in **single quotes** in order for them to be properly recognized.\n\n👍 Styled Matter will **correctly** recognize a single value here:\n\n```jsx\n<Button bg=\"'rgb(255, 0, 255)'\">\n  Yep\n</Button>\n```\n\n👎 Styled Matter will **incorrectly** recognize three values here, i.e., `rgb(255`, `0`, and `255)`:\n\n```jsx\n<Button bg=\"rgb(255, 0, 255)\">\n  Nope\n</Button>\n```\n\n## Extra CSS\n\nUse the `xcss` prop to style what you can't using standard style props alone. It extends Emotion's `css` prop, allowing it to [pick up values from your theme](#theming) while also supporting [aliases](#aliases).\n\n### Hover\n\n```jsx\n<Button\n  bg=\"transparent\"\n  border=\"1px solid\"\n  color=\"primary\"\n  xcss={{\n    '&:hover': {\n      bg: 'primary',\n      color: 'white'\n    }\n  }}\n>\n  Get started\n</Button>\n```\n\n### Group-hover\n\n```jsx\n<Div\n  bg=\"white\"\n  xcss={{\n    '&:hover': {\n      bg: 'primary',\n    },\n    '&:hover *': {\n      color: 'white'\n    }\n  }}\n>\n  <H5 color=\"dark\">Card title</H5>\n  <A href=\"#\" color=\"dark\">Card link</A>\n</Div>\n```\n\n## Pseudo-elements\n\n```jsx\nconst { Before, After } = UI\n\nrender(\n  <Button>\n    <Before mr=\".2em\">🚀</Before>\n    Get started\n  </Button>\n)\n```\n\n## Components\n\nUse `componentize` to set default props _automatically_ when composing components:\n\n```jsx\nimport { componentize } from 'styled-matter'\nimport UI from './ui'\n\nconst Button = componentize(\n  <UI.Button\n    bg=\"primary\"\n    color=\"white\"\n    display=\"inline-block\"\n    fontSize=\",,lg,xl\"\n    fontWeight=\"bold\"\n    px=\"6,,,7\"\n    py=\"3,,,4\"\n    rounded={4}\n  />\n)\n```\n\n### `as` prop\n\nUse the `as` prop to update the underlying element to be rendered:\n\n```jsx\n<Button as=\"a\" href=\"#getting-started\">\n  Get started\n</Button>\n```\n\n### Embeds\n\n[Composing components can be tricky](https://css-tricks.com/considerations-for-creating-a-card-component/), and refactoring a component for the sake of a one-off customization can be especially annoying. Using **embeds** though, we can remedy this.\n\nUsing a `<Card>` component as a base, let's assume we need to customize its inner link elements. To do this, start by adding some CSS classes to its link elements to serve as identifiers for later.\n\n```diff\nfunction Card({ children, ...rest }) {\n  return (\n    <Div {...rest}>\n      <Img src=\"https://source.unsplash.com/random\" alt=\"\">\n      <H5>Card title</H5>\n\n      {children}\n\n-     <A href=\"#\">Card link</A>\n-     <A href=\"#\">Another link</A>\n+     <A href=\"#\" className=\"link card-link\">Card link</A>\n+     <A href=\"#\" className=\"link another-link\">Another link</A>\n    </Div>\n  )\n}\n```\n\nUsing these classes, we can now reach within our `<Card>` component to customize each of its inner link elements - here's how:\n\n#### Embed elements\n\n_An embed element is simply one JSX element that replaces another._\n\nTo embed an element, pass it as a prop just like any other - except an embed _must_ be marked by a single dollar symbol ($) prepended to its name:\n\n```jsx\n<Card\n  $card-link={(\n    <Tooltip id=\"my-tooltip\" title=\"My tooltip\">\n      <A href=\"#\">My link</A>\n    </Tooltip>\n  )}\n/>\n```\n\nSimilarly - using the `link` class - we can override _all_ link elements while still leaning on their initial props:\n\n```jsx\n<Card\n  $link={({ key, ...rest }) => (\n    <Tooltip id={key} title={rest.children}>\n      <A {...rest} />\n    </Tooltip>\n  )}\n/>\n```\n\nOr, we can even remove all links entirely:\n\n```jsx\n<Card $link={null} />\n```\n\nVoilà! No refactor required 😎\n\n#### Embed props\n\nTo override element props only, simply pass a props object:\n\n```jsx\n<Card $link={{ color: 'white' }} />\n```\n\n## Custom UI\n\nCustomize UI by passing a config object to the `createUI` function:\n\n```js\n// ui.js\nimport createUI from 'styled-matter'\nimport config from './config'\n\nexport default createUI(config)\n```\n\n> **Note**: For an example, see [default config](https://github.com/woro83c/styled-matter/blob/master/src/default-config.js).\n\n## Roadmap\n\n- Improve documentation\n","readmeFilename":"README.md","gitHead":"8758c14e5e1e21139a080342c878ff6a3a0e6f96","_id":"styled-matter@0.3.4-alpha.4","_nodeVersion":"12.16.3","_npmVersion":"6.14.4","dist":{"integrity":"sha512-n9WPms97BA1ZbTLZJd7r9CGoAGOAy9I8i37wfwUMI0OgjK+6VnEA6JNgvPN+UtdxpgLLMKHQaSUzjeJZdF0sXQ==","shasum":"e37a6517bd59d02f046a07c8c9025e147efac779","tarball":"https://registry.npmjs.org/styled-matter/-/styled-matter-0.3.4-alpha.4.tgz","fileCount":11,"unpackedSize":55154,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJetO12CRA9TVsSAnZWagAAfSYP/1Mr6Lj8pOjBCq/PrYFJ\nTse/3D+hbMRoPsiI4Lkkqhy/tkXrpvOqMUmTu+fNrRhCZNqqgTWiIdp7AHd4\nyJMzqVTkI+O53bvqA5IzfVq4+sTS2uBckR/dSyIGTlWT+eGcqnyaXOqbpMPG\nYeTin3X6uIL8mDXyu5sVsZ3QNsSSuNT906H+sbEhiTIxB39fZQyVhqjZ9ege\nNQhRNAFKmWs+fiM40FaNefXBM5dTNYnJLxkg2RsXag1EHPsftydmWnVt95eV\ngJz9Qiofa63Sgt3xG4G77RQld3Z1kTRqiPWfMJOtNli5iZ80/dmTclD2VgVT\nMrpipydFW3wDkzqy6zSXgBn6oIap4MecHZru1Ko+wN1XwZBM3aUvtslJTTjl\nXg3/JYQ5fZbVN8WfGcgb3FyGac25vffySNIG80WvO37zxs0KwFM/kD0zrVYH\ntnEQIU+H9TP+2l8f1+nTotrB1Oh9GbagkVQnu+fb6Yn8KXkkvT7Q0xfrZfip\nAjVWY0AmfVPhApZw6mRpa+AqD17XeXbkOYoNe46a92RkObQffMr5qg68Qz4R\nRyz9ioFIQDtIBihM0p5EXYZyoXoWEIgSqnEXD1efOfI/eOSCEem/edl8a6M5\nqJrDD+pOvoCVI+lF4kGxUVovciiPkEF1O0rcC/gejbn2D9N+EbpdjxdccHpT\nv59z\r\n=OQC/\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC+Qm/ox7rMUrsZiEhij9r3doPrMVNg9f36minh197p0AIgOuV686pEyuB6Pt6Z9KxroG9VddKzm6H8WZvtu61A+MA="}]},"maintainers":[{"name":"woro83c","email":"woro83c@gmail.com"}],"_npmUser":{"name":"woro83c","email":"woro83c@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/styled-matter_0.3.4-alpha.4_1588915574459_0.40757053970056134"},"_hasShrinkwrap":false},"0.3.4-alpha.5":{"name":"styled-matter","version":"0.3.4-alpha.5","description":"One bit of UI to style them all","main":"dist/index.js","scripts":{"dev":"babel src --watch --out-dir dist --presets=@babel/preset-env","build":"babel src --out-dir dist --presets=@babel/preset-env"},"repository":{"type":"git","url":"git+https://github.com/woro83c/styled-matter.git"},"keywords":[],"author":{"name":"Michael Worobec","email":"woro83c@gmail.com","url":"https://woro83c.com"},"license":"ISC","bugs":{"url":"https://github.com/woro83c/styled-matter/issues"},"homepage":"https://github.com/woro83c/styled-matter#readme","dependencies":{"@emotion/is-prop-valid":"^0.8.8"},"devDependencies":{"@babel/cli":"^7.8.4","@babel/core":"^7.9.6","@babel/preset-env":"^7.9.6","eslint":"^6.8.0","eslint-config-prettier":"^6.11.0","eslint-plugin-import":"^2.20.2","eslint-plugin-prettier":"^3.1.3","eslint-plugin-react":"^7.19.0","prettier":"2.0.5"},"peerDependencies":{"@emotion/core":"^10.0.28","react":"^16.13.1"},"readme":"# Styled Matter [Sm]\n\nOne bit of UI to style them all\n\n```jsx\nimport createUI from 'styled-matter'\n\nconst UI = createUI()\nconst { H1, P, Button, ...etc } = UI\n\nfunction Intro() {\n  return (\n    <>\n      <H1 fontSize=\"7,,8,9\" mt={0} mb={6}>\n        Styled Matter\n      </H1>\n      <P fontSize={4} mt={0} mb={6}>\n        One bit of UI to style them all\n      </P>\n      <Button\n        bg=\"primary\"\n        border=\"1px solid transparent\"\n        color=\"white\"\n        fontSize=\",,3,4\"\n        fontWeight=\"bold\"\n        px=\"6,,,7\"\n        py=\"3,,,4\"\n        rounded={4}\n      >\n        Get started\n      </Button>\n    </>\n  )\n}\n```\n\n## Give it a whirl\n\n[Check out the demo sandbox](https://codesandbox.io/s/github/woro83c/styled-matter/tree/master/sandbox)\n\n## Features\n\n- CSS-as-props - style your app using theme-aware CSS props only\n- Cleaner responsive styles with CSS _expressions_\n- Easy to grok markup using HTML-like primitives\n- Reduced boilerplate - create all primitive UI with a single line\n- Embeds - customize nested JSX elements with ease\n\n## Getting started\n\nInstall Styled Matter and its dependencies:\n\n```sh\nnpm install styled-matter @emotion/core\n```\n\n### Create UI\n\nCreate and export a UI object for use across your app:\n\n```js\n// ui.js\nimport createUI from 'styled-matter'\n\nexport default createUI()\n```\n\n> **Note:** The `createUI` function also accepts a `config` object, making UI and style props highly configurable - see [Custom UI](#custom-ui).\n\n### Use UI\n\nAll HTML and SVG elements are made available as capitalized keys on the UI object. Import the UI object and destructure components as needed:\n\n```jsx\n// intro.js\nimport UI from './ui'\n\nconst { H1, P, Button } = UI\n\nfunction Intro() {\n  return (\n    <>\n      <H1>Styled Matter</H1>\n      <P>Hello, world!</P>\n      <Button>Get started</Button>\n    </>\n  )\n}\n```\n\n> **Note:** Some component names have been converted into uppercase - see [acronyms](https://github.com/woro83c/styled-matter/blob/master/src/tags.js#L140).\n\n### Style UI\n\nStyle your UI entirely with style props - simply use [object styles](https://emotion.sh/docs/object-styles) to write plain old CSS directly in your markup:\n\n```jsx\nfunction Intro() {\n  return (\n    <>\n      <H1 marginTop={0} marginBottom=\"1.5rem\">\n        Styled Matter\n      </H1>\n      <P marginTop={0} marginBottom=\"1.5rem\">\n        Hello, world!\n      </P>\n      <Button\n        backgroundColor=\"magenta\"\n        borderRadius={4}\n        color=\"white\"\n        display=\"inline-block\"\n        fontWeight=\"bold\"\n        padding=\"1rem 2rem\"\n      >\n        Get started\n      </Button>\n    </>\n  )\n}\n```\n\n> **Note:** Values containing commas must be escaped using single quotes - see [Responsive styles](#responsive-styles).\n\n### Aliases\n\nFree your markup from bloat using aliases. Sourced from popular CSS frameworks, Styled Matter uses common shorthand syntax to alias some of the more verbose prop names for you:\n\n```diff\nfunction Intro() {\n  return (\n    <>\n-     <H1 marginTop={0} marginBottom=\"1.5rem\">\n+     <H1 mt={0} mb=\"1.5rem\">\n        Styled Matter\n      </H1>\n-     <P marginTop={0} marginBottom=\"1.5rem\">\n+     <P mt={0} mb=\"1.5rem\">\n        Hello, world!\n      </P>\n      <Button\n-       backgroundColor=\"magenta\"\n-       borderRadius={4}\n+       bg=\"magenta\"\n        color=\"white\"\n        display=\"inline-block\"\n        fontWeight=\"bold\"\n-       padding=\"1rem 2rem\"\n+       p=\"1rem 2rem\"\n+       rounded={4}\n      >\n        Get started\n      </Button>\n    </>\n  )\n}\n```\n\n### Theming\n\nGet started by creating a theme object - theme objects should conform to the [System UI Theme Specification](https://system-ui.com/theme):\n\n```js\n// theme.js\nexport default {\n  space: [\n    0,\n    '.25rem',\n    '.5rem',\n    '.75rem',\n    '1rem',\n    '1.25rem',\n    '1.5rem',\n    '2rem',\n  ],\n  colors: {\n    primary: 'magenta',\n    dark: 'hsl(0, 0%, 10%)',\n  }\n}\n```\n\nUsing Emotion's theming library, we can now make these values accessible to all our UI via style props. Start by installing the library:\n\n```sh\nnpm install emotion-theming\n```\n\nWrap the root of your application with Emotion's `<ThemeProvider>`, passing it your theme object:\n\n```jsx\nimport { ThemeProvider } from 'emotion-theming'\nimport theme from './theme'\n\nfunction App() {\n  return (\n    <ThemeProvider theme={theme}>\n      <Intro />\n    </ThemeProvider>\n  )\n}\n```\n\nNow, let's update our `<Intro>` component to use values from our theme:\n\n```diff\nfunction Intro() {\n  return (\n    <>\n-     <H1 mt={0} mb=\"1.5rem\">\n+     <H1 mt={0} mb={6}>\n        Styled Matter\n      </H1>\n-     <P mt={0} mb=\"1.5rem\">\n+     <P mt={0} mb={6}>\n        Hello, world!\n      </P>\n      <Button\n-       bg=\"magenta\"\n+       bg=\"primary\"\n        color=\"white\"\n        display=\"inline-block\"\n        fontWeight=\"bold\"\n-       p=\"1rem 2rem\"\n+       px={7}\n+       py={4}\n        rounded={4}\n      >\n        Get started\n      </Button>\n    </>\n  )\n}\n```\n\nNiceeee 👌\n\n## Responsive styles\n\nCommon to utility-first frameworks is the ability to quickly set responsive styles directly in your markup. It's an approach that works really well to begin with, but as complexity increases - especially across breakpoints - markup can become bloated and hard to read.\n\nEnter CSS **expressions**.\n\nUsing the `<Button>` element from our previous example, let's try to make it more responsive. As the screen widens, we want to:\n\n- Increase its font size, and\n- Increase its padding\n\nWhile this is a slightly contrived example, here's how one might achieve this using [Tailwind CSS](https://tailwindcss.com):\n\n```jsx\n<Button className=\"bg-primary text-white inline-block md:text-lg lg:text-xl font-bold px-6 py-3 lg:px-7 lg:py-4 rounded-4\">\n  Get started\n</Button>\n```\n\nAs you can see, it can be hard to tell what's going on here. Each utility is one of _many_ making up the salad. We can do much better though.\n\nUsing CSS expressions, we can target any or all breakpoints with a single style prop. We do it by passing a string literal containing values _separated by commas_ - with each comma representing the gap between breakpoints:\n\n```diff\n<Button\n  bg=\"primary\"\n  color=\"white\"\n  display=\"inline-block\"\n+ fontSize=\",,lg,xl\"\n  fontWeight=\"bold\"\n- px={7}\n- py={4}\n+ px=\"6,,,7\"\n+ py=\"3,,,4\"\n  rounded={4}\n>\n  Get started\n</Button>\n```\n\nUsing this syntax, we quickly get a feel for how this will look across breakpoints. Specifically, we can see:\n\n- Font size increasing at the 2nd and 3rd breakpoints, and\n- Padding increasing at the 3rd\n\n### Escaping values\n\nDue to the use of commas when separating values, _values containing commas_ must be wrapped in **single quotes** in order for them to be properly recognized.\n\n👍 Styled Matter will **correctly** recognize a single value here:\n\n```jsx\n<Button bg=\"'rgb(255, 0, 255)'\">\n  Yep\n</Button>\n```\n\n👎 Styled Matter will **incorrectly** recognize three values here, i.e., `rgb(255`, `0`, and `255)`:\n\n```jsx\n<Button bg=\"rgb(255, 0, 255)\">\n  Nope\n</Button>\n```\n\n## Extra CSS\n\nUse the `xcss` prop to style what you can't using standard style props alone. It extends Emotion's `css` prop, allowing it to [pick up values from your theme](#theming) while also supporting [aliases](#aliases).\n\n### Hover\n\n```jsx\n<Button\n  bg=\"transparent\"\n  border=\"1px solid\"\n  color=\"primary\"\n  xcss={{\n    '&:hover': {\n      bg: 'primary',\n      color: 'white'\n    }\n  }}\n>\n  Get started\n</Button>\n```\n\n### Group-hover\n\n```jsx\n<Div\n  bg=\"white\"\n  xcss={{\n    '&:hover': {\n      bg: 'primary',\n    },\n    '&:hover *': {\n      color: 'white'\n    }\n  }}\n>\n  <H5 color=\"dark\">Card title</H5>\n  <A href=\"#\" color=\"dark\">Card link</A>\n</Div>\n```\n\n## Pseudo-elements\n\n```jsx\nconst { Before, After } = UI\n\nrender(\n  <Button>\n    <Before mr=\".2em\">🚀</Before>\n    Get started\n  </Button>\n)\n```\n\n## Components\n\nUse `componentize` to set default props _automatically_ when composing components:\n\n```jsx\nimport { componentize } from 'styled-matter'\nimport UI from './ui'\n\nconst Button = componentize(\n  <UI.Button\n    bg=\"primary\"\n    color=\"white\"\n    display=\"inline-block\"\n    fontSize=\",,lg,xl\"\n    fontWeight=\"bold\"\n    px=\"6,,,7\"\n    py=\"3,,,4\"\n    rounded={4}\n  />\n)\n```\n\n### `as` prop\n\nUse the `as` prop to update the underlying element to be rendered:\n\n```jsx\n<Button as=\"a\" href=\"#getting-started\">\n  Get started\n</Button>\n```\n\n### Embeds\n\n[Composing components can be tricky](https://css-tricks.com/considerations-for-creating-a-card-component/), and refactoring a component for the sake of a one-off customization can be especially annoying. Using **embeds** though, we can remedy this.\n\nUsing a `<Card>` component as a base, let's assume we need to customize its inner link elements. To do this, start by adding some CSS classes to its link elements to serve as identifiers for later.\n\n```diff\nfunction Card({ children, ...rest }) {\n  return (\n    <Div {...rest}>\n      <Img src=\"https://source.unsplash.com/random\" alt=\"\">\n      <H5>Card title</H5>\n\n      {children}\n\n-     <A href=\"#\">Card link</A>\n-     <A href=\"#\">Another link</A>\n+     <A href=\"#\" className=\"link card-link\">Card link</A>\n+     <A href=\"#\" className=\"link another-link\">Another link</A>\n    </Div>\n  )\n}\n```\n\nUsing these classes, we can now reach within our `<Card>` component to customize each of its inner link elements - here's how:\n\n#### Embed elements\n\n_An embed element is simply one JSX element that replaces another._\n\nTo embed an element, pass it as a prop just like any other - except an embed _must_ be marked by a single dollar symbol ($) prepended to its name:\n\n```jsx\n<Card\n  $card-link={(\n    <Tooltip id=\"my-tooltip\" title=\"My tooltip\">\n      <A href=\"#\">My link</A>\n    </Tooltip>\n  )}\n/>\n```\n\nSimilarly - using the `link` class - we can override _all_ link elements while still leaning on their initial props:\n\n```jsx\n<Card\n  $link={({ key, ...rest }) => (\n    <Tooltip id={key} title={rest.children}>\n      <A {...rest} />\n    </Tooltip>\n  )}\n/>\n```\n\nOr, we can even remove all links entirely:\n\n```jsx\n<Card $link={null} />\n```\n\nVoilà! No refactor required 😎\n\n#### Embed props\n\nTo override element props only, simply pass a props object:\n\n```jsx\n<Card $link={{ color: 'white' }} />\n```\n\n## Custom UI\n\nCustomize UI by passing a config object to the `createUI` function:\n\n```js\n// ui.js\nimport createUI from 'styled-matter'\nimport config from './config'\n\nexport default createUI(config)\n```\n\n> **Note**: For an example, see [default config](https://github.com/woro83c/styled-matter/blob/master/src/default-config.js).\n\n## Roadmap\n\n- Improve documentation\n","readmeFilename":"README.md","gitHead":"fcad49ac24e5fd03446df3dd67648628feadc6c2","_id":"styled-matter@0.3.4-alpha.5","_nodeVersion":"12.16.3","_npmVersion":"6.14.4","dist":{"integrity":"sha512-YOQzmlwJFZzq0p9kobUDik39pXhxV0EtpbqQ9fuUIAEm7cFWEZj69FUPplCyCBbVEH3CNL6Iz4JtGMgeUCw5mg==","shasum":"05e2c52affc579f1cba6f39e5cd30f1a17bf4a55","tarball":"https://registry.npmjs.org/styled-matter/-/styled-matter-0.3.4-alpha.5.tgz","fileCount":11,"unpackedSize":55202,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJetPcDCRA9TVsSAnZWagAA3TAP/2Vh5FiwtwXDf10JMrq6\nwaUAZUyUkR5L9d3TSb5HdlBLttY9sAVELLH3Cq0mLQUQcJtd6gVHggMKp8Oa\nGyfrAMO0bZyyuCPemAiARQ1rWZgFQohgwetQFVvOlSZLJyHw2J8cvS+4CN4e\nNnwijfDLIQGFQmeXgWy2sK6r9jxLdBy74qZfwBF9Scet7EoJILZTO1J6cO+2\nT1G26+zdsZNiBUwOhgg9KJ8gO8kQLBiYxM9JNlDwMfjD56o4rLIj7ElDWkro\nPDedeVpukKQnG2dec2HnWEflBNOl3ZdZTLa1ORFZZJr8WIyyjJ1nFwO3ipPz\n8zrmNjaIXE1d5dgHBzfsD5vZhiGJFKlr2APu2shtQWrYvdkKbs69Ynyy2KP1\nDJKuLf4d01b/0wjWKjNFzwpqcdxD/FxjQr/wkU2Wmwhc288Y4xq4WD/see8X\nU+ppaPNSgTINxYm2xbekZHQ2BSPOAr2jXtcARym5LsyX+9Cjw7WB5QYuoLRs\ndD+QqX4Ir725jeo1m0w3NPd3vZEuJ7Q4QsmHPaDWRvgkIi7HqMmOwnqzTTOf\nuhxj8ctZtPKlvjbc2QAdcZs3qMlmhCIhaA9SLTvbgVLMKzmqNDkWZ6cZxn5s\nq5KmIR/eh7CqBh1OMH9yrTXJ2MVqAJa95jkt44IghnXHK3FQYDuobRCAhdRx\nKfms\r\n=ESrs\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCMcrniBTvmeT8SQWFgX3EEWkF7OBbgFIe4CJeVCW8vCAIhALMmjFTD1Z395GkGysSm9ehwpougt2/AerpTjBzQDehh"}]},"maintainers":[{"name":"woro83c","email":"woro83c@gmail.com"}],"_npmUser":{"name":"woro83c","email":"woro83c@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/styled-matter_0.3.4-alpha.5_1588918019409_0.44394010848041354"},"_hasShrinkwrap":false},"0.3.4-alpha.6":{"name":"styled-matter","version":"0.3.4-alpha.6","description":"One bit of UI to style them all","main":"dist/index.js","scripts":{"dev":"babel src --watch --out-dir dist --presets=@babel/preset-env","build":"babel src --out-dir dist --presets=@babel/preset-env"},"repository":{"type":"git","url":"git+https://github.com/woro83c/styled-matter.git"},"keywords":[],"author":{"name":"Michael Worobec","email":"woro83c@gmail.com","url":"https://woro83c.com"},"license":"ISC","bugs":{"url":"https://github.com/woro83c/styled-matter/issues"},"homepage":"https://github.com/woro83c/styled-matter#readme","dependencies":{"@emotion/is-prop-valid":"^0.8.8"},"devDependencies":{"@babel/cli":"^7.8.4","@babel/core":"^7.9.6","@babel/preset-env":"^7.9.6","eslint":"^6.8.0","eslint-config-prettier":"^6.11.0","eslint-plugin-import":"^2.20.2","eslint-plugin-prettier":"^3.1.3","eslint-plugin-react":"^7.19.0","prettier":"2.0.5"},"peerDependencies":{"@emotion/core":"^10.0.28","react":"^16.13.1"},"readme":"# Styled Matter [Sm]\n\nOne bit of UI to style them all\n\n```jsx\nimport createUI from 'styled-matter'\n\nconst UI = createUI()\nconst { H1, P, Button, ...etc } = UI\n\nfunction Intro() {\n  return (\n    <>\n      <H1 fontSize=\"7,,8,9\" mt={0} mb={6}>\n        Styled Matter\n      </H1>\n      <P fontSize={4} mt={0} mb={6}>\n        One bit of UI to style them all\n      </P>\n      <Button\n        bg=\"primary\"\n        border=\"1px solid transparent\"\n        color=\"white\"\n        fontSize=\",,3,4\"\n        fontWeight=\"bold\"\n        px=\"6,,,7\"\n        py=\"3,,,4\"\n        rounded={4}\n      >\n        Get started\n      </Button>\n    </>\n  )\n}\n```\n\n## Give it a whirl\n\n[Check out the demo sandbox](https://codesandbox.io/s/github/woro83c/styled-matter/tree/master/sandbox)\n\n## Features\n\n- CSS-as-props - style your app using theme-aware CSS props only\n- Cleaner responsive styles with CSS _expressions_\n- Easy to grok markup using HTML-like primitives\n- Reduced boilerplate - create all primitive UI with a single line\n- Embeds - customize nested JSX elements with ease\n\n## Getting started\n\nInstall Styled Matter and its dependencies:\n\n```sh\nnpm install styled-matter @emotion/core\n```\n\n### Create UI\n\nCreate and export a UI object for use across your app:\n\n```js\n// ui.js\nimport createUI from 'styled-matter'\n\nexport default createUI()\n```\n\n> **Note:** The `createUI` function also accepts a `config` object, making UI and style props highly configurable - see [Custom UI](#custom-ui).\n\n### Use UI\n\nAll HTML and SVG elements are made available as capitalized keys on the UI object. Import the UI object and destructure components as needed:\n\n```jsx\n// intro.js\nimport UI from './ui'\n\nconst { H1, P, Button } = UI\n\nfunction Intro() {\n  return (\n    <>\n      <H1>Styled Matter</H1>\n      <P>Hello, world!</P>\n      <Button>Get started</Button>\n    </>\n  )\n}\n```\n\n> **Note:** Some component names have been converted into uppercase - see [acronyms](https://github.com/woro83c/styled-matter/blob/master/src/tags.js#L140).\n\n### Style UI\n\nStyle your UI entirely with style props - simply use [object styles](https://emotion.sh/docs/object-styles) to write plain old CSS directly in your markup:\n\n```jsx\nfunction Intro() {\n  return (\n    <>\n      <H1 marginTop={0} marginBottom=\"1.5rem\">\n        Styled Matter\n      </H1>\n      <P marginTop={0} marginBottom=\"1.5rem\">\n        Hello, world!\n      </P>\n      <Button\n        backgroundColor=\"magenta\"\n        borderRadius={4}\n        color=\"white\"\n        display=\"inline-block\"\n        fontWeight=\"bold\"\n        padding=\"1rem 2rem\"\n      >\n        Get started\n      </Button>\n    </>\n  )\n}\n```\n\n> **Note:** Values containing commas must be escaped using single quotes - see [Responsive styles](#responsive-styles).\n\n### Aliases\n\nFree your markup from bloat using aliases. Sourced from popular CSS frameworks, Styled Matter uses common shorthand syntax to alias some of the more verbose prop names for you:\n\n```diff\nfunction Intro() {\n  return (\n    <>\n-     <H1 marginTop={0} marginBottom=\"1.5rem\">\n+     <H1 mt={0} mb=\"1.5rem\">\n        Styled Matter\n      </H1>\n-     <P marginTop={0} marginBottom=\"1.5rem\">\n+     <P mt={0} mb=\"1.5rem\">\n        Hello, world!\n      </P>\n      <Button\n-       backgroundColor=\"magenta\"\n-       borderRadius={4}\n+       bg=\"magenta\"\n        color=\"white\"\n        display=\"inline-block\"\n        fontWeight=\"bold\"\n-       padding=\"1rem 2rem\"\n+       p=\"1rem 2rem\"\n+       rounded={4}\n      >\n        Get started\n      </Button>\n    </>\n  )\n}\n```\n\n### Theming\n\nGet started by creating a theme object - theme objects should conform to the [System UI Theme Specification](https://system-ui.com/theme):\n\n```js\n// theme.js\nexport default {\n  space: [\n    0,\n    '.25rem',\n    '.5rem',\n    '.75rem',\n    '1rem',\n    '1.25rem',\n    '1.5rem',\n    '2rem',\n  ],\n  colors: {\n    primary: 'magenta',\n    dark: 'hsl(0, 0%, 10%)',\n  }\n}\n```\n\nUsing Emotion's theming library, we can now make these values accessible to all our UI via style props. Start by installing the library:\n\n```sh\nnpm install emotion-theming\n```\n\nWrap the root of your application with Emotion's `<ThemeProvider>`, passing it your theme object:\n\n```jsx\nimport { ThemeProvider } from 'emotion-theming'\nimport theme from './theme'\n\nfunction App() {\n  return (\n    <ThemeProvider theme={theme}>\n      <Intro />\n    </ThemeProvider>\n  )\n}\n```\n\nNow, let's update our `<Intro>` component to use values from our theme:\n\n```diff\nfunction Intro() {\n  return (\n    <>\n-     <H1 mt={0} mb=\"1.5rem\">\n+     <H1 mt={0} mb={6}>\n        Styled Matter\n      </H1>\n-     <P mt={0} mb=\"1.5rem\">\n+     <P mt={0} mb={6}>\n        Hello, world!\n      </P>\n      <Button\n-       bg=\"magenta\"\n+       bg=\"primary\"\n        color=\"white\"\n        display=\"inline-block\"\n        fontWeight=\"bold\"\n-       p=\"1rem 2rem\"\n+       px={7}\n+       py={4}\n        rounded={4}\n      >\n        Get started\n      </Button>\n    </>\n  )\n}\n```\n\nNiceeee 👌\n\n## Responsive styles\n\nCommon to utility-first frameworks is the ability to quickly set responsive styles directly in your markup. It's an approach that works really well to begin with, but as complexity increases - especially across breakpoints - markup can become bloated and hard to read.\n\nEnter CSS **expressions**.\n\nUsing the `<Button>` element from our previous example, let's try to make it more responsive. As the screen widens, we want to:\n\n- Increase its font size, and\n- Increase its padding\n\nWhile this is a slightly contrived example, here's how one might achieve this using [Tailwind CSS](https://tailwindcss.com):\n\n```jsx\n<Button className=\"bg-primary text-white inline-block md:text-lg lg:text-xl font-bold px-6 py-3 lg:px-7 lg:py-4 rounded-4\">\n  Get started\n</Button>\n```\n\nAs you can see, it can be hard to tell what's going on here. Each utility is one of _many_ making up the salad. We can do much better though.\n\nUsing CSS expressions, we can target any or all breakpoints with a single style prop. We do it by passing a string literal containing values _separated by commas_ - with each comma representing the gap between breakpoints:\n\n```diff\n<Button\n  bg=\"primary\"\n  color=\"white\"\n  display=\"inline-block\"\n+ fontSize=\",,lg,xl\"\n  fontWeight=\"bold\"\n- px={7}\n- py={4}\n+ px=\"6,,,7\"\n+ py=\"3,,,4\"\n  rounded={4}\n>\n  Get started\n</Button>\n```\n\nUsing this syntax, we quickly get a feel for how this will look across breakpoints. Specifically, we can see:\n\n- Font size increasing at the 2nd and 3rd breakpoints, and\n- Padding increasing at the 3rd\n\n### Escaping values\n\nDue to the use of commas when separating values, _values containing commas_ must be wrapped in **single quotes** in order for them to be properly recognized.\n\n👍 Styled Matter will **correctly** recognize a single value here:\n\n```jsx\n<Button bg=\"'rgb(255, 0, 255)'\">\n  Yep\n</Button>\n```\n\n👎 Styled Matter will **incorrectly** recognize three values here, i.e., `rgb(255`, `0`, and `255)`:\n\n```jsx\n<Button bg=\"rgb(255, 0, 255)\">\n  Nope\n</Button>\n```\n\n## Extra CSS\n\nUse the `xcss` prop to style what you can't using standard style props alone. It extends Emotion's `css` prop, allowing it to [pick up values from your theme](#theming) while also supporting [aliases](#aliases).\n\n### Hover\n\n```jsx\n<Button\n  bg=\"transparent\"\n  border=\"1px solid\"\n  color=\"primary\"\n  xcss={{\n    '&:hover': {\n      bg: 'primary',\n      color: 'white'\n    }\n  }}\n>\n  Get started\n</Button>\n```\n\n### Group-hover\n\n```jsx\n<Div\n  bg=\"white\"\n  xcss={{\n    '&:hover': {\n      bg: 'primary',\n    },\n    '&:hover *': {\n      color: 'white'\n    }\n  }}\n>\n  <H5 color=\"dark\">Card title</H5>\n  <A href=\"#\" color=\"dark\">Card link</A>\n</Div>\n```\n\n## Pseudo-elements\n\n```jsx\nconst { Before, After } = UI\n\nrender(\n  <Button>\n    <Before mr=\".2em\">🚀</Before>\n    Get started\n  </Button>\n)\n```\n\n## Components\n\nUse `componentize` to set default props _automatically_ when composing components:\n\n```jsx\nimport { componentize } from 'styled-matter'\nimport UI from './ui'\n\nconst Button = componentize(\n  <UI.Button\n    bg=\"primary\"\n    color=\"white\"\n    display=\"inline-block\"\n    fontSize=\",,lg,xl\"\n    fontWeight=\"bold\"\n    px=\"6,,,7\"\n    py=\"3,,,4\"\n    rounded={4}\n  />\n)\n```\n\n### `as` prop\n\nUse the `as` prop to update the underlying element to be rendered:\n\n```jsx\n<Button as=\"a\" href=\"#getting-started\">\n  Get started\n</Button>\n```\n\n### Embeds\n\n[Composing components can be tricky](https://css-tricks.com/considerations-for-creating-a-card-component/), and refactoring a component for the sake of a one-off customization can be especially annoying. Using **embeds** though, we can remedy this.\n\nUsing a `<Card>` component as a base, let's assume we need to customize its inner link elements. To do this, start by adding some CSS classes to its link elements to serve as identifiers for later.\n\n```diff\nfunction Card({ children, ...rest }) {\n  return (\n    <Div {...rest}>\n      <Img src=\"https://source.unsplash.com/random\" alt=\"\">\n      <H5>Card title</H5>\n\n      {children}\n\n-     <A href=\"#\">Card link</A>\n-     <A href=\"#\">Another link</A>\n+     <A href=\"#\" className=\"link card-link\">Card link</A>\n+     <A href=\"#\" className=\"link another-link\">Another link</A>\n    </Div>\n  )\n}\n```\n\nUsing these classes, we can now reach within our `<Card>` component to customize each of its inner link elements - here's how:\n\n#### Embed elements\n\n_An embed element is simply one JSX element that replaces another._\n\nTo embed an element, pass it as a prop just like any other - except an embed _must_ be marked by a single dollar symbol ($) prepended to its name:\n\n```jsx\n<Card\n  $card-link={(\n    <Tooltip id=\"my-tooltip\" title=\"My tooltip\">\n      <A href=\"#\">My link</A>\n    </Tooltip>\n  )}\n/>\n```\n\nSimilarly - using the `link` class - we can override _all_ link elements while still leaning on their initial props:\n\n```jsx\n<Card\n  $link={({ key, ...rest }) => (\n    <Tooltip id={key} title={rest.children}>\n      <A {...rest} />\n    </Tooltip>\n  )}\n/>\n```\n\nOr, we can even remove all links entirely:\n\n```jsx\n<Card $link={null} />\n```\n\nVoilà! No refactor required 😎\n\n#### Embed props\n\nTo override element props only, simply pass a props object:\n\n```jsx\n<Card $link={{ color: 'white' }} />\n```\n\n## Custom UI\n\nCustomize UI by passing a config object to the `createUI` function:\n\n```js\n// ui.js\nimport createUI from 'styled-matter'\nimport config from './config'\n\nexport default createUI(config)\n```\n\n> **Note**: For an example, see [default config](https://github.com/woro83c/styled-matter/blob/master/src/default-config.js).\n\n## Roadmap\n\n- Improve documentation\n","readmeFilename":"README.md","gitHead":"890bf0ab4e815d0863c1456bcd637572366df840","_id":"styled-matter@0.3.4-alpha.6","_nodeVersion":"12.16.3","_npmVersion":"6.14.4","dist":{"integrity":"sha512-V9PD0RrO98g3OSLBkVmkszXGztTU7wISiXshXZWrQga1nbBHAYd/8OJkhrLm7Q8XhheDGfVF9C/cTGCKILX8jA==","shasum":"04ea5cac580232bb5892082546d56c020eea901c","tarball":"https://registry.npmjs.org/styled-matter/-/styled-matter-0.3.4-alpha.6.tgz","fileCount":11,"unpackedSize":55366,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJetRm/CRA9TVsSAnZWagAAAcUP/ifb5garAjsuKxvlpRJE\nA/i0LkPZjxp8VbEpEJ5ljTYSxVqVHgDyDh0mxjXxxjD0KgfVRmgbcrx8OYzU\n/j53R+aRKteNrxRqxslEEjc/sBm34v5sTYiLVYyPIukk+LQf7quyCH2VUeez\nAiXqGFGSih5sAiXkukgpsw2/RjpfjPQk5ezUPwRsH4CkCsu2bhXcPCUuMKOs\n/hY5eOyL/XFwSgaq8+4leo9KhKZWalDdhmpx23QD3qNqT+7R3uBTo5TSBpfx\nwnaScxKQb1dWiWxUyFmuWa5T9HVOHu2WAvRf7JY8GWwY62KsmuqSYWT+JVfY\n/Q0UJ+qI26XTJZ9ckmkGMG0jP7A3SYC/qh8lJmxYk/sk+/rXqjr3+F87c753\nezUmfDZkUyh85ERBEvOiDBTFBYmTuauKSXcdkoX8kgaahS6tRPAsmwvlf777\nPNR3BEO09Uij/hRF+TnpCrMsDrbElODdrIJjn2+T5wNl+sIMFsGdX129y3zc\nFfPr257x/y5qUzMWhV1F/4h+ct+Qglibx1lUvPdUO4Pkaev4d4GCVW/ASGzQ\nRVScLQFDURx4BsQ4dWjx/dZsnzQZJwKQrENFnaHJG1Y+A02N2mg45/4Jyfl/\nFG8RON7cSwIddSa9tqpdB+EOkGuRq70qK5fWDYlDOksJ6VdQGOFpIHaPbd/p\nvFvo\r\n=q5WL\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDdwuhsPDEPgLTCRnpI49AR0eA31nrPe1FGqj8rTw8yTgIhAP+P4i2opmuRn5kX/iy07V0tEQqVW8bl9rnGAry6ySbn"}]},"maintainers":[{"name":"woro83c","email":"woro83c@gmail.com"}],"_npmUser":{"name":"woro83c","email":"woro83c@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/styled-matter_0.3.4-alpha.6_1588926911074_0.9888487587518704"},"_hasShrinkwrap":false},"0.3.4":{"name":"styled-matter","version":"0.3.4","description":"One bit of UI to style them all","main":"dist/index.js","scripts":{"dev":"babel src --watch --out-dir dist --presets=@babel/preset-env","build":"babel src --out-dir dist --presets=@babel/preset-env"},"repository":{"type":"git","url":"git+https://github.com/woro83c/styled-matter.git"},"keywords":[],"author":{"name":"Michael Worobec","email":"woro83c@gmail.com","url":"https://woro83c.com"},"license":"ISC","bugs":{"url":"https://github.com/woro83c/styled-matter/issues"},"homepage":"https://github.com/woro83c/styled-matter#readme","dependencies":{"@emotion/is-prop-valid":"^0.8.8"},"devDependencies":{"@babel/cli":"^7.8.4","@babel/core":"^7.9.6","@babel/preset-env":"^7.9.6","eslint":"^7.0.0","eslint-config-prettier":"^6.11.0","eslint-plugin-import":"^2.20.2","eslint-plugin-prettier":"^3.1.3","eslint-plugin-react":"^7.19.0","prettier":"2.0.5"},"peerDependencies":{"@emotion/core":"^10.0.28","react":"^16.13.1"},"gitHead":"95efde26a83f1491f4ebd739845dd4570b8fe5f5","_id":"styled-matter@0.3.4","_nodeVersion":"12.16.3","_npmVersion":"6.14.4","dist":{"integrity":"sha512-SB+jKpHgG4lZs3GVYTjLS/5YTRTqPLHqie2hX49rMxMQWyig+lAeszHBPIFBf+P5iB/hKjllm/dEGrJgk6YCtw==","shasum":"9b96a7bcff4a6a3faeaa639306b806936f2c8531","tarball":"https://registry.npmjs.org/styled-matter/-/styled-matter-0.3.4.tgz","fileCount":11,"unpackedSize":45303,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJet08ZCRA9TVsSAnZWagAABwkP/ibC603iQrIUG05IkmQ7\nSehyqRK2yJmo2lAPQKldjcKtjm0Ww4UeiAi+L3oOdtsP/Oup7CmlTZPvIYmu\n8vFdVHtU7FAWKXFLLND6XZ/HN//O3/kFZg7B9cx/s/Ul1KSo2sQ48jmRe8Oe\nZy/IuGIXkY6gbOEqKoqQlV7Y36mHAQMejm5otCR7EPJCY8fEe/sDT+A/QwYB\nTkdYa6PVEE9u0EQLSO5TVh/CVzwu6m7Utpc0WcvspGVhiyUCCpFcuDhUDApH\nj0vR4NS28gsxqlv/hNiaG9WAc1Rg+K+QHStdP1sn1fYWATiDoUxOmQCwaN3W\nhTLgWmk0SemZnM0bUYayBUaThSXpXsh+x5r1T/rauTv0VLFWHFN+ACG0yKub\nhzUsgjXx0Szx7JdfJ5Z0tem3ALWA8hpPrJQf64ok3Ih/XyOUUlO2KZfDlCcS\nf399BBuwjQ3lKby9nQ0kV6RxknOr8mAXETWtnqKEqMn0386TSMJPdnc2/cta\n8+vBCoXhOZZiASr5qxM+eUippkHQS4XsC8+repm/bscBOwLZYyVgi/pydcLC\nLbkOTmJcH6wTb47/ZF+r2sCrEbY62KWj23k4MUy/4eNh1uatIp0WYWAS4M8J\nsnWWOotjLKfeiOxPFLBVbzS0vUG08hnLw+ioNzUw+ewK4ODzGUOIoT72HfzY\nzojQ\r\n=AQ4Y\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDQk8j6sbK8aF27VY5OccA0ttF36aF3xw3eQwD8oByS6wIgYi+eYA3vw3TAhGajVNYr6bkVoCJ0UB4QsaIzC1x93wQ="}]},"maintainers":[{"name":"woro83c","email":"woro83c@gmail.com"}],"_npmUser":{"name":"woro83c","email":"woro83c@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/styled-matter_0.3.4_1589071640645_0.04541741649822306"},"_hasShrinkwrap":false},"0.3.5":{"name":"styled-matter","version":"0.3.5","description":"One bit of UI to style them all","main":"dist/index.js","scripts":{"dev":"babel src --watch --out-dir dist --presets=@babel/preset-env","build":"babel src --out-dir dist --presets=@babel/preset-env"},"repository":{"type":"git","url":"git+https://github.com/woro83c/styled-matter.git"},"keywords":[],"author":{"name":"Michael Worobec","email":"woro83c@gmail.com","url":"https://woro83c.com"},"license":"ISC","bugs":{"url":"https://github.com/woro83c/styled-matter/issues"},"homepage":"https://github.com/woro83c/styled-matter#readme","dependencies":{"@emotion/is-prop-valid":"^0.8.8"},"devDependencies":{"@babel/cli":"^7.8.4","@babel/core":"^7.9.6","@babel/preset-env":"^7.9.6","eslint":"^6.8.0","eslint-config-prettier":"^6.11.0","eslint-plugin-import":"^2.20.2","eslint-plugin-prettier":"^3.1.3","eslint-plugin-react":"^7.20.0","prettier":"2.0.5"},"peerDependencies":{"@emotion/core":"^10.0.28","react":"^16.13.1"},"gitHead":"50c0d544bfc15e41d41549b5fd4aed984e96f3c3","_id":"styled-matter@0.3.5","_nodeVersion":"14.2.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-lUjDJ6VUIm+0hmnxJGtOfJ04fF13TmnIdM1gTxpqz4CDvOWHlZkpA6QhkHT0QU27cm/STE0n+tvJXZH48/Jzfg==","shasum":"2cbd3b87403a28f132e6024a039462f3aae13ca5","tarball":"https://registry.npmjs.org/styled-matter/-/styled-matter-0.3.5.tgz","fileCount":11,"unpackedSize":47406,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJexxP5CRA9TVsSAnZWagAA/oUP/3J5rXBM49Iltnh3aMcY\nl3ZFaw4gFFBCPxGtlDLd7v5+ZkcGdMlftc/WL/YTVtvLITcWS6SACqLeNfV7\naXqeL74ZeYx8/AoTNAhHNvgawTSNhWd+Dg+FQ0X+9oxuKR6tAq8ICI12eqiC\nF1mDyYUH9GoVVTZHUMvTlKhkyLRnM7E8y7aL+mqnqVNeCnpJScgELPxnUnKU\nOFJ1+RGM1U35oWUP4Jr2pyDX4HXwVV2C7NEnEYvDvzm6fhWs+nzI1U/gVNb4\nJqMmFLbMBX8juT2LpVUtq0P1n13WxOmHEqyonNua1tASsTBE6DdUHFZ9J8Sh\nSykXIV0k9AOHMI32J9POv/kqO4r+8IWryl0Wt9b3mrcJNbyGFdsY2FsTHCoM\n/0bntOxZwIDxkQA6zE04broDNQXIHCo6oo6TImXVI9CRleGyF5oVAH2hlttc\nYoIVrTR4jz1Y2C4YG8HUfa6juo+K31P0foEWfcQymsmHwbtP0wpZh9n/SSlB\nk3Nbte0uIAiK3tWwUvXY/TYZKP1h7l+Iyh44xmiaTdQGOR2t+RnENzJVVjf4\ndDcd/QP5C1BJKbAqBD6IBR9fXk1qip/malVu+ohELt0N2G9k9mcIAj5ozC8Q\nSoy+uHhqvjfBQK/FgQgYZNWFNUZYpKBVe8cM2BnzFU/OF/KFglbtl9wbAPqX\nWn5R\r\n=KB1L\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBasBIbasTxiapsoEuDxT+OhmkfuxRi2m0A0KuL5/QzkAiAHwy7iv5C4H2zH05aODf0tR5FyJbEeCoau6NyglRsk/g=="}]},"maintainers":[{"name":"woro83c","email":"woro83c@gmail.com"}],"_npmUser":{"name":"woro83c","email":"woro83c@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/styled-matter_0.3.5_1590105081187_0.8042879109892971"},"_hasShrinkwrap":false},"0.4.0":{"name":"styled-matter","version":"0.4.0","description":"One bit of UI to style them all","main":"dist/index.js","scripts":{"dev":"babel src --watch --out-dir dist --presets=@babel/preset-env","build":"babel src --out-dir dist --presets=@babel/preset-env"},"repository":{"type":"git","url":"git+https://github.com/woro83c/styled-matter.git"},"keywords":[],"author":{"name":"Michael Worobec","email":"woro83c@gmail.com","url":"https://woro83c.com"},"license":"ISC","bugs":{"url":"https://github.com/woro83c/styled-matter/issues"},"homepage":"https://github.com/woro83c/styled-matter#readme","dependencies":{"@emotion/is-prop-valid":"^0.8.8"},"devDependencies":{"@babel/cli":"^7.8.4","@babel/core":"^7.9.6","@babel/preset-env":"^7.9.6","eslint":"^6.8.0","eslint-config-prettier":"^6.11.0","eslint-plugin-import":"^2.20.2","eslint-plugin-prettier":"^3.1.3","eslint-plugin-react":"^7.20.0","prettier":"2.0.5"},"peerDependencies":{"@emotion/core":"^10.0.28","react":"^16.13.1"},"gitHead":"5917bc5d4815d1460a70ebcaf40abf9b6af20d25","_id":"styled-matter@0.4.0","_nodeVersion":"14.2.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-W8Su9SX0q8ysoDC7eIa5pCp5S+gzJA+u6L4P2EaRYo5V2TpfGpjGNiuSPQjs46PfjP8WMvZP+JvV0OqWsdbT+w==","shasum":"875c21f1fbd72ab90498295694e2875f9d8f4beb","tarball":"https://registry.npmjs.org/styled-matter/-/styled-matter-0.4.0.tgz","fileCount":11,"unpackedSize":48399,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeyI1XCRA9TVsSAnZWagAAZ0oP/jGnT7T319MYI9QsyoJi\nlsd20seR3Vf1yG7jN1XEZvL0z6CBz1SvAdNtZ/hSKxjGq1qeftGUwxcGUIX2\nco1NrmJiwBXUjjMNNIBRcOYIsFG4TKke8pa+3MxhuWasa80XFG4Vz1I+MmHz\ntYBKKbp0o68LQPrLzUFNJK8YKWlYOOb6atZIIFdzW8mEZLoyE0LAlLT5SNaK\nHwT3NL/z0u4PRNYXes+AtA8+gwoZ57x00cwaBH08asS7/65HMj2pQl0G1gW3\niHFSd/yP/zdhfmsVb+5nSXsY/yfmLLrgVebihT6SdsiNg1CA1avvATn01F1k\np/ZoGgsbWFIlry/zAn6oeBhijL8hGDVia0vOvBcf3EDp9XqABdkqXQWvVNli\nXpdqauyrTCYIpK+i56Z+FkG0ut9FCVJk3TA+Br1Z37K/kvaWh5AYr/21hMKd\nqvyZ28SuZrYtfMgiW59BVTBkH6mcuBQeTTOo7tCeZ13mzGOW/P/jx//M0HA5\n8d/1M1SMRYAwvq3aTkly8rpYkIwCqFZ2Nw2CRQfSXr+gTOgXO2x9v9Pq7X7+\npeSbnCtBjpvCLq7ZKkFdC6EOfNdDOWk+i3c0pDvUl1izpTAHJxHeOLAhraqN\ngXbaOiiKcqXeP/ohbTdDp9YBIxARaimIsuV2yP1aiIkhDPo4ieV4S3+PBWBr\nMI8b\r\n=bo7G\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC5A3dRfmqgvSd2EdjGC9WGafz0dRiNBkBfYdUmS6ye0AIgJb6F/cRKPB31bTV4HlYF9XywhNftsaRAmSavKU8CwKg="}]},"maintainers":[{"name":"woro83c","email":"woro83c@gmail.com"}],"_npmUser":{"name":"woro83c","email":"woro83c@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/styled-matter_0.4.0_1590201687113_0.9813401834710727"},"_hasShrinkwrap":false},"0.4.1":{"name":"styled-matter","version":"0.4.1","description":"One thing to style them all","main":"dist/index.js","scripts":{"dev":"babel src --watch --out-dir dist --presets=@babel/preset-env","build":"babel src --out-dir dist --presets=@babel/preset-env"},"repository":{"type":"git","url":"git+https://github.com/woro83c/styled-matter.git"},"keywords":[],"author":{"name":"Michael Worobec","email":"woro83c@gmail.com","url":"https://woro83c.com"},"license":"ISC","bugs":{"url":"https://github.com/woro83c/styled-matter/issues"},"homepage":"https://github.com/woro83c/styled-matter#readme","dependencies":{"@emotion/is-prop-valid":"^0.8.8"},"devDependencies":{"@babel/cli":"^7.8.4","@babel/core":"^7.9.6","@babel/preset-env":"^7.9.6","eslint":"^6.8.0","eslint-config-prettier":"^6.11.0","eslint-plugin-import":"^2.20.2","eslint-plugin-prettier":"^3.1.3","eslint-plugin-react":"^7.20.0","prettier":"2.0.5"},"peerDependencies":{"@emotion/core":"^10.0.28","react":"^16.13.1"},"gitHead":"7db561aa26765a758723d04674eb8a26770bb228","_id":"styled-matter@0.4.1","_nodeVersion":"14.2.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-UFa7t0oyNu5w5FugOcHEo/LShzbsJcfjPnRo4cK01Pjbey8cRO8d82rY4K1GkMn6VE7fEgotoj8+xWbZNn7ZNw==","shasum":"9286edfd13fe17188871732998cb8efca13bf0a8","tarball":"https://registry.npmjs.org/styled-matter/-/styled-matter-0.4.1.tgz","fileCount":11,"unpackedSize":48350,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeyfPTCRA9TVsSAnZWagAADKkQAJQsdJLRQaAsioapSKZ9\ndXfq4KaFhUdxzEPBDqScIW4cCRR1idaKEXyMmPy3UBJxTMQ6K3uilsnyaMxM\nKPnYAx43eF4HRs35R5udztc4DV3DQZ3d34XYw3g7MVIqvp/hEkACC6LxNxxi\nLaMgb7fVZOkaL/NyMrY/U3sWf3butOnBmf5nWJbQnsVTwXTmtFy+k6K1q+iG\nbp/DdFkiqgAsrmKCByiJ0ix3vUL2QV1aW7VuUYhwqBU956zraRuddd3YgQl4\noLa+Qq0//0NYrLxbBBYFYrA38Yy8b3pJMOXTEAbhROSHzlh+AfxstqtHSFPi\nKGFr8VguVbjsn91E8XzZ5ox6RbtTvsY1DEgfpqj0QVdxXlys+CeWh7koD+mC\nvdfZkw8H7bVjWq2FUVU1wiZsdTqxuyxdWeQjnC8ENPRzvlMGzX8IaPvFPgMd\n576Ac0yniMoKnnYgJSm71hfmyDqZi9XBqmopTx0BPKMZ+w88AA23HVH4ZOJP\nKRKdgRX/pO3HauGkXuUSKWnchutSUWyCxyWrWO2gu+q0vYDGp3VxRZU+9mx2\nuUBuu6vNDyxpQ3Sw7qht4IZcQiLrUDdbxMHNL8h+unHjzgGHPL9WT2E1EMe0\nijL9o1GMdno10rt17nSXj8EZNwcPjPkKDl+bq5veD3kv6ZpadroSUHRaTiu2\nwyql\r\n=ZKCl\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFTQoElL4RFUOchNN3CfHBOKVxl6A/aJYMZkBvhzdEInAiEA8NC6B7aQFJDo9I7pmh9RxtY2CjKmXf1Pc8a3sI+q79U="}]},"maintainers":[{"name":"woro83c","email":"woro83c@gmail.com"}],"_npmUser":{"name":"woro83c","email":"woro83c@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/styled-matter_0.4.1_1590293458693_0.5596155179732676"},"_hasShrinkwrap":false},"0.5.0-beta":{"name":"styled-matter","version":"0.5.0-beta","description":"One thing to style them all","main":"dist/index.js","scripts":{"dev":"babel src --watch --out-dir dist --presets=@babel/preset-env","build":"babel src --out-dir dist --presets=@babel/preset-env"},"repository":{"type":"git","url":"git+https://github.com/woro83c/styled-matter.git"},"keywords":[],"author":{"name":"Michael Worobec","email":"woro83c@gmail.com","url":"https://woro83c.com"},"license":"ISC","bugs":{"url":"https://github.com/woro83c/styled-matter/issues"},"homepage":"https://github.com/woro83c/styled-matter#readme","dependencies":{"@emotion/is-prop-valid":"^0.8.8"},"devDependencies":{"@babel/cli":"^7.10.1","@babel/core":"^7.10.2","@babel/preset-env":"^7.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.11.0","eslint-plugin-import":"^2.20.2","eslint-plugin-prettier":"^3.1.3","eslint-plugin-react":"^7.20.0","prettier":"2.0.5"},"peerDependencies":{"@emotion/core":"^10.0.28","react":"^16.13.1"},"gitHead":"c13f14e15e85e674cd30b3f13788562ed4ad1cb2","_id":"styled-matter@0.5.0-beta","_nodeVersion":"14.2.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-5Ow1QbxOBjbav8mgFU7BBGJk9ZPTZJWoKgu2XumJ4FpdR1QF+suP3445j5oEci21VPDcM9cTMISqNWlxgddOdw==","shasum":"5ee8b5b723614528b557553c220d6149bba4c1ab","tarball":"https://registry.npmjs.org/styled-matter/-/styled-matter-0.5.0-beta.tgz","fileCount":11,"unpackedSize":53282,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe2vzdCRA9TVsSAnZWagAAWEMP/RGLxhfJRBMVZROz5T9V\nqOQqSwCdX33kua1duinLgj4c4fKFW4PSWz7/4bi01gCWt8QRa0p1xJUWfhPu\njNq96HBdXQdHepO0hY2wLYR193f09+fy452XZAX9SX4OWZeyFkDuiuZ/CiFP\nzagsRzR565ueKkIBaYuUe7qFRRDTO7dkdmyDPm7VsTjw5iaUyiG7Q4rMFM9Z\ncKkh+Tl3dWN+zxz62DUMFzeJRaJ6oO8kQpMtk4w+/ABIeLXhuJ7md7hB0ogz\ntYbBJZ6Qyb8VSPOkh3R60jt/HCBGoNzPNUoS3J0Bw48m4mDCfWSpj3Dt9PU2\nTk1XRhAWrViWOrpa7WQ2W71l0xqjI2u5yM9pxw6Ecy6GqGDNJn13qJ/DGxOg\n0wDylafab6O1Md2tNeju93QFz7625eUmOAONH4jDpG0HGyej2HJi+Psw9N8q\nP7JRoJVEt6ArRQiAdzwWbfFOsLOPlC41I4HqRfOsXsZOuxJ1ExmNfb4Np4Yu\nef17ABnyJXzluKCAs5kO2uId+gYdMys/ocAsFlu67RirSHR3/1HE3kKpTTJK\nyTaU6cq+rJA04cTYQMw3LL3ePnaXIOqibg47pc5jer3tTgEe0jy0o4YC5/tp\ns5HLT6iJpxFQlty9/MelZMY5f37+7m9vD+FWSTQgzSXclrKxVYRE+yjB47Ps\ns4YA\r\n=T0cQ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC1t6xLdyJRs5c6eaKnhJaN8GFc/Mt/0AUK8mNiKwYnVQIhAI2vspPcCSiF1hA5sU1zlHgJrICL+cBHtDZsnmXjlC0r"}]},"maintainers":[{"name":"woro83c","email":"woro83c@gmail.com"}],"_npmUser":{"name":"woro83c","email":"woro83c@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/styled-matter_0.5.0-beta_1591409884649_0.393895689813603"},"_hasShrinkwrap":false},"0.5.0-beta.1":{"name":"styled-matter","version":"0.5.0-beta.1","description":"One thing to style them all","main":"dist/index.js","scripts":{"dev":"babel src --watch --out-dir dist --presets=@babel/preset-env","build":"babel src --out-dir dist --presets=@babel/preset-env"},"repository":{"type":"git","url":"git+https://github.com/woro83c/styled-matter.git"},"keywords":[],"author":{"name":"Michael Worobec","email":"woro83c@gmail.com","url":"https://woro83c.com"},"license":"ISC","bugs":{"url":"https://github.com/woro83c/styled-matter/issues"},"homepage":"https://github.com/woro83c/styled-matter#readme","dependencies":{"@emotion/is-prop-valid":"^0.8.8"},"devDependencies":{"@babel/cli":"^7.10.1","@babel/core":"^7.10.2","@babel/preset-env":"^7.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.11.0","eslint-plugin-import":"^2.20.2","eslint-plugin-prettier":"^3.1.3","eslint-plugin-react":"^7.20.0","prettier":"2.0.5"},"peerDependencies":{"@emotion/core":"^10.0.28","react":"^16.13.1"},"gitHead":"1f61572c237d63d852fb6c37adddc790766f0c95","_id":"styled-matter@0.5.0-beta.1","_nodeVersion":"14.2.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-JaVpJXBSBaDWCZaIJs57BcKcH1Jr6vbhpo2Ia8nHRpO6K1pASAKJX/MvAIGAcNXK49kBDCcqlcYYBCVnI2QqlQ==","shasum":"4e856bc78c6851fa2ecd4c62689fc63a2e1b7ff6","tarball":"https://registry.npmjs.org/styled-matter/-/styled-matter-0.5.0-beta.1.tgz","fileCount":11,"unpackedSize":53403,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe3KHyCRA9TVsSAnZWagAAs+sQAJ/0JAwNSbgNBj3MCUKa\n2IC2Sqip7OMJCGnBpe6HYr9zaWo3PDjWifFNKam1NXAdy5PBQm6Q7UkItfWU\nP1bSedceqLXt6uCB2gSxFbXYTDWVytPCszRr/m0Kl6ySseRtkzqVnhbbliC6\nqkAJxrVQLvggc8KHXWRWg7ALaKbqz4LzlY51K7IwoS5KzcowMQTmmWBfRvAh\n+FfYk63S9arlXjwPOR2o7U6XwGHqnEkv01ca1LXF+np48LuC5xqpAt3hvg8D\nrwHe01wUJbES/8hRm8NaTzQHLCSNNMPXQKqMhyNrf7vxSAR82DLzp8HtKc6B\nKgkwsKcefVgY4dTqHZ7nxoTVZfdl2k4282MWtaZLD0sHqyJ2sZ8vSiTEVIV3\nCvMPyzTvn371uZfIPYGXZEnZoEeX+IVHbOsjkFc/ySQSejc6PV9eFiwk969X\nN1MObVUWz6t4szz260n1MacD9G4AHj5YJNciB/+eqZTCy9UPPnDJ8Ol9VZvV\nK3kLLiNDnC42irW74ie4MsJEfOq3mcoIe41JITnXQOAb+nE7EU6LfNP2Lshh\nhFkFyjepb+xcHgS0xOrxCv462G8mQrNdO8LvY73z1Ks2u3hlj2HWtE8LHgq4\nzxN4Lr+pKvOBXdTbzLxHipMOmPViq8P9dyk5OoIGese62fFnrxd7bEf1WHav\nbL+i\r\n=etmq\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEV9zZIAbrFIKa8gzg0tIE3JCY6qGVJYXjosDuerVsMyAiEA4mHl7ZVOtWbOiUvUDiqae5+DiuBBuZ+iIrZCu5OIELM="}]},"maintainers":[{"name":"woro83c","email":"woro83c@gmail.com"}],"_npmUser":{"name":"woro83c","email":"woro83c@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/styled-matter_0.5.0-beta.1_1591517682315_0.6803552237012727"},"_hasShrinkwrap":false},"0.5.0-beta.2":{"name":"styled-matter","version":"0.5.0-beta.2","description":"One thing to style them all","main":"dist/index.js","scripts":{"dev":"babel src --watch --out-dir dist --presets=@babel/preset-env","build":"babel src --out-dir dist --presets=@babel/preset-env"},"repository":{"type":"git","url":"git+https://github.com/woro83c/styled-matter.git"},"keywords":[],"author":{"name":"Michael Worobec","email":"woro83c@gmail.com","url":"https://woro83c.com"},"license":"ISC","bugs":{"url":"https://github.com/woro83c/styled-matter/issues"},"homepage":"https://github.com/woro83c/styled-matter#readme","dependencies":{"@emotion/is-prop-valid":"^0.8.8"},"devDependencies":{"@babel/cli":"^7.10.1","@babel/core":"^7.10.2","@babel/preset-env":"^7.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.11.0","eslint-plugin-import":"^2.21.2","eslint-plugin-prettier":"^3.1.3","eslint-plugin-react":"^7.20.0","prettier":"2.0.5"},"peerDependencies":{"@emotion/core":"^10.0.28","react":"^16.13.1"},"gitHead":"1cb86f1907396586cd293fda6ff397c75dd1b4c3","_id":"styled-matter@0.5.0-beta.2","_nodeVersion":"14.2.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-vSL1/RGevlXNbr7q0/w1VT/PAA/XQH/M9OKpFjtJtWrkO1KzOE9B/APmZ40x5X2/QHc/u5cKQTV38oz/Qqm6sg==","shasum":"699bc9d232af782a18ea19c3dd4d53ee3aced832","tarball":"https://registry.npmjs.org/styled-matter/-/styled-matter-0.5.0-beta.2.tgz","fileCount":11,"unpackedSize":53983,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe42qyCRA9TVsSAnZWagAA6joP/iNjYklcUj5ozqcpkgYK\ncoS4UVXj4R6M+unyp+iqAqQE+KJ5UpKoMLjnWNQUakaSVyotd+gENd6M5kDJ\n0rpGYge7kb5TMaI80MC3x9wwgh/J9RoI3wB0MD/O8PQF+g3RMPw9g4oFRqcr\nrulAVtXKpJ1kdkaROVH4IvwyyZio0Ud7PtK5fB//nIDrWdUsnL9VzCFaBCDE\nzfAGBfztEmO08fffypkN/nB5vRG4J3vh6ML9jDuMp+5RkXBB9Hxx1QRXigca\nSzQUgus6AkE/2wGmwJsWg4E+CKGSbvOTFAIAOU5eXwu5lDllR8nUEbPlmz5+\n31JTMaHlNRpiQPg482lqIKUY1cHwHGNS7B6zoXRXJRBa+vHg+LvJfbtfSmr1\nlbaYB25ev0vbKaNX0cUatQRUz6i/cQBNczyJZ+JNke1iazfS4HFJecmsgrB+\nnz1QC0RA+BW3v/3xNNeW3s+vkkM8qt6PE15+Stg3ddaNhI8qPcGvm0MPZC5h\nVCO8Zj2ZD7kW5e3BpER8jH4z1rygFeuW7R2Vd8oKrXb/EDuAvsxb/E0KtRQx\ndJABUr3WgOf7tGXfBg3QopC8eYjkZnvAkDcfQkQlFaUPXXyN4FnGKNHb6J/x\ndJ1t5TxZXvjN5M2FBmjiQBBiGHVIHaQQlwHzBousbvH0OBlc/mmcDCdIJy+2\n2PYS\r\n=+4QN\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFDb3vAckZa+CjpKyylCnH8NAI/jy96IKghZbNumx8tmAiA1KcazvXiq13fHWenuVR4UAgDuXnVU3LL9rrMve2EtzQ=="}]},"maintainers":[{"name":"woro83c","email":"woro83c@gmail.com"}],"_npmUser":{"name":"woro83c","email":"woro83c@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/styled-matter_0.5.0-beta.2_1591962289658_0.3322941339595762"},"_hasShrinkwrap":false},"0.5.0-beta.3":{"name":"styled-matter","version":"0.5.0-beta.3","description":"One thing to style them all","main":"dist/index.js","scripts":{"dev":"babel src --watch --out-dir dist --presets=@babel/preset-env","build":"babel src --out-dir dist --presets=@babel/preset-env"},"repository":{"type":"git","url":"git+https://github.com/woro83c/styled-matter.git"},"keywords":[],"author":{"name":"Michael Worobec","email":"woro83c@gmail.com","url":"https://woro83c.com"},"license":"ISC","bugs":{"url":"https://github.com/woro83c/styled-matter/issues"},"homepage":"https://github.com/woro83c/styled-matter#readme","dependencies":{"@emotion/is-prop-valid":"^0.8.8"},"devDependencies":{"@babel/cli":"^7.10.1","@babel/core":"^7.10.2","@babel/preset-env":"^7.10.2","eslint":"^6.8.0","eslint-config-prettier":"^6.11.0","eslint-plugin-import":"^2.21.2","eslint-plugin-prettier":"^3.1.3","eslint-plugin-react":"^7.20.0","prettier":"2.0.5"},"peerDependencies":{"@emotion/core":"^10.0.28","react":"^16.13.1"},"gitHead":"d1a1e899643346c5aaf60984d25235f5a2027712","_id":"styled-matter@0.5.0-beta.3","_nodeVersion":"14.2.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-QGpxfpd2nFSnbV6CTLTP3szdTdDi9ygiJVfuwcYiBxNNDzsTay3uduvYKSbLoBCMyz8JFtjHIW55MDR1iBJymw==","shasum":"af90c7bd87aee2826e572e6564cbae75f618e8d9","tarball":"https://registry.npmjs.org/styled-matter/-/styled-matter-0.5.0-beta.3.tgz","fileCount":11,"unpackedSize":53747,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe5E9ACRA9TVsSAnZWagAAGN8P/iQyfYF0dcy2cqEFn8PX\nVSXxsIpU2w3vY8VNGEz3HgFx1w6cFgnV5P2fuNUanObC2mnXBTcxMdTJ0T1D\nWgm1pyDwehg328b/CkzgTROHVX94VntNSKADhziqtPLcoqyxdE55rM+RTAMx\narftQjz2E3DsndhwE0jW2NPMkPuIBe2e/55svEAw4PMLpVxyUQXZp1zshV6N\n2IS+1KZoQZ3q51BD4pOo+8g4B0r2uAVg982Y45XIxpON8anAlJkvp91puC3/\nUEPqMvHFkrIJe/YG5evmDlrfrSO0ZwipxRQLI+qzB/1Hrxby8U2ROwV+QQX0\nEWjKJl0Dq50SoZhW+vRVuOf3rIeTMsWt5sXWfnycKkOKCn6O+4KXxcOFYnme\nlNcRjLd/9MttBmsFYk6y7WRVX+MUXU3rnJRxfqDyG2R6en2p/FurQC7QVnMD\n3hrFQZIkgiZx5JxlhicBu0hoIws52t6f9GA9lIQBZKDwQjd7lhPZD08twUJ0\nAoOe7a3AVQfi4zpnd5eqTUyWOi01hlUWJcFqylu2oezGMSVtzMe/N4JCFJ9p\nJkHhbaOgeP9deQ5zPgOvSEhE2MIKfKwd07VQeJKueWnoM8j9DNFbteCFcpXQ\n7V/74CFZdUkX66y0MC2k0p9O5DYaOxwUq1qTH9Yqc8nsGqPZQmCxCrCTbacf\nfwjX\r\n=5st2\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGJPE3SQnJDVs5kmvLVDANGFN/CubkJz/17G7lX1qMD4AiAnj3DXkVnvs1Z511GWOvCkNcxll7YbfMnfnvylAvyOVw=="}]},"maintainers":[{"name":"woro83c","email":"woro83c@gmail.com"}],"_npmUser":{"name":"woro83c","email":"woro83c@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/styled-matter_0.5.0-beta.3_1592020800080_0.2106795794232561"},"_hasShrinkwrap":false},"0.5.0":{"name":"styled-matter","version":"0.5.0","description":"One thing to style them all","main":"dist/index.js","scripts":{"dev":"babel src --watch --out-dir dist --presets=@babel/preset-env","build":"babel src --out-dir dist --presets=@babel/preset-env"},"repository":{"type":"git","url":"git+https://github.com/woro83c/styled-matter.git"},"keywords":[],"author":{"name":"Michael Worobec","email":"woro83c@gmail.com","url":"https://woro83c.com"},"license":"ISC","bugs":{"url":"https://github.com/woro83c/styled-matter/issues"},"homepage":"https://github.com/woro83c/styled-matter#readme","dependencies":{"@emotion/is-prop-valid":"^0.8.8"},"devDependencies":{"@babel/cli":"^7.10.3","@babel/core":"^7.10.3","@babel/preset-env":"^7.10.3","eslint":"^6.8.0","eslint-config-prettier":"^6.11.0","eslint-plugin-import":"^2.21.2","eslint-plugin-prettier":"^3.1.4","eslint-plugin-react":"^7.20.0","prettier":"2.0.5"},"peerDependencies":{"@emotion/core":"^10.0.28","react":"^16.13.1"},"gitHead":"348297c1bf7ff5c1fc2117382b6e187c8e206330","_id":"styled-matter@0.5.0","_nodeVersion":"14.2.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-mcp9DlNriHlySn6EDpZdn9izkzM5EEjynQST3RFz+PTAFuGMq6r0KMVugcwVhUnCpaI+c0Cm40DFIkstx1JoaA==","shasum":"236e7806f440a21f95e1a0842a543d449f73d65e","tarball":"https://registry.npmjs.org/styled-matter/-/styled-matter-0.5.0.tgz","fileCount":11,"unpackedSize":53740,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe7s/BCRA9TVsSAnZWagAAOnUP/Aoxu+C64UUptFb2w3uG\nZCv1uR/yh7hw+UoLCjb+oWMruG9hKKe1PFSOasnUmhYmbWiShJwhKOFM0vAG\nMgw6W6gFMVoC3nV22HhD/NE/pg2gd00MeqpA83tuXjHYqaOduw801YeM6Bwz\npGYbRkhhkgKQ0id/r/kUS1F7NlRoacdIpK14fN1heFGDDtnLw61cgmaYxk8w\ngUAJ3PPUxYHCvO38JLnha6PQ7ztd7KIAIAVUM/xuUtfDPbizVkwMHmvBt/RA\nmuuikrhGD6eVNzZ7aSyygyDt22AXbtrvVhaLKx3qT5ellYE291wdFkiRpnHO\nQL6s/omtYlQyXJk87OSV6HtKqT5WIELHKOxKrUuv2/Son16tg8eGYeXgNsDk\nTMto8tQ+1++u7AKFRD4iPT9xCZNWuZT6Medv6nNCUeGis4mnh6BOCOm18XmL\nzcScSWRsV9X/OyUiXNlkR+xYchnZMmCuriPRaXJiFYMh3megWgTPJ/OP7sZv\ncmpv3+MGyem/vwfwGFDsI3nsYO0n6vA+4tSj34cOOu2qo3wweGhm7nnAhpyG\n/r0LmuxGnH2kLWXx8UoKh4A2lDhPZOqg7Gvgpqkw+g0BBk1NvdQOB/OwPWzC\nlRJ69Bgw9XQUWJEeaTkyj3c8vE9KB7IPNNDWpG+spk+q/uSFrCF513+15bSE\nXKZc\r\n=osOA\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDQBDtunYpxg56XtDuH/Mo4do5tJZhE1izAWL4o/JfrcgIgAQgA4wGfne8iSiVpv4FEpM3WZHcS7sQIl0cJnrLXSWc="}]},"maintainers":[{"name":"woro83c","email":"woro83c@gmail.com"}],"_npmUser":{"name":"woro83c","email":"woro83c@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/styled-matter_0.5.0_1592709056869_0.08778741544599522"},"_hasShrinkwrap":false}},"time":{"created":"2019-11-30T04:00:21.723Z","0.1.0":"2019-11-30T04:00:21.854Z","modified":"2022-05-18T22:22:42.392Z","0.1.1":"2019-12-02T21:17:17.502Z","0.1.2":"2019-12-08T08:43:41.195Z","0.1.3":"2019-12-09T21:55:59.238Z","0.1.4":"2019-12-10T19:45:45.808Z","0.1.5":"2019-12-22T08:45:55.857Z","0.1.6":"2019-12-23T05:27:27.844Z","0.1.7":"2020-03-09T05:54:56.296Z","0.1.8":"2020-03-14T22:21:00.427Z","0.1.9":"2020-04-11T23:43:20.125Z","0.2.0":"2020-04-13T10:31:35.583Z","0.2.1":"2020-04-14T21:35:16.196Z","0.2.2":"2020-04-18T08:36:48.208Z","0.3.0":"2020-04-19T06:49:30.679Z","0.3.1":"2020-04-26T05:57:43.596Z","0.3.2":"2020-04-26T06:14:39.367Z","0.3.3":"2020-04-26T22:52:21.589Z","0.3.4-alpha":"2020-05-01T03:44:23.226Z","0.3.4-alpha.1":"2020-05-01T09:13:53.766Z","0.3.4-alpha.2":"2020-05-02T00:29:37.951Z","0.3.4-alpha.3":"2020-05-05T07:12:27.506Z","0.3.4-alpha.4":"2020-05-08T05:26:14.569Z","0.3.4-alpha.5":"2020-05-08T06:06:59.503Z","0.3.4-alpha.6":"2020-05-08T08:35:11.171Z","0.3.4":"2020-05-10T00:47:20.764Z","0.3.5":"2020-05-21T23:51:21.300Z","0.4.0":"2020-05-23T02:41:27.235Z","0.4.1":"2020-05-24T04:10:58.875Z","0.5.0-beta":"2020-06-06T02:18:05.035Z","0.5.0-beta.1":"2020-06-07T08:14:42.479Z","0.5.0-beta.2":"2020-06-12T11:44:49.782Z","0.5.0-beta.3":"2020-06-13T04:00:00.264Z","0.5.0":"2020-06-21T03:10:56.996Z"},"maintainers":[{"name":"woro83c","email":"woro83c@gmail.com"}],"description":"One thing to style them all","homepage":"https://github.com/woro83c/styled-matter#readme","keywords":[],"repository":{"type":"git","url":"git+https://github.com/woro83c/styled-matter.git"},"author":{"name":"Michael Worobec","email":"woro83c@gmail.com","url":"https://woro83c.com"},"bugs":{"url":"https://github.com/woro83c/styled-matter/issues"},"license":"ISC","readme":"<p>\n  <a href=\"https://styledmatter.com\">\n    <img src=\"https://styledmatter.com/logomark-dark.svg\" alt=\"Styled Matter logomark\" width=\"63\">\n  </a>\n</p>\n\n# Styled Matter\n\nOne thing to style them all - [explore the docs](https://styledmatter.com) or [give it a whirl](https://codesandbox.io/s/github/woro83c/styled-matter/tree/master/sandbox)\n\n![npm](https://img.shields.io/npm/v/styled-matter)\n![David](https://img.shields.io/david/woro83c/styled-matter)\n![npm bundle size](https://img.shields.io/bundlephobia/minzip/styled-matter)\n","readmeFilename":"README.md"}