{"id":21363683,"url":"https://github.com/kevinokerlund/event-bundle","last_synced_at":"2025-10-13T08:13:53.672Z","repository":{"id":57145523,"uuid":"67067468","full_name":"kevinokerlund/event-bundle","owner":"kevinokerlund","description":"JavaScript library for organizing and managing DOM events in named bundles.","archived":false,"fork":false,"pushed_at":"2016-09-20T00:24:55.000Z","size":18,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-10-03T03:53:26.726Z","etag":null,"topics":["add","event-bundle","pause","remove"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kevinokerlund.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2016-08-31T19:34:42.000Z","updated_at":"2017-02-17T02:59:44.000Z","dependencies_parsed_at":"2022-09-05T22:31:00.028Z","dependency_job_id":null,"html_url":"https://github.com/kevinokerlund/event-bundle","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/kevinokerlund/event-bundle","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kevinokerlund%2Fevent-bundle","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kevinokerlund%2Fevent-bundle/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kevinokerlund%2Fevent-bundle/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kevinokerlund%2Fevent-bundle/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kevinokerlund","download_url":"https://codeload.github.com/kevinokerlund/event-bundle/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kevinokerlund%2Fevent-bundle/sbom","scorecard":{"id":557262,"data":{"date":"2025-08-11","repo":{"name":"github.com/kevinokerlund/event-bundle","commit":"0b377fcbf386f1d629b694fd7f127d956575d193"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":3,"checks":[{"name":"Pinned-Dependencies","score":-1,"reason":"no dependencies found","details":null,"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Code-Review","score":0,"reason":"Found 0/20 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"SAST","score":0,"reason":"no SAST tool detected","details":["Warn: no pull requests merged into dev branch"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Token-Permissions","score":-1,"reason":"No tokens found","details":null,"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Dangerous-Workflow","score":-1,"reason":"no workflows found","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'master'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}}]},"last_synced_at":"2025-08-20T12:42:04.802Z","repository_id":57145523,"created_at":"2025-08-20T12:42:04.802Z","updated_at":"2025-08-20T12:42:04.802Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279014289,"owners_count":26085489,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-13T02:00:06.723Z","response_time":61,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["add","event-bundle","pause","remove"],"created_at":"2024-11-22T06:20:43.228Z","updated_at":"2025-10-13T08:13:53.653Z","avatar_url":"https://github.com/kevinokerlund.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# event-bundle\n\nJavaScript library for organizing and managing DOM events in named bundles.\n\nTake more control over events in your application by managing related events. For example, you could pause an entire\ngroup of events while the user is in a particular state where they no longer need those events.\n\nThis library is UMD wrapped so it can be used with or without a module loader such as requireJS.\n\n## Install\n \n```shell \nnpm install --save event-bundle \n```\n\n_**Note:**_ If this library is exposed directly to the window, it operates under the global variable `EventBundle`.\nKeep in mind you may be in an environment that requires you explicitly expose it to the window (ex: webpack).\n\n## Example Usage\n```javascript\nvar EventBundle = require('event-bundle');\n\n// store an EventBundle to a variable\nvar searchEvents = new EventBundle('search');\n\n// add events to the bundle\nsearchEvents\n    .add(window, 'keydown', someFunction)\n    .add(searchInput, 'click', someOtherFunction);\n    \n// sometime later (for example when a modal opens)\nsearchEvents.pause();\n\n// sometime later (for example when a modal closes)\nsearchEvents.resume();\n```\n\n## Creating a new EventBundle\nCreate an individualized event bundle by using the EventBundle constructor. The `new` keyword is required to create a\nnew bundle.\n\n```javascript\nvar bundle = new EventBundle('bundleName');\n```\n\n## Adding an event\nAdded events are attached to the element. You can add as many events as you want to a bundle. If that exact event\n(same element, type, and callback) already exists on an element and belongs to another bundle, you will receive an\nerror.\n\n```javascript\nbundle.add(element, type, callback, options);\n```\n\n## Removing an event\nRemoving events from the bundle also removes the event from the element.\n\n```javascript\nbundle.remove(element, type, callback, options);\n```\n\n## Pausing all events in a bundle\nYou can pause all of the events in bundle indefinitely. If events are added to a bundle while it is \"paused\", those new\nevents will automatically be in the \"paused\" state.\n\n```javascript\nbundle.pause();\n```\n\n## Resuming all events in a bundle\n```javascript\nbundle.resume();\n```\n\n## Removing all events from a bundle\nWhen removing all the events from the bundle, it also removes all of the events from their elements.\n\nThere are two ways to do this. You can call `empty` on an EventBundle instance, or use the static `empty` method.\n\nUsing the bundle instance:\n```javascript\nbundle.empty();\n```\n\nUsing the static `empty` method:\n```javascript\nEventBundle.empty('bundleName');\n```\nA string is passed that is the name of a bundle.\n\n## Get an EventBundle instance\nIf you do not have the EventBundle instance currently available to you, you can get an EventBundle by name. The name of\nthe bundle (as a string) is passed to the method. \n\n```javascript\nEventBundle.get('bundleName');\n```\n\n## Get an array of EventBundle names\nThis is a `getter` (not a function) on the EventBundle window object.\n```javascript\nEventBundle.bundleNames;\n// returns an array of bundle names (ex: ['search', 'modal'])\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkevinokerlund%2Fevent-bundle","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkevinokerlund%2Fevent-bundle","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkevinokerlund%2Fevent-bundle/lists"}