Some useful monkey patches for the awesome Web APIs.
<script src="https://audinue.github.io/monkey/patches.js"></script>
prototype.offset: DOMPointReadOnly
🆕prototype.movement: DOMPointReadOnly
🆕
prototype.negate(): DOMPointReadOnly
🆕prototype.add(value: number): DOMPointReadOnly
🆕prototype.add(other: DOMPointReadOnly): DOMPointReadOnly
🆕prototype.substract(value: number): DOMPointReadOnly
🆕prototype.substract(other: DOMPointReadOnly): DOMPointReadOnly
🆕prototype.multiply(value: number): DOMPointReadOnly
🆕prototype.multiply(other: DOMPointReadOnly): DOMPointReadOnly
🆕prototype.divide(value: number): DOMPointReadOnly
🆕prototype.divide(other: DOMPointReadOnly): DOMPointReadOnly
🆕prototype.modulo(value: number): DOMPointReadOnly
🆕prototype.modulo(other: DOMPointReadOnly): DOMPointReadOnly
🆕prototype.distanceTo(other: DOMPointReadOnly): number
🆕fromSize(object: {width: number, height: number}): DOMPointReadOnly
🆕
prototype.contains(point: DOMPointReadOnly): boolean
🆕prototype.contains(other: DOMRectReadOnly): boolean
🆕prototype.intersects(other: DOMRectReadOnly): boolean
🆕prototype.inflate(value: number): DOMRectReadOnly
🆕prototype.inflate(point: DOMPointReadOnly): DOMRectReadOnly
🆕prototype.toPoints(): DOMPointReadOnly[]
🆕fromLTRB(left: number, top: number, right: number, bottom: number): DOMRectReadOnly
🆕fromPoints(points: DOMPointReadOnly[]): DOMRectReadOnly
🆕
prototype.transformPoints(points: DOMPointReadOnly[]): DOMPointReadOnly[]
🆕prototype.transformRect(rect: DOMRectReadOnly): DOMRectReadOnly
🆕
prototype.drawImage(image: CanvasImageSource, sx: number, sy: number, sWidth: number, sHeight: number, dx: number, dy: number, dWidth: number, dHeight: number): void
prototype.drawImage(image: CanvasImageSource, dx: number, dy: number, dWidth: number, dHeight: number): void
prototype.drawImage(image: CanvasImageSource, dx: number, dy: number): void
prototype.drawImage(image: CanvasImageSource): void
🆕prototype.translate(x: number, y: number): void
prototype.translate(point: DOMPointReadOnly): void
🆕prototype.rotateDegree(angle: number): void
prototype.scale(x: number, y: number): void
prototype.scale(value: number): void
🆕prototype.scale(point: DOMPointReadOnly): void
🆕prototype.transform(a: number, b: number, c: number, d: number, e: number, f: number): void
prototype.transform(matrix: DOMMatrixReadOnly): void
🆕prototype.fillRect(x: number, y: number, width: number, height: number): void
prototype.fillRect(rect: DOMRectReadOnly): void
🆕prototype.moveTo(x: number, y: number): void
prototype.moveTo(point: DOMPointReadOnly): void
🆕prototype.lineTo(x: number, y: number): void
prototype.lineTo(point: DOMPointReadOnly): void
🆕prototype.strokeRect(x: number, y: number, width: number, height: number): void
prototype.strokeRect(rect: DOMRectReadOnly): void
🆕prototype.strokeLine(x1: number, y1: number, x2: number, y2: number): void
🆕prototype.strokeLine(point1: DOMPointReadOnly, point2: DOMPointReadOnly): void
🆕