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,327 @@
|
|
|
1
|
+
import type { TBBox, TCornerPoint, TDegree, TMat2D, TOriginX, TOriginY } from '../../typedefs';
|
|
2
|
+
import { Point } from '../../Point';
|
|
3
|
+
import type { Canvas } from '../../canvas/Canvas';
|
|
4
|
+
import type { StaticCanvas } from '../../canvas/StaticCanvas';
|
|
5
|
+
import { ObjectOrigin } from './ObjectOrigin';
|
|
6
|
+
import { ObjectEvents } from '../../EventTypeDefs';
|
|
7
|
+
import { ControlProps } from './types/ControlProps';
|
|
8
|
+
type TLineDescriptor = {
|
|
9
|
+
o: Point;
|
|
10
|
+
d: Point;
|
|
11
|
+
};
|
|
12
|
+
type TBBoxLines = {
|
|
13
|
+
topline: TLineDescriptor;
|
|
14
|
+
leftline: TLineDescriptor;
|
|
15
|
+
bottomline: TLineDescriptor;
|
|
16
|
+
rightline: TLineDescriptor;
|
|
17
|
+
};
|
|
18
|
+
type TMatrixCache = {
|
|
19
|
+
key: string;
|
|
20
|
+
value: TMat2D;
|
|
21
|
+
};
|
|
22
|
+
type TACoords = TCornerPoint;
|
|
23
|
+
export declare class ObjectGeometry<EventSpec extends ObjectEvents = ObjectEvents> extends ObjectOrigin<EventSpec> implements Pick<ControlProps, 'padding'> {
|
|
24
|
+
padding: number;
|
|
25
|
+
/**
|
|
26
|
+
* Describe object's corner position in canvas object absolute coordinates
|
|
27
|
+
* properties are tl,tr,bl,br and describe the four main corner.
|
|
28
|
+
* each property is an object with x, y, instance of Fabric.Point.
|
|
29
|
+
* The coordinates depends from this properties: width, height, scaleX, scaleY
|
|
30
|
+
* skewX, skewY, angle, strokeWidth, top, left.
|
|
31
|
+
* Those coordinates are useful to understand where an object is. They get updated
|
|
32
|
+
* with lineCoords or oCoords in interactive cases but they do not need to be updated when zoom or panning change.
|
|
33
|
+
* The coordinates get updated with @method setCoords.
|
|
34
|
+
* You can calculate them without updating with @method calcACoords();
|
|
35
|
+
*/
|
|
36
|
+
aCoords: TACoords;
|
|
37
|
+
/**
|
|
38
|
+
* Describe object's corner position in canvas element coordinates.
|
|
39
|
+
* includes padding. Used of object detection.
|
|
40
|
+
* set and refreshed with setCoords.
|
|
41
|
+
* Those could go away
|
|
42
|
+
* @todo investigate how to get rid of those
|
|
43
|
+
*/
|
|
44
|
+
lineCoords: TCornerPoint;
|
|
45
|
+
/**
|
|
46
|
+
* storage cache for object transform matrix
|
|
47
|
+
*/
|
|
48
|
+
ownMatrixCache?: TMatrixCache;
|
|
49
|
+
/**
|
|
50
|
+
* storage cache for object full transform matrix
|
|
51
|
+
*/
|
|
52
|
+
matrixCache?: TMatrixCache;
|
|
53
|
+
/**
|
|
54
|
+
* A Reference of the Canvas where the object is actually added
|
|
55
|
+
* @type StaticCanvas | Canvas;
|
|
56
|
+
* @default undefined
|
|
57
|
+
* @private
|
|
58
|
+
*/
|
|
59
|
+
canvas?: StaticCanvas | Canvas;
|
|
60
|
+
/**
|
|
61
|
+
* @returns {number} x position according to object's {@link originX} property in canvas coordinate plane
|
|
62
|
+
*/
|
|
63
|
+
getX(): number;
|
|
64
|
+
/**
|
|
65
|
+
* @param {number} value x position according to object's {@link originX} property in canvas coordinate plane
|
|
66
|
+
*/
|
|
67
|
+
setX(value: number): void;
|
|
68
|
+
/**
|
|
69
|
+
* @returns {number} y position according to object's {@link originY} property in canvas coordinate plane
|
|
70
|
+
*/
|
|
71
|
+
getY(): number;
|
|
72
|
+
/**
|
|
73
|
+
* @param {number} value y position according to object's {@link originY} property in canvas coordinate plane
|
|
74
|
+
*/
|
|
75
|
+
setY(value: number): void;
|
|
76
|
+
/**
|
|
77
|
+
* @returns {number} x position according to object's {@link originX} property in parent's coordinate plane\
|
|
78
|
+
* if parent is canvas then this property is identical to {@link getX}
|
|
79
|
+
*/
|
|
80
|
+
getRelativeX(): number;
|
|
81
|
+
/**
|
|
82
|
+
* @param {number} value x position according to object's {@link originX} property in parent's coordinate plane\
|
|
83
|
+
* if parent is canvas then this method is identical to {@link setX}
|
|
84
|
+
*/
|
|
85
|
+
setRelativeX(value: number): void;
|
|
86
|
+
/**
|
|
87
|
+
* @returns {number} y position according to object's {@link originY} property in parent's coordinate plane\
|
|
88
|
+
* if parent is canvas then this property is identical to {@link getY}
|
|
89
|
+
*/
|
|
90
|
+
getRelativeY(): number;
|
|
91
|
+
/**
|
|
92
|
+
* @param {number} value y position according to object's {@link originY} property in parent's coordinate plane\
|
|
93
|
+
* if parent is canvas then this property is identical to {@link setY}
|
|
94
|
+
*/
|
|
95
|
+
setRelativeY(value: number): void;
|
|
96
|
+
/**
|
|
97
|
+
* @returns {Point} x position according to object's {@link originX} {@link originY} properties in canvas coordinate plane
|
|
98
|
+
*/
|
|
99
|
+
getXY(): Point;
|
|
100
|
+
/**
|
|
101
|
+
* Set an object position to a particular point, the point is intended in absolute ( canvas ) coordinate.
|
|
102
|
+
* You can specify {@link originX} and {@link originY} values,
|
|
103
|
+
* that otherwise are the object's current values.
|
|
104
|
+
* @example <caption>Set object's bottom left corner to point (5,5) on canvas</caption>
|
|
105
|
+
* object.setXY(new Point(5, 5), 'left', 'bottom').
|
|
106
|
+
* @param {Point} point position in canvas coordinate plane
|
|
107
|
+
* @param {TOriginX} [originX] Horizontal origin: 'left', 'center' or 'right'
|
|
108
|
+
* @param {TOriginY} [originY] Vertical origin: 'top', 'center' or 'bottom'
|
|
109
|
+
*/
|
|
110
|
+
setXY(point: Point, originX?: TOriginX, originY?: TOriginY): void;
|
|
111
|
+
/**
|
|
112
|
+
* @returns {Point} x,y position according to object's {@link originX} {@link originY} properties in parent's coordinate plane
|
|
113
|
+
*/
|
|
114
|
+
getRelativeXY(): Point;
|
|
115
|
+
/**
|
|
116
|
+
* As {@link setXY}, but in current parent's coordinate plane (the current group if any or the canvas)
|
|
117
|
+
* @param {Point} point position according to object's {@link originX} {@link originY} properties in parent's coordinate plane
|
|
118
|
+
* @param {TOriginX} [originX] Horizontal origin: 'left', 'center' or 'right'
|
|
119
|
+
* @param {TOriginY} [originY] Vertical origin: 'top', 'center' or 'bottom'
|
|
120
|
+
*/
|
|
121
|
+
setRelativeXY(point: Point, originX?: TOriginX, originY?: TOriginY): void;
|
|
122
|
+
/**
|
|
123
|
+
* return correct set of coordinates for intersection
|
|
124
|
+
* this will return either aCoords or lineCoords.
|
|
125
|
+
* @param {boolean} absolute will return aCoords if true or lineCoords
|
|
126
|
+
* @param {boolean} calculate will calculate the coords or use the one
|
|
127
|
+
* that are attached to the object instance
|
|
128
|
+
* @return {Object} {tl, tr, br, bl} points
|
|
129
|
+
*/
|
|
130
|
+
_getCoords(absolute?: boolean, calculate?: boolean): TCornerPoint;
|
|
131
|
+
/**
|
|
132
|
+
* return correct set of coordinates for intersection
|
|
133
|
+
* this will return either aCoords or lineCoords.
|
|
134
|
+
* The coords are returned in an array.
|
|
135
|
+
* @param {boolean} absolute will return aCoords if true or lineCoords
|
|
136
|
+
* @param {boolean} calculate will return aCoords if true or lineCoords
|
|
137
|
+
* @return {Array} [tl, tr, br, bl] of points
|
|
138
|
+
*/
|
|
139
|
+
getCoords(absolute?: boolean, calculate?: boolean): Point[];
|
|
140
|
+
/**
|
|
141
|
+
* Checks if object intersects with an area formed by 2 points
|
|
142
|
+
* @param {Object} pointTL top-left point of area
|
|
143
|
+
* @param {Object} pointBR bottom-right point of area
|
|
144
|
+
* @param {Boolean} [absolute] use coordinates without viewportTransform
|
|
145
|
+
* @param {Boolean} [calculate] use coordinates of current position instead of stored one
|
|
146
|
+
* @return {Boolean} true if object intersects with an area formed by 2 points
|
|
147
|
+
*/
|
|
148
|
+
intersectsWithRect(pointTL: Point, pointBR: Point, absolute?: boolean, calculate?: boolean): boolean;
|
|
149
|
+
/**
|
|
150
|
+
* Checks if object intersects with another object
|
|
151
|
+
* @param {Object} other Object to test
|
|
152
|
+
* @param {Boolean} [absolute] use coordinates without viewportTransform
|
|
153
|
+
* @param {Boolean} [calculate] use coordinates of current position instead of calculating them
|
|
154
|
+
* @return {Boolean} true if object intersects with another object
|
|
155
|
+
*/
|
|
156
|
+
intersectsWithObject(other: ObjectGeometry, absolute?: boolean, calculate?: boolean): boolean;
|
|
157
|
+
/**
|
|
158
|
+
* Checks if object is fully contained within area of another object
|
|
159
|
+
* @param {Object} other Object to test
|
|
160
|
+
* @param {Boolean} [absolute] use coordinates without viewportTransform
|
|
161
|
+
* @param {Boolean} [calculate] use coordinates of current position instead of store ones
|
|
162
|
+
* @return {Boolean} true if object is fully contained within area of another object
|
|
163
|
+
*/
|
|
164
|
+
isContainedWithinObject(other: ObjectGeometry, absolute?: boolean, calculate?: boolean): boolean;
|
|
165
|
+
/**
|
|
166
|
+
* Checks if object is fully contained within area formed by 2 points
|
|
167
|
+
* @param {Object} pointTL top-left point of area
|
|
168
|
+
* @param {Object} pointBR bottom-right point of area
|
|
169
|
+
* @param {Boolean} [absolute] use coordinates without viewportTransform
|
|
170
|
+
* @param {Boolean} [calculate] use coordinates of current position instead of stored one
|
|
171
|
+
* @return {Boolean} true if object is fully contained within area formed by 2 points
|
|
172
|
+
*/
|
|
173
|
+
isContainedWithinRect(pointTL: Point, pointBR: Point, absolute?: boolean, calculate?: boolean): boolean;
|
|
174
|
+
isOverlapping<T extends ObjectGeometry>(other: T): boolean;
|
|
175
|
+
/**
|
|
176
|
+
* Checks if point is inside the object
|
|
177
|
+
* @param {Point} point Point to check against
|
|
178
|
+
* @param {Object} [lines] object returned from @method _getImageLines
|
|
179
|
+
* @param {Boolean} [absolute] use coordinates without viewportTransform
|
|
180
|
+
* @param {Boolean} [calculate] use coordinates of current position instead of stored ones
|
|
181
|
+
* @return {Boolean} true if point is inside the object
|
|
182
|
+
*/
|
|
183
|
+
containsPoint(point: Point, lines?: TBBoxLines, absolute?: boolean, calculate?: boolean): boolean;
|
|
184
|
+
/**
|
|
185
|
+
* Checks if object is contained within the canvas with current viewportTransform
|
|
186
|
+
* the check is done stopping at first point that appears on screen
|
|
187
|
+
* @param {Boolean} [calculate] use coordinates of current position instead of .aCoords
|
|
188
|
+
* @return {Boolean} true if object is fully or partially contained within canvas
|
|
189
|
+
*/
|
|
190
|
+
isOnScreen(calculate?: boolean): boolean;
|
|
191
|
+
/**
|
|
192
|
+
* Checks if the object contains the midpoint between canvas extremities
|
|
193
|
+
* Does not make sense outside the context of isOnScreen and isPartiallyOnScreen
|
|
194
|
+
* @private
|
|
195
|
+
* @param {Point} pointTL Top Left point
|
|
196
|
+
* @param {Point} pointBR Top Right point
|
|
197
|
+
* @param {Boolean} calculate use coordinates of current position instead of stored ones
|
|
198
|
+
* @return {Boolean} true if the object contains the point
|
|
199
|
+
*/
|
|
200
|
+
private _containsCenterOfCanvas;
|
|
201
|
+
/**
|
|
202
|
+
* Checks if object is partially contained within the canvas with current viewportTransform
|
|
203
|
+
* @param {Boolean} [calculate] use coordinates of current position instead of stored ones
|
|
204
|
+
* @return {Boolean} true if object is partially contained within canvas
|
|
205
|
+
*/
|
|
206
|
+
isPartiallyOnScreen(calculate?: boolean): boolean;
|
|
207
|
+
/**
|
|
208
|
+
* Method that returns an object with the object edges in it, given the coordinates of the corners
|
|
209
|
+
* @private
|
|
210
|
+
* @param {Object} lineCoords or aCoords Coordinates of the object corners
|
|
211
|
+
*/
|
|
212
|
+
_getImageLines({ tl, tr, bl, br }: TCornerPoint): TBBoxLines;
|
|
213
|
+
/**
|
|
214
|
+
* Helper method to determine how many cross points are between the 4 object edges
|
|
215
|
+
* and the horizontal line determined by a point on canvas
|
|
216
|
+
* @private
|
|
217
|
+
* @param {Point} point Point to check
|
|
218
|
+
* @param {Object} lines Coordinates of the object being evaluated
|
|
219
|
+
* @return {number} number of crossPoint
|
|
220
|
+
*/
|
|
221
|
+
_findCrossPoints(point: Point, lines: TBBoxLines): number;
|
|
222
|
+
/**
|
|
223
|
+
* Returns coordinates of object's bounding rectangle (left, top, width, height)
|
|
224
|
+
* the box is intended as aligned to axis of canvas.
|
|
225
|
+
* @param {Boolean} [absolute] use coordinates without viewportTransform
|
|
226
|
+
* @param {Boolean} [calculate] use coordinates of current position instead of .lineCoords / .aCoords
|
|
227
|
+
* @return {Object} Object with left, top, width, height properties
|
|
228
|
+
*/
|
|
229
|
+
getBoundingRect(absolute?: boolean, calculate?: boolean): TBBox;
|
|
230
|
+
/**
|
|
231
|
+
* Returns width of an object's bounding box counting transformations
|
|
232
|
+
* @todo shouldn't this account for group transform and return the actual size in canvas coordinate plane?
|
|
233
|
+
* @return {Number} width value
|
|
234
|
+
*/
|
|
235
|
+
getScaledWidth(): number;
|
|
236
|
+
/**
|
|
237
|
+
* Returns height of an object bounding box counting transformations
|
|
238
|
+
* @todo shouldn't this account for group transform and return the actual size in canvas coordinate plane?
|
|
239
|
+
* @return {Number} height value
|
|
240
|
+
*/
|
|
241
|
+
getScaledHeight(): number;
|
|
242
|
+
/**
|
|
243
|
+
* Scales an object (equally by x and y)
|
|
244
|
+
* @param {Number} value Scale factor
|
|
245
|
+
* @return {void}
|
|
246
|
+
*/
|
|
247
|
+
scale(value: number): void;
|
|
248
|
+
/**
|
|
249
|
+
* Scales an object to a given width, with respect to bounding box (scaling by x/y equally)
|
|
250
|
+
* @param {Number} value New width value
|
|
251
|
+
* @param {Boolean} absolute ignore viewport
|
|
252
|
+
* @return {void}
|
|
253
|
+
*/
|
|
254
|
+
scaleToWidth(value: number, absolute?: boolean): void;
|
|
255
|
+
/**
|
|
256
|
+
* Scales an object to a given height, with respect to bounding box (scaling by x/y equally)
|
|
257
|
+
* @param {Number} value New height value
|
|
258
|
+
* @param {Boolean} absolute ignore viewport
|
|
259
|
+
* @return {void}
|
|
260
|
+
*/
|
|
261
|
+
scaleToHeight(value: number, absolute?: boolean): void;
|
|
262
|
+
getCanvasRetinaScaling(): number;
|
|
263
|
+
/**
|
|
264
|
+
* Returns the object angle relative to canvas counting also the group property
|
|
265
|
+
* @returns {TDegree}
|
|
266
|
+
*/
|
|
267
|
+
getTotalAngle(): TDegree;
|
|
268
|
+
/**
|
|
269
|
+
* return the coordinate of the 4 corners of the bounding box in HTMLCanvasElement coordinates
|
|
270
|
+
* used for bounding box interactivity with the mouse
|
|
271
|
+
* @returns {TCornerPoint}
|
|
272
|
+
*/
|
|
273
|
+
calcLineCoords(): TCornerPoint;
|
|
274
|
+
/**
|
|
275
|
+
* Retrieves viewportTransform from Object's canvas if possible
|
|
276
|
+
* @method getViewportTransform
|
|
277
|
+
* @memberOf FabricObject.prototype
|
|
278
|
+
* @return {TMat2D}
|
|
279
|
+
*/
|
|
280
|
+
getViewportTransform(): TMat2D;
|
|
281
|
+
/**
|
|
282
|
+
* Calculates the coordinates of the 4 corner of the bbox, in absolute coordinates.
|
|
283
|
+
* those never change with zoom or viewport changes.
|
|
284
|
+
* @return {TCornerPoint}
|
|
285
|
+
*/
|
|
286
|
+
calcACoords(): TCornerPoint;
|
|
287
|
+
/**
|
|
288
|
+
* Sets corner and controls position coordinates based on current angle, width and height, left and top.
|
|
289
|
+
* aCoords are used to quickly find an object on the canvas
|
|
290
|
+
* lineCoords are used to quickly find object during pointer events.
|
|
291
|
+
* See {@link https://github.com/fabricjs/fabric.js/wiki/When-to-call-setCoords} and {@link http://fabricjs.com/fabric-gotchas}
|
|
292
|
+
* @param {Boolean} [skipCorners] skip calculation of aCoord, lineCoords.
|
|
293
|
+
* @return {void}
|
|
294
|
+
*/
|
|
295
|
+
setCoords(): void;
|
|
296
|
+
transformMatrixKey(skipGroup?: boolean): string;
|
|
297
|
+
/**
|
|
298
|
+
* calculate transform matrix that represents the current transformations from the
|
|
299
|
+
* object's properties.
|
|
300
|
+
* @param {Boolean} [skipGroup] return transform matrix for object not counting parent transformations
|
|
301
|
+
* There are some situation in which this is useful to avoid the fake rotation.
|
|
302
|
+
* @return {TMat2D} transform matrix for the object
|
|
303
|
+
*/
|
|
304
|
+
calcTransformMatrix(skipGroup?: boolean): TMat2D;
|
|
305
|
+
/**
|
|
306
|
+
* calculate transform matrix that represents the current transformations from the
|
|
307
|
+
* object's properties, this matrix does not include the group transformation
|
|
308
|
+
* @return {TMat2D} transform matrix for the object
|
|
309
|
+
*/
|
|
310
|
+
calcOwnMatrix(): TMat2D;
|
|
311
|
+
/**
|
|
312
|
+
* Calculate object dimensions from its properties
|
|
313
|
+
* @private
|
|
314
|
+
* @returns {Point} dimensions
|
|
315
|
+
*/
|
|
316
|
+
_getNonTransformedDimensions(): Point;
|
|
317
|
+
/**
|
|
318
|
+
* Calculate object dimensions for controls box, including padding and canvas zoom.
|
|
319
|
+
* and active selection
|
|
320
|
+
* @private
|
|
321
|
+
* @param {object} [options] transform options
|
|
322
|
+
* @returns {Point} dimensions
|
|
323
|
+
*/
|
|
324
|
+
_calculateCurrentDimensions(options?: any): Point;
|
|
325
|
+
}
|
|
326
|
+
export {};
|
|
327
|
+
//# sourceMappingURL=ObjectGeometry.d.ts.map
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
import { Point } from '../../Point';
|
|
2
|
+
import type { Group } from '../Group';
|
|
3
|
+
import { TDegree, TOriginX, TOriginY } from '../../typedefs';
|
|
4
|
+
import { CommonMethods } from '../../CommonMethods';
|
|
5
|
+
import { BaseProps } from './types/BaseProps';
|
|
6
|
+
import { FillStrokeProps } from './types/FillStrokeProps';
|
|
7
|
+
export declare class ObjectOrigin<EventSpec> extends CommonMethods<EventSpec> implements BaseProps, Pick<FillStrokeProps, 'strokeWidth' | 'strokeUniform'> {
|
|
8
|
+
top: number;
|
|
9
|
+
left: number;
|
|
10
|
+
width: number;
|
|
11
|
+
height: number;
|
|
12
|
+
flipX: boolean;
|
|
13
|
+
flipY: boolean;
|
|
14
|
+
scaleX: number;
|
|
15
|
+
scaleY: number;
|
|
16
|
+
skewX: number;
|
|
17
|
+
skewY: number;
|
|
18
|
+
originX: TOriginX;
|
|
19
|
+
originY: TOriginY;
|
|
20
|
+
angle: TDegree;
|
|
21
|
+
strokeWidth: number;
|
|
22
|
+
strokeUniform: boolean;
|
|
23
|
+
/**
|
|
24
|
+
* Object containing this object.
|
|
25
|
+
* can influence its size and position
|
|
26
|
+
*/
|
|
27
|
+
group?: Group;
|
|
28
|
+
_originalOriginX?: TOriginX;
|
|
29
|
+
_originalOriginY?: TOriginY;
|
|
30
|
+
/**
|
|
31
|
+
* Calculate object bounding box dimensions from its properties scale, skew.
|
|
32
|
+
* @param {Object} [options]
|
|
33
|
+
* @param {Number} [options.scaleX]
|
|
34
|
+
* @param {Number} [options.scaleY]
|
|
35
|
+
* @param {Number} [options.skewX]
|
|
36
|
+
* @param {Number} [options.skewY]
|
|
37
|
+
* @private
|
|
38
|
+
* @returns {Point} dimensions
|
|
39
|
+
*/
|
|
40
|
+
_getTransformedDimensions(options?: any): Point;
|
|
41
|
+
/**
|
|
42
|
+
* Translates the coordinates from a set of origin to another (based on the object's dimensions)
|
|
43
|
+
* @param {Point} point The point which corresponds to the originX and originY params
|
|
44
|
+
* @param {TOriginX} fromOriginX Horizontal origin: 'left', 'center' or 'right'
|
|
45
|
+
* @param {TOriginY} fromOriginY Vertical origin: 'top', 'center' or 'bottom'
|
|
46
|
+
* @param {TOriginX} toOriginX Horizontal origin: 'left', 'center' or 'right'
|
|
47
|
+
* @param {TOriginY} toOriginY Vertical origin: 'top', 'center' or 'bottom'
|
|
48
|
+
* @return {Point}
|
|
49
|
+
*/
|
|
50
|
+
translateToGivenOrigin(point: Point, fromOriginX: TOriginX, fromOriginY: TOriginY, toOriginX: TOriginX, toOriginY: TOriginY): Point;
|
|
51
|
+
/**
|
|
52
|
+
* Translates the coordinates from origin to center coordinates (based on the object's dimensions)
|
|
53
|
+
* @param {Point} point The point which corresponds to the originX and originY params
|
|
54
|
+
* @param {TOriginX} originX Horizontal origin: 'left', 'center' or 'right'
|
|
55
|
+
* @param {TOriginY} originY Vertical origin: 'top', 'center' or 'bottom'
|
|
56
|
+
* @return {Point}
|
|
57
|
+
*/
|
|
58
|
+
translateToCenterPoint(point: Point, originX: TOriginX, originY: TOriginY): Point;
|
|
59
|
+
/**
|
|
60
|
+
* Translates the coordinates from center to origin coordinates (based on the object's dimensions)
|
|
61
|
+
* @param {Point} center The point which corresponds to center of the object
|
|
62
|
+
* @param {OriginX} originX Horizontal origin: 'left', 'center' or 'right'
|
|
63
|
+
* @param {OriginY} originY Vertical origin: 'top', 'center' or 'bottom'
|
|
64
|
+
* @return {Point}
|
|
65
|
+
*/
|
|
66
|
+
translateToOriginPoint(center: Point, originX: TOriginX, originY: TOriginY): Point;
|
|
67
|
+
/**
|
|
68
|
+
* Returns the center coordinates of the object relative to canvas
|
|
69
|
+
* @return {Point}
|
|
70
|
+
*/
|
|
71
|
+
getCenterPoint(): Point;
|
|
72
|
+
/**
|
|
73
|
+
* Returns the center coordinates of the object relative to it's parent
|
|
74
|
+
* @return {Point}
|
|
75
|
+
*/
|
|
76
|
+
getRelativeCenterPoint(): Point;
|
|
77
|
+
/**
|
|
78
|
+
* Returns the coordinates of the object as if it has a different origin
|
|
79
|
+
* @param {TOriginX} originX Horizontal origin: 'left', 'center' or 'right'
|
|
80
|
+
* @param {TOriginY} originY Vertical origin: 'top', 'center' or 'bottom'
|
|
81
|
+
* @return {Point}
|
|
82
|
+
*/
|
|
83
|
+
getPointByOrigin(originX: TOriginX, originY: TOriginY): Point;
|
|
84
|
+
/**
|
|
85
|
+
* Sets the position of the object taking into consideration the object's origin
|
|
86
|
+
* @param {Point} pos The new position of the object
|
|
87
|
+
* @param {TOriginX} originX Horizontal origin: 'left', 'center' or 'right'
|
|
88
|
+
* @param {TOriginY} originY Vertical origin: 'top', 'center' or 'bottom'
|
|
89
|
+
* @return {void}
|
|
90
|
+
*/
|
|
91
|
+
setPositionByOrigin(pos: Point, originX: TOriginX, originY: TOriginY): void;
|
|
92
|
+
/**
|
|
93
|
+
* Sets the origin/position of the object to it's center point
|
|
94
|
+
* @private
|
|
95
|
+
* @return {void}
|
|
96
|
+
*/
|
|
97
|
+
_setOriginToCenter(): void;
|
|
98
|
+
/**
|
|
99
|
+
* Resets the origin/position of the object to it's original origin
|
|
100
|
+
* @private
|
|
101
|
+
* @return {void}
|
|
102
|
+
*/
|
|
103
|
+
_resetOrigin(): void;
|
|
104
|
+
/**
|
|
105
|
+
* @private
|
|
106
|
+
*/
|
|
107
|
+
_getLeftTopCoords(): Point;
|
|
108
|
+
}
|
|
109
|
+
//# sourceMappingURL=ObjectOrigin.d.ts.map
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import { ObjectEvents } from '../../EventTypeDefs';
|
|
2
|
+
import type { Group } from '../Group';
|
|
3
|
+
import type { Canvas } from '../../canvas/Canvas';
|
|
4
|
+
import { StaticCanvas } from '../../canvas/StaticCanvas';
|
|
5
|
+
import { ObjectGeometry } from './ObjectGeometry';
|
|
6
|
+
type TAncestor = StackedObject | Canvas | StaticCanvas;
|
|
7
|
+
/**
|
|
8
|
+
* Strict: only ancestors that are objects (without canvas)
|
|
9
|
+
*/
|
|
10
|
+
export type Ancestors<Strict> = Strict extends true ? [StackedObject | Group] | [StackedObject | Group, ...Group[]] | Group[] : [StackedObject | Group | Canvas | StaticCanvas] | [StackedObject | Group, Canvas | StaticCanvas] | [StackedObject, ...Group[]] | Group[] | [StackedObject | Group, ...Group[], Canvas | StaticCanvas];
|
|
11
|
+
export type AncestryComparison<Strict> = {
|
|
12
|
+
/**
|
|
13
|
+
* common ancestors of `this` and`other`(may include`this` | `other`)
|
|
14
|
+
*/
|
|
15
|
+
common: Ancestors<Strict>;
|
|
16
|
+
/**
|
|
17
|
+
* ancestors that are of `this` only
|
|
18
|
+
*/
|
|
19
|
+
fork: Ancestors<Strict>;
|
|
20
|
+
/**
|
|
21
|
+
* ancestors that are of `other` only
|
|
22
|
+
*/
|
|
23
|
+
otherFork: Ancestors<Strict>;
|
|
24
|
+
};
|
|
25
|
+
export declare class StackedObject<EventSpec extends ObjectEvents = ObjectEvents> extends ObjectGeometry<EventSpec> {
|
|
26
|
+
/**
|
|
27
|
+
* A reference to the parent of the object
|
|
28
|
+
* Used to keep the original parent ref when the object has been added to an ActiveSelection, hence loosing the `group` ref
|
|
29
|
+
*/
|
|
30
|
+
__owningGroup?: Group;
|
|
31
|
+
/**
|
|
32
|
+
* Returns instance's parent **EXCLUDING** `ActiveSelection`
|
|
33
|
+
* @param {boolean} [strict] exclude canvas as well
|
|
34
|
+
*/
|
|
35
|
+
getParent<T extends boolean>(strict?: T): TAncestor | undefined;
|
|
36
|
+
/**
|
|
37
|
+
* Checks if object is descendant of target
|
|
38
|
+
* Should be used instead of {@link Group.contains} or {@link StaticCanvas.contains} for performance reasons
|
|
39
|
+
* @param {TAncestor} target
|
|
40
|
+
* @returns {boolean}
|
|
41
|
+
*/
|
|
42
|
+
isDescendantOf(target: TAncestor): boolean;
|
|
43
|
+
/**
|
|
44
|
+
*
|
|
45
|
+
* @param {boolean} [strict] returns only ancestors that are objects (without canvas)
|
|
46
|
+
* @returns {Ancestors} ancestors (excluding `ActiveSelection`) from bottom to top
|
|
47
|
+
*/
|
|
48
|
+
getAncestors<T extends boolean>(strict?: T): Ancestors<T>;
|
|
49
|
+
/**
|
|
50
|
+
* Compare ancestors
|
|
51
|
+
*
|
|
52
|
+
* @param {StackedObject} other
|
|
53
|
+
* @param {boolean} [strict] finds only ancestors that are objects (without canvas)
|
|
54
|
+
* @returns {AncestryComparison} an object that represent the ancestry situation.
|
|
55
|
+
*/
|
|
56
|
+
findCommonAncestors<T extends this, S extends boolean>(other: T, strict?: S): AncestryComparison<S>;
|
|
57
|
+
/**
|
|
58
|
+
*
|
|
59
|
+
* @param {StackedObject} other
|
|
60
|
+
* @param {boolean} [strict] checks only ancestors that are objects (without canvas)
|
|
61
|
+
* @returns {boolean}
|
|
62
|
+
*/
|
|
63
|
+
hasCommonAncestors<T extends this>(other: T, strict?: boolean): boolean;
|
|
64
|
+
/**
|
|
65
|
+
*
|
|
66
|
+
* @param {FabricObject} other object to compare against
|
|
67
|
+
* @returns {boolean | undefined} if objects do not share a common ancestor or they are strictly equal it is impossible to determine which is in front of the other; in such cases the function returns `undefined`
|
|
68
|
+
*/
|
|
69
|
+
isInFrontOf<T extends this>(other: T): boolean | undefined;
|
|
70
|
+
}
|
|
71
|
+
export {};
|
|
72
|
+
//# sourceMappingURL=StackedObject.d.ts.map
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
export declare const stateProperties: string[];
|
|
2
|
+
export declare const cacheProperties: string[];
|
|
3
|
+
export declare const fabricObjectDefaultValues: {
|
|
4
|
+
readonly originX: "left";
|
|
5
|
+
readonly originY: "top";
|
|
6
|
+
readonly top: 0;
|
|
7
|
+
readonly left: 0;
|
|
8
|
+
readonly width: 0;
|
|
9
|
+
readonly height: 0;
|
|
10
|
+
readonly scaleX: 1;
|
|
11
|
+
readonly scaleY: 1;
|
|
12
|
+
readonly flipX: false;
|
|
13
|
+
readonly flipY: false;
|
|
14
|
+
readonly opacity: 1;
|
|
15
|
+
readonly angle: 0;
|
|
16
|
+
readonly skewX: 0;
|
|
17
|
+
readonly skewY: 0;
|
|
18
|
+
readonly cornerSize: 13;
|
|
19
|
+
readonly touchCornerSize: 24;
|
|
20
|
+
readonly transparentCorners: true;
|
|
21
|
+
readonly hoverCursor: null;
|
|
22
|
+
readonly moveCursor: null;
|
|
23
|
+
readonly padding: 0;
|
|
24
|
+
readonly borderColor: "rgb(178,204,255)";
|
|
25
|
+
readonly borderDashArray: null;
|
|
26
|
+
readonly cornerColor: "rgb(178,204,255)";
|
|
27
|
+
readonly cornerStrokeColor: "";
|
|
28
|
+
readonly cornerStyle: "rect";
|
|
29
|
+
readonly cornerDashArray: null;
|
|
30
|
+
readonly centeredScaling: false;
|
|
31
|
+
readonly centeredRotation: true;
|
|
32
|
+
readonly fill: "rgb(0,0,0)";
|
|
33
|
+
readonly fillRule: "nonzero";
|
|
34
|
+
readonly globalCompositeOperation: "source-over";
|
|
35
|
+
readonly backgroundColor: "";
|
|
36
|
+
readonly selectionBackgroundColor: "";
|
|
37
|
+
readonly stroke: null;
|
|
38
|
+
readonly strokeWidth: 1;
|
|
39
|
+
readonly strokeDashArray: null;
|
|
40
|
+
readonly strokeDashOffset: 0;
|
|
41
|
+
readonly strokeLineCap: "butt";
|
|
42
|
+
readonly strokeLineJoin: "miter";
|
|
43
|
+
readonly strokeMiterLimit: 4;
|
|
44
|
+
readonly shadow: null;
|
|
45
|
+
readonly borderOpacityWhenMoving: 0.4;
|
|
46
|
+
readonly borderScaleFactor: 1;
|
|
47
|
+
readonly minScaleLimit: 0;
|
|
48
|
+
readonly selectable: true;
|
|
49
|
+
readonly evented: true;
|
|
50
|
+
readonly visible: true;
|
|
51
|
+
readonly hasControls: true;
|
|
52
|
+
readonly hasBorders: true;
|
|
53
|
+
readonly perPixelTargetFind: false;
|
|
54
|
+
readonly includeDefaultValues: true;
|
|
55
|
+
readonly lockMovementX: false;
|
|
56
|
+
readonly lockMovementY: false;
|
|
57
|
+
readonly lockRotation: false;
|
|
58
|
+
readonly lockScalingX: false;
|
|
59
|
+
readonly lockScalingY: false;
|
|
60
|
+
readonly lockSkewingX: false;
|
|
61
|
+
readonly lockSkewingY: false;
|
|
62
|
+
readonly lockScalingFlip: false;
|
|
63
|
+
readonly excludeFromExport: false;
|
|
64
|
+
readonly objectCaching: true;
|
|
65
|
+
readonly noScaleCache: true;
|
|
66
|
+
readonly strokeUniform: false;
|
|
67
|
+
readonly dirty: true;
|
|
68
|
+
readonly paintFirst: "fill";
|
|
69
|
+
readonly activeOn: "down";
|
|
70
|
+
readonly colorProperties: readonly ["fill", "stroke", "backgroundColor"];
|
|
71
|
+
readonly clipPath: undefined;
|
|
72
|
+
readonly inverted: false;
|
|
73
|
+
readonly absolutePositioned: false;
|
|
74
|
+
readonly FX_DURATION: 500;
|
|
75
|
+
};
|
|
76
|
+
//# sourceMappingURL=defaultValues.d.ts.map
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import { TDegree, TOriginX, TOriginY } from '../../../typedefs';
|
|
2
|
+
export interface BaseProps {
|
|
3
|
+
/**
|
|
4
|
+
* Top position of an object. Note that by default it's relative to object top. You can change this by setting originY={top/center/bottom}
|
|
5
|
+
* @type Number
|
|
6
|
+
* @default 0
|
|
7
|
+
*/
|
|
8
|
+
top: number;
|
|
9
|
+
/**
|
|
10
|
+
* Left position of an object. Note that by default it's relative to object left. You can change this by setting originX={left/center/right}
|
|
11
|
+
* @type Number
|
|
12
|
+
* @default 0
|
|
13
|
+
*/
|
|
14
|
+
left: number;
|
|
15
|
+
/**
|
|
16
|
+
* Object width
|
|
17
|
+
* @type Number
|
|
18
|
+
* @default
|
|
19
|
+
*/
|
|
20
|
+
width: number;
|
|
21
|
+
/**
|
|
22
|
+
* Object height
|
|
23
|
+
* @type Number
|
|
24
|
+
* @default
|
|
25
|
+
*/
|
|
26
|
+
height: number;
|
|
27
|
+
/**
|
|
28
|
+
* When true, an object is rendered as flipped horizontally
|
|
29
|
+
* @type Boolean
|
|
30
|
+
* @default false
|
|
31
|
+
*/
|
|
32
|
+
flipX: boolean;
|
|
33
|
+
/**
|
|
34
|
+
* When true, an object is rendered as flipped vertically
|
|
35
|
+
* @type Boolean
|
|
36
|
+
* @default false
|
|
37
|
+
*/
|
|
38
|
+
flipY: boolean;
|
|
39
|
+
/**
|
|
40
|
+
* Object scale factor (horizontal)
|
|
41
|
+
* @type Number
|
|
42
|
+
* @default 1
|
|
43
|
+
*/
|
|
44
|
+
scaleX: number;
|
|
45
|
+
/**
|
|
46
|
+
* Object scale factor (vertical)
|
|
47
|
+
* @type Number
|
|
48
|
+
* @default 1
|
|
49
|
+
*/
|
|
50
|
+
scaleY: number;
|
|
51
|
+
/**
|
|
52
|
+
* Angle of skew on x axes of an object (in degrees)
|
|
53
|
+
* @type Number
|
|
54
|
+
* @default 0
|
|
55
|
+
*/
|
|
56
|
+
skewX: number;
|
|
57
|
+
/**
|
|
58
|
+
* Angle of skew on y axes of an object (in degrees)
|
|
59
|
+
* @type Number
|
|
60
|
+
* @default 0
|
|
61
|
+
*/
|
|
62
|
+
skewY: number;
|
|
63
|
+
/**
|
|
64
|
+
* Horizontal origin of transformation of an object (one of "left", "right", "center")
|
|
65
|
+
* See http://jsfiddle.net/1ow02gea/244/ on how originX/originY affect objects in groups
|
|
66
|
+
* @type String
|
|
67
|
+
* @default 'left'
|
|
68
|
+
*/
|
|
69
|
+
originX: TOriginX;
|
|
70
|
+
/**
|
|
71
|
+
* Vertical origin of transformation of an object (one of "top", "bottom", "center")
|
|
72
|
+
* See http://jsfiddle.net/1ow02gea/244/ on how originX/originY affect objects in groups
|
|
73
|
+
* @type String
|
|
74
|
+
* @default 'top'
|
|
75
|
+
*/
|
|
76
|
+
originY: TOriginY;
|
|
77
|
+
/**
|
|
78
|
+
* Angle of rotation of an object (in degrees)
|
|
79
|
+
* @type Number
|
|
80
|
+
* @default 0
|
|
81
|
+
*/
|
|
82
|
+
angle: TDegree;
|
|
83
|
+
}
|
|
84
|
+
//# sourceMappingURL=BaseProps.d.ts.map
|