{"_id":"nanoleaf-layout","_rev":"35-dc792e4d87eed72a9c53463a45eb19cf","name":"nanoleaf-layout","description":"Uses a React Component to easily take your physical NanoLeaf Layout and display in on a 2D Screen","dist-tags":{"latest":"3.0.3"},"versions":{"1.0.0":{"name":"nanoleaf-layout","version":"1.0.0","private":false,"description":"React implementation of the Nanoleaf Layout","author":{"name":"Christian Bartram","email":"cbartram3@gmail.com"},"homepage":"https://github.com/cbartram/Nanoleaf-Layout","repository":{"type":"git","url":"git+https://github.com/cbartram/Nanoleaf-Layout.git"},"license":"MIT","licenses":[{"type":"The MIT License","url":"http://www.opensource.org/licenses/mit-license.php"}],"dependencies":{"react":"^15.6.1","react-dom":"^15.6.1"},"devDependencies":{"react-scripts":"1.0.7"},"scripts":{"start":"react-scripts start","build":"react-scripts build","test":"react-scripts test --env=jsdom","eject":"react-scripts eject"},"bugs":{"url":"https://github.com/cbartram/Nanoleaf-Layout/issues"},"_id":"nanoleaf-layout@1.0.0","_npmVersion":"5.0.3","_nodeVersion":"6.10.1","_npmUser":{"name":"cbartram","email":"cbartram3@gmail.com"},"dist":{"integrity":"sha512-g/NpDPjoDW2AEblwKAXFbjsliRmxO3cYPw7hoj9olUzo4uYiNplNZdag2Na1PmN50nwd77l3iKEvD/tqxUKxtQ==","shasum":"c5a9210f384e4372cb50173689fc8e36e11f2fb5","tarball":"https://registry.npmjs.org/nanoleaf-layout/-/nanoleaf-layout-1.0.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC7E9rQqkTecUIU+rb6bEFCy+370aYbJgH9NLUHEH1MrAIhAMwJs175uavyR4+wieruxkNCsaI2uectUceKpGK/2u33"}]},"maintainers":[{"name":"cbartram","email":"cbartram3@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nanoleaf-layout-1.0.0.tgz_1498570744356_0.36848974297754467"},"directories":{}},"1.0.1":{"name":"nanoleaf-layout","version":"1.0.1","description":"NanoleafLayout","main":"dist/NanoleafLayout.js","author":{"name":"Christian Bartram"},"homepage":"https://github.com/cbartram/nanoleaf-layout","repository":{"type":"git","url":"git+https://github.com/cbartram/nanoleaf-layout.git"},"bugs":{"url":"https://github.com/cbartram/nanoleaf-layout/issues"},"dependencies":{"babel-preset-es2015":"^6.24.1","classnames":"^2.1.2"},"devDependencies":{"babel-eslint":"^4.1.3","eslint":"^1.6.0","eslint-plugin-react":"^3.5.1","gulp":"^3.9.0","gulp-babel":"^6.1.2","react":"^0.14.0","react-component-gulp-tasks":"^0.7.6","react-dom":"^0.14.0"},"peerDependencies":{"react":"^0.14.0"},"browserify-shim":{"react":"global:React"},"scripts":{"build":"gulp clean && NODE_ENV=production gulp build","examples":"gulp dev:server","lint":"eslint ./; true","publish:site":"NODE_ENV=production gulp publish:examples","release":"NODE_ENV=production gulp release","start":"gulp dev","test":"echo \"no tests yet\" && exit 0","watch":"gulp watch:lib"},"keywords":["react","react-component"],"false":{},"gitHead":"25c4fc0b30856220732064025b8ca9a5929a9120","_id":"nanoleaf-layout@1.0.1","_npmVersion":"5.0.3","_nodeVersion":"6.10.1","_npmUser":{"name":"cbartram","email":"cbartram3@gmail.com"},"dist":{"integrity":"sha512-rk6BLRYLMIoOKo+XWaaF0Uhl3jYYl+bw6u0IxiJ1cH5xKWXkS5Y3Dc8KgPwpTnIAJcz76EewCIyY9wLkJ5aFkw==","shasum":"c1cbff1ebc3741e0989f656e7161c6630e74906a","tarball":"https://registry.npmjs.org/nanoleaf-layout/-/nanoleaf-layout-1.0.1.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCqDPibYkPNAQUAarx0gC+ZXwHvUbuuZ2IPa8Z0fzo4CQIgaV+Hm1HiL7W5V1950+UShnREV/ytkxO5r2UOJq5TQqM="}]},"maintainers":[{"name":"cbartram","email":"cbartram3@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nanoleaf-layout-1.0.1.tgz_1498577038861_0.16152281337417662"},"directories":{}},"1.0.2":{"name":"nanoleaf-layout","version":"1.0.2","description":"NanoleafLayout","main":"src/NanoleafLayout.js","author":{"name":"Christian Bartram"},"homepage":"https://github.com/cbartram/nanoleaf-layout","repository":{"type":"git","url":"git+https://github.com/cbartram/nanoleaf-layout.git"},"bugs":{"url":"https://github.com/cbartram/nanoleaf-layout/issues"},"dependencies":{"babel-preset-es2015":"^6.24.1","classnames":"^2.1.2"},"devDependencies":{"babel-eslint":"^4.1.3","eslint":"^1.6.0","eslint-plugin-react":"^3.5.1","gulp":"^3.9.0","gulp-babel":"^6.1.2","react":"^0.14.0","react-component-gulp-tasks":"^0.7.6","react-dom":"^0.14.0"},"peerDependencies":{"react":"^0.14.0"},"browserify-shim":{"react":"global:React"},"scripts":{"build":"gulp clean && NODE_ENV=production gulp build","examples":"gulp dev:server","lint":"eslint ./; true","publish:site":"NODE_ENV=production gulp publish:examples","release":"NODE_ENV=production gulp release","start":"gulp dev","test":"echo \"no tests yet\" && exit 0","watch":"gulp watch:lib"},"keywords":["react","react-component"],"false":{},"gitHead":"25c4fc0b30856220732064025b8ca9a5929a9120","_id":"nanoleaf-layout@1.0.2","_npmVersion":"5.0.3","_nodeVersion":"6.10.1","_npmUser":{"name":"cbartram","email":"cbartram3@gmail.com"},"dist":{"integrity":"sha512-NJJcb2o+sW/qMIVFiTdH7hCPRf8EnnosMZZRa5mPheiGtzHhdS2AQLi9SJvaDwDgpsYYx8C7HumK0rmdSuKolQ==","shasum":"d712723a23e56eee7c438ebd0085c6c3b48fd439","tarball":"https://registry.npmjs.org/nanoleaf-layout/-/nanoleaf-layout-1.0.2.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDLyjTZ86yq11vv4PLMCVf2UNCgwiAY+qRvFMHJxSfJ5wIgCGuKzlI2uHGqpuN06ZxVEL4ghAQMj0CPs6zFBX+y4S0="}]},"maintainers":[{"name":"cbartram","email":"cbartram3@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nanoleaf-layout-1.0.2.tgz_1498577137704_0.5328170491848141"},"directories":{}},"1.0.3":{"name":"nanoleaf-layout","version":"1.0.3","description":"NanoleafLayout","main":".publish/bundle.js","author":{"name":"Christian Bartram"},"homepage":"https://github.com/cbartram/nanoleaf-layout","repository":{"type":"git","url":"git+https://github.com/cbartram/nanoleaf-layout.git"},"bugs":{"url":"https://github.com/cbartram/nanoleaf-layout/issues"},"dependencies":{"babel-preset-es2015":"^6.24.1","classnames":"^2.1.2"},"devDependencies":{"babel-eslint":"^4.1.3","eslint":"^1.6.0","eslint-plugin-react":"^3.5.1","gulp":"^3.9.0","gulp-babel":"^6.1.2","react":"^0.14.0","react-component-gulp-tasks":"^0.7.6","react-dom":"^0.14.0"},"peerDependencies":{"react":"^0.14.0"},"browserify-shim":{"react":"global:React"},"scripts":{"build":"gulp clean && NODE_ENV=production gulp build","examples":"gulp dev:server","lint":"eslint ./; true","publish:site":"NODE_ENV=production gulp publish:examples","release":"NODE_ENV=production gulp release","start":"gulp dev","test":"echo \"no tests yet\" && exit 0","watch":"gulp watch:lib"},"keywords":["react","react-component"],"false":{},"gitHead":"25c4fc0b30856220732064025b8ca9a5929a9120","_id":"nanoleaf-layout@1.0.3","_npmVersion":"5.0.3","_nodeVersion":"6.10.1","_npmUser":{"name":"cbartram","email":"cbartram3@gmail.com"},"dist":{"integrity":"sha512-aYqLKL7RCysWeS1xlbaAHnNZJXZgjXy/0yTs6vwbMGHHnSqVUkSp0AemDnMzvxdWWqewJEe4v0DGX3o+1gcPNA==","shasum":"681ecaf394f47782a5764c01f3e2e7121e124bee","tarball":"https://registry.npmjs.org/nanoleaf-layout/-/nanoleaf-layout-1.0.3.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEYeoOzNaaSFKFBE89GmAu97sIa32lUDI25EYgLYnQmVAiEAwN+8NdpAN/A9W8cIr8MorWuUWbLDpQGAcQ4w2xQXQl8="}]},"maintainers":[{"name":"cbartram","email":"cbartram3@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nanoleaf-layout-1.0.3.tgz_1498578014144_0.6796973661985248"},"directories":{}},"1.0.4":{"name":"nanoleaf-layout","version":"1.0.4","description":"NanoleafLayout","main":".publish/bundle.js","author":{"name":"Christian Bartram"},"homepage":"https://github.com/cbartram/nanoleaf-layout","repository":{"type":"git","url":"git+https://github.com/cbartram/nanoleaf-layout.git"},"bugs":{"url":"https://github.com/cbartram/nanoleaf-layout/issues"},"dependencies":{"babel-preset-es2015":"^6.24.1","classnames":"^2.1.2"},"devDependencies":{"babel-eslint":"^4.1.3","eslint":"^1.6.0","eslint-plugin-react":"^3.5.1","gulp":"^3.9.0","gulp-babel":"^6.1.2","react":"^0.14.0","react-component-gulp-tasks":"^0.7.6","react-dom":"^0.14.0"},"peerDependencies":{"react":"^0.14.0"},"browserify-shim":{"react":"global:React"},"scripts":{"build":"gulp clean && NODE_ENV=production gulp build","examples":"gulp dev:server","lint":"eslint ./; true","publish:site":"NODE_ENV=production gulp publish:examples","release":"NODE_ENV=production gulp release","start":"gulp dev","test":"echo \"no tests yet\" && exit 0","watch":"gulp watch:lib"},"keywords":["react","react-component"],"false":{},"gitHead":"25c4fc0b30856220732064025b8ca9a5929a9120","_id":"nanoleaf-layout@1.0.4","_npmVersion":"5.0.3","_nodeVersion":"6.10.1","_npmUser":{"name":"cbartram","email":"cbartram3@gmail.com"},"dist":{"integrity":"sha512-iQCpVng6lG9RgYW4cZ8Gypt9QQNeZ6TMDC+sc2lrwDVDrve4zeQe0iS6myTHlR6YsHAYbi8piCLiESzPhgMldQ==","shasum":"b343b7096ceb4d6e52c553f3bbe55166fbe1e860","tarball":"https://registry.npmjs.org/nanoleaf-layout/-/nanoleaf-layout-1.0.4.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDRUbpoZ4vdgiX94ITYqP2STAwKk5inyN4JNOeLgjpnPQIgTw6OABDChNQ5k7gaZE5Yr/KZahtDOqjZHGQH4muUVpU="}]},"maintainers":[{"name":"cbartram","email":"cbartram3@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nanoleaf-layout-1.0.4.tgz_1498579054663_0.17921818373724818"},"directories":{}},"1.0.5":{"name":"nanoleaf-layout","version":"1.0.5","description":"NanoleafLayout","main":".publish/bundle.js","author":{"name":"Christian Bartram"},"homepage":"https://github.com/cbartram/nanoleaf-layout","repository":{"type":"git","url":"git+https://github.com/cbartram/nanoleaf-layout.git"},"bugs":{"url":"https://github.com/cbartram/nanoleaf-layout/issues"},"dependencies":{"babel-preset-es2015":"^6.24.1","classnames":"^2.1.2"},"devDependencies":{"babel-eslint":"^4.1.3","eslint":"^1.6.0","eslint-plugin-react":"^3.5.1","gulp":"^3.9.0","gulp-babel":"^6.1.2","react":"^0.14.0","react-component-gulp-tasks":"^0.7.6","react-dom":"^0.14.0"},"peerDependencies":{"react":"^0.14.0"},"browserify-shim":{"react":"global:React"},"scripts":{"build":"gulp clean && NODE_ENV=production gulp build","examples":"gulp dev:server","lint":"eslint ./; true","publish:site":"NODE_ENV=production gulp publish:examples","release":"NODE_ENV=production gulp release","start":"gulp dev","test":"echo \"no tests yet\" && exit 0","watch":"gulp watch:lib"},"keywords":["react","react-component"],"false":{},"gitHead":"25c4fc0b30856220732064025b8ca9a5929a9120","_id":"nanoleaf-layout@1.0.5","_npmVersion":"5.0.3","_nodeVersion":"6.10.1","_npmUser":{"name":"cbartram","email":"cbartram3@gmail.com"},"dist":{"integrity":"sha512-/KuaRls8bZqm7Ko8HV8tEmkT8WjUsBoEq5DlUGLEpSwnPEjVug8BJGHa/+3V4A7iioI3O73AtcPKuZCMxA6PUQ==","shasum":"41ed14058a4cef71936f2581acd4f8959ae10743","tarball":"https://registry.npmjs.org/nanoleaf-layout/-/nanoleaf-layout-1.0.5.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHxmc17XdaYm6qYtz4aR4DJ1AxwlYvmHnsmDQk9Zp8PlAiEAvd1SEUgMWzJrEvDTXBK3ZX0bSLUKJF7xrDKrCkbzJ2c="}]},"maintainers":[{"name":"cbartram","email":"cbartram3@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nanoleaf-layout-1.0.5.tgz_1498579288229_0.3036359038669616"},"directories":{}},"1.0.6":{"name":"nanoleaf-layout","version":"1.0.6","description":"nanoleaf-layout","main":"lib/NanoleafLayout.js","author":{"name":"Christian Bartram"},"homepage":"https://github.com/cbartram/nanoleaf-layout","repository":{"type":"git","url":"git+https://github.com/cbartram/nanoleaf-layout.git"},"bugs":{"url":"https://github.com/cbartram/nanoleaf-layout/issues"},"dependencies":{"classnames":"^2.1.2"},"devDependencies":{"babel-eslint":"^4.1.3","eslint":"^1.6.0","eslint-plugin-react":"^3.5.1","gulp":"^3.9.0","react":"^0.14.0","react-component-gulp-tasks":"^0.7.6","react-dom":"^0.14.0"},"peerDependencies":{"react":"^0.14.0"},"browserify-shim":{"react":"global:React"},"scripts":{"build":"gulp clean && NODE_ENV=production gulp build","examples":"gulp dev:server","lint":"eslint ./; true","publish:site":"NODE_ENV=production gulp publish:examples","release":"NODE_ENV=production gulp release","start":"gulp dev","test":"echo \"no tests yet\" && exit 0","watch":"gulp watch:lib"},"keywords":["react","react-component"],"_id":"nanoleaf-layout@1.0.6","_npmVersion":"5.0.3","_nodeVersion":"6.10.1","_npmUser":{"name":"cbartram","email":"cbartram3@gmail.com"},"dist":{"integrity":"sha512-RLjwdri2ux34E6KsP4nRxdzi/m8kc1wGH/yaOlCH3OUakF3UCNlBS2ayV0Ae0PiKHXpoM2FZmqPDzWAsSBU+mQ==","shasum":"f9c8868a5da0d4519ea0bb307057d3475c496e1b","tarball":"https://registry.npmjs.org/nanoleaf-layout/-/nanoleaf-layout-1.0.6.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCID0Faa462+/AgtBgww/qdxxQ4OZGISq1EVkkWUMbgKISAiEAuQtp5/ite7AVgkkDabq/lMWxX5MLbvphLRoTR5rB2OU="}]},"maintainers":[{"name":"cbartram","email":"cbartram3@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nanoleaf-layout-1.0.6.tgz_1498585470173_0.4936013617552817"},"directories":{}},"1.0.7":{"name":"nanoleaf-layout","version":"1.0.7","description":"nanoleaf-layout","main":"lib/NanoleafLayout.js","author":{"name":"Christian Bartram"},"homepage":"https://github.com/cbartram/nanoleaf-layout","repository":{"type":"git","url":"git+https://github.com/cbartram/nanoleaf-layout.git"},"bugs":{"url":"https://github.com/cbartram/nanoleaf-layout/issues"},"dependencies":{"classnames":"^2.1.2"},"devDependencies":{"babel-eslint":"^4.1.3","eslint":"^1.6.0","eslint-plugin-react":"^3.5.1","gulp":"^3.9.0","react":"^0.14.0","react-component-gulp-tasks":"^0.7.6","react-dom":"^0.14.0"},"peerDependencies":{"react":"^0.14.0"},"browserify-shim":{"react":"global:React"},"scripts":{"build":"gulp clean && NODE_ENV=production gulp build","examples":"gulp dev:server","lint":"eslint ./; true","publish:site":"NODE_ENV=production gulp publish:examples","release":"NODE_ENV=production gulp release","start":"gulp dev","test":"echo \"no tests yet\" && exit 0","watch":"gulp watch:lib"},"keywords":["react","react-component"],"gitHead":"3520e793c4f378dc6eebde09364b2ae252544338","_id":"nanoleaf-layout@1.0.7","_npmVersion":"5.0.3","_nodeVersion":"6.10.1","_npmUser":{"name":"cbartram","email":"cbartram3@gmail.com"},"dist":{"integrity":"sha512-p4NbcsbHd89fCHIiyoh+0TgAhllsVAbG6NxgU81VDNBnyE34Z2t1Xs2nQ5OD2vNQ7aQLxFUleQYQsLr54ikCCg==","shasum":"c1a717e6e6557a06b2f5878253b0927805e16ebf","tarball":"https://registry.npmjs.org/nanoleaf-layout/-/nanoleaf-layout-1.0.7.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCQywBrn8uQwWEE7TcoBvt8HbF/B9RzXfsc7OrVoHFDnQIhAMnfGJCz+YqCBqpzd+m65vFY386lKJUQRuMyYKZcR06y"}]},"maintainers":[{"name":"cbartram","email":"cbartram3@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nanoleaf-layout-1.0.7.tgz_1498586440727_0.21615453157573938"},"directories":{}},"1.0.8":{"name":"nanoleaf-layout","version":"1.0.8","description":"Uses a React Component to easily take your physical Nanoleaf layout and display in on a 2D Screen","keyword":["nanoleaf","layout","canvas","react","component"],"main":"lib/NanoleafLayout.js","author":{"name":"Christian Bartram"},"homepage":"https://github.com/cbartram/nanoleaf-layout","repository":{"type":"git","url":"git+https://github.com/cbartram/nanoleaf-layout.git"},"bugs":{"url":"https://github.com/cbartram/nanoleaf-layout/issues"},"dependencies":{"classnames":"^2.1.2"},"devDependencies":{"babel-eslint":"^4.1.3","eslint":"^1.6.0","eslint-plugin-react":"^3.5.1","gulp":"^3.9.0","react":"^0.14.0","react-component-gulp-tasks":"^0.7.6","react-dom":"^0.14.0"},"peerDependencies":{"react":"^0.14.0"},"browserify-shim":{"react":"global:React"},"scripts":{"build":"gulp clean && NODE_ENV=production gulp build","examples":"gulp dev:server","lint":"eslint ./; true","prepublish":"npm run build","publish:site":"NODE_ENV=production gulp publish:examples","release":"NODE_ENV=production gulp release","start":"gulp dev","test":"echo \"no tests yet\" && exit 0","watch":"gulp watch:lib"},"keywords":["react","react-component"],"gitHead":"b730782ac8a1223b6dd52fb1597f29552282ea7a","_id":"nanoleaf-layout@1.0.8","_npmVersion":"5.0.3","_nodeVersion":"6.10.1","_npmUser":{"name":"cbartram","email":"cbartram3@gmail.com"},"dist":{"integrity":"sha512-lLV0L0YYuu5bHSmg3zU4LTGX+B5SUMG0HS8xkALrVIIjZIc5LAUAZxW5TAcav2UI4yzkywjrPLORNZQLCSGMsA==","shasum":"fd9999d31cef25b9c48a2149f35fbcd7f3a025e6","tarball":"https://registry.npmjs.org/nanoleaf-layout/-/nanoleaf-layout-1.0.8.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHltj1XooOf6P/0UVnfmRpijc/Z2mp/5vko1QMLJ8t8yAiEAnOECELFPg96khkmUxAbks26LDSdbOsXNM4S3gurfqW8="}]},"maintainers":[{"name":"cbartram","email":"cbartram3@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nanoleaf-layout-1.0.8.tgz_1498598293047_0.37610514322295785"},"directories":{}},"1.0.9":{"name":"nanoleaf-layout","version":"1.0.9","description":"Uses a React Component to easily take your physical Nanoleaf layout and display in on a 2D Screen","keyword":["nanoleaf","layout","canvas","react","component"],"main":"lib/NanoleafLayout.js","author":{"name":"Christian Bartram"},"homepage":"https://github.com/cbartram/nanoleaf-layout","repository":{"type":"git","url":"git+https://github.com/cbartram/nanoleaf-layout.git"},"bugs":{"url":"https://github.com/cbartram/nanoleaf-layout/issues"},"dependencies":{"classnames":"^2.1.2"},"devDependencies":{"babel-eslint":"^4.1.3","eslint":"^1.6.0","eslint-plugin-react":"^3.5.1","gulp":"^3.9.0","react":"^0.14.0","react-component-gulp-tasks":"^0.7.6","react-dom":"^0.14.0"},"peerDependencies":{"react":"^0.14.0"},"browserify-shim":{"react":"global:React"},"scripts":{"build":"gulp clean && NODE_ENV=production gulp build","examples":"gulp dev:server","lint":"eslint ./; true","prepublish":"npm run build","publish:site":"NODE_ENV=production gulp publish:examples","release":"NODE_ENV=production gulp release","start":"gulp dev","test":"echo \"no tests yet\" && exit 0","watch":"gulp watch:lib"},"keywords":["react","react-component"],"gitHead":"0d7e3ae4fcd886c2b2727d45b0dc6d3d01f42eb7","_id":"nanoleaf-layout@1.0.9","_npmVersion":"5.0.3","_nodeVersion":"6.10.1","_npmUser":{"name":"cbartram","email":"cbartram3@gmail.com"},"dist":{"integrity":"sha512-cd2PXo0hZbmQkDJ+k3rf8OnrHl1A9Kn4w1b3MoKNhhTWgAXii8pkjlgrOCv+f3eMVUGqKBtyUVkl2uARApdq7Q==","shasum":"1b515fc37ab1de0f885fe75d1015acb8592c253c","tarball":"https://registry.npmjs.org/nanoleaf-layout/-/nanoleaf-layout-1.0.9.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCRk8o+r128vvBwhk6GsP2MQ4m1TkP999ZFd39H+/ZMsQIgMEBZaIh2uWxqsjxXtcbwC3F0/5ZICDtSUTHBtpSVGco="}]},"maintainers":[{"name":"cbartram","email":"cbartram3@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nanoleaf-layout-1.0.9.tgz_1498598931153_0.902915352024138"},"directories":{}},"1.1.0":{"name":"nanoleaf-layout","version":"1.1.0","description":"Uses a React Component to easily take your physical Nanoleaf layout and display in on a 2D Screen","keyword":["nanoleaf","layout","canvas","react","component"],"main":"lib/NanoleafLayout.js","author":{"name":"Christian Bartram"},"homepage":"https://github.com/cbartram/nanoleaf-layout","repository":{"type":"git","url":"git+https://github.com/cbartram/nanoleaf-layout.git"},"bugs":{"url":"https://github.com/cbartram/nanoleaf-layout/issues"},"dependencies":{"classnames":"^2.1.2"},"devDependencies":{"babel-eslint":"^4.1.3","eslint":"^1.6.0","eslint-plugin-react":"^3.5.1","gulp":"^3.9.0","react":"^0.14.0","react-component-gulp-tasks":"^0.7.6","react-dom":"^0.14.0"},"peerDependencies":{"react":"^0.14.0"},"browserify-shim":{"react":"global:React"},"scripts":{"build":"gulp clean && NODE_ENV=production gulp build","examples":"gulp dev:server","lint":"eslint ./; true","prepublish":"npm run build","publish:site":"NODE_ENV=production gulp publish:examples","release":"NODE_ENV=production gulp release","start":"gulp dev","test":"echo \"no tests yet\" && exit 0","watch":"gulp watch:lib"},"keywords":["react","react-component"],"gitHead":"0d7e3ae4fcd886c2b2727d45b0dc6d3d01f42eb7","_id":"nanoleaf-layout@1.1.0","_npmVersion":"5.0.3","_nodeVersion":"6.10.1","_npmUser":{"name":"cbartram","email":"cbartram3@gmail.com"},"dist":{"integrity":"sha512-fu8zLi9bxkKSD1jcMD3FS4DtrZ5KYie1BQR+59zQGwAML+Ff/K8X4Et+95/5m32CpKPJwagQalVPjnKyjFm+Iw==","shasum":"a47c98c9374fc3d3689c967b048ae3cda09dd374","tarball":"https://registry.npmjs.org/nanoleaf-layout/-/nanoleaf-layout-1.1.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGN1iMSYgpCMTo93A+YGxRB/bSoyYJNMnM5FLZTQsk7oAiEAtTFGwQXODnIv/JAAPh+TkC2lVVuMm65NSu2DZKNUxyQ="}]},"maintainers":[{"name":"cbartram","email":"cbartram3@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nanoleaf-layout-1.1.0.tgz_1498753518929_0.5011449852026999"},"directories":{}},"1.1.1":{"name":"nanoleaf-layout","version":"1.1.1","description":"Uses a React Component to easily take your physical Nanoleaf layout and display in on a 2D Screen","keyword":["nanoleaf","layout","canvas","react","component"],"main":"lib/NanoleafLayout.js","author":{"name":"Christian Bartram"},"homepage":"https://github.com/cbartram/nanoleaf-layout","repository":{"type":"git","url":"git+https://github.com/cbartram/nanoleaf-layout.git"},"bugs":{"url":"https://github.com/cbartram/nanoleaf-layout/issues"},"dependencies":{"classnames":"^2.1.2"},"devDependencies":{"babel-eslint":"^4.1.3","eslint":"^1.6.0","eslint-plugin-react":"^3.5.1","gulp":"^3.9.0","react":"^0.14.0","react-component-gulp-tasks":"^0.7.6","react-dom":"^0.14.0"},"peerDependencies":{"react":"^0.14.0"},"browserify-shim":{"react":"global:React"},"scripts":{"build":"gulp clean && NODE_ENV=production gulp build","examples":"gulp dev:server","lint":"eslint ./; true","prepublish":"npm run build","publish:site":"NODE_ENV=production gulp publish:examples","release":"NODE_ENV=production gulp release","start":"gulp dev","test":"echo \"no tests yet\" && exit 0","watch":"gulp watch:lib"},"keywords":["react","react-component"],"gitHead":"0d7e3ae4fcd886c2b2727d45b0dc6d3d01f42eb7","_id":"nanoleaf-layout@1.1.1","_npmVersion":"5.0.3","_nodeVersion":"6.10.1","_npmUser":{"name":"cbartram","email":"cbartram3@gmail.com"},"dist":{"integrity":"sha512-+JLNI5glZfrhk2ct4+JO5Gw5nkbz/iSFDu3sxPk1ZlCY3FBj5ePfSO+Ehv37TqbGN+Ihskc+DLuWhKjFHRgP/A==","shasum":"b7819fd4dce8131ba155dfb4dd9d25d92bc032e1","tarball":"https://registry.npmjs.org/nanoleaf-layout/-/nanoleaf-layout-1.1.1.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC9oTbBZF//htiJ3PBDo3C5ztyPMB4X/CoNJAPkkaIQ2QIgRBTr14giGDpCqm0LdOFhfkTe7e2jCViYk9nLO2RsJ2w="}]},"maintainers":[{"name":"cbartram","email":"cbartram3@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nanoleaf-layout-1.1.1.tgz_1498753659693_0.04557811585254967"},"directories":{}},"1.1.2":{"name":"nanoleaf-layout","version":"1.1.2","description":"Uses a React Component to easily take your physical Nanoleaf layout and display in on a 2D Screen","keyword":["nanoleaf","layout","canvas","react","component"],"main":"lib/NanoleafLayout.js","author":{"name":"Christian Bartram"},"homepage":"https://github.com/cbartram/nanoleaf-layout","repository":{"type":"git","url":"git+https://github.com/cbartram/nanoleaf-layout.git"},"bugs":{"url":"https://github.com/cbartram/nanoleaf-layout/issues"},"dependencies":{"classnames":"^2.1.2","material-ui":"^0.18.5","react-color":"^2.13.0","react-tap-event-plugin":"^2.0.1"},"devDependencies":{"babel-eslint":"^4.1.3","eslint":"^1.6.0","eslint-plugin-react":"^3.5.1","gulp":"^3.9.0","react":"^0.14.0","react-component-gulp-tasks":"^0.7.6","react-dom":"^0.14.0"},"peerDependencies":{"react":"^0.14.0"},"browserify-shim":{"react":"global:React"},"scripts":{"build":"gulp clean && NODE_ENV=production gulp build","examples":"gulp dev:server","lint":"eslint ./; true","prepublish":"npm run build","publish:site":"NODE_ENV=production gulp publish:examples","release":"NODE_ENV=production gulp release","start":"gulp dev","test":"echo \"no tests yet\" && exit 0","watch":"gulp watch:lib"},"keywords":["react","react-component"],"gitHead":"791d0ff2b3eae4da5f7b4463a2e74e119f9677c1","_id":"nanoleaf-layout@1.1.2","_npmVersion":"5.0.4","_nodeVersion":"6.9.1","_npmUser":{"name":"cbartram","email":"cbartram3@gmail.com"},"dist":{"integrity":"sha512-9yKqOhSw8vUOMqmNgZ7D64IxcaQTkGM8Ej+IaApnRI+Lv4rHoo54WsUJb9VKDTvvXF7Z8ouJpSRmZLzPTOy0Pg==","shasum":"a8dcb412fe52579b8e7525482466efcc7e1fce35","tarball":"https://registry.npmjs.org/nanoleaf-layout/-/nanoleaf-layout-1.1.2.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCSiU9Zwa2HT5UozW5cDpLZ7L/IP06n+cakWs8GamrY9wIgJNlGVitO3r7cjvttFwdC95VxRm36Vf0Sfeud6/lCyTI="}]},"maintainers":[{"name":"cbartram","email":"cbartram3@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nanoleaf-layout-1.1.2.tgz_1498786251977_0.6918620823416859"},"directories":{}},"1.1.3":{"name":"nanoleaf-layout","version":"1.1.3","description":"Uses a React Component to easily take your physical Nanoleaf layout and display in on a 2D Screen","keyword":["nanoleaf","layout","canvas","react","component"],"main":"lib/NanoleafLayout.js","author":{"name":"Christian Bartram"},"homepage":"https://github.com/cbartram/nanoleaf-layout","repository":{"type":"git","url":"git+https://github.com/cbartram/nanoleaf-layout.git"},"bugs":{"url":"https://github.com/cbartram/nanoleaf-layout/issues"},"dependencies":{"classnames":"^2.1.2","material-ui":"^0.18.5","prism":"^4.1.2","react-color":"^2.13.0","react-tap-event-plugin":"^2.0.1"},"devDependencies":{"babel-eslint":"^4.1.3","eslint":"^1.6.0","eslint-plugin-react":"^3.5.1","gulp":"^3.9.0","react":"^0.14.0","react-component-gulp-tasks":"^0.7.6","react-dom":"^0.14.0"},"peerDependencies":{"react":"^0.14.0"},"browserify-shim":{"react":"global:React"},"scripts":{"build":"gulp clean && NODE_ENV=production gulp build","examples":"gulp dev:server","lint":"eslint ./; true","prepublish":"npm run build","publish:site":"NODE_ENV=production gulp publish:examples","release":"NODE_ENV=production gulp release","start":"gulp dev","test":"echo \"no tests yet\" && exit 0","watch":"gulp watch:lib"},"keywords":["react","react-component"],"gitHead":"1cbef316be47f123ebc71f498cd4a59ab945eb74","_id":"nanoleaf-layout@1.1.3","_npmVersion":"5.0.3","_nodeVersion":"6.10.1","_npmUser":{"name":"cbartram","email":"cbartram3@gmail.com"},"dist":{"integrity":"sha512-/OLWe7gtJz28SJ+b8SJHWOUSUpuN6avqHF93PK9dHPWgYoNEZuYusyod2w4cPbADxrUmCw7C0InEM6EHOiVbBQ==","shasum":"92fe6fc324ca1e5f5e2dad13f9a6f1691e53b65d","tarball":"https://registry.npmjs.org/nanoleaf-layout/-/nanoleaf-layout-1.1.3.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCkUyUscdXN9laPYbHRHKk/yiCJIoX8EoH0zEGAtaKrngIhAMBqvW2wh/m8HSlmLgIiI9is6/uVdM12m6PbMA/tMMit"}]},"maintainers":[{"name":"cbartram","email":"cbartram3@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nanoleaf-layout-1.1.3.tgz_1499275211746_0.8598491286393255"},"directories":{}},"1.1.4":{"name":"nanoleaf-layout","version":"1.1.4","description":"Uses a React Component to easily take your physical Nanoleaf layout and display in on a 2D Screen","keyword":["nanoleaf","layout","canvas","react","component"],"main":"lib/NanoleafLayout.js","author":{"name":"Christian Bartram"},"homepage":"https://github.com/cbartram/nanoleaf-layout","repository":{"type":"git","url":"git+https://github.com/cbartram/nanoleaf-layout.git"},"bugs":{"url":"https://github.com/cbartram/nanoleaf-layout/issues"},"dependencies":{"classnames":"^2.1.2","material-ui":"^0.18.5","prism":"^4.1.2","react-color":"^2.13.0","react-tap-event-plugin":"^2.0.1"},"devDependencies":{"babel-eslint":"^4.1.3","eslint":"^1.6.0","eslint-plugin-react":"^3.5.1","gulp":"^3.9.0","react":"^0.14.0","react-component-gulp-tasks":"^0.7.6","react-dom":"^0.14.0"},"peerDependencies":{"react":"^0.14.0"},"browserify-shim":{"react":"global:React"},"scripts":{"build":"gulp clean && NODE_ENV=production gulp build","examples":"gulp dev:server","lint":"eslint ./; true","prepublish":"npm run build","publish:site":"NODE_ENV=production gulp publish:examples","release":"NODE_ENV=production gulp release","start":"gulp dev","test":"echo \"no tests yet\" && exit 0","watch":"gulp watch:lib"},"keywords":["react","react-component"],"gitHead":"7dba702f476a2d292e16f0f8a30913122a16f2ef","_id":"nanoleaf-layout@1.1.4","_npmVersion":"5.0.3","_nodeVersion":"6.10.1","_npmUser":{"name":"cbartram","email":"cbartram3@gmail.com"},"dist":{"integrity":"sha512-rqRQyhxJxP78cKaN5ApwV8j/SdbBHIKP08krimdt4pE3JjhQ84CuUUjWV7f37YLnu3W2ZIlznEmLD9x0omg94w==","shasum":"926291d6f231dd57e9250beb3b00126cd502df74","tarball":"https://registry.npmjs.org/nanoleaf-layout/-/nanoleaf-layout-1.1.4.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCgEsAEh+ZIzAaMWcpyx8wgFFeQSfzx8tFmdtYHDbsQ/QIgDeVev95s3yo3SMVbkF9fkWYGBDWZYzN9Ywxl1U81/8w="}]},"maintainers":[{"name":"cbartram","email":"cbartram3@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nanoleaf-layout-1.1.4.tgz_1499275536597_0.09094216395169497"},"directories":{}},"1.1.5":{"name":"nanoleaf-layout","version":"1.1.5","description":"Uses a React Component to easily take your physical Nanoleaf layout and display in on a 2D Screen","keyword":["nanoleaf","layout","canvas","react","component"],"main":"lib/NanoleafLayout.js","author":{"name":"Christian Bartram"},"homepage":"https://github.com/cbartram/nanoleaf-layout","repository":{"type":"git","url":"git+https://github.com/cbartram/nanoleaf-layout.git"},"bugs":{"url":"https://github.com/cbartram/nanoleaf-layout/issues"},"dependencies":{"classnames":"^2.1.2","material-ui":"^0.18.5","prism":"^4.1.2","react-color":"^2.13.0","react-tap-event-plugin":"^2.0.1"},"devDependencies":{"babel-eslint":"^4.1.3","eslint":"^1.6.0","eslint-plugin-react":"^3.5.1","gulp":"^3.9.0","react":"^0.14.0","react-component-gulp-tasks":"^0.7.6","react-dom":"^0.14.0"},"peerDependencies":{"react":"^0.14.0"},"browserify-shim":{"react":"global:React"},"scripts":{"build":"gulp clean && NODE_ENV=production gulp build","examples":"gulp dev:server","lint":"eslint ./; true","prepublish":"npm run build","publish:site":"NODE_ENV=production gulp publish:examples","release":"NODE_ENV=production gulp release","start":"gulp dev","test":"echo \"no tests yet\" && exit 0","watch":"gulp watch:lib"},"keywords":["react","react-component"],"gitHead":"5429218f670c62fe907a7c6bc0994e375beb8f4f","_id":"nanoleaf-layout@1.1.5","_npmVersion":"5.0.4","_nodeVersion":"6.9.1","_npmUser":{"name":"cbartram","email":"cbartram3@gmail.com"},"dist":{"integrity":"sha512-al6b1jWdcjKMyo5CwUP8Tl60ZEgOzyB/a1YsWWkQGGcC//+bPfqR+tBthTKQ3yYUufFwFBRUt9Qbsv4JvKUTRA==","shasum":"c07027caa7c7afba3a6fc10b87e17355cf1bc0e1","tarball":"https://registry.npmjs.org/nanoleaf-layout/-/nanoleaf-layout-1.1.5.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHJ1C+UajebbywOOq3Zt5UnmiI7fhKeIr0gn6ySBVhmzAiEA6KyWAxXsMyCf/p+MiQMTWxaGyLKdpveNve9bcjb+5d4="}]},"maintainers":[{"name":"cbartram","email":"cbartram3@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nanoleaf-layout-1.1.5.tgz_1499300713440_0.7856947851832956"},"directories":{}},"1.2.0":{"name":"nanoleaf-layout","version":"1.2.0","description":"Uses a React Component to easily take your physical Nanoleaf layout and display in on a 2D Screen","keyword":["nanoleaf","layout","canvas","react","component"],"main":"lib/NanoleafLayout.js","author":{"name":"Christian Bartram"},"homepage":"https://github.com/cbartram/nanoleaf-layout","repository":{"type":"git","url":"git+https://github.com/cbartram/nanoleaf-layout.git"},"bugs":{"url":"https://github.com/cbartram/nanoleaf-layout/issues"},"dependencies":{"classnames":"^2.1.2","material-ui":"^0.18.5","prism":"^4.1.2","react-color":"^2.13.0","react-tap-event-plugin":"^2.0.1"},"devDependencies":{"babel-eslint":"^4.1.3","eslint":"^1.6.0","eslint-plugin-react":"^3.5.1","gulp":"^3.9.0","react":"^0.14.0","react-component-gulp-tasks":"^0.7.6","react-dom":"^0.14.0"},"peerDependencies":{"react":"^0.14.0"},"browserify-shim":{"react":"global:React"},"scripts":{"build":"gulp clean && NODE_ENV=production gulp build","examples":"gulp dev:server","lint":"eslint ./; true","prepublish":"npm run build","publish:site":"NODE_ENV=production gulp publish:examples","release":"NODE_ENV=production gulp release","start":"gulp dev","test":"echo \"no tests yet\" && exit 0","watch":"gulp watch:lib"},"keywords":["react","react-component"],"gitHead":"89f9a98f0f417178c55a6f304b692d4ff1970540","_id":"nanoleaf-layout@1.2.0","_npmVersion":"5.0.3","_nodeVersion":"6.10.1","_npmUser":{"name":"cbartram","email":"cbartram3@gmail.com"},"dist":{"integrity":"sha512-ScXmiqVS1O/nXmfFb68TSFD2O//wZMF+XNfaYaDJmwKL94oan42wukUXpH9wHZIKwyFQEh4VwctO6nqEd8AyIw==","shasum":"de26c5a750aefd442ea0914e491ed4acbd585795","tarball":"https://registry.npmjs.org/nanoleaf-layout/-/nanoleaf-layout-1.2.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDDadjjJSv8NeEuBK1k/oG3hRIl/aohDVuQickSOC1dXAiBJW+m4O2gq84e2E46uT3tX3P6hMfmHMtycoavrqG52VQ=="}]},"maintainers":[{"name":"cbartram","email":"cbartram3@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nanoleaf-layout-1.2.0.tgz_1499361771446_0.11176702962256968"},"directories":{}},"2.0.0":{"name":"nanoleaf-layout","version":"2.0.0","description":"Uses a React Component to easily take your physical Nanoleaf layout and display in on a 2D Screen","keyword":["nanoleaf","layout","canvas","react","component"],"main":"lib/NanoleafLayout.js","author":{"name":"Christian Bartram"},"homepage":"https://github.com/cbartram/nanoleaf-layout","repository":{"type":"git","url":"git+https://github.com/cbartram/nanoleaf-layout.git"},"bugs":{"url":"https://github.com/cbartram/nanoleaf-layout/issues"},"dependencies":{"classnames":"^2.1.2","material-ui":"^0.18.5","prism":"^4.1.2","react-color":"^2.13.0","react-tap-event-plugin":"^2.0.1"},"devDependencies":{"babel-eslint":"^4.1.3","eslint":"^1.6.0","eslint-plugin-react":"^3.5.1","gulp":"^3.9.0","react":"^0.14.0","react-component-gulp-tasks":"^0.7.6","react-dom":"^0.14.0"},"peerDependencies":{"react":"^0.14.0"},"browserify-shim":{"react":"global:React"},"scripts":{"build":"gulp clean && NODE_ENV=production gulp build","examples":"gulp dev:server","lint":"eslint ./; true","prepublish":"npm run build","publish:site":"NODE_ENV=production gulp publish:examples","release":"NODE_ENV=production gulp release","start":"gulp dev","test":"echo \"no tests yet\" && exit 0","watch":"gulp watch:lib"},"keywords":["react","react-component"],"gitHead":"127330ddfcb483224656db917d05e756745ff3ee","_id":"nanoleaf-layout@2.0.0","_npmVersion":"5.0.4","_nodeVersion":"8.0.0","_npmUser":{"name":"cbartram","email":"cbartram3@gmail.com"},"dist":{"integrity":"sha512-iRFGZ3jLGoxXrh/Z8xaIxd+qvmyjSZFEv0gfZuImG5+zDu6D4fCx4mq836Yyuk5dfQniMGM0p7PJkFxTMKBZ9Q==","shasum":"58f0931cad733687954c53fcaab75bd610efde55","tarball":"https://registry.npmjs.org/nanoleaf-layout/-/nanoleaf-layout-2.0.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDv9QK6f3wtmbNHN4lfN27OeBNUbbajVaXdX3g8tMDMEwIhAKNcGC9qYDc3ri1lpFxL6WB7zpOROsLe45ZH7Kaj+bLf"}]},"maintainers":[{"name":"cbartram","email":"cbartram3@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nanoleaf-layout-2.0.0.tgz_1499560955351_0.20293972408398986"},"directories":{}},"2.0.1":{"name":"nanoleaf-layout","version":"2.0.1","description":"Uses a React Component to easily take your physical Nanoleaf layout and display in on a 2D Screen","keyword":["nanoleaf","layout","canvas","react","component"],"main":"lib/NanoleafLayout.js","author":{"name":"Christian Bartram"},"homepage":"https://github.com/cbartram/nanoleaf-layout","repository":{"type":"git","url":"git+https://github.com/cbartram/nanoleaf-layout.git"},"bugs":{"url":"https://github.com/cbartram/nanoleaf-layout/issues"},"dependencies":{"classnames":"^2.1.2","material-ui":"^0.18.5","mobx":"^3.2.0","mobx-react":"^4.2.2","prism":"^4.1.2","react-color":"^2.13.0","react-tap-event-plugin":"^2.0.1"},"devDependencies":{"babel-eslint":"^4.1.3","eslint":"^1.6.0","eslint-plugin-react":"^3.5.1","gulp":"^3.9.0","react":"^0.14.0","react-component-gulp-tasks":"^0.7.6","react-dom":"^0.14.0"},"peerDependencies":{"react":"^0.14.0"},"browserify-shim":{"react":"global:React"},"scripts":{"build":"gulp clean && NODE_ENV=production gulp build","examples":"gulp dev:server","lint":"eslint ./; true","prepublish":"npm run build","publish:site":"NODE_ENV=production gulp publish:examples","release":"NODE_ENV=production gulp release","start":"gulp dev","test":"echo \"no tests yet\" && exit 0","watch":"gulp watch:lib"},"keywords":["react","react-component"],"gitHead":"25b652d0e4f18c81c1dd2a531020dabba5ae2de3","_id":"nanoleaf-layout@2.0.1","_npmVersion":"5.0.3","_nodeVersion":"6.10.1","_npmUser":{"name":"cbartram","email":"cbartram3@gmail.com"},"dist":{"integrity":"sha512-3E2rEgqeIaXapioH5AtLk9EDalc5bjKQrFI024T2ffAgWqDh3k963p6Ym/IMdWEw8chIH/R3D3jP5bXb74fEuA==","shasum":"249497f807336a9706f4d15c42c6de0428a12e38","tarball":"https://registry.npmjs.org/nanoleaf-layout/-/nanoleaf-layout-2.0.1.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBi/vPC6DtC76DCsIPPTWrtVbTTHHv5n6c8VLHkqF5dMAiEAlolYA+O39pY6Fs2rrwKTWwSnfkQ4v5+Op9/bLftYxdo="}]},"maintainers":[{"name":"cbartram","email":"cbartram3@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nanoleaf-layout-2.0.1.tgz_1499711433359_0.7851752208080143"},"directories":{}},"2.0.4":{"name":"nanoleaf-layout","version":"2.0.4","description":"Uses a React Component to easily take your physical Nanoleaf layout and display in on a 2D Screen","keyword":["nanoleaf","layout","canvas","react","component"],"main":"lib/NanoleafLayout.js","author":{"name":"Christian Bartram"},"homepage":"https://github.com/cbartram/nanoleaf-layout","repository":{"type":"git","url":"git+https://github.com/cbartram/nanoleaf-layout.git"},"bugs":{"url":"https://github.com/cbartram/nanoleaf-layout/issues"},"dependencies":{"classnames":"^2.1.2","material-ui":"^0.18.5","mobx":"^3.2.0","mobx-react":"^4.2.2","prettier":"^1.5.2","prism":"^4.1.2","react-color":"^2.13.0","react-tap-event-plugin":"^2.0.1","prop-types":"latest"},"devDependencies":{"babel-eslint":"^4.1.3","eslint":"^1.6.0","eslint-plugin-react":"^3.5.1","gulp":"^3.9.0","jest":"^20.0.4","react":"^0.14.0","react-component-gulp-tasks":"^0.7.6","react-dom":"^0.14.0","react-test-renderer":"^15.6.1"},"peerDependencies":{"react":"^0.14.0"},"browserify-shim":{"react":"global:React"},"scripts":{"build":"gulp clean && NODE_ENV=production gulp build","examples":"gulp dev:server","lint":"eslint ./; true","prepublish":"npm run build","publish:site":"NODE_ENV=production gulp publish:examples","release":"NODE_ENV=production gulp release","start":"gulp dev","test":"jest","watch":"gulp watch:lib"},"keywords":["react","react-component"],"gitHead":"f940bf0f028c309d0fec5b172184a2b6e1d76d80","_id":"nanoleaf-layout@2.0.4","_npmVersion":"5.0.3","_nodeVersion":"6.10.1","_npmUser":{"name":"cbartram","email":"cbartram3@gmail.com"},"dist":{"integrity":"sha512-tsQmA2O+hasf34JidoSmoc91THiB+1xXXGOZka5KJoI5mn9mrS55+6pXRquOYXCR9L9mhHf+NDBlKdXxil/8MA==","shasum":"2ec2a570bc0d2c96418ea5cba39c0c463d10195c","tarball":"https://registry.npmjs.org/nanoleaf-layout/-/nanoleaf-layout-2.0.4.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIG5EXKduJpv2w1aeMOxfX8osFO4uVZhf6601jLHRscCGAiEAlUja6e+8wGAlnF6w4BG8KNp3MvTVFhkohV3jHD7jt9Y="}]},"maintainers":[{"name":"cbartram","email":"cbartram3@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nanoleaf-layout-2.0.4.tgz_1499797340090_0.36309710680507123"},"directories":{}},"2.1.0":{"name":"nanoleaf-layout","version":"2.1.0","description":"Uses a React Component to easily take your physical Nanoleaf layout and display in on a 2D Screen","keyword":["nanoleaf","layout","canvas","react","component"],"scripts":{"build":"nwb build-react-component","clean":"nwb clean-app","start":"nwb serve-react-app demo/src","test":"jest && codecov -t 4489cd0c-0404-431a-bb3e-13d09ad89245","test:coverage":"jest --coverage && codecov -t 4489cd0c-0404-431a-bb3e-13d09ad89245","test:watch":"nwb test-react --server"},"dependencies":{"material-ui":"^0.18.6","prop-types":"latest","react":"^15.6.1","react-color":"^2.13.1","react-dom":"^15.6.1","react-tap-event-plugin":"^2.0.1","react-test-renderer":"^15.6.1","save-dev":"^2.0.0"},"devDependencies":{"enzyme":"^2.9.1","jest":"^20.0.4","nwb":"0.18.x","react-addons-test-utils":"^15.6.0"},"keywords":["react","react-component","nanoleaf","layout","cartesian","javascript","babel","webpack"],"homepage":"https://github.com/cbartram/nanoleaf-layout","repository":{"type":"git","url":"git+https://github.com/cbartram/nanoleaf-layout.git"},"bugs":{"url":"https://github.com/cbartram/nanoleaf-layout/issues"},"author":{"name":"Christian Bartram"},"license":"MIT","gitHead":"f79bf2d9957093240fbbdd81b1523689f836e098","_id":"nanoleaf-layout@2.1.0","_npmVersion":"5.0.3","_nodeVersion":"6.10.1","_npmUser":{"name":"cbartram","email":"cbartram3@gmail.com"},"dist":{"integrity":"sha512-P1T4LAh5lECIfWjYMZ31/HMWbOWIhfSv8bW6P7h0cWMgtUhDDnSi/ozqIYbtog889Dj8wnxVilGeDYCUZhDhbg==","shasum":"acd3fc50ecaa2c45d1ab6d1374e0626733fd4f10","tarball":"https://registry.npmjs.org/nanoleaf-layout/-/nanoleaf-layout-2.1.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDxV8+TiRP+l+nanGWoSHnD6HwcbiS954+mHmS0VcDAhAIgaIVi3N9zdg4DI1mUw6o4JERoBdDgAb97dmxOlazhnGE="}]},"maintainers":[{"name":"cbartram","email":"cbartram3@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nanoleaf-layout-2.1.0.tgz_1499876602941_0.8265804548282176"},"directories":{}},"2.1.1":{"name":"nanoleaf-layout","version":"2.1.1","description":"Uses a React Component to easily take your physical Nanoleaf layout and display in on a 2D Screen","keyword":["nanoleaf","layout","canvas","react","component"],"scripts":{"build":"nwb build-react-component","clean":"nwb clean-app","start":"nwb serve-react-app demo/src","test":"jest && codecov -t 4489cd0c-0404-431a-bb3e-13d09ad89245","test:coverage":"jest --coverage && codecov -t 4489cd0c-0404-431a-bb3e-13d09ad89245","test:watch":"nwb test-react --server"},"dependencies":{"material-ui":"^0.18.6","prop-types":"^15.5.10","react":"^15.6.1","react-color":"^2.13.1","react-dom":"^15.6.1","react-tap-event-plugin":"^2.0.1","react-test-renderer":"^15.6.1","save-dev":"^2.0.0"},"devDependencies":{"babel-cli":"^6.24.1","babel-jest":"^20.0.3","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","enzyme":"^2.9.1","eslint-plugin-prettier":"^2.1.2","jest":"^20.0.4","nwb":"0.18.x","prettier":"^1.5.2","react-addons-test-utils":"^15.6.0","regenerator-runtime":"^0.10.5"},"keywords":["react","react-component","nanoleaf","layout","cartesian","javascript","babel","webpack"],"babel":{"presets":["es2015","react"]},"files":["lib","es","umd"],"homepage":"https://github.com/cbartram/nanoleaf-layout","repository":{"type":"git","url":"git+https://github.com/cbartram/nanoleaf-layout.git"},"bugs":{"url":"https://github.com/cbartram/nanoleaf-layout/issues"},"author":{"name":"Christian Bartram"},"license":"MIT","gitHead":"154383903ec31399c562a327aa790d94332f392f","_id":"nanoleaf-layout@2.1.1","_npmVersion":"5.0.3","_nodeVersion":"6.10.1","_npmUser":{"name":"cbartram","email":"cbartram3@gmail.com"},"dist":{"integrity":"sha512-7K/h5GssVq3L8OsNkRhPBvcB7v/5q5ufG6cvpNIvHBZqgh7GWxva5vR3KlSapomdyTS/u7KPo9mnCZ1su2qdyQ==","shasum":"0b2cbff9c4f8b2fc6af1e1033a2db2f45aecd110","tarball":"https://registry.npmjs.org/nanoleaf-layout/-/nanoleaf-layout-2.1.1.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCHoUQoRNwUaDBugvGG+EIXtYqoiBJ0KSknMFoo+DDs3wIhAN9kRaUTEABfXeJfdyOKNY3tB2dZgZFxQUbjiZQZgajM"}]},"maintainers":[{"name":"cbartram","email":"cbartram3@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nanoleaf-layout-2.1.1.tgz_1499952715124_0.19110210053622723"},"directories":{}},"2.1.2":{"name":"nanoleaf-layout","version":"2.1.2","description":"Uses a React Component to easily take your physical Nanoleaf layout and display in on a 2D Screen","keyword":["nanoleaf","layout","canvas","react","component"],"scripts":{"build":"nwb build-react-component","clean":"nwb clean-app","start":"nwb serve-react-app demo/src","test":"jest","test:coverage":"jest --coverage && codecov -t 4489cd0c-0404-431a-bb3e-13d09ad89245","test:watch":"nwb test-react --server"},"dependencies":{"material-ui":"^0.18.6","prop-types":"^15.5.10","react":"^15.6.1","react-color":"^2.13.1","react-dom":"^15.6.1","react-tap-event-plugin":"^2.0.1","react-test-renderer":"^15.6.1","save-dev":"^2.0.0"},"devDependencies":{"babel-cli":"^6.24.1","babel-jest":"^20.0.3","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","enzyme":"^2.9.1","eslint-plugin-prettier":"^2.1.2","jest":"^20.0.4","now":"^7.2.4","nwb":"0.18.x","prettier":"^1.5.2","react-addons-test-utils":"^15.6.0","regenerator-runtime":"^0.10.5"},"keywords":["react","react-component","nanoleaf","layout","cartesian","javascript","babel","webpack"],"babel":{"presets":["es2015","react"]},"files":["lib","es","umd"],"homepage":"https://github.com/cbartram/nanoleaf-layout","repository":{"type":"git","url":"git+https://github.com/cbartram/nanoleaf-layout.git"},"bugs":{"url":"https://github.com/cbartram/nanoleaf-layout/issues"},"author":{"name":"Christian Bartram"},"license":"MIT","gitHead":"a1cbfd855257adc5c740f7f3dfb1c77b9d3ca438","_id":"nanoleaf-layout@2.1.2","_npmVersion":"5.0.3","_nodeVersion":"6.10.1","_npmUser":{"name":"cbartram","email":"cbartram3@gmail.com"},"dist":{"integrity":"sha512-c8MQJ/0P85BA9lTpjelyauqERmJ3GtGmxfGVaRMHd6rLI5lb+VS1Yvcl2zTdYWjM9ft2YTNxW2Ezycn8qAgKcA==","shasum":"1dd5014663d5100245c1530fb7ee4b5ca7a3fb39","tarball":"https://registry.npmjs.org/nanoleaf-layout/-/nanoleaf-layout-2.1.2.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGx08W+TwnXjqFKSREapjTDdnQMWb6nf5PWib2TqLuV4AiEAqMq2HU76e0Mx8g8eq3KuNnEPsEsgYbKWRauoldL6+Sk="}]},"maintainers":[{"name":"cbartram","email":"cbartram3@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nanoleaf-layout-2.1.2.tgz_1500403734882_0.17636696924455464"},"directories":{}},"2.1.3":{"name":"nanoleaf-layout","version":"2.1.3","description":"Uses a React Component to easily take your physical Nanoleaf layout and display in on a 2D Screen","keyword":["nanoleaf","layout","canvas","react","component"],"scripts":{"build":"nwb build-react-component","clean":"nwb clean-app","start":"nwb serve-react-app demo/src","test":"jest","test:coverage":"jest --coverage && codecov -t 4489cd0c-0404-431a-bb3e-13d09ad89245","test:watch":"nwb test-react --server"},"dependencies":{"material-ui":"^0.18.6","prop-types":"^15.5.10","react":"^15.6.1","react-color":"^2.13.1","react-dom":"^15.6.1","react-tap-event-plugin":"^2.0.1","react-test-renderer":"^15.6.1","save-dev":"^2.0.0"},"devDependencies":{"babel-cli":"^6.24.1","babel-jest":"^20.0.3","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","enzyme":"^2.9.1","eslint-plugin-prettier":"^2.1.2","jest":"^20.0.4","now":"^7.2.4","nwb":"0.18.x","prettier":"^1.5.2","react-addons-test-utils":"^15.6.0","regenerator-runtime":"^0.10.5"},"keywords":["react","react-component","nanoleaf","layout","cartesian","javascript","babel","webpack"],"babel":{"presets":["es2015","react"]},"files":["lib","es","umd"],"homepage":"https://github.com/cbartram/nanoleaf-layout","repository":{"type":"git","url":"git+https://github.com/cbartram/nanoleaf-layout.git"},"bugs":{"url":"https://github.com/cbartram/nanoleaf-layout/issues"},"author":{"name":"Christian Bartram"},"license":"MIT","gitHead":"cd0cf72528e448917f417da54ef17a0cdbdcc547","_id":"nanoleaf-layout@2.1.3","_npmVersion":"5.0.3","_nodeVersion":"6.10.1","_npmUser":{"name":"cbartram","email":"cbartram3@gmail.com"},"dist":{"integrity":"sha512-s4HWkLeg6czLthUKPtNPn2VIXbgG78uE8DmJh7yWAwkksfWdG7w811YrsnMHNc1ag3dOX7xtXl7r0uHrtWscyw==","shasum":"b18ff32818985193553ea14b78505088e9721816","tarball":"https://registry.npmjs.org/nanoleaf-layout/-/nanoleaf-layout-2.1.3.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDsXiXKXPH8iq9TaauCCIv7141ibqiE6EkSF7y9NWFpsAIhAKQOgJxahRccG3aM/2fT5lQ9jH+rnegO8qoafHi8JIWa"}]},"maintainers":[{"name":"cbartram","email":"cbartram3@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nanoleaf-layout-2.1.3.tgz_1500404103785_0.4054707055911422"},"directories":{}},"2.1.4":{"name":"nanoleaf-layout","version":"2.1.4","description":"Uses a React Component to easily take your physical Nanoleaf layout and display in on a 2D Screen","keyword":["nanoleaf","layout","canvas","react","component"],"scripts":{"build":"nwb build-react-component","clean":"nwb clean-app","start":"nwb serve-react-app demo/src","test":"jest","test:coverage":"jest --coverage && codecov -t 4489cd0c-0404-431a-bb3e-13d09ad89245","test:watch":"nwb test-react --server"},"dependencies":{"material-ui":"^0.18.6","prop-types":"^15.5.10","react":"^15.6.1","react-color":"^2.13.1","react-dom":"^15.6.1","react-tap-event-plugin":"^2.0.1","react-test-renderer":"^15.6.1","save-dev":"^2.0.0"},"devDependencies":{"babel-cli":"^6.24.1","babel-jest":"^20.0.3","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","enzyme":"^2.9.1","eslint-plugin-prettier":"^2.1.2","jest":"^20.0.4","now":"^7.2.4","nwb":"0.18.x","prettier":"^1.5.2","react-addons-test-utils":"^15.6.0","regenerator-runtime":"^0.10.5"},"keywords":["react","react-component","nanoleaf","layout","cartesian","javascript","babel","webpack"],"babel":{"presets":["es2015","react"]},"files":["lib","es","umd"],"homepage":"https://github.com/cbartram/nanoleaf-layout","repository":{"type":"git","url":"git+https://github.com/cbartram/nanoleaf-layout.git"},"bugs":{"url":"https://github.com/cbartram/nanoleaf-layout/issues"},"author":{"name":"Christian Bartram"},"license":"MIT","gitHead":"4ef461c615df193a943dd4f11a4050fe3c94b1ab","_id":"nanoleaf-layout@2.1.4","_shasum":"b3d60b60e5987a6572c33b464b08643bf6281ca0","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.11.1","_npmUser":{"name":"cbartram","email":"cbartram3@gmail.com"},"dist":{"shasum":"b3d60b60e5987a6572c33b464b08643bf6281ca0","tarball":"https://registry.npmjs.org/nanoleaf-layout/-/nanoleaf-layout-2.1.4.tgz","integrity":"sha512-wBsaPom4DqUtAoynxKFrTcqy6S8W2iyo3tZL81a9LZgBEJdlvCMEAvKRQuMC8J+BMNowGYNvd7bXrbT9wNoGtg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDexaQPrgpC9nYKPopL8xB02sp6Sc3hzAR/v9faYMZY5QIgaTw5Zxm5WBo7X0d3bCFiADYRI8bL/Di+uyVZg9eswbo="}]},"maintainers":[{"name":"cbartram","email":"cbartram3@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nanoleaf-layout-2.1.4.tgz_1500476454555_0.6241739038378"},"directories":{}},"2.1.5":{"name":"nanoleaf-layout","version":"2.1.5","description":"Uses a React Component to easily take your physical Nanoleaf layout and display in on a 2D Screen","keyword":["nanoleaf","layout","canvas","react","component"],"scripts":{"build":"nwb build-react-component","clean":"nwb clean-app","start":"nwb serve-react-app demo/src","test":"jest","test:coverage":"jest --coverage && codecov -t 4489cd0c-0404-431a-bb3e-13d09ad89245","test:watch":"nwb test-react --server"},"dependencies":{"material-ui":"^0.18.6","prop-types":"^15.5.10","react":"^15.6.1","react-color":"^2.13.1","react-dom":"^15.6.1","react-tap-event-plugin":"^2.0.1","react-test-renderer":"^15.6.1","save-dev":"^2.0.0"},"devDependencies":{"babel-cli":"^6.24.1","babel-jest":"^20.0.3","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","enzyme":"^2.9.1","eslint-plugin-prettier":"^2.1.2","jest":"^20.0.4","now":"^7.2.4","nwb":"0.18.x","prettier":"^1.5.2","react-addons-test-utils":"^15.6.0","regenerator-runtime":"^0.10.5"},"keywords":["react","react-component","nanoleaf","layout","cartesian","javascript","babel","webpack"],"babel":{"presets":["es2015","react"]},"files":["lib","es","umd"],"homepage":"https://github.com/cbartram/nanoleaf-layout","repository":{"type":"git","url":"git+https://github.com/cbartram/nanoleaf-layout.git"},"bugs":{"url":"https://github.com/cbartram/nanoleaf-layout/issues"},"author":{"name":"Christian Bartram"},"license":"MIT","gitHead":"8146ff91c2b21eeafb9876a18a24d28459b8b233","_id":"nanoleaf-layout@2.1.5","_npmVersion":"5.0.4","_nodeVersion":"8.0.0","_npmUser":{"name":"cbartram","email":"cbartram3@gmail.com"},"dist":{"integrity":"sha512-FYZGU8DsZizf/cVwi4exjN+8laZJZWrova1ko9PBl8sxmtkMyliDJeT0bFHXdbw/JrUv2IgqZ57YcASzryl+fQ==","shasum":"4ec6a95d6e38620dcf1e34c7d81738558ab43819","tarball":"https://registry.npmjs.org/nanoleaf-layout/-/nanoleaf-layout-2.1.5.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC8jdqD7Y0RbdoXUH0UsHR8mo9K2f9DHUHEwbVoitzCOwIgEVNb1PTWrnkcQ/1JjVurVHZWxthKXESJCTRmhyVa7vg="}]},"maintainers":[{"name":"cbartram","email":"cbartram3@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nanoleaf-layout-2.1.5.tgz_1500596979236_0.30237773968838155"},"directories":{}},"2.1.6":{"name":"nanoleaf-layout","version":"2.1.6","description":"Uses a React Component to easily take your physical Nanoleaf layout and display in on a 2D Screen","keyword":["nanoleaf","layout","canvas","react","component"],"scripts":{"build":"nwb build-react-component","clean":"nwb clean-app","start":"nwb serve-react-app demo/src","test":"jest","test:coverage":"jest --coverage && codecov -t 4489cd0c-0404-431a-bb3e-13d09ad89245","test:watch":"nwb test-react --server"},"dependencies":{"material-ui":"^0.18.6","prop-types":"^15.5.10","react":"^15.6.1","react-color":"^2.13.1","react-dom":"^15.6.1","react-tap-event-plugin":"^2.0.1","react-test-renderer":"^15.6.1","save-dev":"^2.0.0"},"devDependencies":{"babel-cli":"^6.24.1","babel-jest":"^20.0.3","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","enzyme":"^2.9.1","eslint-plugin-prettier":"^2.1.2","jest":"^20.0.4","now":"^7.2.4","nwb":"0.18.x","prettier":"^1.5.2","react-addons-test-utils":"^15.6.0","regenerator-runtime":"^0.10.5"},"keywords":["react","react-component","nanoleaf","layout","cartesian","javascript","babel","webpack"],"babel":{"presets":["es2015","react"]},"files":["lib","es","umd"],"homepage":"https://github.com/cbartram/nanoleaf-layout","repository":{"type":"git","url":"git+https://github.com/cbartram/nanoleaf-layout.git"},"bugs":{"url":"https://github.com/cbartram/nanoleaf-layout/issues"},"author":{"name":"Christian Bartram"},"license":"MIT","gitHead":"3204439df63fe409ae7032a936fe8655f091dc3e","_id":"nanoleaf-layout@2.1.6","_npmVersion":"5.0.4","_nodeVersion":"8.0.0","_npmUser":{"name":"cbartram","email":"cbartram3@gmail.com"},"dist":{"integrity":"sha512-L0MpEiF0XtY7yr4TamUpPrxLz8TfsqwKeBYB4Yu9d04t1IB9bZ5oP5fOwPT7HxVPcNLvIh6XYgFj8oIgrFB15g==","shasum":"7e30ebbae94d666e9e334202a6738f4a18292903","tarball":"https://registry.npmjs.org/nanoleaf-layout/-/nanoleaf-layout-2.1.6.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFCWZDWyO4QsJQq6pLXtjZ9t14+JSMnbJwRggVrn0431AiEArnY67fLIbseLf2EVLvzx1yVQsFNJVJVji8roSw54rO8="}]},"maintainers":[{"name":"cbartram","email":"cbartram3@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nanoleaf-layout-2.1.6.tgz_1500598350020_0.8458982072770596"},"directories":{}},"2.1.7":{"name":"nanoleaf-layout","version":"2.1.7","description":"Uses a React Component to easily take your physical Nanoleaf layout and display in on a 2D Screen","keyword":["nanoleaf","layout","canvas","react","component"],"scripts":{"build":"nwb build-react-component","clean":"nwb clean-app","start":"nwb serve-react-app demo/src","test":"jest","test:coverage":"jest --coverage && codecov -t 4489cd0c-0404-431a-bb3e-13d09ad89245","test:watch":"nwb test-react --server"},"dependencies":{"bootstrap":"^3.3.7","lodash":"^4.17.4","material-ui":"^0.18.6","nwb":"^0.18.8","prop-types":"^15.5.10","react":"^15.6.1","react-color":"^2.13.1","react-dom":"^15.6.1","react-highlight":"^0.10.0","react-live":"^1.7.0","react-router":"^4.1.2","react-router-dom":"^4.1.2","react-tap-event-plugin":"^2.0.1","react-test-renderer":"^15.6.1"},"devDependencies":{"babel-cli":"^6.24.1","babel-jest":"^20.0.3","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","enzyme":"^2.9.1","eslint-plugin-prettier":"^2.1.2","jest":"^20.0.4","now":"^7.2.4","nwb":"0.18.x","prettier":"^1.5.2","react-addons-test-utils":"^15.6.0","regenerator-runtime":"^0.10.5"},"keywords":["react","react-component","nanoleaf","layout","cartesian","javascript","babel","webpack"],"babel":{"presets":["es2015","react"]},"files":["lib","es","umd"],"homepage":"https://github.com/cbartram/nanoleaf-layout","repository":{"type":"git","url":"git+https://github.com/cbartram/nanoleaf-layout.git"},"bugs":{"url":"https://github.com/cbartram/nanoleaf-layout/issues"},"author":{"name":"Christian Bartram"},"license":"MIT","gitHead":"81133fd5301594566697724a84ed38ca5a4b60f2","_id":"nanoleaf-layout@2.1.7","_shasum":"ab652181c16409fdd9c19c6396c77ac329eac70c","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.11.1","_npmUser":{"name":"cbartram","email":"cbartram3@gmail.com"},"dist":{"shasum":"ab652181c16409fdd9c19c6396c77ac329eac70c","tarball":"https://registry.npmjs.org/nanoleaf-layout/-/nanoleaf-layout-2.1.7.tgz","integrity":"sha512-FFoTk9lYv1nUltZse3oIABA1yuD/y+aubHjBQ5r1KQwAyJGAPVZfL43RoBisethAyKMsuQbTVcOse+A9+Rn8hA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBnJN7e9Zow4LyyYgHFCF2taAEWEXjiOYfAOm/iGj8vkAiEAxrTpyqtvf6IWyAAQhCfs79g7pknzm1EX88Fn2zlYG5A="}]},"maintainers":[{"name":"cbartram","email":"cbartram3@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nanoleaf-layout-2.1.7.tgz_1501097235816_0.6639033204410225"},"directories":{}},"2.1.8":{"name":"nanoleaf-layout","version":"2.1.8","description":"Uses a React Component to easily take your physical Nanoleaf layout and display in on a 2D Screen","keyword":["nanoleaf","layout","canvas","react","component"],"scripts":{"build":"nwb build-react-component","clean":"nwb clean-app","start":"nwb serve-react-app demo/src","test":"jest","test:coverage":"jest --coverage && codecov -t 4489cd0c-0404-431a-bb3e-13d09ad89245","test:watch":"nwb test-react --server"},"dependencies":{"bootstrap":"^3.3.7","lodash":"^4.17.4","material-ui":"^0.18.6","nwb":"^0.18.8","prop-types":"^15.5.10","react":"^15.6.1","react-color":"^2.13.1","react-dom":"^15.6.1","react-highlight":"^0.10.0","react-live":"^1.7.0","react-router":"^4.1.2","react-router-dom":"^4.1.2","react-tap-event-plugin":"^2.0.1","react-test-renderer":"^15.6.1"},"devDependencies":{"babel-cli":"^6.24.1","babel-jest":"^20.0.3","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","enzyme":"^2.9.1","eslint-plugin-prettier":"^2.1.2","jest":"^20.0.4","now":"^7.2.4","nwb":"0.18.x","prettier":"^1.5.2","react-addons-test-utils":"^15.6.0","regenerator-runtime":"^0.10.5"},"keywords":["react","react-component","nanoleaf","layout","cartesian","javascript","babel","webpack"],"babel":{"presets":["es2015","react"]},"files":["lib","es","umd"],"homepage":"https://github.com/cbartram/nanoleaf-layout","repository":{"type":"git","url":"git+https://github.com/cbartram/nanoleaf-layout.git"},"bugs":{"url":"https://github.com/cbartram/nanoleaf-layout/issues"},"author":{"name":"Christian Bartram"},"license":"MIT","gitHead":"93cb388640b99b5e5c6a743a029b3806f15ae709","_id":"nanoleaf-layout@2.1.8","_shasum":"119754902f75fc27db1c67ccbb3e94ab136a8ba4","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.11.1","_npmUser":{"name":"cbartram","email":"cbartram3@gmail.com"},"dist":{"shasum":"119754902f75fc27db1c67ccbb3e94ab136a8ba4","tarball":"https://registry.npmjs.org/nanoleaf-layout/-/nanoleaf-layout-2.1.8.tgz","integrity":"sha512-ZXuGGdBHvYskoYqOKfe8wZJLdQ4zs+d8p46rBc7Xn5QjRTH/50Xls8dJUv0VROEaitmn6klQDpBq5JrWq3kvrQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCXiSECUQnFRX9RbWPylVhF82ULg4IxMXPOfI665Xd+kwIgMhTv+v7gJqZUYfDERu3bqJANUNpqN5sLci+s8/fTeoA="}]},"maintainers":[{"name":"cbartram","email":"cbartram3@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nanoleaf-layout-2.1.8.tgz_1507551461324_0.16331086354330182"},"directories":{}},"2.1.9":{"name":"nanoleaf-layout","version":"2.1.9","description":"Uses a React Component to easily take your physical Nanoleaf layout and display in on a 2D Screen","keyword":["nanoleaf","layout","canvas","react","component"],"scripts":{"build":"nwb build-react-component","clean":"nwb clean-app","start":"nwb serve-react-app demo/src","test":"jest","test:coverage":"jest --coverage && codecov -t 4489cd0c-0404-431a-bb3e-13d09ad89245","test:watch":"nwb test-react --server"},"dependencies":{"bootstrap":"^3.3.7","lodash":"^4.17.4","material-ui":"^0.18.6","nwb":"^0.18.8","prop-types":"^15.5.10","react":"^15.6.1","react-color":"^2.13.1","react-dom":"^15.6.1","react-highlight":"^0.10.0","react-live":"^1.7.0","react-router":"^4.1.2","react-router-dom":"^4.1.2","react-tap-event-plugin":"^2.0.1","react-test-renderer":"^15.6.1"},"devDependencies":{"babel-cli":"^6.24.1","babel-jest":"^20.0.3","babel-preset-es2015":"^6.24.1","babel-preset-react":"^6.24.1","enzyme":"^2.9.1","eslint-plugin-prettier":"^2.1.2","jest":"^20.0.4","now":"^7.2.4","nwb":"0.18.x","prettier":"^1.5.2","react-addons-test-utils":"^15.6.0","regenerator-runtime":"^0.10.5"},"keywords":["react","react-component","nanoleaf","layout","cartesian","javascript","babel","webpack"],"babel":{"presets":["es2015","react"]},"files":["lib","es","umd"],"homepage":"https://github.com/cbartram/nanoleaf-layout","repository":{"type":"git","url":"git+https://github.com/cbartram/nanoleaf-layout.git"},"bugs":{"url":"https://github.com/cbartram/nanoleaf-layout/issues"},"author":{"name":"Christian Bartram"},"license":"MIT","gitHead":"23ca600d555df8a5989aa7d29afb27104905d563","_id":"nanoleaf-layout@2.1.9","_shasum":"e18672c9f86fb852fb540fe848232827f0d60714","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.11.1","_npmUser":{"name":"cbartram","email":"cbartram3@gmail.com"},"dist":{"shasum":"e18672c9f86fb852fb540fe848232827f0d60714","tarball":"https://registry.npmjs.org/nanoleaf-layout/-/nanoleaf-layout-2.1.9.tgz","integrity":"sha512-H1ZID+3yNsivE11OIGeEyeC19Vxbw+b0uQB8T8OM6WUxfQAMZoRqlbyeThMPZpyqaI6x8ZSlH8LJKMxbMuhQjQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCbiK0xt4wktlq04cduIp458Lx7AZ/qEBzIpQSTgzzyGgIhAMPQVEQf74xxmJbDVUUNHPUz0sr/RJwvxElAZKym+OJX"}]},"maintainers":[{"name":"cbartram","email":"cbartram3@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nanoleaf-layout-2.1.9.tgz_1507901769883_0.0746911889873445"},"directories":{}},"3.0.0":{"name":"nanoleaf-layout","version":"3.0.0","description":"Uses a React Component to easily take your physical Nanoleaf layout and display in on a 2D Screen","keyword":["nanoleaf","layout","canvas","react","component"],"scripts":{"build":"webpack --config ./webpack.config.js --mode development","test":"mocha ./test/* --timeout 4000 --exit --require @babel/register","test:coverage":"npm run test && codecov -t 4489cd0c-0404-431a-bb3e-13d09ad89245"},"dependencies":{"prop-types":"^15.5.10"},"devDependencies":{"@babel/core":"^7.2.0","@babel/preset-env":"^7.2.0","@babel/preset-react":"^7.0.0","@babel/register":"^7.0.0","babel-loader":"^8.0.4","chai":"^4.2.0","coveralls":"^3.0.2","enzyme":"^3.8.0","enzyme-adapter-react-16":"^1.7.1","eslint":"^5.10.0","eslint-config-airbnb":"^17.1.0","eslint-plugin-import":"^2.14.0","eslint-plugin-jsx-a11y":"^6.1.2","eslint-plugin-prettier":"^2.7.0","eslint-plugin-react":"^7.11.1","jsdom":"13.0.0","jsdom-global":"3.0.2","mocha":"^5.2.0","mocha-lcov-reporter":"^1.3.0","prettier":"^1.15.3","react":"^16.6.3","react-dom":"^16.6.3","regenerator-runtime":"^0.10.5","sinon":"^7.2.2","webpack":"^4.27.1","webpack-cli":"^3.1.2"},"keywords":["react","react-component","nanoleaf","layout","cartesian","javascript","babel","webpack"],"eslintConfig":{"extends":"airbnb"},"homepage":"https://github.com/cbartram/nanoleaf-layout","repository":{"type":"git","url":"git+https://github.com/cbartram/nanoleaf-layout.git"},"bugs":{"url":"https://github.com/cbartram/nanoleaf-layout/issues"},"author":{"name":"Christian Bartram"},"license":"MIT","gitHead":"e7b0abc4108af128a2f118ec941ab81b46527462","_id":"nanoleaf-layout@3.0.0","_npmVersion":"6.4.1","_nodeVersion":"8.0.0","_npmUser":{"name":"cbartram","email":"cbartram3@gmail.com"},"dist":{"integrity":"sha512-yNGkPjTdGGuHtS1yf7hVIgvL8QPn1reAV+pBt/dgChtDr9suFZ73IbsMx2TSPSCBpcBIoIUdUA7g+qiKzvDCzw==","shasum":"1b4cd4db6752b617653ba719cf449f943074bc30","tarball":"https://registry.npmjs.org/nanoleaf-layout/-/nanoleaf-layout-3.0.0.tgz","fileCount":4,"unpackedSize":143526,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcFoluCRA9TVsSAnZWagAAAqYP/jXSgYBkhK5SGc6un+wN\nna6DKXb96WlDpBkq3P19dRf+z7PvN3CnR13PWI+4QI/vNE1G1+XLelP6pwIW\n502kTGN57FM/+DGDWVkqbDDsoeeiewljUmIzsR12MdZBA4uM0oGvaGok5afK\n24bbzKsqHbRhE+VP9Ts2JUJpMuxJBdXmDgnNAPLPuHCD7GZmxVhNIh2ThruT\n9MD8mPyvTJLeP+p6Mxgc++C4wkkVjipVHdIHznyfWE+/eZXOFK+iUoo8TkJH\nkjJJmx25K5rDc0usCIU4oO2FGQvCZPknmkGqqkTWQOG7kXCS8/JvUgnlxkne\nK0jg+0WK4fDtIpZMydkH3fClyFupgMqjbqW8S5AtwVZRJOmTSMSgfc3KgEzx\ndulU3EdKnWWXXBtfH0aRW4RQr6A9YjJLzm/1UAoaA9ujxkgB9p7nr6r9kwkz\nAtN3F250u8LjqjYwgeIk928xQp+zXuQnV75J4tmNx707SML7FjtBr+3vJ0YC\nkmdU0FAxPR5HaQCCn15ZZwvhM0iR0kXtKojb1hAOX+t3Sx4WmH7gP6FspMZf\nqPeoJVxVOl3ME06YhHgwVE+NH9c9ebb12qj13CCYDTO6FlUr+7ASbRdHjuez\nHcjNECPoO19ldpY4TkYH9vUZTE9Ch5q81ob9r1pF+boFskPdGVaDZn3D5vRi\nxcRU\r\n=4e+Q\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAEgfjmw9CXcTGIduxnd/SqiYel3l/X7kpylV3U+Uz/pAiEAiO4arywQwZuUy3GPPf4ieBDUTFbgq3YPtyUZfhphEs4="}]},"maintainers":[{"name":"cbartram","email":"cbartram3@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nanoleaf-layout_3.0.0_1544980845928_0.8839162470888262"},"_hasShrinkwrap":false},"3.0.2":{"name":"nanoleaf-layout","version":"3.0.2","description":"Uses a React Component to easily take your physical NanoLeaf Layout and display in on a 2D Screen","keyword":["nanoleaf","layout","canvas","react","component"],"scripts":{"deploy":"VERSION_NAME=bugfix sh ./scripts/build.sh","build":"webpack --config ./webpack.config.js --mode development","test":"mocha ./test/* --timeout 4000 --exit --require @babel/register","test:coverage":"npm run test && codecov -t 4489cd0c-0404-431a-bb3e-13d09ad89245"},"dependencies":{"prop-types":"^15.5.10"},"devDependencies":{"@babel/core":"^7.2.0","@babel/preset-env":"^7.2.0","@babel/preset-react":"^7.0.0","@babel/register":"^7.0.0","babel-loader":"^8.0.4","chai":"^4.2.0","chalk":"^2.4.1","coveralls":"^3.0.2","enzyme":"^3.8.0","enzyme-adapter-react-16":"^1.7.1","eslint":"^5.10.0","eslint-config-airbnb":"^17.1.0","eslint-plugin-import":"^2.14.0","eslint-plugin-jsx-a11y":"^6.1.2","eslint-plugin-prettier":"^2.7.0","eslint-plugin-react":"^7.11.1","jsdom":"13.0.0","jsdom-global":"3.0.2","mocha":"^5.2.0","mocha-lcov-reporter":"^1.3.0","prettier":"^1.15.3","react":"^16.6.3","react-dom":"^16.6.3","regenerator-runtime":"^0.10.5","sinon":"^7.2.2","webpack":"^4.27.1","webpack-cli":"^3.1.2"},"keywords":["react","react-component","nanoleaf","layout","cartesian","javascript","babel","webpack"],"eslintConfig":{"extends":"airbnb"},"homepage":"https://cbartram.github.io/nanoleaf-layout-demo","repository":{"type":"git","url":"git+https://github.com/cbartram/nanoleaf-layout.git"},"bugs":{"url":"https://github.com/cbartram/nanoleaf-layout/issues"},"publishConfig":{"access":"public"},"author":{"name":"Christian Bartram"},"license":"MIT","gitHead":"80f5b5ebaa494bb31247b2617694a588a2e749b4","_id":"nanoleaf-layout@3.0.2","_npmVersion":"6.4.1","_nodeVersion":"8.0.0","_npmUser":{"name":"cbartram","email":"cbartram3@gmail.com"},"dist":{"integrity":"sha512-RE8jSkjY7eKotgXA21OPEQNKu369D6ol6MTYxLEcC/uZ6C86muWWal0l1rKLngJ0nmuz3IRnMoggpOB/hgk68g==","shasum":"7a0c99c9ed71f56fae4473b6a130738e7f5e6f30","tarball":"https://registry.npmjs.org/nanoleaf-layout/-/nanoleaf-layout-3.0.2.tgz","fileCount":4,"unpackedSize":143597,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcF7NmCRA9TVsSAnZWagAAbqYQAIWqK0CABm5dp8iiuVJG\nIVRdrfj1llaRHsoCcRmODclgBpwGlXryJcjgBVr5hEneavOGCCH23ayjq2++\n7acxO5+XTD6I++j5fdqggtsvzt5pfDqa2d980rLBZ/bQKYuKRbuW7DmWhivy\n9xfcb6TZYxJ4C+IjmrsTWTTE+L6N8vdE6MTG8pa1zbOWtcF1yxsbvcz32Dt+\nqpBm4D5UKdn0DK81+8SjJPjdtuTZB58ATHo4PA6VKf5FVeo3G2qAPhbhntPv\n55v/BToxOBfqb9eYGRJp2rQijRDVxPG3jTbYp/GecHnKH8j1qI8pwfEUrakQ\nODlxNzlEhbyAfeaE4D5cwFY4oDpDL40MVS7tTShJoRPz5Hu0hfCpHTnjXACy\nflUzey5i3xXS9sdXhgn5agkwAOqVS+tiiohkljt9OgJkxN2P3JP4ZqvriL6u\n6NNS/oInWGTqvE6uTiffbnXd08ocdCsbEDOubgqgXua+W8tycg1iL5jzxX+e\nSoldBXNEG3ljJRjJyDGQz90hpHCvEnFSvSGQoosrkJlfBtH/v9JdU4R4MzA+\nSbjwddkRSh0e9i1jx+VZ7VJQ1iN+u3isBmf1pwFWmd5BH21V8N80NIHb5Iiz\n4Pk7B0c4BlWH/NXnSd/ykeAgX7QMGlhZ07kK6Vi78uBvZt9ZaPNdGelifvt5\nbWN7\r\n=nPyC\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC8U0w7YVEpuJBp24kPOfHX5Apnq3l0iUuFX/IM8afsggIgWIF/uH0npUJk1awnmrUPIOXhE6HOtzfqLBsn3j0ef+I="}]},"maintainers":[{"name":"cbartram","email":"cbartram3@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nanoleaf-layout_3.0.2_1545057125839_0.4152284311993204"},"_hasShrinkwrap":false},"3.0.3":{"name":"nanoleaf-layout","version":"3.0.3","description":"Uses a React Component to easily take your physical NanoLeaf Layout and display in on a 2D Screen","keyword":["nanoleaf","layout","canvas","react","component"],"scripts":{"deploy":"VERSION_NAME=bugfix sh ./scripts/build.sh","build":"webpack --config ./webpack.config.js --mode development","test":"mocha ./test/* --timeout 4000 --exit --require @babel/register","test:coverage":"npm run test && codecov -t 4489cd0c-0404-431a-bb3e-13d09ad89245"},"dependencies":{"prop-types":"^15.5.10"},"devDependencies":{"@babel/core":"^7.2.0","@babel/preset-env":"^7.2.0","@babel/preset-react":"^7.0.0","@babel/register":"^7.0.0","babel-loader":"^8.0.4","chai":"^4.2.0","chalk":"^2.4.1","coveralls":"^3.0.2","enzyme":"^3.8.0","enzyme-adapter-react-16":"^1.7.1","eslint":"^5.10.0","eslint-config-airbnb":"^17.1.0","eslint-plugin-import":"^2.14.0","eslint-plugin-jsx-a11y":"^6.1.2","eslint-plugin-prettier":"^2.7.0","eslint-plugin-react":"^7.11.1","jsdom":"13.0.0","jsdom-global":"3.0.2","mocha":"^5.2.0","mocha-lcov-reporter":"^1.3.0","prettier":"^1.15.3","react":"^16.6.3","react-dom":"^16.6.3","regenerator-runtime":"^0.10.5","sinon":"^7.2.2","webpack":"^4.27.1","webpack-cli":"^3.1.2"},"keywords":["react","react-component","nanoleaf","layout","cartesian","javascript","babel","webpack"],"eslintConfig":{"extends":"airbnb"},"homepage":"https://cbartram.github.io/nanoleaf-layout-demo","repository":{"type":"git","url":"git+https://github.com/cbartram/nanoleaf-layout.git"},"bugs":{"url":"https://github.com/cbartram/nanoleaf-layout/issues"},"publishConfig":{"access":"public"},"author":{"name":"Christian Bartram"},"license":"MIT","gitHead":"eaf0c1120f1d4e34291b5a62912d2367b989bce8","_id":"nanoleaf-layout@3.0.3","_nodeVersion":"10.15.1","_npmVersion":"6.13.2","dist":{"integrity":"sha512-PMriTpuqKErjyXm3zamMhR1NYTljSxB0YVQ8vDkt4mFd/R4TCFgEaMw6lOw+yTLWwpvUVFJ9qt/bcBRMTDSBSQ==","shasum":"365c8f745ff530bc4152e7396d35f9bc8d6dddec","tarball":"https://registry.npmjs.org/nanoleaf-layout/-/nanoleaf-layout-3.0.3.tgz","fileCount":4,"unpackedSize":143597,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeoMIeCRA9TVsSAnZWagAAdzgP/3RwiStN3lvp9kzSEeZK\n1DLviYip1w/vgkXn0z+qE2i8Xq4Rw865yheCFX3nnqYSrbVtm2G+9nJHX8hX\ntwB0sm6g5J+tonFfO4RsvbCLwaRzIdWroo8ptPTwbTPpk/kjNP8/4Naa+epw\njGCEjDbolcJLU9YVLYN0HI07WPLC9gwB364q/qeerRiYYKOE/BDfJgBPp5IV\n/LQBrLjZFP23R/dnqWtvywjpqtxvqLdzee55ykByPshok7SkAhzGoW52kwfM\n+1lHj5VVO5fPlZd+wgpdkXdu2s3WepG+fmXx1wzOycB13twDdCw5j0+MJGwe\nxF2l7lkL0LIQyPuY/ok0d0PBrnVz/Crk/N8gb+vDi3DoXwH0Chtcs0vtpAw9\nFtsTq0EE0AdOIePPbhjwjQytXOmqMEgvHmw6Nw+b9fAjlaOuNN/hyzL7VUU8\nynULt5H9H/IuCbAzUitGaI+0I76ErRdwSmlzYW3bRnkbUtLKsGFdOUpkpQ73\nqz40Y2GFCRegV37rLOga+/fQKXigALcI3KlZ9+2zJW2I2oRUsZEi1HO9sBjy\nGC/PVw0kkWYIcTdDvM01tECHRc3LQtO5RMYS/lXH+WtByL0TnNOpdl/54dFX\ntxYT+X6YmdWyJWS2I94GfFrMcZUHKf32xsAY6z4nDAza0MepFPwdaEeQckqU\nf58y\r\n=AuWk\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCl5BKsvMpuUTw4095ttv6a9fc/c/nucif/3i3SjNSOVwIgJknl41NlMx3Kc+mvJJpl07iJoE+YNHGWfdorZcBaxyw="}]},"maintainers":[{"name":"cbartram","email":"cbartram3@gmail.com"}],"_npmUser":{"name":"cbartram","email":"cbartram3@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nanoleaf-layout_3.0.3_1587593758396_0.6784221029729405"},"_hasShrinkwrap":false}},"readme":"<p align=\"center\">\n  <img src=\"./resources/images/logo.png\" />\n</p>\n\n# Nanoleaf Layout\n\n[![Build Status](https://travis-ci.org/cbartram/nanoleaf-layout.svg?branch=development)](https://travis-ci.org/cbartram/nanoleaf-layout)\n[![NPM version](https://img.shields.io/npm/v/nanoleaf-layout.svg)](https://www.npmjs.com/package/nanoleaf-layout)\n[![Coverage Status](https://coveralls.io/repos/github/cbartram/nanoleaf-layout/badge.svg?branch=development)](https://coveralls.io/github/cbartram/nanoleaf-layout?branch=development)\n[![styled with prettier](https://img.shields.io/badge/styled_with-prettier-ff69b4.svg)](#badge)\n\n\nNanoleaf Layout is the **only** package on NPM which takes your physical Nanoleaf layout and displays\nit in any 2D application. Nanoleaf Layout will take in the confusing `X,Y` coordinates and Orientation that comes from Nanoleaf's \nOpenAPI and converts it into a useful 2D graphic visual which you can use in your React application! \n\nNanoleaf is a revolutionary smart lighting product which is fun and easy to use! It can be connected into different patterns with varying effects and colors.\nTheir development documentation can be fairly confusing for developers when it comes to how their layout data is organized so I created this library to make it easy for developers to mimic the\nNanoleaf's physical layout on a screen. Ultimately this helps open up new doors that allow users to intuitively interact with their Nanoleaf\non a computer, phone, or tablet!\n\nWith this React Component and API you can visualize colors, position, orientation and even hook into hover and click events for the Nanoleaf layout!\n\nCheck out our Demo & Examples section to see the layout in action.\n\n## Demo & Examples\n\nYou can edit the values in the panel during the demo to see how the nanoleaf layout changes and updates! \n\nLive demo: [http://cbartram.github.io/nanoleaf-layout-demo](http://cbartram.github.io/nanoleaf-layout-demo/)\n\nTo build the examples locally clone this repository, `cd` into the directory's root and simply run:\n\n```\nnpm install\n```\n\nSince this is just a react component you will need to include it in a React project before you can see its full effects. If you would\nlike to see a demo of the component in Action checkout the [Nanoleaf Layout Live Demo](http://cbartram.github.io/nanoleaf-layout-demo/)\n\n## Installation\n\nThe easiest way to use nanoleaf-layout is to install it from NPM and include it in your own React build process (using [Browserify](http://browserify.org), [Webpack](http://webpack.github.io/), etc).\n\nTo install from NPM simply run:\n\n```\nnpm install --save nanoleaf-layout\n```\n\n## Usage\n\nNanoleaf is super easy to use in any React **or non React** project!\n\nAfter installing `nanoleaf-layout` from NPM be sure to include it in your React Component by doing `import NanoleafLayout from 'nanoleaf-layout/lib/NanoleafLayout'`\n\nNow your all set to include the component in your `render()` method! Below is a **bare minimum** example of Nanoleaf in action!\n\n```jsx\nimport React, {Component} from 'react'\nimport NanoleafLayout from \"nanoleaf-layout/lib/NanoleafLayout\";\n\nlet data = {\n  sideLength: 150,\n  numPanels: 1,\n  positionData: [\n    {\n        panelId: 107,\n        x: -74,\n        y: 43,\n        o: 180\n    },\n  ],\n};\n\nexport default class App extends Component {\n  render() {\n    return (\n      <NanoleafLayout\n        data={data}\n        //Other props can go here to customize the layout!\n      />;\n    );\n  }\n}\n```\n\nThe only property which is required for Nanoleaf to function is the `data` property. The data set **must** include a property \ncalled `positionData` and its values must be an array of layout objects (even if its an empty array). The data object\ntells the nanoleaf-layout how the physical nanoleaf is positioned with a set of X,Y Coordinates and Orientation.\n\nThe best way to ensure that your `data` prop is formatted correctly is to make a REST API call to your nanoleaf requesting information\nfrom it. From here you can easily pass the data right into the React Component\n\nTo make a REST call to your nanoleaf send a GET request to `http://YOUR_NANOLEAF_IP/api/v1/YOUR_AUTH_TOKEN/`\n\n### Changing Panel and Stroke Colors\n\nIts simple to control the stroke width and color of the Nanoleaf with the `strokeWidth` and `strokeColor` but sometimes you\nmay want to control the actual color of the panels themselves.\n\nNanoleaf layout achieves this through a color property in each of the elements in the `positionData` array.\nBy default the Nanoleaf OpenAPI returns the nanoleaf layout data **without** a color property so it looks something like this\n\n```\n{\n  sideLength: 150,\n  numPanels: 9,\n  positionData: [\n    {\n      panelId: 1,\n      x: 100,\n      y: 100,\n      o: 180,\n    },\n    ...\n  ],\n};\n```\n\nBy adding a Hexadecimal color code property into the position data it will tell nanoleaf-layout to change the color of that particular panel.\nYou can do the same thing with the `strokeColor` property to control the stroke color of the panel instance.\n\nThe new positionData will look something like this\n\n```\n {\n  sideLength: 150,\n  numPanels: 9,\n  positionData: [\n    {\n      panelId: 1,\n      x: 100,\n      y: 100,\n      o: 180,\n      color: '#00ff00',\n      strokeColor: '#B2EEF0'\n    },\n    {\n      panelId: 2,\n      x: 120,\n      y: -50,\n      o: 180,\n      color: '#ffd033',\n      strokeColor: '#B2EEF0'\n    },\n  ],\n};\n```\n\nThis allows one to explicitly set and update the color of each panel quickly and easily! \nPlease see the next section titled Properties below for information about all the nanoleaf-layout properties, their default values, and their descriptions.\n\n### Properties\n\n| **Property Name** | **Property Type** | **Default Value**                                                  | **Property Description**                                                                                                                                                                                                                                              | **Example**                                                                                                                                                 |\n|-------------------|:-----------------:|--------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `data`            | Object            | None this property is **required** for nanoleaf-layout to function | The panel data received from the Nanoleaf OpenAPI GET request made to `/api/v1/YOUR_API_KEY/` Its comprised of a `panelData` key and an array of panel objects see the example in the next column                                                                     | ```  {  positionData: [       {         panelId: 1,         x: 100,        y: 100,        o: 180,        color: '#00FF00'        }       ........   ]  }  ``` |\n| `strokeWidth`     | Integer           | 0                                                                  | The width of the stroke around the triangles. Tip: If you want a larger \"space\" between the triangles try a large `strokeWidth` prop which is the same color as your background!                                         | `<NanoleafLayout strokeWidth={10} />`                                                                                                  |\n| `onHover`         | Function          | Callback function with an empty body. `(data) => { }`              | Callback function which occurs when any of the panels are hovered over. The callback returns a SVG Object see the SVG object section for more details                                                                                                                                               | `<NanoleafLayout onHover={(data) => {}} />`                                                                                                                        |                                                                                                                                                  | `<NanoleafLayout canvasHeight={500}`                                                                                                                        |                                         \n| `onClick`         | Function          | Callback function with an empty body. `(data) => { }`              | Callback function which occurs when any of the panels are clicked. The callback returns a SVG Object see the SVG object section for more details                                                                                                                                               | `<NanoleafLayout onClick={(data) => {}} />`                                                                                                                        |                                                                                                                                                  | `<NanoleafLayout canvasHeight={500}`                                                                                                                        |\n| `onExit`          | Function          | Callback function with an empty body. `(data) => { }`              | Callback function which occurs when a mouse exits a panels area. The callback returns a SVG Object see the SVG object section for more details                                                                                                                                               | `<NanoleafLayout onExit={(data) => {}} />`                                                                                                                        |                                                                                                                                                  | `<NanoleafLayout canvasHeight={500}`                                                                                                                        |\n| `svgStyle`        | Object            | {}                                                                 | React Object representing the Style of the SVG JSX element.                                                                                                                                                                                                              | `<NanoleafLayout svgStyle={{ opacity: .5 }} />`                                                                                                                        |                                                                                                                                                  | `<NanoleafLayout canvasHeight={500}`                                                                                                                        |\n| `gStyle`        | Object            | {}                                                                 | React Object representing the Style of the G JSX element.                                                                                                                                                                                                              | `<NanoleafLayout gStyle={{ color: 'green' }} />`                                                                                                                        |                                                                                                                                                  | `<NanoleafLayout canvasHeight={500}`                                                                                                                        |\n| `development`        | boolean            | false                                                                 | Shows Developer information like true 0 offset position and centroid of each triangle in the Nanoleaf Layout                                                                                                                                                                                                              | `<NanoleafLayout developer />`                                                                                                                        |                                                                                                                                                  | `<NanoleafLayout canvasHeight={500}`                                                                                                                        |\n\n\n\n### Styling the Nanoleaf Layout\n\nNanoleaf Layout gives developers full control over how each individual panel is styled. The layout itself is made up of an `<svg>` object and several nested `<g>` objects\nwithin it. You can control the individual style by passing the `svgStyle` or `gStyle` props to the Nanoleaf Layout like so:\n\n```jsx\n<NanoleafLayout\n    data={...}\n    svgStyle={{backgroundColor: 'blue'}}\n    gStyle={{ border: '3px' }}\n/>\n``` \n\n### Callback's and Events\n\nWith Nanoleaf Layout you can hook into events such as `onClick`, `onHover`, and `onDraw` to take action within your application.\n\nFor example lets say you wanted to execute a piece of code only when the panel with the panel ID of `4` is clicked.\nYou can easily accomplish this with just a few lines of code!\n \n```jsx\nimport NanoleafLayout from \"nanoleaf-layout/lib/nanoleaf-layout\";\nimport React, {Component} from 'react';\n\nlet data = {\n  positionData: [\n    {\n      panelId: 1,\n      x: 100,\n      y: 100,\n      o: 180,\n    },\n  ],\n};\n\nexport default class App extends Component {\n\n  handlePanelFourClick = id => {\n    //Is the panel id 4?\n    id === 4 ? console.log('Panel 4 has been clicked!') : console.log('Wrong Panel Clicked!');\n  };\n\n  render() {\n    return (\n      <NanoleafLayout\n        data={data}\n        onClick={data => {\n          this.handlePanelFourClick(data.id.id); //Hook into the onClick event, data is the SVG Object being returned\n        }}\n      />\n    );\n  }\n}\n```\n\n### More Examples\n\n#### Update panel **3's** color from lime green to white if its hovered over!\n\n ```jsx\n import NanoleafLayout from \"nanoleaf-layout/lib/nanoleaf-layout\";\nimport React, {Component} from 'react';\n\nlet data = {\n  sideLength: 150,\n  numPanels: 9,\n  positionData: [\n    {\n      panelId: 3,\n      x: 100,\n      y: 100,\n      o: 180,\n      color: \"#00ff00\"\n    },\n    {\n      panelId: 4,\n      x: 120,\n      y: -50,\n      o: 180,\n      color: \"#ffd033\"\n    }\n  ]\n};\n\nexport default class App extends Component {\n\n  handlePanelThreeClick = (id, data) => {\n    if (id === 3) {\n      //Get the Key in the position data array for the color we want to update\n      let key = data.positionData.findIndex(x => x.panelId == id);\n\n      //Update the color!\n      data[key].color = \"#FFFFFF\";\n    } else {\n      console.log(\"Wrong Panel...\");\n    }\n  };\n  render() {\n    return (\n      <NanoleafLayout\n        data={data}\n        onHover={svg => {\n          this.handlePanelThreeClick(svg.id.id, data);\n        }} //Hook into the onHover event, svg is the SVG Object being returned and data is the position data\n      />\n    );\n  }\n}\n\n```\n\n### Notes\n\nPlease ensure that your data property is formatted correctly, \n\nNanoleaf Layout will automatically search for the `positionData` key in the given data set which must be an array of tiles (even if only one or no tiles exists).\nThe best way to ensure that the data is correct is to make a GET request to your nanoleaf for its layout information. \n\nYou can do this simply in the [Postman App](https://www.getpostman.com/). Find the IP address of your nanoleaf and make a GET\nrequest to its IP for example. `http://172.17.193.17:16021/api/v1/YOUR_API_TOKEN/`\n\nIf you are passing this information directly into the nanoleaf layout component make sure you map over it first and add any additional `color` or `strokeColor` props to each object!\n\nFor more information about how to get this data check out the Nanoleaf Developer Documentation.\n\n## Whats New\n\nAs of version `2.0.0` Nanoleaf layout has been completely rewritten in an SVG format instead of using HTML 5's Canvas.\nThis means its much more flexible from a development perspective and it brings new features like event hooks!\n\nYou can now hook into `onClick` `onExit` and `onHover` Mouse events for each and every panel. Panels in the nanoleaf layout have\nbeen synchronized and each provides a unique SVG object in a callback function which includes all the information about the panel\nthat's being interacted with!\n\nLet me know what you think about Nanoleaf Layout by submitting issues to the Github repo or contributing!\n\n[Nanoleaf Layout Github](https://github.com/cbartram/nanoleaf-layout)\n\n## License\n\nMIT General Use License\n\nCopyright (c) 2017 Christian Bartram.\n\n","maintainers":[{"name":"cbartram","email":"cbartram3@gmail.com"}],"time":{"modified":"2022-06-20T20:14:26.972Z","created":"2017-06-27T13:39:05.881Z","1.0.0":"2017-06-27T13:39:05.881Z","1.0.1":"2017-06-27T15:23:59.822Z","1.0.2":"2017-06-27T15:25:39.232Z","1.0.3":"2017-06-27T15:40:15.226Z","1.0.4":"2017-06-27T15:57:35.608Z","1.0.5":"2017-06-27T16:01:29.194Z","1.0.6":"2017-06-27T17:44:31.087Z","1.0.7":"2017-06-27T18:00:41.845Z","1.0.8":"2017-06-27T21:18:14.116Z","1.0.9":"2017-06-27T21:28:52.286Z","1.1.0":"2017-06-29T16:25:20.018Z","1.1.1":"2017-06-29T16:27:40.834Z","1.1.2":"2017-06-30T01:30:53.641Z","1.1.3":"2017-07-05T17:20:13.642Z","1.1.4":"2017-07-05T17:25:38.637Z","1.1.5":"2017-07-06T00:25:15.383Z","1.2.0":"2017-07-06T17:22:53.162Z","2.0.0":"2017-07-09T00:42:37.376Z","2.0.1":"2017-07-10T18:30:35.247Z","2.0.4":"2017-07-11T18:22:22.037Z","2.1.0":"2017-07-12T16:23:25.144Z","2.1.1":"2017-07-13T13:31:56.219Z","2.1.2":"2017-07-18T18:48:56.061Z","2.1.3":"2017-07-18T18:55:05.145Z","2.1.4":"2017-07-19T15:00:55.670Z","2.1.5":"2017-07-21T00:29:40.810Z","2.1.6":"2017-07-21T00:52:31.387Z","2.1.7":"2017-07-26T19:27:17.308Z","2.1.8":"2017-10-09T12:17:42.491Z","2.1.9":"2017-10-13T13:36:11.012Z","3.0.0":"2018-12-16T17:20:46.087Z","3.0.2":"2018-12-17T14:32:05.988Z","3.0.3":"2020-04-22T22:15:58.481Z"},"homepage":"https://cbartram.github.io/nanoleaf-layout-demo","repository":{"type":"git","url":"git+https://github.com/cbartram/nanoleaf-layout.git"},"author":{"name":"Christian Bartram"},"bugs":{"url":"https://github.com/cbartram/nanoleaf-layout/issues"},"readmeFilename":"README.md","keywords":["react","react-component","nanoleaf","layout","cartesian","javascript","babel","webpack"],"license":"MIT"}