{"_id":"@career.madhava/dom-event-utils","_rev":"4-29e526d67f3ca18144909da76d2b65e8","name":"@career.madhava/dom-event-utils","dist-tags":{"latest":"1.1.3"},"versions":{"1.1.0":{"name":"@career.madhava/dom-event-utils","version":"1.1.0","description":"Very small library that makes working with DOM event emitters API a little easier to work with","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"build":"tsc","test":"jest --config=jest.config.json","prepublish":"npm test"},"keywords":["events","eventemitter","util"],"author":{"name":"Cameron Nokes"},"license":"MIT","devDependencies":{"@types/jest":"^22.1.4","@types/node":"^9.4.6","jest":"^22.4.2","ts-jest":"^22.4.1","typescript":"^2.7.2"},"gitHead":"25345b7526cc975a678e8ccb605fe20b90c9637f","_id":"@career.madhava/dom-event-utils@1.1.0","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"career.madhava","email":"career.madhava@gmail.com"},"dist":{"integrity":"sha512-ej92hhMJXawHJEqQ/STBQD0WKVI19860YMXZS/je2nHV2GFjEnTf9e2HnyUqBigdz6EeU0rS3vL+TWoKGkQcTw==","shasum":"4b3c335d5759d80ed8fc4ff527c81aa9f952b4af","tarball":"https://registry.npmjs.org/@career.madhava/dom-event-utils/-/dom-event-utils-1.1.0.tgz","fileCount":4,"unpackedSize":9987,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb1monCRA9TVsSAnZWagAAk34P/2qBxnjLr3h5oirliPZJ\ngzgL9L2b1t2bhRP/gTaX2SueGsCVA2dLQNAcnIVS66C9SScJ9kLGN7HDmrKg\nAqiVvhSxgqpoW7nzwO1ic4hi256voYV36NIEZM/3r+S1LBNg76rIFxYrQJjq\nJi8/8jRwNkH+K01CtuZQM2zr08q5J9Z/MPOwYmkW/UKLT0ptn2sahfYoxmc/\nwA0wRtio9rkeQHdkWPwF/xUMoSrylskgu0Wmwxg5PyxoyVmHGDLfO+Q6wzZ+\nZn/NSP+9jJoPkSRsJh9wBYP06ls5hb+5hyBeyhYuxLpaClIT2nYVQjTBLipP\nZYIqXu3rzruIpgbTVWlv/GbSTFyvx6xvxXVBO9cKdc7KWhOjs1CGwfRAx8DG\nl42Y+XKMA7aiyqDrKCaNIoLBKscuGXnuqLo/AfekW2alSC3ceii7secz88kx\nv3kITRjaf//Uxl75NmteZ4YppWcSv7sv+t5EB5/42aDgp8B1AicEZ/o/emX4\n4ZV5Og+TYAzml9kEYlDvh+/y8njk8qLc8JcHYS8aQ7l3W+r6zXRaYsmo4yg8\nvNrnoVDxJsJgEL9mskmUJNermiWZM5HyAWxL9R+KAZMqsecy8Fa5f84ZEmIQ\nhFsdWbXeH5VfsK5h+Q/ch3dPafodpIqNunB3NuZwvz0UZrAU4ho2SUKrW3e+\nPSum\r\n=LVRU\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIE80DSEW506/xGj3Lpfr3xVWjm3HMFLmO+NrOBzd65gxAiBkiMdQ/5E+AMgubS/qptnt1z0TcX34jJ7f7/lM8Rf+SQ=="}]},"maintainers":[{"name":"career.madhava","email":"career.madhava@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/dom-event-utils_1.1.0_1540778534576_0.8369988915999056"},"_hasShrinkwrap":false},"1.1.1":{"name":"@career.madhava/dom-event-utils","version":"1.1.1","description":"Very small library that makes working with DOM event emitters API a little easier to work with","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"build":"tsc","test":"jest --config=jest.config.json","prepublish":"npm test"},"keywords":["events","eventemitter","util"],"author":{"name":"Cameron Nokes"},"license":"MIT","devDependencies":{"@types/jest":"^22.1.4","@types/node":"^9.4.6","jest":"^22.4.2","ts-jest":"^22.4.1","typescript":"^2.7.2"},"gitHead":"25345b7526cc975a678e8ccb605fe20b90c9637f","_id":"@career.madhava/dom-event-utils@1.1.1","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"career.madhava","email":"career.madhava@gmail.com"},"dist":{"integrity":"sha512-kbAlmzl/zBDbHWoxWZOWE8veRhhoj9gEOeYJ8huerbctpXzfxEEpZO2YRq505n0Fn0C9ivPKThTEB1YbYRbdtg==","shasum":"4edeaaa6f3dc1689587eeff88bea311fd4934a0b","tarball":"https://registry.npmjs.org/@career.madhava/dom-event-utils/-/dom-event-utils-1.1.1.tgz","fileCount":6,"unpackedSize":13719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb1mxTCRA9TVsSAnZWagAA47oP/0aSGYkKQJacNppXlarb\n90emFgM1NuJmeMc7HL9d6E6WkbapQx9BLTnMNfrTKju0t9q8F39EGNRslhUR\nQjMJSEhFGqUwXA400Q6/3FhVdy/60ZbTq2FRWvnp1Zxb0HKJ8FSQN3ebjWoq\nQTsWqcsiHjQMg2YCUMd5d2qvuXrXpj9uco6MBpiIKEYc60XetOjBYMViTEEX\nHgP0ELr+jJJq7JZERurNRBluYUnIsFaBHl6DsrzltLMBSSspvI7oLQwuDWYg\nWEtW05FSoHQIxCs3gOeJGS+fxKuUgnu5eNVKn/uZYr4t+V1IULlCYnGqXABf\n/ZqmDEza+59UXbF8bo1wOua22mEnMOAwUf5OMynsnjOaGN4/4fO7Mb8OvLl/\ngETvZ3JELktnNpSYBAmsRDy14wwNBBYiJIgpzng5HPiN6ttABcA/6SrYmnHi\nlqUoBiYaM7HuNcqNDsP45MHky2EpfRHXu4qT/V0QXusugAwo32ILPEpKPDtz\naEw6UDQ3UNAN2lnRFFSlag/hc9x2g/3qn3xkf7ZY8OoHu2TZ+SvieB23UtXk\nLEOfqehkGbSmkXDlnaBhJkSiuZrlz9dkvTeZfKT0HBjUl2NU5gXg6i2yQgLK\nfRzTtS5BUBCJTTj9kKRUH+GulSXGlsRCi+SzeEVObZSzP4Inv+Z1OAk9QVdI\ncSa1\r\n=xqQt\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCQBDWfrPEGJsIUdAmADq4Xppt7p6ER/1INFcgfmnIygwIgK5taoDeLK/kGhUOfYLi3o5G0FHaFrIAeDiNguXYxhnI="}]},"maintainers":[{"name":"career.madhava","email":"career.madhava@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/dom-event-utils_1.1.1_1540779090504_0.060737080983024105"},"_hasShrinkwrap":false},"1.1.2":{"name":"@career.madhava/dom-event-utils","version":"1.1.2","description":"Very small library that makes working with DOM event emitters API a little easier to work with","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"prepare":"npm run build","build":"tsc","test":"jest --config=jest.config.json","prepublish":"npm test"},"keywords":["events","eventemitter","util"],"author":{"name":"Cameron Nokes"},"license":"MIT","devDependencies":{"@types/jest":"^22.1.4","@types/node":"^9.4.6","jest":"^22.4.2","ts-jest":"^22.4.1","typescript":"^2.7.2"},"gitHead":"25345b7526cc975a678e8ccb605fe20b90c9637f","_id":"@career.madhava/dom-event-utils@1.1.2","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"career.madhava","email":"career.madhava@gmail.com"},"dist":{"integrity":"sha512-XmFZlE6XDhNjXvTaNoi2RwC6YIrr3Y5DBdtcAlEN+j0/p5RdfXw2t+JLECu5VQQOx3FAUtJQPePxDCYRtAwGyw==","shasum":"0616a273d3f2f25fca205ac1847f384f1698b066","tarball":"https://registry.npmjs.org/@career.madhava/dom-event-utils/-/dom-event-utils-1.1.2.tgz","fileCount":6,"unpackedSize":13748,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb1pzICRA9TVsSAnZWagAA07EP/2tM2hZHP+rDlW4OVeSc\nXSq21CID8fqwH8HMh178VwYnFxqs5wDfJV0rk+BZPSoMGWNKiFqkEKEiRqdc\n0kAsNQDfPbeUObmKefkAZ0QQf4SK4jo2vXiFByasUu7udnpGTkj4d8GrYryO\nMEj6/TXfvCxQAo6dMLPMCJLuBbHuuF1KGsO3HrBEqvBJGPbx/nTE4vFyD3px\n9Vvscxk/TLZk2urgpu+qIA2oXwxUzZuz7s5yQAfaZe176uMorQ8vatSqhrJK\nqZ2dUB3e8LhPaG14OxIgHqyZuO6GaO0gCDfzSNCUbSJ1BA1avle77347vRAY\nlW0Bxd5vI4T8U0VmfMsvrnYx/X1e5SXO7TG+gA6sCWSaO4KbZCYNFXRmZQcf\nE1iBy4EB5FOSy7A8fHVqGIlC2NVPgWRVgsN7Y0eF77JWOymyHqmz7js0e86y\nG3x70z3yXzoZ4RswE96C0F+3D+nvWTvYpS4bpqMMU3xfSNe3gkQyf2/b/o9X\n46uhmBJxkovcjsv41TVKpb6ltvKx/dz8k69jT9ZbhpXaCCfbbKLuFDqpxxkS\nZdF/miLNIDVH8arKDNUF+xZd8ddeUmNE3ay/gYYDTgC6y294ZbAzHDMmYP8M\nBWcZJPWhjiYnW83soq3JQ0G7iu9rRkmVQuj4uCr6WEeHI+OQEesI1p3si97h\nYcgr\r\n=FKKL\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDrSxXxj/+Qv8y6QplU3gUOOhugGQXKoQV/SDUPhhMs6QIgBgTDSefnitJzdUMfJS+LrF5qm5b/nJgYNZeGyCcph+4="}]},"maintainers":[{"name":"career.madhava","email":"career.madhava@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/dom-event-utils_1.1.2_1540791495594_0.5267071701189776"},"_hasShrinkwrap":false},"1.1.3":{"name":"@career.madhava/dom-event-utils","version":"1.1.3","description":"Very small library that makes working with DOM event emitters API a little easier to work with","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"prepare":"npm run build","build":"tsc","test":"jest --config=jest.config.json","prepublishOnly":"npm test"},"keywords":["events","eventemitter","util"],"author":{"name":"Cameron Nokes"},"license":"MIT","devDependencies":{"@types/jest":"^22.1.4","@types/node":"^9.4.6","jest":"^22.4.2","ts-jest":"^22.4.1","typescript":"^2.7.2"},"gitHead":"25345b7526cc975a678e8ccb605fe20b90c9637f","_id":"@career.madhava/dom-event-utils@1.1.3","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"career.madhava","email":"career.madhava@gmail.com"},"dist":{"integrity":"sha512-7hkRC+MVeRgth0Mdvf5Y0WlIzsDr0kJHOd/8yu+L1wbaZr8eBHSBaM5A1hZsoh1wWVPVWbvomrkmxBPrwIgXeg==","shasum":"48d366c9835e1484b319f546324f08d1d72c6855","tarball":"https://registry.npmjs.org/@career.madhava/dom-event-utils/-/dom-event-utils-1.1.3.tgz","fileCount":5,"unpackedSize":10778,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb1p/wCRA9TVsSAnZWagAAZ5UP/RieafT3bUXh2kJhgD4l\nDJczc+vFO3tI0X7cF+ON1uRXPb153DKii6Hm3N6qxh3QtbJ4SRnuKuXv3T97\neVhSmfxqE5uSESdqws5Ffla7mg9rELFl4EU3PRDJY2Mw550NXQPSRogGGev0\nXmvTCnnr8jkBSg94mqnzQwLDA2XL7GwIMeC/ynB3JP8jTAsQreViCUHvqFzi\n2J/HEpstTXlDyOKbcKSWFnVdd8ZyRbwETx0Z8m6HmmsZEstMotqBTdMDtmIV\nmWWYdwKE9ZkfyqHvM68z5gqjYMkjzUbOFPycKEnhUY1tVhOfLWdZ7T8reXAP\nld6kv7pTSvxoQa+cwEIlv45uisvelMwzHjY6ei67aQCFJd7OvENTu4a0U+A9\nu6QXvVI+cd81PvXUmGO59f7GZqAdobZdhPGuQ76+6Y687zwuwWPgeT/d6A+J\nin6TFD1ep49ETIsToVNLY7el4WMehE154BAi9+VqClaAbWGXIUkJOD+jSkFx\ncYv6O7Qss1CzKw7dg2CWIBjeZJX5KrI5Oz1UvufgkZDBIwhsOxUMZ3Gr0dDd\n5tiAVHIdRq3KM0qAKVx7129U7MzfHerN20NEM5KEpXa1+HusCzGwAIcfIhdM\nrYzrJTBBJuMctZJ9JQok5yLceEkogb98mN0CXyfGmMrbnXVA2amVNOLIFegN\nsd/4\r\n=q+5v\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBejoFRt98BQVxoIyTyQoLPKdkU44Z6kofTYG6l8H2GcAiEAz+740zAmv4GAiokqm4idO3eH8blN7Ki7xDy/4EtcSU8="}]},"maintainers":[{"name":"career.madhava","email":"career.madhava@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/dom-event-utils_1.1.3_1540792303855_0.5052525230690661"},"_hasShrinkwrap":false}},"time":{"created":"2018-10-29T02:02:14.416Z","1.1.0":"2018-10-29T02:02:14.738Z","modified":"2022-04-04T21:53:35.002Z","1.1.1":"2018-10-29T02:11:30.621Z","1.1.2":"2018-10-29T05:38:15.782Z","1.1.3":"2018-10-29T05:51:44.033Z"},"maintainers":[{"name":"career.madhava","email":"career.madhava@gmail.com"}],"description":"Very small library that makes working with DOM event emitters API a little easier to work with","keywords":["events","eventemitter","util"],"author":{"name":"Cameron Nokes"},"license":"MIT","readme":"# dom-event-utils\r\n\r\nVery small library that makes working with DOM event emitters API a little easier to work with. These are all common utilities that I find myself reaching for, regardless of the framework I'm in.\r\n\r\n### Methods\r\n\r\n`eventToPromise` - convert an event to a promise that resolves once it's called.\r\nFor example:\r\n\r\n```javascript\r\nimport { eventToPromise } from 'dom-event-utils';\r\n\r\nfunction createPopup() {\r\n  const popup = window.open('/my-popup');\r\n  return eventToPromise(popup, 'load', () => {\r\n    // do stuff here\r\n    return popup;\r\n  }, 10000); //timeout is optional. If reached, it'll reject the promise\r\n}\r\n```\r\n\r\n`on` - just like `addEventListener`, but returns an unsubscribe function.\r\n```javascript\r\nimport { on } from 'dom-event-utils';\r\n\r\nconst off = on(document.querySelector('.btn'), 'click', () => { /* click handler */ });\r\n//...later, somewhere else...\r\noff();\r\n```\r\n\r\n`once` - only called once and then unsubscribed from the event source\r\n```javascript\r\nimport { once } from 'event-utils';\r\n\r\nonce(document, 'DOMContentLoaded', () => {\r\n  //...do things here\r\n});\r\n```\r\n","readmeFilename":"README.md"}