{"_id":"@chroma-x/react-custom-dom-events","_rev":"12-bb7b5f687e86f41316a0a80f10834dd6","name":"@chroma-x/react-custom-dom-events","dist-tags":{"latest":"1.1.4"},"versions":{"1.0.0":{"name":"@chroma-x/react-custom-dom-events","version":"1.0.0","keywords":["react","events","custom events","event emitter","useCustomDomEventListener","emitCustomDomEvent","CustomEvent"],"author":{"url":"Chroma Experience GmbH","name":"Martin Brecht-Precht"},"license":"MIT","_id":"@chroma-x/react-custom-dom-events@1.0.0","maintainers":[{"name":"sgrosseboelting","email":"sg@chroma-x.de"},{"name":"bonscho","email":"mb@chroma-x.de"}],"homepage":"https://github.com/chroma-x/react-custom-dom-events","bugs":{"url":"https://github.com/chroma-x/react-custom-dom-events/issues"},"dist":{"shasum":"5b602acef81380ced1ab0570b29012ba4105caf9","tarball":"https://registry.npmjs.org/@chroma-x/react-custom-dom-events/-/react-custom-dom-events-1.0.0.tgz","fileCount":6,"integrity":"sha512-7RBa7FUIKyhroQApyXKpa4AXSVAwkaONRsV5G4BtWHxxoJ2IMLlytR0fXwhxBpk5TEpYnmXfvC152ujj/7xNlw==","signatures":[{"sig":"MEYCIQCXlsciGBSiaUYxkVBDYhPZrnbV3lHBbNOmczSrMaIFKgIhAPbP7AyMWiGmiIFKSSjsghDXr6WzmzO5o4zBcQjuM3iD","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":11526,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggq4yCRA9TVsSAnZWagAAbDwQAIXlpvh/4TiSQ29rnrDl\nItwR5y47ahlZFmuShdZxvlC6yA7mSrlkdI4I/Tc+UzD/OI6Hq1xlNh3EBGzL\nQWPsUcwItnEr0gg0IxSarp//Cn5wFUjsDn1pyBCRvBEijwsKObNzB2tOfVvL\nxN/diX6zZOgDPn8/wcZzv//Y1qr/TlsKl52pY1phjY403FYkZgCsRwLl5Dkx\nvEhgts/s4V0pg9ohH6ElF7OpZ8vceDSwOgkunzdRnbF3qAm/esVe4QlZp4/E\nvVOOUMkUZNcMZASJUaZKFD923ifc/bBSG3Pp0zGo9MUOCjZ/Ty0B2gv47/rf\nVlA+hfDE7uhWTMtsRqYfSg8FXE2ik8gPHwn7XipJF7Wc5b0ebCTWtvqi0KFU\n54HRpEXpAtjKc/3XMa0bKyR2RTNotvmTo9PSGjlKt5/ig0FnyhhN64KStKpO\nbqO4Ff1HtHfEYyVu5Yi2ftNzm4L0PxwLVehx4henwNjJZhIk1eMMqT/B9MBY\n1/nI2owVFYr+MF4rgJw4jmgmJ5teD2b+Mn0IqEK+rLR7KZn6Pon9IjijOsy1\nuDct6fvpLPdGcj8DeJtz1fU+rW6y7MjVZPomKXXAiZdkB9pztZDovlA3vJLB\no47MtxBjGeUB8neg5l30Wll7jCFNqDZhER7M+N5to2sW+Xqu/3aTxPgYbtGh\nBujs\r\n=4hb+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.js","gitHead":"a34d639df6dbf8a2f4e20a1aa4e23f1c8e04a9d7","scripts":{"build":"rollup -c","start":"rollup -c -w"},"_npmUser":{"name":"bonscho","email":"mb@chroma-x.de"},"repository":{"url":"git+https://github.com/chroma-x/react-custom-dom-events.git","type":"git"},"_npmVersion":"7.10.0","description":"Easily integrate custom DOM events in React functional components","directories":{},"_nodeVersion":"14.15.0","_hasShrinkwrap":false,"devDependencies":{"react":"^16.13.1","rollup":"^2.10.4","react-dom":"^16.13.1","babel-core":"^6.26.3","typescript":"^3.9.2","@types/react":"^16.9.35","babel-runtime":"^6.26.0","@types/react-dom":"^16.9.8","rollup-plugin-typescript2":"^0.27.1"},"peerDependencies":{"react":"^16.8.0","react-dom":"^16.8.0"},"_npmOperationalInternal":{"tmp":"tmp/react-custom-dom-events_1.0.0_1619177009474_0.9865727804122963","host":"s3://npm-registry-packages"}},"1.0.1":{"name":"@chroma-x/react-custom-dom-events","version":"1.0.1","keywords":["react","events","custom events","event emitter","useCustomDomEventListener","emitCustomDomEvent","CustomEvent"],"author":{"url":"Chroma Experience GmbH","name":"Martin Brecht-Precht"},"license":"MIT","_id":"@chroma-x/react-custom-dom-events@1.0.1","maintainers":[{"name":"sgrosseboelting","email":"sg@chroma-x.de"},{"name":"bonscho","email":"mb@chroma-x.de"}],"homepage":"https://github.com/chroma-x/react-custom-dom-events","bugs":{"url":"https://github.com/chroma-x/react-custom-dom-events/issues"},"dist":{"shasum":"a1312b6c3d050805fdd0652d40391ffa6de53394","tarball":"https://registry.npmjs.org/@chroma-x/react-custom-dom-events/-/react-custom-dom-events-1.0.1.tgz","fileCount":6,"integrity":"sha512-yj3V2wfNfOn90j4B1Tp3P0RaZz/DXvyBKk4iDhD2y9dOWgxsTgKiPGnwGT538D673oSGlDZzOx5+Mw8epC1gmA==","signatures":[{"sig":"MEQCICupuhet2qD+5NeqYT1LAMsq69lCIUovVlLAg2YeTciqAiALsT63Qf1yCO5vwi6bR357QMz5Ohh3m7U7qhLlG7mqbg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":11549,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggrAiCRA9TVsSAnZWagAAxAkP/1m1b4gKV/VOtC1zVsb6\nkd15ux3H4WMWaAjEw6PWhP9UTIc/zCLuJRvA2KFYhLtSmq6R+ZuujBTUkxqx\nyZLR6GLqQpoe89Hlk9PPlZwxJAHAxS1Ou6vap4Ub/ibc8R2h4P7qC6YxSgEe\nKJzqadYRtkw+yIyUCk8N1xTlXWOvFGa2fdN106nEWzw095v+QuNg0N/9Dr2m\nk3O7BPuYUcZGbIyks3dNwuvOsobKoQWKDujL9ZZBBCw3N3Xc/mYbUFQ8NL9M\ne6z3C3sfmXgJkDgrzVOnE8SFUp/tnBNcwz+hMaYih0g6W2c1K8SASSs1VUBV\ndygohmUobEbhQ2exXYgHL4CwxSvo8hRFppV0BGtcXuLlBK4Bw82nUVcrj23/\nBO0VEeSgin9j93TV4wR0/9fjuGVtqZRHqOsYdC4v2NaDt97nokIT8ynyBa3P\n67WWQkeuZppUw0vqknMTiIuDMjFPlXAgcvsIQcTLbVj/6kcqtZZb2lnygwPX\nyYVZIGSbnwt956wwy9yd5Gd7MypikPQypLjtNkOyDIQWbDCJJzoNkb7Uxhpx\nd1JoZXNRMGS8w1AdUQuOEMkQg16vsKv6+S1NyckDDMiw39IN1o8NnrqhHtan\n4qriBMwqi4Q0Fh2FJpTfnf/lJoH/YsSN5JcdBmAzUugYAAUZrFaPm6UBHDrZ\nEXU0\r\n=lLpb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.js","gitHead":"f55adb9a7c157f13f3ef467dbdd3eb22c35273e5","scripts":{"test":"","build":"rollup -c","start":"rollup -c -w"},"_npmUser":{"name":"bonscho","email":"mb@chroma-x.de"},"repository":{"url":"git+https://github.com/chroma-x/react-custom-dom-events.git","type":"git"},"_npmVersion":"7.10.0","description":"Easily integrate custom DOM events in React functional components","directories":{},"_nodeVersion":"14.15.0","_hasShrinkwrap":false,"devDependencies":{"react":"^16.13.1","rollup":"^2.10.4","react-dom":"^16.13.1","babel-core":"^6.26.3","typescript":"^3.9.2","@types/react":"^16.9.35","babel-runtime":"^6.26.0","@types/react-dom":"^16.9.8","rollup-plugin-typescript2":"^0.27.1"},"peerDependencies":{"react":"^16.8.0","react-dom":"^16.8.0"},"_npmOperationalInternal":{"tmp":"tmp/react-custom-dom-events_1.0.1_1619177505925_0.7690968662278961","host":"s3://npm-registry-packages"}},"1.0.2":{"name":"@chroma-x/react-custom-dom-events","version":"1.0.2","keywords":["react","events","custom events","event emitter","useCustomDomEventListener","emitCustomDomEvent","CustomEvent"],"author":{"url":"Chroma Experience GmbH","name":"Martin Brecht-Precht"},"license":"MIT","_id":"@chroma-x/react-custom-dom-events@1.0.2","maintainers":[{"name":"sgrosseboelting","email":"sg@chroma-x.de"},{"name":"bonscho","email":"mb@chroma-x.de"}],"homepage":"https://github.com/chroma-x/react-custom-dom-events","bugs":{"url":"https://github.com/chroma-x/react-custom-dom-events/issues"},"dist":{"shasum":"589489673a0f633c3e12b2b8bb0022748029e72a","tarball":"https://registry.npmjs.org/@chroma-x/react-custom-dom-events/-/react-custom-dom-events-1.0.2.tgz","fileCount":6,"integrity":"sha512-kxp/80wjz4XJxx9rSxG/da9tBg3WZoJuey1+5gJXpZ48Wr4xHtKgIpSwLSrUl9iz7pKTYytN5G8Rjs5gp0DDCQ==","signatures":[{"sig":"MEUCIQDbkOWdo6vKlB+hRy+8RdfUIOAi1P8DMXawlOiLSA2nwgIgCF4WhKbN8FxOUIEIQQFubmdG+wAxznYPcmO96Cyv2yk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":11569,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggrFrCRA9TVsSAnZWagAAoVcP/i6MTah3pPC4XUjNcPEo\nvh/nvClW9eQeliC0eOB9nwXhpDZpg26wmviTl/8VA5/KXiRIJOo5jAUX+kg+\nxeNaii4CX2AOY7eXh96iyyLBzTxN7rriLuT4zezXdl/dJJv1NUOqDLLa6D5w\nrgXyhiKx9uiFhZ0J18Rf/zWqbRrI/3hXkde0aAlljeZ0H/ajecpzmeKSrMXK\nHd6ilNHAP3Q57hFsQgO/RhNXI388fsCbiaizaFBEZ+RWcsprbhB3IKccObvC\ntFPLWtskllpyMYlOeXQ1EoKJBOOlvDIIPZ/ED7WQWGGxfqxZ7ge3uSf1y8Nj\nkKovHZCT0OssQDq0dc44O/HOylxDaaOsow1pNw24OUMK1Z15wXPely0qDEzz\nPKmcIy7D1ioVFD4lSPLaTz4wK9y2CDdqZQSiofr2p67BJrw5D6tsBC4mvnC1\nYR+jmcDozGFHwzTrf/C7uCjH8roJm32N8oYlcpjTbKZy3/iKqUlal9Z+lBpb\nVeoe8wJ7zBEOh1FlyohsHfU0Nwqe6kD+xmcvfzRp3Y3XldBsTGg4pRQm24CV\nFTN8mGjlMGj6IFNPOy/un1CYuZHHWpOqhxenAOkb2Sh6QEulFObLjZgLNhNg\nkOAJBVWtbMtuLiUWTnomYzjlf03sILl4gIgvzXK0xw7aho7qkI+uW+U2B594\nRJ0p\r\n=iVJx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.js","gitHead":"9107665918c623d7002558e9a13d8cdc183edf51","scripts":{"test":"","build":"rollup -c","start":"rollup -c -w"},"_npmUser":{"name":"bonscho","email":"mb@chroma-x.de"},"repository":{"url":"git+https://github.com/chroma-x/react-custom-dom-events.git","type":"git"},"_npmVersion":"7.10.0","description":"Easily integrate custom DOM events in React functional components","directories":{},"_nodeVersion":"14.15.0","_hasShrinkwrap":false,"devDependencies":{"react":"^16.13.1","rollup":"^2.10.4","react-dom":"^16.13.1","babel-core":"^6.26.3","typescript":"^3.9.2","@types/react":"^16.9.35","babel-runtime":"^6.26.0","@types/react-dom":"^16.9.8","rollup-plugin-typescript2":"^0.27.1"},"peerDependencies":{"react":"^16.8.0","react-dom":"^16.8.0"},"_npmOperationalInternal":{"tmp":"tmp/react-custom-dom-events_1.0.2_1619177835517_0.007053320674105024","host":"s3://npm-registry-packages"}},"1.1.0":{"name":"@chroma-x/react-custom-dom-events","version":"1.1.0","keywords":["react","events","custom events","event emitter","useCustomDomEventListener","emitCustomDomEvent","CustomEvent"],"author":{"url":"Chroma Experience GmbH","name":"Martin Brecht-Precht"},"license":"MIT","_id":"@chroma-x/react-custom-dom-events@1.1.0","maintainers":[{"name":"sgrosseboelting","email":"sg@chroma-x.de"},{"name":"bonscho","email":"mb@chroma-x.de"}],"homepage":"https://github.com/chroma-x/react-custom-dom-events","bugs":{"url":"https://github.com/chroma-x/react-custom-dom-events/issues"},"dist":{"shasum":"7b159b457cb1c08591c365ad551e0024fdab407f","tarball":"https://registry.npmjs.org/@chroma-x/react-custom-dom-events/-/react-custom-dom-events-1.1.0.tgz","fileCount":6,"integrity":"sha512-vXtDo6xPv5oqXMCSNAbRsC+ZqtA4FZVVRwwWS5XZi0GbbQ2HzHpIX2Dix9iYRDRnngnABkL4lYDaXV9sAckhpw==","signatures":[{"sig":"MEYCIQC+N2dgLzFVSaexznDAjbLODh2rnE7qZf9NvktjJlZmVwIhAMRVUN/ap6VFRi6kWeHdv7nDnDedlihL3WpTq8sqRYm3","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":12197,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggrL5CRA9TVsSAnZWagAAns4P/3OzNsN2G7dZXNFFOcz7\nShtoyqahWX5GXBEP7CefthVFVd3z4zKqImb99mHYG3Eh/cy37JCWh0K1Ct6q\nHb76C4ooBBhC7V4FMOfn0bRi0rWM5ZQm5l6GJWd45wJbO1gin38KrZ2qhYAz\nFbnz2y7edbGBhZlRZRpgqn4MqLmJW6wTW1U3lW8hTeTmPlKRmwHmWjA/ouy6\naOZyOvnMDpB4HSYMv65AWYHv0QDgkaRIhd0o6CQllWfPpWbLkLCavzFLGTgq\nHPxEZaxY/XsaUPyh3SKFZeZCB92glJ4/afN/jdkfq5voCPdXLP5zvCO7gZIj\nJ+TgrAiZaIqZ5psbyVQXLjqr4nWuAHuE+qkHukeofUj1G0caxc+H+nbWlqs4\nzlsHBBsu5LVayhb0aDUspAHEF02pMJlBZq55dnGqfpZYRcZ3+RZfh1wVOJrn\njbsiB78aiwHWQlxb+Zz6uvukstG+ffafshjK+82gjg0diAHI1wSKou3low9j\nHJN/fkay7pzx6YJxDpJXUL2Bc4ZflUiyLuwctiKAApnYl4NoQO7IvxeyNq/u\nZ+MKmI3MUSat3l0xAuhMqo3tAz1A5XUNYKAiL1eOI7Csy5HVUhGC9QjNe3Yx\nnD3337O8dVDIhWWOsQGAtVoCxZwDSN0+hokyVI3EiP5ydQ/uQxSLSdob2hBc\nZ8jy\r\n=wu1M\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.js","gitHead":"3c44b15bf6671ccff1d2bd2c84e61aa2c1b7ef66","scripts":{"test":"","build":"rollup -c","start":"rollup -c -w"},"_npmUser":{"name":"bonscho","email":"mb@chroma-x.de"},"repository":{"url":"git+https://github.com/chroma-x/react-custom-dom-events.git","type":"git"},"_npmVersion":"7.10.0","description":"Easily integrate custom DOM events in React functional components","directories":{},"_nodeVersion":"14.15.0","_hasShrinkwrap":false,"devDependencies":{"react":"^16.13.1","rollup":"^2.10.4","react-dom":"^16.13.1","babel-core":"^6.26.3","typescript":"^3.9.2","@types/react":"^16.9.35","babel-runtime":"^6.26.0","@types/react-dom":"^16.9.8","rollup-plugin-typescript2":"^0.27.1"},"peerDependencies":{"react":"^16.8.0","react-dom":"^16.8.0"},"_npmOperationalInternal":{"tmp":"tmp/react-custom-dom-events_1.1.0_1619178233265_0.2340604287952599","host":"s3://npm-registry-packages"}},"1.1.1":{"name":"@chroma-x/react-custom-dom-events","version":"1.1.1","keywords":["react","events","custom events","event emitter","useCustomDomEventListener","emitCustomDomEvent","CustomEvent"],"author":{"url":"Chroma Experience GmbH","name":"Martin Brecht-Precht"},"license":"MIT","_id":"@chroma-x/react-custom-dom-events@1.1.1","maintainers":[{"name":"sgrosseboelting","email":"sg@chroma-x.de"},{"name":"bonscho","email":"mb@chroma-x.de"}],"homepage":"https://github.com/chroma-x/react-custom-dom-events","bugs":{"url":"https://github.com/chroma-x/react-custom-dom-events/issues"},"dist":{"shasum":"d9c236f69427012d9d0844ee8eb4fad20da7f464","tarball":"https://registry.npmjs.org/@chroma-x/react-custom-dom-events/-/react-custom-dom-events-1.1.1.tgz","fileCount":6,"integrity":"sha512-wf6csLyCFH5D2XXN+mDWinI5Es5aZmFmOJvzyudCriUHZRePkku9nc1mTAGbnHM41RhZhDx8ETBNR0IUp1SbQQ==","signatures":[{"sig":"MEUCIC7RU2C/jUgBJ3Yi361j63yt2qGDtVAT8crxo6en8UCuAiEAqxx7VlpXFtKyfyh6x7ehtdBtZUVrOnT078r2087tJYU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":13311,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggrPFCRA9TVsSAnZWagAA8swP/2TO0ysxHjfOROuZoppn\nRIezd82USebBLqwlwZ8Q3nEh17Y9K0h99i/jv4ZBgBXgUViPYUOabL92G9F3\nzP6bem0X9aS88Lnf0HDJw7k/zjMTc3S/xjXn6bjrjWOPTVDDBnGHkUSltDhe\nAPwyuZiqd05s51jRLhhMUflKRhDYnVxDceIrsnNnw4liyRMs4E0PxLmVGu9H\n7MHf5vFPCsDf0kYTCk/yqlB1kTj6khcYDCX0W3CqjhvB9EsNgKoc82BpxQ8O\nmg+DNiXgJQiCvhAXL1VeIJFbqOhKbSeZqKbue4EgkVPUeb6D5fo+1gmYHRyo\nnKRY4YnVe2EmCGSNhI+jy1suHIjS9bXMzeUiEo6PXdT4ZV9jxbqLEzGhJf5s\ntilyVv5w5/5VzbDAd1D/SviCfQtwBALviIlNp8dICDBEANJ95MQRNuJ0lq6W\n05o3xFZByV10+knPC6cWjEHBhOSAeXBbT5qRsyCiYPbPCzB8PUrdxZFZe5OZ\nxid3ACgnTYwG/UnsTY3uTMX3jO3DTgjmodkl2YFSJ+X7tnnk0YpuY+U8XCFe\nrGj77/P7wzhQd+MkMuw+vOhemcWeH6B6V/treAeq3K/4urhZ82UZRlrLRwJ1\nS6mboORp6LurpKj4xYHpp7rps52vegZqS8pfqgWlzBd+tkZ1LQf7eMqNWuRF\nG9Zt\r\n=3Ejs\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.js","gitHead":"dbdc4448debd800c9c065c88089d8495f8fd2208","scripts":{"test":"","build":"rollup -c","start":"rollup -c -w"},"_npmUser":{"name":"bonscho","email":"mb@chroma-x.de"},"repository":{"url":"git+https://github.com/chroma-x/react-custom-dom-events.git","type":"git"},"_npmVersion":"7.10.0","description":"Easily integrate custom DOM events in React functional components","directories":{},"_nodeVersion":"14.15.0","_hasShrinkwrap":false,"devDependencies":{"react":"^16.13.1","rollup":"^2.10.4","react-dom":"^16.13.1","babel-core":"^6.26.3","typescript":"^3.9.2","@types/react":"^16.9.35","babel-runtime":"^6.26.0","@types/react-dom":"^16.9.8","rollup-plugin-typescript2":"^0.27.1"},"peerDependencies":{"react":"^16.8.0","react-dom":"^16.8.0"},"_npmOperationalInternal":{"tmp":"tmp/react-custom-dom-events_1.1.1_1619178437429_0.4396507166593804","host":"s3://npm-registry-packages"}},"1.1.2":{"name":"@chroma-x/react-custom-dom-events","version":"1.1.2","keywords":["react","events","custom events","event emitter","useCustomDomEventListener","emitCustomDomEvent","CustomEvent"],"author":{"url":"Chroma Experience GmbH","name":"Martin Brecht-Precht"},"license":"MIT","_id":"@chroma-x/react-custom-dom-events@1.1.2","maintainers":[{"name":"sgrosseboelting","email":"sg@chroma-x.de"},{"name":"bonscho","email":"mb@chroma-x.de"}],"homepage":"https://github.com/chroma-x/react-custom-dom-events","bugs":{"url":"https://github.com/chroma-x/react-custom-dom-events/issues"},"dist":{"shasum":"8a18540268085231fb606c35dbe39c37036c70e7","tarball":"https://registry.npmjs.org/@chroma-x/react-custom-dom-events/-/react-custom-dom-events-1.1.2.tgz","fileCount":6,"integrity":"sha512-4QuuCMT8F+xVYhyUbt7Nbq1VwNx2n4U/4O+sc7k2UHudUSRlV8LIyUeCt0krno8yfEPLCq/EISWXr77AtaSzeg==","signatures":[{"sig":"MEUCIQDTGiDfSCfsyP3WoN93iglQq2CuRzFzb5eOOmh5+u1ZlQIgRWxHD/jjDwaiLMfsFlte1ffKN0z9lxApKBeQ7Ultavc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":13305,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggrSZCRA9TVsSAnZWagAA0W8P/jP7aYhCxuUvsYVRTRDu\nfGowq5RPDhy56IyjQQzKEMA0RqmLvrugxWqA0Bt4rBVXL06b00jpwPGzRvYs\nM3SYm38LBH74+mPrPAjkX8LWE0c23krPNfUxig0zTR9L4rPnxZ9XDILK3GeC\ncT2VQryWK9RM4HETbkycBaYopjigIZ+xK8uQ4cc9cREDc/lTsrGNmNEUPlzG\n0NFBIQZ2Q5ZhlKkqvs8EEGRpMlIpYSAIvn+OIvZ4efCA9cM4i8+cWRcRpmLH\nrdAp8ctmIcFpi+5SdbpSLZmPbJHqjPGTh9AipE1qZoSfnoNNe8pl1cnZ8p8N\nnpUrOPlCjfhDuHS22AR4NT/eqZcoa+yJ3Y8WOn+IJTtBXI/TgZDVSIsGjTje\n+tYTG44ISPOeM++qubRI+m/gYyN5u4NMq/U2GH9aIbK1J/O281gyVAdEJqx0\nLBj1Ggp7eL3r0Mm1OABnIWy5bFdAZBwUB3u80jvd1fzlR351tWFb3sQC4vMq\n8oPz2pTfzxEB01QaPSMA+eFbI4GrbMCem91y/kwBRiRKb1mbW60R9zEfbpV4\n4YCFxsMnHdx5jnng2VPmbUjaHoUPd/IUlcn0/6hLyF7VZ88Tggl7EPIBl6AJ\n5vsXAHqgy8OC+8th9ZeXwHkgEpfQQkn7eC2Th5+Yx/lfmnGj00sf47lIODLR\npWk0\r\n=MJnq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.js","gitHead":"7f6ecda6ef4cf223b4a203db4c8c0ac4410752ea","scripts":{"test":"","build":"rollup -c","start":"rollup -c -w"},"_npmUser":{"name":"bonscho","email":"mb@chroma-x.de"},"repository":{"url":"git+https://github.com/chroma-x/react-custom-dom-events.git","type":"git"},"_npmVersion":"7.10.0","description":"Easily integrate custom DOM events in React functional components","directories":{},"_nodeVersion":"14.15.0","_hasShrinkwrap":false,"devDependencies":{"react":"^16.13.1","rollup":"^2.10.4","react-dom":"^16.13.1","babel-core":"^6.26.3","typescript":"^3.9.2","@types/react":"^16.9.35","babel-runtime":"^6.26.0","@types/react-dom":"^16.9.8","rollup-plugin-typescript2":"^0.27.1"},"peerDependencies":{"react":"^16.8.0","react-dom":"^16.8.0"},"_npmOperationalInternal":{"tmp":"tmp/react-custom-dom-events_1.1.2_1619178649245_0.0354922497909087","host":"s3://npm-registry-packages"}},"1.1.3":{"name":"@chroma-x/react-custom-dom-events","version":"1.1.3","keywords":["react","events","custom events","event emitter","useCustomDomEventListener","emitCustomDomEvent","CustomEvent"],"author":{"url":"Chroma Experience GmbH","name":"Martin Brecht-Precht"},"license":"MIT","_id":"@chroma-x/react-custom-dom-events@1.1.3","maintainers":[{"name":"mischi_pischi","email":"ms@chroma-x.de"},{"name":"sgrosseboelting","email":"sg@chroma-x.de"},{"name":"bonscho","email":"mb@chroma-x.de"}],"homepage":"https://github.com/chroma-x/react-custom-dom-events","bugs":{"url":"https://github.com/chroma-x/react-custom-dom-events/issues"},"dist":{"shasum":"a339576c231b8490d61b06e9c94b7a06cf48b12c","tarball":"https://registry.npmjs.org/@chroma-x/react-custom-dom-events/-/react-custom-dom-events-1.1.3.tgz","fileCount":6,"integrity":"sha512-WFmp+F/M93+V9XFcmoS7j9N4nNqU5+o/Uad/YST60fMgY6YsrgVafHoLGl1kPcFmhn6AdG9GS70Z5Cx2EtSZ7A==","signatures":[{"sig":"MEQCIAfRjsEDGnfg6+a4nS4sAdEP11LnbftIzqpa+4KTHVOfAiAhqw3A0XdOeczXCvV9pth7YklREgbLLMKslaDt2Vj1Kg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":13737,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgiAdqCRA9TVsSAnZWagAATjkP/jvT2zn76yCN0ro5iH88\n64aq8SgeoPtZhlXWwiomml2RIvjmHYkWgJrDDu0S3N0LPJ0E5nXJcqZNBPNe\ntpnjyN/jaEhIOZKw+El2nkJxLOqgATHzVKvDADqP9bRpsrKfF96po1WYYbT2\nrk1Au4X2SEiILcrXFcF1964ogptvXNWHI/0tAEPF64cSuOvwSM8dNyJFGqTo\ndDNlCRq+kGWJRy+ZOujIiJDwdJL3B4X1CFh4Bx4GRkMKAHrdWA3I1cmU2XJA\nJLzv8D2p0BbtMbeZs6VEi19LZZF/ciuGUJV7OZRLsg6aQ0nu8+vAXi5g2sn2\nGT9SZvtIf6Vf+Q+xh6T0fjviouRoFpd4qBDgloH67PJxN2W008cRRZQ9ssNt\n8MABpjjllQvIxPIeUdj8rwOnBHTxIlqiVujCqi5Sq1msgb8AUjxxBm7UFRfz\nxneRre5Br768giKCNM90MgoYXMknLYPYfmZbkcPr9xbtFx+n9o7mT2Sp2WZ8\nXH7WbNRD0Ry3XsbJtDrhPmP+qaDZTaoDUs9tmNMcVOlAEP94XKLvMkeEwosU\nGj2K+hD9YqvGh+qETg/VjJJllKV5UTiuP5J5ZomB5t9qC9dbDx9zizmhTJUy\nalGD/AHGau/DYWzjscKCxFvSzL/+CrS8P5ymXXUn6E/rJHkaYT0c/1nIuYui\njq24\r\n=5FL2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.js","gitHead":"39f1a08d1e5a835e40d5e6fa402f7c77afcdbd11","scripts":{"test":"","build":"rollup -c","start":"rollup -c -w"},"_npmUser":{"name":"bonscho","email":"mb@chroma-x.de"},"repository":{"url":"git+https://github.com/chroma-x/react-custom-dom-events.git","type":"git"},"_npmVersion":"7.10.0","description":"Easily integrate custom DOM events in React functional components","directories":{},"_nodeVersion":"14.15.0","_hasShrinkwrap":false,"devDependencies":{"react":"^16.13.1","rollup":"^2.10.4","react-dom":"^16.13.1","babel-core":"^6.26.3","typescript":"^3.9.2","@types/react":"^16.9.35","babel-runtime":"^6.26.0","@types/react-dom":"^16.9.8","rollup-plugin-typescript2":"^0.27.1"},"peerDependencies":{"react":"^16.8.0","react-dom":"^16.8.0"},"_npmOperationalInternal":{"tmp":"tmp/react-custom-dom-events_1.1.3_1619527529927_0.7804640907402591","host":"s3://npm-registry-packages"}},"1.1.4":{"name":"@chroma-x/react-custom-dom-events","version":"1.1.4","keywords":["react","events","custom events","event emitter","useCustomDomEventListener","emitCustomDomEvent","CustomEvent"],"author":{"url":"Chroma Experience GmbH","name":"Martin Brecht-Precht"},"license":"MIT","_id":"@chroma-x/react-custom-dom-events@1.1.4","maintainers":[{"name":"mischi_pischi","email":"ms@chroma-x.de"},{"name":"sgrosseboelting","email":"sg@chroma-x.de"},{"name":"bonscho","email":"mb@chroma-x.de"}],"homepage":"https://github.com/chroma-x/react-custom-dom-events","bugs":{"url":"https://github.com/chroma-x/react-custom-dom-events/issues"},"dist":{"shasum":"09dc5f11228e69d1422599a46a7e264ea8fc2e20","tarball":"https://registry.npmjs.org/@chroma-x/react-custom-dom-events/-/react-custom-dom-events-1.1.4.tgz","fileCount":6,"integrity":"sha512-GIOKfOVRliLWGLrfxlhfz6zUlWNjP7z6wo3RwyA2kBqqmwjxwtYu7+Q9bZCdhfqNcAzFdNeSWYrWZx7umHATtQ==","signatures":[{"sig":"MEYCIQCtqbqXfl12fjdtG8k34zv6tctA2Id7/CS+h8K+lnxwPQIhAJRDCi7H7gz/ElDe5Q8Feh+wuEdXCmcas+DTrPZrG+yR","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":13747,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgiBYwCRA9TVsSAnZWagAACcMP/1+WknYgpYxhomohHD9z\nnrF9h30ztrQDadEDsu+ykiYD1zN2aO9hnQerru3jSM82EnG5roNRJdJMEOZe\nCGKqspvpe2a3m42CUjSGxxT2mMsS1ZRnvtP7FTBs4FOfsU9ZTyJX9DFGBmVH\n5hstQiX4Rd7ZULhtZrcMoYeLOLF2qvHRhuXom/oinx4y2qmnlIMqDaMshl3O\nSqAA0qh3N9tVOwRB9C0b/MAjs3CSmRvrPUcjsIYMwUBEcXsLeyENbFpyak+d\ndx5SQmBbgu5cP5P4m4CmVz7Lk5TEngSFJXNvcVopWAAWC2yTKsvCMYcXAlnM\n/vq6S2XBmoty3uEx62gQbi1KDKNyES+wbmNCH/imDWMTwaUiZ8tJ1u9me41e\nm6w2rXOZX8XzVAav13FA/1q0bQu3Ai1CNpZZvbMPtKnJjIrp6MOv0exdGE7E\nnCAaQXt1H0MxX26eMX0qTFyWHo7VnHV/6RUg0dRa1EIEBo0Ul36B44d8KOxY\n83B9jpAMAM4nKuQFCqvbPVzqTudPahjMaTYrnskE9lpXqrXfUbIyKjXRW3F2\nDOC94flFnbxPkqs3diOCkGjNMtwFhfaZbaLNaKiZLfRBn3q7CbtkATD6r/aT\nr9ATvALlOwIctmYNMrtYOogzt/bfDB3rSaTd5K7qpbfsLPJYe3rSegVlJe6T\nG8kv\r\n=Sngk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/index.js","gitHead":"ac2634dc31ec51d0676d8349044ae40d23614cc7","scripts":{"test":"","build":"rollup -c","start":"rollup -c -w"},"_npmUser":{"name":"bonscho","email":"mb@chroma-x.de"},"repository":{"url":"git+https://github.com/chroma-x/react-custom-dom-events.git","type":"git"},"_npmVersion":"7.10.0","description":"Easily integrate custom DOM events in React functional components","directories":{},"_nodeVersion":"14.15.0","_hasShrinkwrap":false,"devDependencies":{"react":"^16.13.1","rollup":"^2.10.4","react-dom":"^16.13.1","babel-core":"^6.26.3","typescript":"^3.9.2","@types/react":"^16.9.35","babel-runtime":"^6.26.0","@types/react-dom":"^16.9.8","rollup-plugin-typescript2":"^0.27.1"},"peerDependencies":{"react":"^16.8.0","react-dom":"^16.8.0"},"_npmOperationalInternal":{"tmp":"tmp/react-custom-dom-events_1.1.4_1619531312284_0.8673430153609534","host":"s3://npm-registry-packages"}}},"time":{"created":"2021-04-23T11:23:29.104Z","modified":"2026-09-15T09:28:08.881Z","1.0.0":"2021-04-23T11:23:29.650Z","1.0.1":"2021-04-23T11:31:46.099Z","1.0.2":"2021-04-23T11:37:15.655Z","1.1.0":"2021-04-23T11:43:53.397Z","1.1.1":"2021-04-23T11:47:17.557Z","1.1.2":"2021-04-23T11:50:49.399Z","1.1.3":"2021-04-27T12:45:30.045Z","1.1.4":"2021-04-27T13:48:32.414Z"},"bugs":{"url":"https://github.com/chroma-x/react-custom-dom-events/issues"},"author":{"url":"Chroma Experience GmbH","name":"Martin Brecht-Precht"},"license":"MIT","homepage":"https://github.com/chroma-x/react-custom-dom-events","keywords":["react","events","custom events","event emitter","useCustomDomEventListener","emitCustomDomEvent","CustomEvent"],"repository":{"url":"git+https://github.com/chroma-x/react-custom-dom-events.git","type":"git"},"description":"Easily integrate custom DOM events in React functional components","maintainers":[{"email":"mb@chroma-x.de","name":"bonscho"},{"email":"jk@chroma-x.de","name":"jkcrx"}],"readme":"# react-custom-dom-events\n\n## Easily integrate custom DOM events in React functional components\n\nThis project is a continuation of [`react-custom-events`](https://www.npmjs.com/package/react-custom-events). \n\n## Motivation\n\nThere are situations in which the React callback prop handling makes it impossible or at least unconvenient to handle user interactions. \n\nCommon practice is to map user interactions to context or even worse to global state change that then acts as some kind of event provider \nor broadcaster. This could work for most cases, but it introduces strict dependencies between components their environment. Especially in \nsituations in which you have no knowledge about the surrounding of the ui components – like ui library development – a generic and self \ncontained solution could be required.\n\nUsing native custom DOM events could be the better choice because components usually are already depending on the existance of the DOM and \nthey allow making use of the native behavior of DOM events like bubbling and such. \n\nThis way you can easily orchestrate event emitting and event listening components – even if there are multiple emitters or multiple \nlisteners which is hard to manage if you rely on a single context or global store to broadcast your state changes. \n\n## React current state\n\nThe way of React handling \"events\" is to pass callbacks to child components via properties. That leads to drilling callback props through \nthe component hirarchie whether the components on the route down the hirarchie should have knowledge about these props or not. This is often \navoided by using [Context](https://reactjs.org/docs/context.html) which could lead to unwanted complexity. Especially if you can not \nprovide the context as a part of your ui component but rely on the existance of a specific context provider in the application that utilizes \nyour components you introduce a dependency that you can not count on. \n\nAnother problem is that you often need to write callback functions that acts as some kind of orchestrator to then call different other \nfunctions to resolve user interactions on multiple components. This results in unwanted coupling bewteen components and extra complexity \nfor handling the callback composition. \n\nTo avoid all this, you can use custom DOM events, that could be emitted by any component and other components can listen on. They could \nbubble through the DOM tree – which usually represents your component hirarchie – and can be handled on different levels. \n\nSo the handling and orchestration is already provided by the native behavior of custom DOM events. No need to reinvent the logic behind that.\n\n## How to use\n\n### Installation\n\n```sh\nnpm i @chroma-x/react-custom-dom-events\n```\n\n### Event emission\n\nThe emitting element could be a `RefObject<HTMLElement>`, `MutableRefObject<HTMLElement>` or a `HTMLElement`.\n\n```typescript\nimport { useRef } from 'react';\nimport { emitCustomDomEvent } from '@chroma-x/react-custom-dom-events';\n\nconst emittingElement = useRef(null);\n\nconst handleClick = (): void => {\n  emitCustomDomEvent(emittingElement, 'myCustomEvent');\n};\n\nreturn (\n  <button ref={emittingElement} onClick={handleClick}>Emit custom event</button>\n);\n```\n\nAttach payload to the event\n\n```typescript\nemitCustomDomEvent<string>(emittingElement, 'myCustomEvent', 'Event payload');\n```\n\nCustom event options\n\n```typescript\nemitCustomEvent<string>(emittingElement, 'myCustomEvent', 'Event payload', {\n  bubbles: true,\n  cancelable: true, \n  composed: true\n});\n```\n\n### Event listening\n\nThe listening element could be a `RefObject<HTMLElement>`, `MutableRefObject<HTMLElement>` or a `HTMLElement`.\n\nThe provided callback is called with a native custom event of which you can use the common features like preventing the default behavior\nand so on. The payload is as usual part of the event as the member `detail`.\n\n```typescript\nimport { useRef } from 'react';\nimport { useCustomDomEventListener } from '@chroma-x/react-custom-dom-events';\n\nconst listenerElement = useRef(null);\n\nuseCustomDomEventListener<string>(listenerElement, 'myCustomEvent', (event): void => {\n  event.stopPropagation();\n  console.debug(event.detail);\n});\n\nreturn (\n  <div ref ={listenerElement} />\n);\n```\n\n`useCustomDomEventListener` returns a closure that allows you to remove the added event listener if required. \n\n```typescript\nimport { useRef } from 'react';\nimport { useCustomDomEventListener } from '@chroma-x/react-custom-dom-events';\n\nconst listenerElement = useRef(null);\n\nconst removeListener = useCustomDomEventListener<string>(listenerElement, 'myCustomEvent', (event): void => {\n  event.stopPropagation();\n  console.debug(event.detail);\n});\n\nconst handleClick = (): void => {\n  removeListener();\n};\n\nreturn (\n  <div ref={listenerElement}>\n    <button onClick={handleClick}>Remove event listener</button>\n  </div>\n);\n```\n\n`useCustomDomEventListener` makes use of the useEffect hook, so it can be used in functional components only.\n\nThere is no need to handle the removal of the event listener. Listeners are removed on component unmount by reacts useEffect destructor.\n","readmeFilename":"readme.md"}