fabric 5.3.0 → 6.0.0-beta3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.babelrc +11 -0
- package/.babelrcAlt +19 -0
- package/.browserslistrc +5 -0
- package/.eslintignore +3 -0
- package/.eslintrc.js +43 -0
- package/.eslintrc.json +38 -46
- package/.eslintrc_tests +12 -0
- package/.gitattributes +2 -0
- package/.gitpod.yml +17 -1
- package/.prettierignore +19 -0
- package/.prettierrc +4 -0
- package/CHANGELOG.md +532 -189
- package/CONTRIBUTING.md +224 -59
- package/README.md +200 -235
- package/bower.json +1 -3
- package/dist/fabric.d.ts +42 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +27582 -0
- package/dist/index.js.map +1 -0
- package/dist/index.min.js +1 -0
- package/dist/index.mjs +27519 -0
- package/dist/index.mjs.map +1 -0
- package/dist/index.node.cjs +27663 -0
- package/dist/index.node.cjs.map +1 -0
- package/dist/index.node.d.ts +14 -0
- package/dist/index.node.mjs +27606 -0
- package/dist/index.node.mjs.map +1 -0
- package/dist/src/ClassRegistry.d.ts +13 -0
- package/dist/src/Collection.d.ts +136 -0
- package/dist/src/CommonMethods.d.ts +32 -0
- package/dist/src/EventTypeDefs.d.ts +227 -0
- package/dist/src/Intersection.d.ts +112 -0
- package/dist/src/Observable.d.ts +60 -0
- package/dist/src/Pattern.d.ts +113 -0
- package/dist/src/Point.d.ts +232 -0
- package/dist/src/Shadow.d.ts +97 -0
- package/dist/src/brushes/BaseBrush.d.ts +105 -0
- package/dist/src/brushes/CircleBrush.d.ts +49 -0
- package/dist/src/brushes/PatternBrush.d.ts +23 -0
- package/dist/src/brushes/PencilBrush.d.ts +92 -0
- package/dist/src/brushes/SprayBrush.d.ts +79 -0
- package/dist/src/cache.d.ts +47 -0
- package/dist/src/canvas/Canvas.d.ts +548 -0
- package/dist/src/canvas/SelectableCanvas.d.ts +754 -0
- package/dist/src/canvas/StaticCanvas.d.ts +778 -0
- package/dist/src/canvas/TextEditingManager.d.ts +17 -0
- package/dist/src/canvas/canvas_gestures.mixin.d.ts +2 -0
- package/dist/src/color/Color.d.ts +174 -0
- package/dist/src/color/color_map.d.ts +155 -0
- package/dist/src/color/constants.d.ts +22 -0
- package/dist/src/color/util.d.ts +12 -0
- package/dist/src/config.d.ts +115 -0
- package/dist/src/constants.d.ts +14 -0
- package/dist/src/controls/Control.d.ts +228 -0
- package/dist/src/controls/changeWidth.d.ts +13 -0
- package/dist/src/controls/commonControls.d.ts +28 -0
- package/dist/src/controls/controlRendering.d.ts +29 -0
- package/dist/src/controls/drag.d.ts +12 -0
- package/dist/src/controls/index.d.ts +13 -0
- package/dist/src/controls/polyControl.d.ts +5 -0
- package/dist/src/controls/rotate.d.ts +12 -0
- package/dist/src/controls/scale.d.ts +47 -0
- package/dist/src/controls/scaleSkew.d.ts +39 -0
- package/dist/src/controls/skew.d.ts +33 -0
- package/dist/src/controls/util.d.ts +41 -0
- package/dist/src/controls/wrapWithFireEvent.d.ts +8 -0
- package/dist/src/controls/wrapWithFixedAnchor.d.ts +9 -0
- package/dist/src/env/browser.d.ts +3 -0
- package/dist/src/env/index.d.ts +15 -0
- package/dist/src/env/node.d.ts +5 -0
- package/dist/src/env/types.d.ts +15 -0
- package/dist/src/filters/BaseFilter.d.ts +153 -0
- package/dist/src/filters/BlendColor.d.ts +80 -0
- package/dist/src/filters/BlendImage.d.ts +92 -0
- package/dist/src/filters/Blur.d.ts +51 -0
- package/dist/src/filters/Boilerplate.d.ts +48 -0
- package/dist/src/filters/Brightness.d.ts +47 -0
- package/dist/src/filters/Canvas2dFilterBackend.d.ts +27 -0
- package/dist/src/filters/ColorMatrix.d.ts +63 -0
- package/dist/src/filters/ColorMatrixFilters.d.ts +545 -0
- package/dist/src/filters/Composed.d.ts +45 -0
- package/dist/src/filters/Contrast.d.ts +45 -0
- package/dist/src/filters/Convolute.d.ts +82 -0
- package/dist/src/filters/FilterBackend.d.ts +14 -0
- package/dist/src/filters/GLProbes/GLProbe.d.ts +11 -0
- package/dist/src/filters/GLProbes/NodeGLProbe.d.ts +11 -0
- package/dist/src/filters/GLProbes/WebGLProbe.d.ts +20 -0
- package/dist/src/filters/Gamma.d.ts +54 -0
- package/dist/src/filters/Grayscale.d.ts +46 -0
- package/dist/src/filters/HueRotation.d.ts +24 -0
- package/dist/src/filters/Invert.d.ts +55 -0
- package/dist/src/filters/Noise.d.ts +54 -0
- package/dist/src/filters/Pixelate.d.ts +44 -0
- package/dist/src/filters/RemoveColor.d.ts +63 -0
- package/dist/src/filters/Resize.d.ts +136 -0
- package/dist/src/filters/Saturation.d.ts +48 -0
- package/dist/src/filters/Vibrance.d.ts +48 -0
- package/dist/src/filters/WebGLFilterBackend.d.ts +126 -0
- package/dist/src/filters/filters.d.ts +21 -0
- package/dist/src/filters/index.d.ts +5 -0
- package/dist/src/filters/shaders/baseFilter.d.ts +4 -0
- package/dist/src/filters/shaders/blendColor.d.ts +13 -0
- package/dist/src/filters/shaders/blendImage.d.ts +3 -0
- package/dist/src/filters/shaders/blur.d.ts +2 -0
- package/dist/src/filters/shaders/brightness.d.ts +2 -0
- package/dist/src/filters/shaders/colorMatrix.d.ts +2 -0
- package/dist/src/filters/shaders/constrast.d.ts +2 -0
- package/dist/src/filters/shaders/convolute.d.ts +11 -0
- package/dist/src/filters/shaders/gamma.d.ts +2 -0
- package/dist/src/filters/shaders/grayscale.d.ts +3 -0
- package/dist/src/filters/shaders/invert.d.ts +2 -0
- package/dist/src/filters/shaders/noise.d.ts +2 -0
- package/dist/src/filters/shaders/pixelate.d.ts +2 -0
- package/dist/src/filters/shaders/removeColor.d.ts +2 -0
- package/dist/src/filters/shaders/saturation.d.ts +2 -0
- package/dist/src/filters/shaders/vibrance.d.ts +2 -0
- package/dist/src/filters/typedefs.d.ts +49 -0
- package/dist/src/gradient/Gradient.d.ts +149 -0
- package/dist/src/gradient/constants.d.ts +15 -0
- package/dist/src/gradient/parser/index.d.ts +4 -0
- package/dist/src/gradient/parser/misc.d.ts +4 -0
- package/dist/src/gradient/parser/parseColorStops.d.ts +3 -0
- package/dist/src/gradient/parser/parseCoords.d.ts +17 -0
- package/dist/src/gradient/typedefs.d.ts +93 -0
- package/dist/src/mixins/eraser_brush.mixin.d.ts +2 -0
- package/dist/src/parkinglot/canvas_animation.mixin.d.ts +2 -0
- package/dist/src/parkinglot/straighten.d.ts +2 -0
- package/dist/src/parser/applyViewboxTransform.d.ts +5 -0
- package/dist/src/parser/attributes.d.ts +6 -0
- package/dist/src/parser/constants.d.ts +53 -0
- package/dist/src/parser/doesSomeParentMatch.d.ts +2 -0
- package/dist/src/parser/elementById.d.ts +6 -0
- package/dist/src/parser/elementMatchesRule.d.ts +5 -0
- package/dist/src/parser/elements_parser.d.ts +3 -0
- package/dist/src/parser/getCSSRules.d.ts +7 -0
- package/dist/src/parser/getGlobalStylesForElement.d.ts +5 -0
- package/dist/src/parser/getGradientDefs.d.ts +7 -0
- package/dist/src/parser/getMultipleNodes.d.ts +2 -0
- package/dist/src/parser/getSvgRegex.d.ts +2 -0
- package/dist/src/parser/hasAncestorWithNodeName.d.ts +2 -0
- package/dist/src/parser/index.d.ts +10 -0
- package/dist/src/parser/loadSVGFromString.d.ts +12 -0
- package/dist/src/parser/loadSVGFromURL.d.ts +13 -0
- package/dist/src/parser/normalizeAttr.d.ts +2 -0
- package/dist/src/parser/normalizeValue.d.ts +2 -0
- package/dist/src/parser/parseAttributes.d.ts +9 -0
- package/dist/src/parser/parseElements.d.ts +11 -0
- package/dist/src/parser/parseFontDeclaration.d.ts +10 -0
- package/dist/src/parser/parsePointsAttribute.d.ts +12 -0
- package/dist/src/parser/parseSVGDocument.d.ts +15 -0
- package/dist/src/parser/parseStyleAttribute.d.ts +9 -0
- package/dist/src/parser/parseStyleObject.d.ts +2 -0
- package/dist/src/parser/parseStyleString.d.ts +2 -0
- package/dist/src/parser/parseTransformAttribute.d.ts +10 -0
- package/dist/src/parser/parseUseDirectives.d.ts +2 -0
- package/dist/src/parser/percent.d.ts +9 -0
- package/dist/src/parser/recursivelyParseGradientsXlink.d.ts +2 -0
- package/dist/src/parser/rotateMatrix.d.ts +2 -0
- package/dist/src/parser/scaleMatrix.d.ts +2 -0
- package/dist/src/parser/selectorMatches.d.ts +2 -0
- package/dist/src/parser/setStrokeFillOpacity.d.ts +6 -0
- package/dist/src/parser/skewMatrix.d.ts +2 -0
- package/dist/src/parser/translateMatrix.d.ts +2 -0
- package/dist/src/shapes/ActiveSelection.d.ts +82 -0
- package/dist/src/shapes/Circle.d.ts +99 -0
- package/dist/src/shapes/Ellipse.d.ts +84 -0
- package/dist/src/shapes/Group.d.ts +408 -0
- package/dist/src/shapes/IText/DraggableTextDelegate.d.ts +78 -0
- package/dist/src/shapes/IText/IText.d.ts +335 -0
- package/dist/src/shapes/IText/ITextBehavior.d.ts +287 -0
- package/dist/src/shapes/IText/ITextClickBehavior.d.ts +83 -0
- package/dist/src/shapes/IText/ITextKeyBehavior.d.ts +195 -0
- package/dist/src/shapes/IText/constants.d.ts +13 -0
- package/dist/src/shapes/Image.d.ts +311 -0
- package/dist/src/shapes/Line.d.ts +126 -0
- package/dist/src/shapes/Object/AnimatableObject.d.ts +33 -0
- package/dist/src/shapes/Object/FabricObject.d.ts +11 -0
- package/dist/src/shapes/Object/FabricObjectSVGExportMixin.d.ts +74 -0
- package/dist/src/shapes/Object/InteractiveObject.d.ts +296 -0
- package/dist/src/shapes/Object/Object.d.ts +594 -0
- package/dist/src/shapes/Object/ObjectGeometry.d.ts +327 -0
- package/dist/src/shapes/Object/ObjectOrigin.d.ts +109 -0
- package/dist/src/shapes/Object/StackedObject.d.ts +72 -0
- package/dist/src/shapes/Object/defaultValues.d.ts +76 -0
- package/dist/src/shapes/Object/types/BaseProps.d.ts +84 -0
- package/dist/src/shapes/Object/types/BorderProps.d.ts +37 -0
- package/dist/src/shapes/Object/types/ControlProps.d.ts +62 -0
- package/dist/src/shapes/Object/types/FabricObjectProps.d.ts +96 -0
- package/dist/src/shapes/Object/types/FillStrokeProps.d.ts +80 -0
- package/dist/src/shapes/Object/types/LockInteractionProps.d.ts +51 -0
- package/dist/src/shapes/Object/types/ObjectProps.d.ts +42 -0
- package/dist/src/shapes/Object/types/SerializedObjectProps.d.ts +66 -0
- package/dist/src/shapes/Object/types/index.d.ts +6 -0
- package/dist/src/shapes/Path.d.ts +130 -0
- package/dist/src/shapes/Polygon.d.ts +9 -0
- package/dist/src/shapes/Polyline.d.ts +140 -0
- package/dist/src/shapes/Rect.d.ts +76 -0
- package/dist/src/shapes/Text/StyledText.d.ts +119 -0
- package/dist/src/shapes/Text/Text.d.ts +673 -0
- package/dist/src/shapes/Text/TextSVGExportMixin.d.ts +32 -0
- package/dist/src/shapes/Text/constants.d.ts +7 -0
- package/dist/src/shapes/Textbox.d.ts +185 -0
- package/dist/src/shapes/Triangle.d.ts +25 -0
- package/dist/src/typedefs.d.ts +90 -0
- package/dist/src/util/animation/AnimationBase.d.ts +54 -0
- package/dist/src/util/animation/AnimationFrameProvider.d.ts +3 -0
- package/dist/src/util/animation/AnimationRegistry.d.ts +29 -0
- package/dist/src/util/animation/ArrayAnimation.d.ts +10 -0
- package/dist/src/util/animation/ColorAnimation.d.ts +11 -0
- package/dist/src/util/animation/ValueAnimation.d.ts +10 -0
- package/dist/src/util/animation/animate.d.ts +37 -0
- package/dist/src/util/animation/easing.d.ts +130 -0
- package/dist/src/util/animation/types.d.ts +87 -0
- package/dist/src/util/applyMixins.d.ts +8 -0
- package/dist/src/util/dom_event.d.ts +5 -0
- package/dist/src/util/dom_misc.d.ts +39 -0
- package/dist/src/util/dom_request.d.ts +14 -0
- package/dist/src/util/dom_style.d.ts +7 -0
- package/dist/src/util/fireEvent.d.ts +3 -0
- package/dist/src/util/index.d.ts +35 -0
- package/dist/src/util/internals/cloneDeep.d.ts +2 -0
- package/dist/src/util/internals/getRandomInt.d.ts +8 -0
- package/dist/src/util/internals/ifNaN.d.ts +8 -0
- package/dist/src/util/internals/index.d.ts +4 -0
- package/dist/src/util/internals/removeFromArray.d.ts +9 -0
- package/dist/src/util/internals/uid.d.ts +2 -0
- package/dist/src/util/lang_string.d.ts +22 -0
- package/dist/src/util/misc/boundingBoxFromPoints.d.ts +9 -0
- package/dist/src/util/misc/capValue.d.ts +2 -0
- package/dist/src/util/misc/cos.d.ts +10 -0
- package/dist/src/util/misc/dom.d.ts +28 -0
- package/dist/src/util/misc/findScaleTo.d.ts +29 -0
- package/dist/src/util/misc/groupSVGElements.d.ts +9 -0
- package/dist/src/util/misc/isTransparent.d.ts +11 -0
- package/dist/src/util/misc/matrix.d.ts +92 -0
- package/dist/src/util/misc/mergeClipPaths.d.ts +23 -0
- package/dist/src/util/misc/objectEnlive.d.ts +56 -0
- package/dist/src/util/misc/objectTransforms.d.ts +68 -0
- package/dist/src/util/misc/pick.d.ts +9 -0
- package/dist/src/util/misc/planeChange.d.ts +84 -0
- package/dist/src/util/misc/projectStroke/StrokeLineCapProjections.d.ts +51 -0
- package/dist/src/util/misc/projectStroke/StrokeLineJoinProjections.d.ts +81 -0
- package/dist/src/util/misc/projectStroke/StrokeProjectionsBase.d.ts +25 -0
- package/dist/src/util/misc/projectStroke/index.d.ts +11 -0
- package/dist/src/util/misc/projectStroke/types.d.ts +23 -0
- package/dist/src/util/misc/radiansDegreesConversion.d.ts +14 -0
- package/dist/src/util/misc/resolveOrigin.d.ts +9 -0
- package/dist/src/util/misc/rotatePoint.d.ts +12 -0
- package/dist/src/util/misc/sin.d.ts +10 -0
- package/dist/src/util/misc/svgParsing.d.ts +53 -0
- package/dist/src/util/misc/textStyles.d.ts +32 -0
- package/dist/src/util/misc/toFixed.d.ts +8 -0
- package/dist/src/util/misc/vectors.d.ts +57 -0
- package/dist/src/util/path/index.d.ts +96 -0
- package/dist/src/util/path/regex.d.ts +3 -0
- package/dist/src/util/path/typechecks.d.ts +24 -0
- package/dist/src/util/path/typedefs.d.ts +220 -0
- package/dist/src/util/transform_matrix_removal.d.ts +14 -0
- package/dist/src/util/types.d.ts +19 -0
- package/fabric.ts +51 -0
- package/index.node.ts +37 -0
- package/index.ts +1 -0
- package/package.json +100 -40
- package/publish.js +0 -26
- package/rollup.config.mjs +91 -0
- package/rollup.test.config.js +24 -0
- package/scripts/build.mjs +50 -0
- package/scripts/buildLock.mjs +115 -0
- package/scripts/buildReporter.mjs +15 -0
- package/scripts/buildStats.mjs +139 -0
- package/scripts/dirname.mjs +14 -0
- package/scripts/git.mjs +36 -0
- package/scripts/index.mjs +564 -0
- package/scripts/sandbox.mjs +149 -0
- package/src/ClassRegistry.ts +56 -0
- package/src/Collection.ts +346 -0
- package/src/CommonMethods.ts +63 -0
- package/src/EventTypeDefs.ts +296 -0
- package/src/Intersection.ts +302 -0
- package/src/Observable.ts +181 -0
- package/src/Pattern.ts +227 -0
- package/src/Point.ts +388 -0
- package/src/Shadow.ts +214 -0
- package/src/brushes/{base_brush.class.js → BaseBrush.ts} +65 -42
- package/src/brushes/CircleBrush.ts +145 -0
- package/src/brushes/PatternBrush.ts +70 -0
- package/src/brushes/PencilBrush.ts +300 -0
- package/src/brushes/SprayBrush.ts +219 -0
- package/src/cache.ts +90 -0
- package/src/canvas/Canvas.ts +1607 -0
- package/src/canvas/SelectableCanvas.ts +1608 -0
- package/src/canvas/StaticCanvas.ts +1734 -0
- package/src/canvas/TextEditingManager.ts +48 -0
- package/src/canvas/canvas_gestures.mixin.ts +207 -0
- package/src/color/Color.ts +404 -0
- package/src/color/color_map.ts +154 -0
- package/src/color/constants.ts +26 -0
- package/src/color/util.ts +32 -0
- package/src/config.ts +159 -0
- package/src/constants.ts +20 -0
- package/src/controls/Control.ts +380 -0
- package/src/controls/changeWidth.ts +52 -0
- package/src/controls/commonControls.ts +105 -0
- package/src/controls/controlRendering.ts +138 -0
- package/src/controls/drag.ts +31 -0
- package/src/controls/index.ts +22 -0
- package/src/controls/polyControl.ts +135 -0
- package/src/controls/rotate.ts +87 -0
- package/src/controls/scale.ts +277 -0
- package/src/controls/scaleSkew.ts +92 -0
- package/src/controls/skew.ts +242 -0
- package/src/controls/util.ts +154 -0
- package/src/controls/wrapWithFireEvent.ts +25 -0
- package/src/controls/wrapWithFixedAnchor.ts +20 -0
- package/src/env/browser.ts +32 -0
- package/src/env/index.ts +24 -0
- package/src/env/node.ts +56 -0
- package/src/env/types.ts +15 -0
- package/src/filters/{base_filter.class.js → BaseFilter.ts} +192 -151
- package/src/filters/BlendColor.ts +217 -0
- package/src/filters/BlendImage.ts +228 -0
- package/src/filters/Blur.ts +179 -0
- package/src/filters/Boilerplate.ts +94 -0
- package/src/filters/Brightness.ts +83 -0
- package/src/filters/Canvas2dFilterBackend.ts +65 -0
- package/src/filters/ColorMatrix.ts +145 -0
- package/src/filters/ColorMatrixFilters.ts +77 -0
- package/src/filters/Composed.ts +76 -0
- package/src/filters/Contrast.ts +82 -0
- package/src/filters/Convolute.ts +184 -0
- package/src/filters/FilterBackend.ts +34 -0
- package/src/filters/GLProbes/GLProbe.ts +11 -0
- package/src/filters/GLProbes/NodeGLProbe.ts +15 -0
- package/src/filters/GLProbes/WebGLProbe.ts +46 -0
- package/src/filters/Gamma.ts +110 -0
- package/src/filters/Grayscale.ts +102 -0
- package/src/filters/HueRotation.ts +62 -0
- package/src/filters/Invert.ts +99 -0
- package/src/filters/Noise.ts +94 -0
- package/src/filters/Pixelate.ts +96 -0
- package/src/filters/RemoveColor.ts +135 -0
- package/src/filters/Resize.ts +538 -0
- package/src/filters/Saturation.ts +87 -0
- package/src/filters/Vibrance.ts +88 -0
- package/src/filters/WebGLFilterBackend.ts +430 -0
- package/src/filters/filters.ts +28 -0
- package/src/filters/index.ts +5 -0
- package/src/filters/shaders/baseFilter.ts +19 -0
- package/src/filters/shaders/blendColor.ts +33 -0
- package/src/filters/shaders/blendImage.ts +32 -0
- package/src/filters/shaders/blur.ts +24 -0
- package/src/filters/shaders/brightness.ts +11 -0
- package/src/filters/shaders/colorMatrix.ts +12 -0
- package/src/filters/shaders/constrast.ts +11 -0
- package/src/filters/shaders/convolute.ts +154 -0
- package/src/filters/shaders/gamma.ts +15 -0
- package/src/filters/shaders/grayscale.ts +36 -0
- package/src/filters/shaders/invert.ts +19 -0
- package/src/filters/shaders/noise.ts +16 -0
- package/src/filters/shaders/pixelate.ts +19 -0
- package/src/filters/shaders/removeColor.ts +13 -0
- package/src/filters/shaders/saturation.ts +15 -0
- package/src/filters/shaders/vibrance.ts +16 -0
- package/src/filters/typedefs.ts +65 -0
- package/src/gradient/Gradient.ts +406 -0
- package/src/gradient/constants.ts +12 -0
- package/src/gradient/parser/index.ts +3 -0
- package/src/gradient/parser/misc.ts +13 -0
- package/src/gradient/parser/parseColorStops.ts +56 -0
- package/src/gradient/parser/parseCoords.ts +73 -0
- package/src/gradient/typedefs.ts +104 -0
- package/src/mixins/{eraser_brush.mixin.js → eraser_brush.mixin.ts} +350 -239
- package/src/parkinglot/canvas_animation.mixin.ts +121 -0
- package/src/parkinglot/straighten.ts +58 -0
- package/src/parser/applyViewboxTransform.ts +157 -0
- package/src/parser/attributes.ts +25 -0
- package/src/parser/constants.ts +115 -0
- package/src/parser/doesSomeParentMatch.ts +19 -0
- package/src/parser/elementById.ts +21 -0
- package/src/parser/elementMatchesRule.ts +16 -0
- package/src/parser/elements_parser.ts +191 -0
- package/src/parser/getCSSRules.ts +62 -0
- package/src/parser/getGlobalStylesForElement.ts +19 -0
- package/src/parser/getGradientDefs.ts +31 -0
- package/src/parser/getMultipleNodes.ts +15 -0
- package/src/parser/getSvgRegex.ts +5 -0
- package/src/parser/hasAncestorWithNodeName.ts +14 -0
- package/src/parser/index.ts +9 -0
- package/src/parser/loadSVGFromString.ts +26 -0
- package/src/parser/loadSVGFromURL.ts +40 -0
- package/src/parser/normalizeAttr.ts +10 -0
- package/src/parser/normalizeValue.ts +63 -0
- package/src/parser/parseAttributes.ts +90 -0
- package/src/parser/parseElements.ts +28 -0
- package/src/parser/parseFontDeclaration.ts +44 -0
- package/src/parser/parsePointsAttribute.ts +34 -0
- package/src/parser/parseSVGDocument.ts +93 -0
- package/src/parser/parseStyleAttribute.ts +27 -0
- package/src/parser/parseStyleObject.ts +15 -0
- package/src/parser/parseStyleString.ts +16 -0
- package/src/parser/parseTransformAttribute.ts +155 -0
- package/src/parser/parseUseDirectives.ts +78 -0
- package/src/parser/percent.ts +27 -0
- package/src/parser/recursivelyParseGradientsXlink.ts +42 -0
- package/src/parser/rotateMatrix.ts +21 -0
- package/src/parser/scaleMatrix.ts +9 -0
- package/src/parser/selectorMatches.ts +25 -0
- package/src/parser/setStrokeFillOpacity.ts +40 -0
- package/src/parser/skewMatrix.ts +6 -0
- package/src/parser/translateMatrix.ts +8 -0
- package/src/shapes/ActiveSelection.ts +189 -0
- package/src/shapes/Circle.ts +242 -0
- package/src/shapes/Ellipse.ts +179 -0
- package/src/shapes/Group.ts +1100 -0
- package/src/shapes/IText/DraggableTextDelegate.ts +382 -0
- package/src/shapes/IText/IText.ts +693 -0
- package/src/shapes/IText/ITextBehavior.ts +1064 -0
- package/src/shapes/IText/ITextClickBehavior.ts +325 -0
- package/src/shapes/IText/ITextKeyBehavior.ts +685 -0
- package/src/shapes/IText/constants.ts +47 -0
- package/src/shapes/Image.ts +841 -0
- package/src/shapes/Line.ts +346 -0
- package/src/shapes/Object/AnimatableObject.ts +106 -0
- package/src/shapes/Object/FabricObject.ts +29 -0
- package/src/shapes/Object/FabricObjectSVGExportMixin.ts +277 -0
- package/src/shapes/Object/InteractiveObject.ts +672 -0
- package/src/shapes/Object/Object.ts +1561 -0
- package/src/shapes/Object/ObjectGeometry.ts +813 -0
- package/src/shapes/Object/ObjectOrigin.ts +276 -0
- package/src/shapes/Object/StackedObject.ts +206 -0
- package/src/shapes/Object/defaultValues.ts +108 -0
- package/src/shapes/Object/types/BaseProps.ts +96 -0
- package/src/shapes/Object/types/BorderProps.ts +40 -0
- package/src/shapes/Object/types/ControlProps.ts +69 -0
- package/src/shapes/Object/types/FabricObjectProps.ts +111 -0
- package/src/shapes/Object/types/FillStrokeProps.ts +90 -0
- package/src/shapes/Object/types/LockInteractionProps.ts +57 -0
- package/src/shapes/Object/types/ObjectProps.ts +46 -0
- package/src/shapes/Object/types/SerializedObjectProps.ts +73 -0
- package/src/shapes/Object/types/index.ts +8 -0
- package/src/shapes/Path.ts +416 -0
- package/src/shapes/Polygon.ts +20 -0
- package/src/shapes/Polyline.ts +359 -0
- package/src/shapes/Rect.ts +233 -0
- package/src/shapes/Text/StyledText.ts +329 -0
- package/src/shapes/Text/Text.ts +1884 -0
- package/src/shapes/Text/TextSVGExportMixin.ts +288 -0
- package/src/shapes/Text/constants.ts +91 -0
- package/src/shapes/Textbox.ts +477 -0
- package/src/shapes/Triangle.ts +60 -0
- package/src/typedefs.ts +115 -0
- package/src/util/animation/AnimationBase.ts +166 -0
- package/src/util/animation/AnimationFrameProvider.ts +9 -0
- package/src/util/animation/AnimationRegistry.ts +58 -0
- package/src/util/animation/ArrayAnimation.ts +27 -0
- package/src/util/animation/ColorAnimation.ts +74 -0
- package/src/util/animation/ValueAnimation.ts +29 -0
- package/src/util/animation/animate.ts +74 -0
- package/src/util/animation/easing.ts +327 -0
- package/src/util/animation/types.ts +136 -0
- package/src/util/applyMixins.ts +22 -0
- package/src/util/dom_event.ts +28 -0
- package/src/util/dom_misc.ts +121 -0
- package/src/util/dom_request.ts +64 -0
- package/src/util/dom_style.ts +20 -0
- package/src/util/fireEvent.ts +15 -0
- package/src/util/index.ts +102 -0
- package/src/util/internals/cloneDeep.ts +2 -0
- package/src/util/internals/getRandomInt.ts +8 -0
- package/src/util/internals/ifNaN.ts +9 -0
- package/src/util/internals/index.ts +3 -0
- package/src/util/internals/removeFromArray.ts +14 -0
- package/src/util/internals/uid.ts +3 -0
- package/src/util/lang_string.ts +79 -0
- package/src/util/misc/boundingBoxFromPoints.ts +37 -0
- package/src/util/misc/capValue.ts +2 -0
- package/src/util/misc/cos.ts +24 -0
- package/src/util/misc/dom.ts +50 -0
- package/src/util/misc/findScaleTo.ts +44 -0
- package/src/util/misc/groupSVGElements.ts +15 -0
- package/src/util/misc/isTransparent.ts +28 -0
- package/src/util/misc/matrix.ts +207 -0
- package/src/util/misc/mergeClipPaths.ts +40 -0
- package/src/util/misc/objectEnlive.ts +189 -0
- package/src/util/misc/objectTransforms.ts +129 -0
- package/src/util/misc/pick.ts +29 -0
- package/src/util/misc/planeChange.ts +136 -0
- package/src/util/misc/projectStroke/StrokeLineCapProjections.ts +112 -0
- package/src/util/misc/projectStroke/StrokeLineJoinProjections.ts +226 -0
- package/src/util/misc/projectStroke/StrokeProjectionsBase.ts +75 -0
- package/src/util/misc/projectStroke/index.ts +53 -0
- package/src/util/misc/projectStroke/types.ts +24 -0
- package/src/util/misc/radiansDegreesConversion.ts +18 -0
- package/src/util/misc/resolveOrigin.ts +22 -0
- package/src/util/misc/rotatePoint.ts +15 -0
- package/src/util/misc/sin.ts +26 -0
- package/src/util/misc/svgParsing.ts +181 -0
- package/src/util/misc/textStyles.ts +134 -0
- package/src/util/misc/toFixed.ts +8 -0
- package/src/util/misc/vectors.ts +82 -0
- package/src/util/path/index.ts +1038 -0
- package/src/util/path/regex.ts +41 -0
- package/src/util/path/typechecks.ts +145 -0
- package/src/util/path/typedefs.ts +305 -0
- package/src/util/transform_matrix_removal.ts +60 -0
- package/src/util/types.ts +78 -0
- package/tsconfig.json +106 -0
- package/HEADER.js +0 -203
- package/build.js +0 -287
- package/dist/fabric.js +0 -31187
- package/dist/fabric.min.js +0 -1
- package/old-travis-reference.yml +0 -97
- package/src/brushes/circle_brush.class.js +0 -144
- package/src/brushes/pattern_brush.class.js +0 -61
- package/src/brushes/pencil_brush.class.js +0 -310
- package/src/brushes/spray_brush.class.js +0 -219
- package/src/canvas.class.js +0 -1312
- package/src/color.class.js +0 -636
- package/src/control.class.js +0 -339
- package/src/controls.actions.js +0 -740
- package/src/controls.render.js +0 -99
- package/src/elements_parser.js +0 -152
- package/src/filters/2d_backend.class.js +0 -65
- package/src/filters/blendcolor_filter.class.js +0 -251
- package/src/filters/blendimage_filter.class.js +0 -247
- package/src/filters/blur_filter.class.js +0 -217
- package/src/filters/brightness_filter.class.js +0 -113
- package/src/filters/colormatrix_filter.class.js +0 -159
- package/src/filters/composed_filter.class.js +0 -72
- package/src/filters/contrast_filter.class.js +0 -113
- package/src/filters/convolute_filter.class.js +0 -352
- package/src/filters/filter_boilerplate.js +0 -111
- package/src/filters/filter_generator.js +0 -85
- package/src/filters/gamma_filter.class.js +0 -136
- package/src/filters/grayscale_filter.class.js +0 -154
- package/src/filters/hue_rotation.class.js +0 -107
- package/src/filters/invert_filter.class.js +0 -111
- package/src/filters/noise_filter.class.js +0 -134
- package/src/filters/pixelate_filter.class.js +0 -137
- package/src/filters/removecolor_filter.class.js +0 -173
- package/src/filters/resize_filter.class.js +0 -490
- package/src/filters/saturate_filter.class.js +0 -119
- package/src/filters/vibrance_filter.class.js +0 -122
- package/src/filters/webgl_backend.class.js +0 -396
- package/src/globalFabric.js +0 -4
- package/src/gradient.class.js +0 -490
- package/src/intersection.class.js +0 -172
- package/src/log.js +0 -11
- package/src/mixins/animation.mixin.js +0 -231
- package/src/mixins/canvas_dataurl_exporter.mixin.js +0 -97
- package/src/mixins/canvas_events.mixin.js +0 -974
- package/src/mixins/canvas_gestures.mixin.js +0 -149
- package/src/mixins/canvas_grouping.mixin.js +0 -177
- package/src/mixins/canvas_serialization.mixin.js +0 -228
- package/src/mixins/collection.mixin.js +0 -170
- package/src/mixins/default_controls.js +0 -114
- package/src/mixins/itext.svg_export.js +0 -241
- package/src/mixins/itext_behavior.mixin.js +0 -940
- package/src/mixins/itext_click_behavior.mixin.js +0 -278
- package/src/mixins/itext_key_behavior.mixin.js +0 -694
- package/src/mixins/object.svg_export.js +0 -258
- package/src/mixins/object_geometry.mixin.js +0 -683
- package/src/mixins/object_interactivity.mixin.js +0 -314
- package/src/mixins/object_origin.mixin.js +0 -255
- package/src/mixins/object_stacking.mixin.js +0 -80
- package/src/mixins/object_straightening.mixin.js +0 -80
- package/src/mixins/observable.mixin.js +0 -141
- package/src/mixins/shared_methods.mixin.js +0 -94
- package/src/mixins/stateful.mixin.js +0 -107
- package/src/mixins/text_style.mixin.js +0 -324
- package/src/parser.js +0 -1090
- package/src/pattern.class.js +0 -189
- package/src/point.class.js +0 -337
- package/src/shadow.class.js +0 -195
- package/src/shapes/active_selection.class.js +0 -155
- package/src/shapes/circle.class.js +0 -210
- package/src/shapes/ellipse.class.js +0 -181
- package/src/shapes/group.class.js +0 -593
- package/src/shapes/image.class.js +0 -764
- package/src/shapes/itext.class.js +0 -526
- package/src/shapes/line.class.js +0 -324
- package/src/shapes/object.class.js +0 -2008
- package/src/shapes/path.class.js +0 -384
- package/src/shapes/polygon.class.js +0 -81
- package/src/shapes/polyline.class.js +0 -268
- package/src/shapes/rect.class.js +0 -187
- package/src/shapes/text.class.js +0 -1696
- package/src/shapes/textbox.class.js +0 -461
- package/src/shapes/triangle.class.js +0 -93
- package/src/static_canvas.class.js +0 -1881
- package/src/util/anim_ease.js +0 -398
- package/src/util/animate.js +0 -254
- package/src/util/animate_color.js +0 -74
- package/src/util/dom_event.js +0 -50
- package/src/util/dom_misc.js +0 -300
- package/src/util/dom_request.js +0 -54
- package/src/util/dom_style.js +0 -70
- package/src/util/lang_array.js +0 -94
- package/src/util/lang_class.js +0 -115
- package/src/util/lang_object.js +0 -75
- package/src/util/lang_string.js +0 -110
- package/src/util/misc.js +0 -1330
- package/src/util/named_accessors.mixin.js +0 -428
- package/src/util/path.js +0 -829
|
@@ -0,0 +1,548 @@
|
|
|
1
|
+
import { CanvasEvents, DragEventData, ObjectEvents, TPointerEvent, TPointerEventInfo, TPointerEventNames, Transform } from '../EventTypeDefs';
|
|
2
|
+
import { Point } from '../Point';
|
|
3
|
+
import { Group } from '../shapes/Group';
|
|
4
|
+
import type { IText } from '../shapes/IText/IText';
|
|
5
|
+
import type { FabricObject } from '../shapes/Object/FabricObject';
|
|
6
|
+
import { AssertKeys } from '../typedefs';
|
|
7
|
+
import { SelectableCanvas } from './SelectableCanvas';
|
|
8
|
+
import { TextEditingManager } from './TextEditingManager';
|
|
9
|
+
type TSyntheticEventContext = {
|
|
10
|
+
mouse: {
|
|
11
|
+
e: TPointerEvent;
|
|
12
|
+
};
|
|
13
|
+
drag: DragEventData;
|
|
14
|
+
};
|
|
15
|
+
export declare class Canvas extends SelectableCanvas {
|
|
16
|
+
/**
|
|
17
|
+
* Contains the id of the touch event that owns the fabric transform
|
|
18
|
+
* @type Number
|
|
19
|
+
* @private
|
|
20
|
+
*/
|
|
21
|
+
mainTouchId: null | number;
|
|
22
|
+
/**
|
|
23
|
+
* When the option is enabled, PointerEvent is used instead of TPointerEvent.
|
|
24
|
+
* @type Boolean
|
|
25
|
+
* @default
|
|
26
|
+
*/
|
|
27
|
+
enablePointerEvents: boolean;
|
|
28
|
+
/**
|
|
29
|
+
* Holds a reference to a setTimeout timer for event synchronization
|
|
30
|
+
* @type number
|
|
31
|
+
* @private
|
|
32
|
+
*/
|
|
33
|
+
private _willAddMouseDown;
|
|
34
|
+
/**
|
|
35
|
+
* Holds a reference to an object on the canvas that is receiving the drag over event.
|
|
36
|
+
* @type FabricObject
|
|
37
|
+
* @private
|
|
38
|
+
*/
|
|
39
|
+
private _draggedoverTarget?;
|
|
40
|
+
/**
|
|
41
|
+
* Holds a reference to an object on the canvas from where the drag operation started
|
|
42
|
+
* @type FabricObject
|
|
43
|
+
* @private
|
|
44
|
+
*/
|
|
45
|
+
private _dragSource?;
|
|
46
|
+
/**
|
|
47
|
+
* Holds a reference to an object on the canvas that is the current drop target
|
|
48
|
+
* May differ from {@link _draggedoverTarget}
|
|
49
|
+
* @todo inspect whether {@link _draggedoverTarget} and {@link _dropTarget} should be merged somehow
|
|
50
|
+
* @type FabricObject
|
|
51
|
+
* @private
|
|
52
|
+
*/
|
|
53
|
+
private _dropTarget;
|
|
54
|
+
currentTarget?: FabricObject;
|
|
55
|
+
currentSubTargets?: FabricObject[];
|
|
56
|
+
private _isClick;
|
|
57
|
+
textEditingManager: TextEditingManager;
|
|
58
|
+
constructor(el: string | HTMLCanvasElement, options?: {});
|
|
59
|
+
/**
|
|
60
|
+
* return an event prefix pointer or mouse.
|
|
61
|
+
* @private
|
|
62
|
+
*/
|
|
63
|
+
private _getEventPrefix;
|
|
64
|
+
addOrRemove(functor: any, eventjsFunctor: 'add' | 'remove'): void;
|
|
65
|
+
/**
|
|
66
|
+
* Removes all event listeners
|
|
67
|
+
*/
|
|
68
|
+
removeListeners(): void;
|
|
69
|
+
/**
|
|
70
|
+
* @private
|
|
71
|
+
* @param {Event} [e] Event object fired on wheel event
|
|
72
|
+
*/
|
|
73
|
+
private _onMouseWheel;
|
|
74
|
+
/**
|
|
75
|
+
* @private
|
|
76
|
+
* @param {Event} e Event object fired on mousedown
|
|
77
|
+
*/
|
|
78
|
+
private _onMouseOut;
|
|
79
|
+
/**
|
|
80
|
+
* @private
|
|
81
|
+
* @param {Event} e Event object fired on mouseenter
|
|
82
|
+
*/
|
|
83
|
+
private _onMouseEnter;
|
|
84
|
+
/**
|
|
85
|
+
* supports native like text dragging
|
|
86
|
+
* @private
|
|
87
|
+
* @param {DragEvent} e
|
|
88
|
+
*/
|
|
89
|
+
private _onDragStart;
|
|
90
|
+
/**
|
|
91
|
+
* First we clear top context where the effects are being rendered.
|
|
92
|
+
* Then we render the effects.
|
|
93
|
+
* Doing so will render the correct effect for all cases including an overlap between `source` and `target`.
|
|
94
|
+
* @private
|
|
95
|
+
*/
|
|
96
|
+
private _renderDragEffects;
|
|
97
|
+
/**
|
|
98
|
+
* supports native like text dragging
|
|
99
|
+
* https://developer.mozilla.org/en-US/docs/Web/API/HTML_Drag_and_Drop_API/Drag_operations#finishing_a_drag
|
|
100
|
+
* @private
|
|
101
|
+
* @param {DragEvent} e
|
|
102
|
+
*/
|
|
103
|
+
private _onDragEnd;
|
|
104
|
+
/**
|
|
105
|
+
* fire `drag` event on canvas and drag source
|
|
106
|
+
* @private
|
|
107
|
+
* @param {DragEvent} e
|
|
108
|
+
*/
|
|
109
|
+
private _onDragProgress;
|
|
110
|
+
/**
|
|
111
|
+
* As opposed to {@link findTarget} we want the top most object to be returned w/o the active object cutting in line.
|
|
112
|
+
* Override at will
|
|
113
|
+
*/
|
|
114
|
+
protected findDragTargets(e: DragEvent): {
|
|
115
|
+
target: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents> | undefined;
|
|
116
|
+
targets: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents>[];
|
|
117
|
+
};
|
|
118
|
+
/**
|
|
119
|
+
* prevent default to allow drop event to be fired
|
|
120
|
+
* https://developer.mozilla.org/en-US/docs/Web/API/HTML_Drag_and_Drop_API/Drag_operations#specifying_drop_targets
|
|
121
|
+
* @private
|
|
122
|
+
* @param {DragEvent} [e] Event object fired on Event.js shake
|
|
123
|
+
*/
|
|
124
|
+
private _onDragOver;
|
|
125
|
+
/**
|
|
126
|
+
* fire `dragleave` on `dragover` targets
|
|
127
|
+
* @private
|
|
128
|
+
* @param {Event} [e] Event object fired on Event.js shake
|
|
129
|
+
*/
|
|
130
|
+
private _onDragEnter;
|
|
131
|
+
/**
|
|
132
|
+
* fire `dragleave` on `dragover` targets
|
|
133
|
+
* @private
|
|
134
|
+
* @param {Event} [e] Event object fired on Event.js shake
|
|
135
|
+
*/
|
|
136
|
+
private _onDragLeave;
|
|
137
|
+
/**
|
|
138
|
+
* `drop:before` is a an event that allows you to schedule logic
|
|
139
|
+
* before the `drop` event. Prefer `drop` event always, but if you need
|
|
140
|
+
* to run some drop-disabling logic on an event, since there is no way
|
|
141
|
+
* to handle event handlers ordering, use `drop:before`
|
|
142
|
+
* @private
|
|
143
|
+
* @param {Event} e
|
|
144
|
+
*/
|
|
145
|
+
private _onDrop;
|
|
146
|
+
/**
|
|
147
|
+
* @private
|
|
148
|
+
* @param {Event} e Event object fired on mousedown
|
|
149
|
+
*/
|
|
150
|
+
private _onContextMenu;
|
|
151
|
+
/**
|
|
152
|
+
* @private
|
|
153
|
+
* @param {Event} e Event object fired on mousedown
|
|
154
|
+
*/
|
|
155
|
+
private _onDoubleClick;
|
|
156
|
+
/**
|
|
157
|
+
* Return a the id of an event.
|
|
158
|
+
* returns either the pointerId or the identifier or 0 for the mouse event
|
|
159
|
+
* @private
|
|
160
|
+
* @param {Event} evt Event object
|
|
161
|
+
*/
|
|
162
|
+
getPointerId(evt: TouchEvent | PointerEvent): number;
|
|
163
|
+
/**
|
|
164
|
+
* Determines if an event has the id of the event that is considered main
|
|
165
|
+
* @private
|
|
166
|
+
* @param {evt} event Event object
|
|
167
|
+
*/
|
|
168
|
+
_isMainEvent(evt: TPointerEvent): boolean;
|
|
169
|
+
/**
|
|
170
|
+
* @private
|
|
171
|
+
* @param {Event} e Event object fired on mousedown
|
|
172
|
+
*/
|
|
173
|
+
_onTouchStart(e: TouchEvent): void;
|
|
174
|
+
/**
|
|
175
|
+
* @private
|
|
176
|
+
* @param {Event} e Event object fired on mousedown
|
|
177
|
+
*/
|
|
178
|
+
_onMouseDown(e: TPointerEvent): void;
|
|
179
|
+
/**
|
|
180
|
+
* @private
|
|
181
|
+
* @param {Event} e Event object fired on mousedown
|
|
182
|
+
*/
|
|
183
|
+
_onTouchEnd(e: TouchEvent): void;
|
|
184
|
+
/**
|
|
185
|
+
* @private
|
|
186
|
+
* @param {Event} e Event object fired on mouseup
|
|
187
|
+
*/
|
|
188
|
+
_onMouseUp(e: TPointerEvent): void;
|
|
189
|
+
/**
|
|
190
|
+
* @private
|
|
191
|
+
* @param {Event} e Event object fired on mousemove
|
|
192
|
+
*/
|
|
193
|
+
_onMouseMove(e: TPointerEvent): void;
|
|
194
|
+
/**
|
|
195
|
+
* @private
|
|
196
|
+
*/
|
|
197
|
+
_onResize(): void;
|
|
198
|
+
/**
|
|
199
|
+
* Decides whether the canvas should be redrawn in mouseup and mousedown events.
|
|
200
|
+
* @private
|
|
201
|
+
* @param {Object} target
|
|
202
|
+
*/
|
|
203
|
+
_shouldRender(target: FabricObject | undefined): boolean;
|
|
204
|
+
/**
|
|
205
|
+
* Method that defines the actions when mouse is released on canvas.
|
|
206
|
+
* The method resets the currentTransform parameters, store the image corner
|
|
207
|
+
* position in the image object and render the canvas on top.
|
|
208
|
+
* @private
|
|
209
|
+
* @param {Event} e Event object fired on mouseup
|
|
210
|
+
*/
|
|
211
|
+
__onMouseUp(e: TPointerEvent): void;
|
|
212
|
+
_basicEventHandler<T extends keyof (CanvasEvents | ObjectEvents)>(eventType: T, options: (CanvasEvents & ObjectEvents)[T]): (import("../EventTypeDefs").CollectionEvents & {
|
|
213
|
+
'canvas:cleared': never;
|
|
214
|
+
'before:render': {
|
|
215
|
+
ctx: CanvasRenderingContext2D; /**
|
|
216
|
+
* @private
|
|
217
|
+
* @param {Event} [e] Event object fired on wheel event
|
|
218
|
+
*/
|
|
219
|
+
};
|
|
220
|
+
'after:render': {
|
|
221
|
+
ctx: CanvasRenderingContext2D;
|
|
222
|
+
};
|
|
223
|
+
} & Record<"mouse:down" | "mouse:down:before" | "mouse:move" | "mouse:move:before" | "mouse:up" | "mouse:up:before" | "mouse:dblclick", TPointerEventInfo<TPointerEvent>> & Record<"mouse:wheel", TPointerEventInfo<WheelEvent>> & Record<"mouse:over", import("../EventTypeDefs").TEvent<TPointerEvent> & {
|
|
224
|
+
target?: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents> | undefined;
|
|
225
|
+
subTargets?: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents>[] | undefined;
|
|
226
|
+
button?: number | undefined;
|
|
227
|
+
isClick: boolean;
|
|
228
|
+
pointer: Point;
|
|
229
|
+
transform?: Transform | null | undefined;
|
|
230
|
+
absolutePointer: Point;
|
|
231
|
+
currentSubTargets?: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents>[] | undefined;
|
|
232
|
+
currentTarget?: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents> | null | undefined;
|
|
233
|
+
} & {
|
|
234
|
+
previousTarget?: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents> | undefined;
|
|
235
|
+
}> & Record<"mouse:out", import("../EventTypeDefs").TEvent<TPointerEvent> & {
|
|
236
|
+
target?: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents> | undefined;
|
|
237
|
+
subTargets?: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents>[] | undefined;
|
|
238
|
+
button?: number | undefined;
|
|
239
|
+
isClick: boolean;
|
|
240
|
+
pointer: Point;
|
|
241
|
+
transform?: Transform | null | undefined;
|
|
242
|
+
absolutePointer: Point;
|
|
243
|
+
currentSubTargets?: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents>[] | undefined;
|
|
244
|
+
currentTarget?: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents> | null | undefined;
|
|
245
|
+
} & {
|
|
246
|
+
nextTarget?: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents> | undefined;
|
|
247
|
+
}> & {
|
|
248
|
+
dragstart: import("../EventTypeDefs").TEvent<DragEvent> & {
|
|
249
|
+
target: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents>;
|
|
250
|
+
};
|
|
251
|
+
drag: DragEventData;
|
|
252
|
+
dragover: DragEventData;
|
|
253
|
+
dragenter: import("../EventTypeDefs").TEvent<DragEvent> & {
|
|
254
|
+
target?: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents> | undefined;
|
|
255
|
+
subTargets?: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents>[] | undefined;
|
|
256
|
+
dragSource?: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents> | undefined;
|
|
257
|
+
canDrop?: boolean | undefined;
|
|
258
|
+
didDrop?: boolean | undefined;
|
|
259
|
+
dropTarget?: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents> | undefined;
|
|
260
|
+
} & {
|
|
261
|
+
previousTarget?: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents> | undefined;
|
|
262
|
+
};
|
|
263
|
+
dragleave: import("../EventTypeDefs").TEvent<DragEvent> & {
|
|
264
|
+
target?: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents> | undefined;
|
|
265
|
+
subTargets?: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents>[] | undefined;
|
|
266
|
+
dragSource?: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents> | undefined;
|
|
267
|
+
canDrop?: boolean | undefined;
|
|
268
|
+
didDrop?: boolean | undefined;
|
|
269
|
+
dropTarget?: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents> | undefined;
|
|
270
|
+
} & {
|
|
271
|
+
nextTarget?: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents> | undefined;
|
|
272
|
+
};
|
|
273
|
+
dragend: DragEventData;
|
|
274
|
+
'drop:before': import("../EventTypeDefs").DropEventData;
|
|
275
|
+
drop: import("../EventTypeDefs").DropEventData;
|
|
276
|
+
'drop:after': import("../EventTypeDefs").DropEventData;
|
|
277
|
+
} & {
|
|
278
|
+
'drag:enter': import("../EventTypeDefs").TEvent<DragEvent> & {
|
|
279
|
+
target?: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents> | undefined;
|
|
280
|
+
subTargets?: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents>[] | undefined;
|
|
281
|
+
dragSource?: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents> | undefined;
|
|
282
|
+
canDrop?: boolean | undefined;
|
|
283
|
+
didDrop?: boolean | undefined;
|
|
284
|
+
dropTarget?: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents> | undefined;
|
|
285
|
+
} & {
|
|
286
|
+
previousTarget?: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents> | undefined;
|
|
287
|
+
};
|
|
288
|
+
'drag:leave': import("../EventTypeDefs").TEvent<DragEvent> & {
|
|
289
|
+
target?: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents> | undefined;
|
|
290
|
+
subTargets?: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents>[] | undefined;
|
|
291
|
+
dragSource?: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents> | undefined;
|
|
292
|
+
canDrop?: boolean | undefined;
|
|
293
|
+
didDrop?: boolean | undefined;
|
|
294
|
+
dropTarget?: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents> | undefined;
|
|
295
|
+
} & {
|
|
296
|
+
nextTarget?: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents> | undefined;
|
|
297
|
+
};
|
|
298
|
+
} & import("../EventTypeDefs").MiscEvents & Record<"object:moving" | "object:scaling" | "object:rotating" | "object:skewing" | "object:resizing", import("../EventTypeDefs").TEvent<TPointerEvent> & {
|
|
299
|
+
transform: Transform;
|
|
300
|
+
pointer: Point;
|
|
301
|
+
} & {
|
|
302
|
+
target: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents>;
|
|
303
|
+
}> & Record<"object:modified", import("../EventTypeDefs").ModifiedEvent<TPointerEvent> | {
|
|
304
|
+
target: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents>;
|
|
305
|
+
}> & {
|
|
306
|
+
'before:transform': import("../EventTypeDefs").TEvent<TPointerEvent> & {
|
|
307
|
+
transform: Transform;
|
|
308
|
+
};
|
|
309
|
+
} & {
|
|
310
|
+
'selection:created': Partial<import("../EventTypeDefs").TEvent<TPointerEvent>> & {
|
|
311
|
+
selected: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents>[];
|
|
312
|
+
};
|
|
313
|
+
'selection:updated': Partial<import("../EventTypeDefs").TEvent<TPointerEvent>> & {
|
|
314
|
+
selected: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents>[];
|
|
315
|
+
deselected: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents>[];
|
|
316
|
+
};
|
|
317
|
+
'before:selection:cleared': Partial<import("../EventTypeDefs").TEvent<TPointerEvent>> & {
|
|
318
|
+
deselected: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents>[];
|
|
319
|
+
};
|
|
320
|
+
'selection:cleared': Partial<import("../EventTypeDefs").TEvent<TPointerEvent>> & {
|
|
321
|
+
deselected: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents>[];
|
|
322
|
+
};
|
|
323
|
+
} & {
|
|
324
|
+
'before:path:created': {
|
|
325
|
+
path: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents>;
|
|
326
|
+
};
|
|
327
|
+
'path:created': {
|
|
328
|
+
path: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents>;
|
|
329
|
+
};
|
|
330
|
+
'erasing:start': never;
|
|
331
|
+
'erasing:end': {
|
|
332
|
+
path: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents>;
|
|
333
|
+
targets: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents>[];
|
|
334
|
+
subTargets: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents>[];
|
|
335
|
+
drawables: {
|
|
336
|
+
backgroundImage?: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents> | undefined;
|
|
337
|
+
overlayImage?: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents> | undefined;
|
|
338
|
+
};
|
|
339
|
+
};
|
|
340
|
+
'text:selection:changed': {
|
|
341
|
+
target: IText<import("../shapes/IText/IText").ITextProps, import("../shapes/IText/IText").SerializedITextProps, import("../shapes/IText/ITextBehavior").ITextEvents>;
|
|
342
|
+
};
|
|
343
|
+
'text:changed': {
|
|
344
|
+
target: IText<import("../shapes/IText/IText").ITextProps, import("../shapes/IText/IText").SerializedITextProps, import("../shapes/IText/ITextBehavior").ITextEvents>;
|
|
345
|
+
};
|
|
346
|
+
'text:editing:entered': {
|
|
347
|
+
target: IText<import("../shapes/IText/IText").ITextProps, import("../shapes/IText/IText").SerializedITextProps, import("../shapes/IText/ITextBehavior").ITextEvents>;
|
|
348
|
+
};
|
|
349
|
+
'text:editing:exited': {
|
|
350
|
+
target: IText<import("../shapes/IText/IText").ITextProps, import("../shapes/IText/IText").SerializedITextProps, import("../shapes/IText/ITextBehavior").ITextEvents>;
|
|
351
|
+
};
|
|
352
|
+
} & Record<"mousedown" | "mousedown:before" | "mousemove" | "mousemove:before" | "mouseup" | "mouseup:before" | "mousedblclick", TPointerEventInfo<TPointerEvent>> & Record<"mousewheel", TPointerEventInfo<WheelEvent>> & Record<"mouseover", import("../EventTypeDefs").TEvent<TPointerEvent> & {
|
|
353
|
+
target?: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents> | undefined;
|
|
354
|
+
subTargets?: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents>[] | undefined;
|
|
355
|
+
button?: number | undefined;
|
|
356
|
+
isClick: boolean;
|
|
357
|
+
pointer: Point;
|
|
358
|
+
transform?: Transform | null | undefined;
|
|
359
|
+
absolutePointer: Point;
|
|
360
|
+
currentSubTargets?: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents>[] | undefined;
|
|
361
|
+
currentTarget?: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents> | null | undefined;
|
|
362
|
+
} & {
|
|
363
|
+
previousTarget?: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents> | undefined;
|
|
364
|
+
}> & Record<"mouseout", import("../EventTypeDefs").TEvent<TPointerEvent> & {
|
|
365
|
+
target?: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents> | undefined;
|
|
366
|
+
subTargets?: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents>[] | undefined;
|
|
367
|
+
button?: number | undefined;
|
|
368
|
+
isClick: boolean;
|
|
369
|
+
pointer: Point;
|
|
370
|
+
transform?: Transform | null | undefined;
|
|
371
|
+
absolutePointer: Point;
|
|
372
|
+
currentSubTargets?: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents>[] | undefined;
|
|
373
|
+
currentTarget?: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents> | null | undefined;
|
|
374
|
+
} & {
|
|
375
|
+
nextTarget?: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents> | undefined;
|
|
376
|
+
}> & Record<"moving" | "scaling" | "rotating" | "skewing" | "resizing", import("../EventTypeDefs").BasicTransformEvent<TPointerEvent>> & Record<"modified", import("../EventTypeDefs").ModifiedEvent<TPointerEvent>> & {
|
|
377
|
+
selected: Partial<import("../EventTypeDefs").TEvent<TPointerEvent>> & {
|
|
378
|
+
target: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents>;
|
|
379
|
+
};
|
|
380
|
+
deselected: Partial<import("../EventTypeDefs").TEvent<TPointerEvent>> & {
|
|
381
|
+
target: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents>;
|
|
382
|
+
};
|
|
383
|
+
added: {
|
|
384
|
+
target: Canvas | Group | import("./StaticCanvas").StaticCanvas<import("../EventTypeDefs").StaticCanvasEvents>;
|
|
385
|
+
};
|
|
386
|
+
removed: {
|
|
387
|
+
target: Canvas | Group | import("./StaticCanvas").StaticCanvas<import("../EventTypeDefs").StaticCanvasEvents>;
|
|
388
|
+
};
|
|
389
|
+
'erasing:end': {
|
|
390
|
+
path: FabricObject<Partial<import("../shapes/Object/types").FabricObjectProps>, import("../shapes/Object/types").SerializedObjectProps, ObjectEvents>;
|
|
391
|
+
};
|
|
392
|
+
})[T];
|
|
393
|
+
/**
|
|
394
|
+
* @private
|
|
395
|
+
* Handle event firing for target and subtargets
|
|
396
|
+
* @param {Event} e event from mouse
|
|
397
|
+
* @param {String} eventType event to fire (up, down or move)
|
|
398
|
+
* @param {fabric.Object} targetObj receiving event
|
|
399
|
+
* @param {Number} [button] button used in the event 1 = left, 2 = middle, 3 = right
|
|
400
|
+
* @param {Boolean} isClick for left button only, indicates that the mouse up happened without move.
|
|
401
|
+
*/
|
|
402
|
+
_handleEvent(e: TPointerEvent, eventType: TPointerEventNames, button?: number, isClick?: boolean): void;
|
|
403
|
+
/**
|
|
404
|
+
* End the current transform.
|
|
405
|
+
* You don't usually need to call this method unless you are interrupting a user initiated transform
|
|
406
|
+
* because of some other event ( a press of key combination, or something that block the user UX )
|
|
407
|
+
* @param {Event} [e] send the mouse event that generate the finalize down, so it can be used in the event
|
|
408
|
+
*/
|
|
409
|
+
endCurrentTransform(e: TPointerEvent): void;
|
|
410
|
+
/**
|
|
411
|
+
* @private
|
|
412
|
+
* @param {Event} e send the mouse event that generate the finalize down, so it can be used in the event
|
|
413
|
+
*/
|
|
414
|
+
_finalizeCurrentTransform(e: TPointerEvent): void;
|
|
415
|
+
/**
|
|
416
|
+
* @private
|
|
417
|
+
* @param {Event} e Event object fired on mousedown
|
|
418
|
+
*/
|
|
419
|
+
_onMouseDownInDrawingMode(e: TPointerEvent): void;
|
|
420
|
+
/**
|
|
421
|
+
* @private
|
|
422
|
+
* @param {Event} e Event object fired on mousemove
|
|
423
|
+
*/
|
|
424
|
+
_onMouseMoveInDrawingMode(e: TPointerEvent): void;
|
|
425
|
+
/**
|
|
426
|
+
* @private
|
|
427
|
+
* @param {Event} e Event object fired on mouseup
|
|
428
|
+
*/
|
|
429
|
+
_onMouseUpInDrawingMode(e: TPointerEvent): void;
|
|
430
|
+
/**
|
|
431
|
+
* Method that defines the actions when mouse is clicked on canvas.
|
|
432
|
+
* The method inits the currentTransform parameters and renders all the
|
|
433
|
+
* canvas so the current image can be placed on the top canvas and the rest
|
|
434
|
+
* in on the container one.
|
|
435
|
+
* @private
|
|
436
|
+
* @param {Event} e Event object fired on mousedown
|
|
437
|
+
*/
|
|
438
|
+
__onMouseDown(e: TPointerEvent): void;
|
|
439
|
+
/**
|
|
440
|
+
* reset cache form common information needed during event processing
|
|
441
|
+
* @private
|
|
442
|
+
*/
|
|
443
|
+
_resetTransformEventData(): void;
|
|
444
|
+
/**
|
|
445
|
+
* Cache common information needed during event processing
|
|
446
|
+
* @private
|
|
447
|
+
* @param {Event} e Event object fired on event
|
|
448
|
+
*/
|
|
449
|
+
_cacheTransformEventData(e: TPointerEvent): void;
|
|
450
|
+
/**
|
|
451
|
+
* @private
|
|
452
|
+
*/
|
|
453
|
+
_beforeTransform(e: TPointerEvent): void;
|
|
454
|
+
/**
|
|
455
|
+
* Method that defines the actions when mouse is hovering the canvas.
|
|
456
|
+
* The currentTransform parameter will define whether the user is rotating/scaling/translating
|
|
457
|
+
* an image or neither of them (only hovering). A group selection is also possible and would cancel
|
|
458
|
+
* all any other type of action.
|
|
459
|
+
* In case of an image transformation only the top canvas will be rendered.
|
|
460
|
+
* @private
|
|
461
|
+
* @param {Event} e Event object fired on mousemove
|
|
462
|
+
*/
|
|
463
|
+
__onMouseMove(e: TPointerEvent): void;
|
|
464
|
+
/**
|
|
465
|
+
* Manage the mouseout, mouseover events for the fabric object on the canvas
|
|
466
|
+
* @param {Fabric.Object} target the target where the target from the mousemove event
|
|
467
|
+
* @param {Event} e Event object fired on mousemove
|
|
468
|
+
* @private
|
|
469
|
+
*/
|
|
470
|
+
_fireOverOutEvents(e: TPointerEvent, target?: FabricObject): void;
|
|
471
|
+
/**
|
|
472
|
+
* Manage the dragEnter, dragLeave events for the fabric objects on the canvas
|
|
473
|
+
* @param {Fabric.Object} target the target where the target from the onDrag event
|
|
474
|
+
* @param {Object} data Event object fired on dragover
|
|
475
|
+
* @private
|
|
476
|
+
*/
|
|
477
|
+
_fireEnterLeaveEvents(target: FabricObject | undefined, data: DragEventData): void;
|
|
478
|
+
/**
|
|
479
|
+
* Manage the synthetic in/out events for the fabric objects on the canvas
|
|
480
|
+
* @param {Fabric.Object} target the target where the target from the supported events
|
|
481
|
+
* @param {Object} data Event object fired
|
|
482
|
+
* @param {Object} config configuration for the function to work
|
|
483
|
+
* @param {String} config.targetName property on the canvas where the old target is stored
|
|
484
|
+
* @param {String} [config.canvasEvtOut] name of the event to fire at canvas level for out
|
|
485
|
+
* @param {String} config.evtOut name of the event to fire for out
|
|
486
|
+
* @param {String} [config.canvasEvtIn] name of the event to fire at canvas level for in
|
|
487
|
+
* @param {String} config.evtIn name of the event to fire for in
|
|
488
|
+
* @private
|
|
489
|
+
*/
|
|
490
|
+
fireSyntheticInOutEvents<T extends keyof TSyntheticEventContext>(type: T, { target, oldTarget, fireCanvas, e, ...data }: TSyntheticEventContext[T] & {
|
|
491
|
+
target?: FabricObject;
|
|
492
|
+
oldTarget?: FabricObject;
|
|
493
|
+
fireCanvas?: boolean;
|
|
494
|
+
}): void;
|
|
495
|
+
/**
|
|
496
|
+
* Method that defines actions when an Event Mouse Wheel
|
|
497
|
+
* @param {Event} e Event object fired on mouseup
|
|
498
|
+
*/
|
|
499
|
+
__onMouseWheel(e: TPointerEvent): void;
|
|
500
|
+
/**
|
|
501
|
+
* @private
|
|
502
|
+
* @param {Event} e Event fired on mousemove
|
|
503
|
+
*/
|
|
504
|
+
_transformObject(e: TPointerEvent): void;
|
|
505
|
+
/**
|
|
506
|
+
* @private
|
|
507
|
+
*/
|
|
508
|
+
_performTransformAction(e: TPointerEvent, transform: Transform, pointer: Point): void;
|
|
509
|
+
/**
|
|
510
|
+
* Sets the cursor depending on where the canvas is being hovered.
|
|
511
|
+
* Note: very buggy in Opera
|
|
512
|
+
* @param {Event} e Event object
|
|
513
|
+
* @param {Object} target Object that the mouse is hovering, if so.
|
|
514
|
+
*/
|
|
515
|
+
_setCursorFromEvent(e: TPointerEvent, target?: FabricObject): void;
|
|
516
|
+
/**
|
|
517
|
+
* ## Handles multiple selection
|
|
518
|
+
* - toggles `target` selection (selects/deselects `target` if it isn't/is selected respectively)
|
|
519
|
+
* - sets the active object in case it is not set or in case there is a single active object left under active selection.
|
|
520
|
+
* ---
|
|
521
|
+
* - If the active object is the active selection we add/remove `target` from it
|
|
522
|
+
* - If not, add the active object and `target` to the active selection and make it the active object.
|
|
523
|
+
* @private
|
|
524
|
+
* @param {TPointerEvent} e Event object
|
|
525
|
+
* @param {FabricObject} target target of event to select/deselect
|
|
526
|
+
* @returns true if grouping occurred
|
|
527
|
+
*/
|
|
528
|
+
protected handleMultiSelection(e: TPointerEvent, target?: FabricObject): this is AssertKeys<this, '_activeObject'>;
|
|
529
|
+
/**
|
|
530
|
+
* ## Handles selection
|
|
531
|
+
* - selects objects that are contained in (and possibly intersecting) the selection bounding box
|
|
532
|
+
* - sets the active object
|
|
533
|
+
* ---
|
|
534
|
+
* runs on mouse up
|
|
535
|
+
*/
|
|
536
|
+
protected handleSelection(e: TPointerEvent): this is AssertKeys<this, '_activeObject'>;
|
|
537
|
+
exitTextEditing(): void;
|
|
538
|
+
/**
|
|
539
|
+
* @override clear {@link textEditingManager}
|
|
540
|
+
*/
|
|
541
|
+
clear(): void;
|
|
542
|
+
/**
|
|
543
|
+
* @override clear {@link textEditingManager}
|
|
544
|
+
*/
|
|
545
|
+
destroy(): void;
|
|
546
|
+
}
|
|
547
|
+
export {};
|
|
548
|
+
//# sourceMappingURL=Canvas.d.ts.map
|