Dactyloidae/dom/webidl/AbortSignal.webidl
Moonchild 14c84e22a9 Issue #2676 - Implement AbortSignal.timeout()
This is a stub implementation because of the considerable abuse risk and
bad web code risk causing DoS, e.g. when using bad timeout values and
callbacks on the AbortSignal (e.g. recursive).
Considering the abort-ability of these signals otherwise there is never
a guarantee to websites that these signals will be triggered anyway, so
it should be considered an optional signal - meaning we can safely just
ignore the timeout, which allows us to avoid a ton of complexity and
potential sec/privacy issues.

Primary use in the wild seems to be detailed profiling/ad metrics anyway;
we don't really want to encourage that!
2025-01-20 21:06:19 +08:00

16 lines
583 B
Text

/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this file,
* You can obtain one at http://mozilla.org/MPL/2.0/.
*/
[Exposed=(Window,Worker),
Func="AbortController::IsEnabled"]
interface AbortSignal : EventTarget {
[NewObject] static AbortSignal abort();
[NewObject] static AbortSignal timeout(unsigned long long milliseconds);
readonly attribute boolean aborted;
attribute EventHandler onabort;
};