{"id":20906960,"url":"https://github.com/js2me/linked-abort-controller","last_synced_at":"2026-04-25T00:35:25.438Z","repository":{"id":262421714,"uuid":"887184451","full_name":"js2me/linked-abort-controller","owner":"js2me","description":null,"archived":false,"fork":false,"pushed_at":"2024-12-19T14:12:09.000Z","size":60,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-01-19T14:43:29.971Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"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/js2me.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-11-12T10:07:12.000Z","updated_at":"2024-12-19T14:12:08.000Z","dependencies_parsed_at":"2024-11-12T11:20:02.482Z","dependency_job_id":"a780826c-58d2-41bc-912d-c6990f6f8375","html_url":"https://github.com/js2me/linked-abort-controller","commit_stats":null,"previous_names":["js2me/linked-abort-controller"],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/js2me%2Flinked-abort-controller","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/js2me%2Flinked-abort-controller/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/js2me%2Flinked-abort-controller/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/js2me%2Flinked-abort-controller/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/js2me","download_url":"https://codeload.github.com/js2me/linked-abort-controller/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243300752,"owners_count":20269260,"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","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":[],"created_at":"2024-11-18T13:36:15.828Z","updated_at":"2025-12-29T00:34:22.327Z","avatar_url":"https://github.com/js2me.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# LinkedAbortController    \n\nSame as AbortController but with sugar for linking outer abort signals  \n\n```ts\nexport class LinkedAbortController extends AbortController {\n  constructor(...abortSignals: (AbortSignal | undefined)[]) {\n    super();\n    this.link(...abortSignals);\n  }\n\n  link(...abortSignals: (AbortSignal | undefined)[]) {\n    abortSignals.forEach((abortSignal) =\u003e {\n      abortSignal?.addEventListener('abort', () =\u003e {\n        this.abort(abortSignal.reason);\n      });\n    });\n  }\n}\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjs2me%2Flinked-abort-controller","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjs2me%2Flinked-abort-controller","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjs2me%2Flinked-abort-controller/lists"}