Various global utilities that are not included in the ECMAScript and WHATWG/W3C APIs. Not focusing on web DOM APIs for now, as I plan to use this for other purposes.
Clutter the global object by using the following import statement:
import "com.sweaxizone.w3c.extension";The following class defines play and stop events.
// media player
class MediaPlayer extends SAEventTarget {
// declare events
declare [EventRecord]: {
play: MediaPlayerEvent,
stop: MediaPlayerEvent,
};
}Extending MediaPlayer with more events:
// media player
class MoreSpecializedPlayer extends MediaPlayer {
// declare events
declare [EventRecord]: MediaPlayer[typeof EventRecord] & {
// more events...
};
}Note that event types must implement the
Eventinterface.
assertAssertionErrortrace(...)(equivalent toconsole.log())etrace(...)(equivalent toconsole.error())Math.clamp(value, from, to)BigInt.min(...)BigInt.max(...)SAByteArray(like Adobe Flash'sByteArray)isXMLName(argument)(like E4X'sisXMLName())Namespace(like E4X'sNamespace)QName(like E4X'sQName)Iterator.prototype.length()CharsString.prototype.chars()
Apache 2.0