// Copyright 2021 Signal Messenger, LLC // SPDX-License-Identifier: AGPL-3.0-only import { fabric } from 'fabric'; export class MediaEditorFabricPath extends fabric.Path { constructor( path?: string | Array, options?: fabric.IPathOptions ) { super(path, { evented: false, fill: undefined, hasControls: false, lockScalingFlip: true, selectable: false, ...(options || {}), }); } static override fromObject( // eslint-disable-next-line max-len // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/explicit-module-boundary-types options: any, callback: (_: MediaEditorFabricPath) => unknown ): MediaEditorFabricPath { const result = new MediaEditorFabricPath(options.path, options); callback(result); return result; } } MediaEditorFabricPath.prototype.type = 'MediaEditorFabricPath'; MediaEditorFabricPath.prototype.borderColor = '#ffffff';