fabric 5.3.0 → 6.0.0-beta1
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/.eslintrc.js +43 -0
- package/.eslintrc.json +38 -46
- package/.eslintrc_tests +12 -0
- package/.gitattributes +2 -0
- package/.prettierignore +16 -0
- package/.prettierrc +4 -0
- package/CHANGELOG.md +491 -189
- package/CONTRIBUTING.md +226 -58
- package/README.md +188 -239
- package/bower.json +1 -3
- package/dist/fabric.d.ts +1021 -0
- package/dist/index.cjs +28027 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.min.js +1 -0
- package/dist/index.mjs +27964 -0
- package/dist/index.mjs.map +1 -0
- package/dist/index.node.cjs +28092 -0
- package/dist/index.node.cjs.map +1 -0
- package/dist/index.node.d.ts +15 -0
- package/dist/index.node.mjs +28035 -0
- package/dist/index.node.mjs.map +1 -0
- package/dist/src/Collection.d.ts +126 -0
- package/dist/src/CommonMethods.d.ts +32 -0
- package/dist/src/EventTypeDefs.d.ts +226 -0
- package/dist/src/Intersection.d.ts +100 -0
- package/dist/src/Observable.d.ts +54 -0
- package/dist/src/Pattern.d.ts +104 -0
- package/dist/src/Point.d.ts +232 -0
- package/dist/src/Shadow.d.ts +87 -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 +46 -0
- package/dist/src/canvas/Canvas.d.ts +567 -0
- package/dist/src/canvas/SelectableCanvas.d.ts +723 -0
- package/dist/src/canvas/StaticCanvas.d.ts +751 -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/controls.render.d.ts +29 -0
- package/dist/src/controls/default_controls.d.ts +50 -0
- package/dist/src/controls/drag.d.ts +12 -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 +7 -0
- package/dist/src/env/node.d.ts +3 -0
- package/dist/src/env/types.d.ts +15 -0
- package/dist/src/filters/BaseFilter.d.ts +156 -0
- package/dist/src/filters/BlendColor.d.ts +80 -0
- package/dist/src/filters/BlendImage.d.ts +90 -0
- package/dist/src/filters/Blur.d.ts +50 -0
- package/dist/src/filters/Boilerplate.d.ts +46 -0
- package/dist/src/filters/Brightness.d.ts +46 -0
- package/dist/src/filters/Canvas2dFilterBackend.d.ts +27 -0
- package/dist/src/filters/ColorMatrix.d.ts +62 -0
- package/dist/src/filters/ColorMatrixFilters.d.ts +1169 -0
- package/dist/src/filters/Composed.d.ts +47 -0
- package/dist/src/filters/Contrast.d.ts +44 -0
- package/dist/src/filters/Convolute.d.ts +82 -0
- package/dist/src/filters/FilterBackend.d.ts +14 -0
- package/dist/src/filters/Gamma.d.ts +53 -0
- package/dist/src/filters/Grayscale.d.ts +45 -0
- package/dist/src/filters/HueRotation.d.ts +24 -0
- package/dist/src/filters/Invert.d.ts +54 -0
- package/dist/src/filters/Noise.d.ts +53 -0
- package/dist/src/filters/Pixelate.d.ts +43 -0
- package/dist/src/filters/RemoveColor.d.ts +62 -0
- package/dist/src/filters/Resize.d.ts +134 -0
- package/dist/src/filters/Saturation.d.ts +47 -0
- package/dist/src/filters/Vibrance.d.ts +47 -0
- package/dist/src/filters/WebGLFilterBackend.d.ts +126 -0
- package/dist/src/filters/WebGLProbe.d.ts +28 -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 +6 -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/mixins/stateful.mixin.d.ts +18 -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 +54 -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/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 +66 -0
- package/dist/src/shapes/Circle.d.ts +80 -0
- package/dist/src/shapes/Ellipse.d.ts +74 -0
- package/dist/src/shapes/Group.d.ts +381 -0
- package/dist/src/shapes/IText/DraggableTextDelegate.d.ts +78 -0
- package/dist/src/shapes/IText/IText.d.ts +322 -0
- package/dist/src/shapes/IText/ITextBehavior.d.ts +285 -0
- package/dist/src/shapes/IText/ITextClickBehavior.d.ts +81 -0
- package/dist/src/shapes/IText/ITextKeyBehavior.d.ts +193 -0
- package/dist/src/shapes/IText/constants.d.ts +13 -0
- package/dist/src/shapes/Image.d.ts +283 -0
- package/dist/src/shapes/Line.d.ts +117 -0
- package/dist/src/shapes/Object/AnimatableObject.d.ts +33 -0
- package/dist/src/shapes/Object/FabricObject.d.ts +9 -0
- package/dist/src/shapes/Object/FabricObjectSVGExportMixin.d.ts +74 -0
- package/dist/src/shapes/Object/InteractiveObject.d.ts +282 -0
- package/dist/src/shapes/Object/Object.d.ts +906 -0
- package/dist/src/shapes/Object/ObjectGeometry.d.ts +343 -0
- package/dist/src/shapes/Object/ObjectOrigin.d.ts +178 -0
- package/dist/src/shapes/Object/StackedObject.d.ts +62 -0
- package/dist/src/shapes/Object/defaultValues.d.ts +77 -0
- package/dist/src/shapes/Path.d.ts +123 -0
- package/dist/src/shapes/Polygon.d.ts +7 -0
- package/dist/src/shapes/Polyline.d.ts +130 -0
- package/dist/src/shapes/Rect.d.ts +62 -0
- package/dist/src/shapes/Text/StyledText.d.ts +118 -0
- package/dist/src/shapes/Text/Text.d.ts +656 -0
- package/dist/src/shapes/Text/TextSVGExportMixin.d.ts +32 -0
- package/dist/src/shapes/Textbox.d.ts +170 -0
- package/dist/src/shapes/Triangle.d.ts +17 -0
- package/dist/src/typedefs.d.ts +93 -0
- package/dist/src/util/animation/AnimationBase.d.ts +54 -0
- package/dist/src/util/animation/AnimationFrameProvider.d.ts +8 -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/class_registry.d.ts +14 -0
- package/dist/src/util/dom_event.d.ts +5 -0
- package/dist/src/util/dom_misc.d.ts +40 -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/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_class.d.ts +12 -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 +8 -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.d.ts +108 -0
- package/dist/src/util/transform_matrix_removal.d.ts +14 -0
- package/dist/src/util/types.d.ts +19 -0
- package/fabric.ts +427 -0
- package/index.node.ts +43 -0
- package/index.ts +1 -0
- package/package.json +90 -39
- package/publish.js +0 -26
- package/rollup.config.mjs +79 -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/index.mjs +679 -0
- package/scripts/transform_files.mjs +504 -0
- package/src/Collection.ts +311 -0
- package/src/CommonMethods.ts +63 -0
- package/src/EventTypeDefs.ts +294 -0
- package/src/Intersection.ts +273 -0
- package/src/Observable.ts +175 -0
- package/src/Pattern.ts +211 -0
- package/src/Point.ts +388 -0
- package/src/Shadow.ts +215 -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 +89 -0
- package/src/canvas/Canvas.ts +1672 -0
- package/src/canvas/SelectableCanvas.ts +1636 -0
- package/src/canvas/StaticCanvas.ts +1709 -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 +19 -0
- package/src/controls/Control.ts +377 -0
- package/src/controls/changeWidth.ts +52 -0
- package/src/controls/controls.render.ts +138 -0
- package/src/controls/default_controls.ts +132 -0
- package/src/controls/drag.ts +31 -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 +28 -0
- package/src/env/index.ts +19 -0
- package/src/env/node.ts +52 -0
- package/src/env/types.ts +15 -0
- package/src/filters/{base_filter.class.js → BaseFilter.ts} +201 -149
- package/src/filters/BlendColor.ts +258 -0
- package/src/filters/BlendImage.ts +254 -0
- package/src/filters/Blur.ts +202 -0
- package/src/filters/Boilerplate.ts +91 -0
- package/src/filters/Brightness.ts +93 -0
- package/src/filters/Canvas2dFilterBackend.ts +65 -0
- package/src/filters/ColorMatrix.ts +156 -0
- package/src/filters/ColorMatrixFilters.ts +106 -0
- package/src/filters/Composed.ts +85 -0
- package/src/filters/Contrast.ts +94 -0
- package/src/filters/Convolute.ts +341 -0
- package/src/filters/FilterBackend.ts +32 -0
- package/src/filters/Gamma.ts +127 -0
- package/src/filters/Grayscale.ts +137 -0
- package/src/filters/HueRotation.ts +66 -0
- package/src/filters/Invert.ts +117 -0
- package/src/filters/Noise.ts +109 -0
- package/src/filters/Pixelate.ts +114 -0
- package/src/filters/RemoveColor.ts +148 -0
- package/src/filters/Resize.ts +540 -0
- package/src/filters/Saturation.ts +100 -0
- package/src/filters/Vibrance.ts +103 -0
- package/src/filters/WebGLFilterBackend.ts +430 -0
- package/src/filters/WebGLProbe.ts +62 -0
- package/src/filters/typedefs.ts +65 -0
- package/src/gradient/Gradient.ts +401 -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 +55 -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/mixins/stateful.mixin.ts +104 -0
- package/src/parkinglot/canvas_animation.mixin.ts +121 -0
- package/src/parkinglot/straighten.ts +58 -0
- package/src/parser/applyViewboxTransform.ts +162 -0
- package/src/parser/attributes.ts +25 -0
- package/src/parser/constants.ts +118 -0
- package/src/parser/doesSomeParentMatch.ts +19 -0
- package/src/parser/elementById.ts +23 -0
- package/src/parser/elementMatchesRule.ts +19 -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 +32 -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/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 +36 -0
- package/src/parser/parseSVGDocument.ts +106 -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 +79 -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 +157 -0
- package/src/shapes/Circle.ts +205 -0
- package/src/shapes/Ellipse.ts +154 -0
- package/src/shapes/Group.ts +1053 -0
- package/src/shapes/IText/DraggableTextDelegate.ts +394 -0
- package/src/shapes/IText/IText.ts +666 -0
- package/src/shapes/IText/ITextBehavior.ts +1055 -0
- package/src/shapes/IText/ITextClickBehavior.ts +321 -0
- package/src/shapes/IText/ITextKeyBehavior.ts +683 -0
- package/src/shapes/IText/constants.ts +47 -0
- package/src/shapes/Image.ts +789 -0
- package/src/shapes/Line.ts +329 -0
- package/src/shapes/Object/AnimatableObject.ts +106 -0
- package/src/shapes/Object/FabricObject.ts +19 -0
- package/src/shapes/Object/FabricObjectSVGExportMixin.ts +277 -0
- package/src/shapes/Object/InteractiveObject.ts +645 -0
- package/src/shapes/Object/Object.ts +1896 -0
- package/src/shapes/Object/ObjectGeometry.ts +830 -0
- package/src/shapes/Object/ObjectOrigin.ts +354 -0
- package/src/shapes/Object/StackedObject.ts +191 -0
- package/src/shapes/Object/defaultValues.ts +112 -0
- package/src/shapes/Path.ts +395 -0
- package/src/shapes/Polygon.ts +19 -0
- package/src/shapes/Polyline.ts +333 -0
- package/src/shapes/Rect.ts +199 -0
- package/src/shapes/Text/StyledText.ts +319 -0
- package/src/shapes/Text/Text.ts +1948 -0
- package/src/shapes/Text/TextSVGExportMixin.ts +288 -0
- package/src/shapes/Textbox.ts +471 -0
- package/src/shapes/Triangle.ts +45 -0
- package/src/typedefs.ts +119 -0
- package/src/util/animation/AnimationBase.ts +166 -0
- package/src/util/animation/AnimationFrameProvider.ts +28 -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/class_registry.ts +54 -0
- package/src/util/dom_event.ts +28 -0
- package/src/util/dom_misc.ts +138 -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/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_class.ts +90 -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 +51 -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 +17 -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 +231 -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 +133 -0
- package/src/util/misc/toFixed.ts +8 -0
- package/src/util/misc/vectors.ts +82 -0
- package/src/util/path.ts +941 -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,54 @@
|
|
|
1
|
+
export declare const cssRules: {};
|
|
2
|
+
export declare const gradientDefs: {};
|
|
3
|
+
export declare const clipPaths: {};
|
|
4
|
+
export declare const storage: {
|
|
5
|
+
cssRules: {};
|
|
6
|
+
gradientDefs: {};
|
|
7
|
+
clipPaths: {};
|
|
8
|
+
};
|
|
9
|
+
export declare const reNum = "(?:[-+]?(?:\\d+|\\d*\\.\\d+)(?:[eE][-+]?\\d+)?)";
|
|
10
|
+
export declare const svgNS = "http://www.w3.org/2000/svg";
|
|
11
|
+
export declare const commaWsp = "(?:\\s+,?\\s*|,\\s*)";
|
|
12
|
+
export declare const rePathCommand: RegExp;
|
|
13
|
+
export declare const reFontDeclaration: RegExp;
|
|
14
|
+
export declare const svgValidTagNames: string[], svgViewBoxElements: string[], svgInvalidAncestors: string[], svgValidParents: string[], attributesMap: {
|
|
15
|
+
cx: string;
|
|
16
|
+
x: string;
|
|
17
|
+
r: string;
|
|
18
|
+
cy: string;
|
|
19
|
+
y: string;
|
|
20
|
+
display: string;
|
|
21
|
+
visibility: string;
|
|
22
|
+
transform: string;
|
|
23
|
+
'fill-opacity': string;
|
|
24
|
+
'fill-rule': string;
|
|
25
|
+
'font-family': string;
|
|
26
|
+
'font-size': string;
|
|
27
|
+
'font-style': string;
|
|
28
|
+
'font-weight': string;
|
|
29
|
+
'letter-spacing': string;
|
|
30
|
+
'paint-order': string;
|
|
31
|
+
'stroke-dasharray': string;
|
|
32
|
+
'stroke-dashoffset': string;
|
|
33
|
+
'stroke-linecap': string;
|
|
34
|
+
'stroke-linejoin': string;
|
|
35
|
+
'stroke-miterlimit': string;
|
|
36
|
+
'stroke-opacity': string;
|
|
37
|
+
'stroke-width': string;
|
|
38
|
+
'text-decoration': string;
|
|
39
|
+
'text-anchor': string;
|
|
40
|
+
opacity: string;
|
|
41
|
+
'clip-path': string;
|
|
42
|
+
'clip-rule': string;
|
|
43
|
+
'vector-effect': string;
|
|
44
|
+
'image-rendering': string;
|
|
45
|
+
}, colorAttributes: {
|
|
46
|
+
stroke: string;
|
|
47
|
+
fill: string;
|
|
48
|
+
}, fSize = "font-size", cPath = "clip-path";
|
|
49
|
+
export declare const svgValidTagNamesRegEx: RegExp;
|
|
50
|
+
export declare const svgViewBoxElementsRegEx: RegExp;
|
|
51
|
+
export declare const svgInvalidAncestorsRegEx: RegExp;
|
|
52
|
+
export declare const svgValidParentsRegEx: RegExp;
|
|
53
|
+
export declare const reViewBoxAttrValue: RegExp;
|
|
54
|
+
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Parses an SVG document, returning all of the gradient declarations found in it
|
|
3
|
+
* @param {SVGDocument} doc SVG document to parse
|
|
4
|
+
* @return {Object} Gradient definitions; key corresponds to element id, value -- to gradient definition element
|
|
5
|
+
*/
|
|
6
|
+
export declare function getGradientDefs(doc: any): {};
|
|
7
|
+
//# sourceMappingURL=getGradientDefs.d.ts.map
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Takes string corresponding to an SVG document, and parses it into a set of fabric objects
|
|
3
|
+
* @memberOf fabric
|
|
4
|
+
* @param {String} string
|
|
5
|
+
* @param {Function} callback
|
|
6
|
+
* @param {Function} [reviver] Method for further parsing of SVG elements, called after each fabric object created.
|
|
7
|
+
* @param {Object} [options] Object containing options for parsing
|
|
8
|
+
* @param {String} [options.crossOrigin] crossOrigin crossOrigin setting to use for external resources
|
|
9
|
+
* @param {AbortSignal} [options.signal] handle aborting, see https://developer.mozilla.org/en-US/docs/Web/API/AbortController/signal
|
|
10
|
+
*/
|
|
11
|
+
export declare function loadSVGFromString(string: any, callback: any, reviver: any, options: any): void;
|
|
12
|
+
//# sourceMappingURL=loadSVGFromString.d.ts.map
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Takes url corresponding to an SVG document, and parses it into a set of fabric objects.
|
|
3
|
+
* Note that SVG is fetched via XMLHttpRequest, so it needs to conform to SOP (Same Origin Policy)
|
|
4
|
+
* @memberOf fabric
|
|
5
|
+
* @param {String} url
|
|
6
|
+
* @param {Function} callback
|
|
7
|
+
* @param {Function} [reviver] Method for further parsing of SVG elements, called after each fabric object created.
|
|
8
|
+
* @param {Object} [options] Object containing options for parsing
|
|
9
|
+
* @param {String} [options.crossOrigin] crossOrigin crossOrigin setting to use for external resources
|
|
10
|
+
* @param {AbortSignal} [options.signal] handle aborting, see https://developer.mozilla.org/en-US/docs/Web/API/AbortController/signal
|
|
11
|
+
*/
|
|
12
|
+
export declare function loadSVGFromURL(url: any, callback: any, reviver: any, options: any): void;
|
|
13
|
+
//# sourceMappingURL=loadSVGFromURL.d.ts.map
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Returns an object of attributes' name/value, given element and an array of attribute names;
|
|
3
|
+
* Parses parent "g" nodes recursively upwards.
|
|
4
|
+
* @param {SVGElement | HTMLElement} element Element to parse
|
|
5
|
+
* @param {Array} attributes Array of attributes to parse
|
|
6
|
+
* @return {Object} object containing parsed attributes' names/values
|
|
7
|
+
*/
|
|
8
|
+
export declare function parseAttributes(element: SVGElement | HTMLElement, attributes: string[], svgUid?: string): Record<string, any>;
|
|
9
|
+
//# sourceMappingURL=parseAttributes.d.ts.map
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Transforms an array of svg elements to corresponding fabric.* instances
|
|
3
|
+
* @static
|
|
4
|
+
* @memberOf fabric
|
|
5
|
+
* @param {Array} elements Array of elements to parse
|
|
6
|
+
* @param {Function} callback Being passed an array of fabric instances (transformed from SVG elements)
|
|
7
|
+
* @param {Object} [options] Options object
|
|
8
|
+
* @param {Function} [reviver] Method for further parsing of SVG elements, called after each fabric object created.
|
|
9
|
+
*/
|
|
10
|
+
export declare function parseElements(elements: any, callback: any, options: any, reviver: any, parsingOptions: any): void;
|
|
11
|
+
//# sourceMappingURL=parseElements.d.ts.map
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Parses a short font declaration, building adding its properties to a style object
|
|
3
|
+
* @static
|
|
4
|
+
* @function
|
|
5
|
+
* @memberOf fabric
|
|
6
|
+
* @param {String} value font declaration
|
|
7
|
+
* @param {Object} oStyle definition
|
|
8
|
+
*/
|
|
9
|
+
export declare function parseFontDeclaration(value: any, oStyle: any): void;
|
|
10
|
+
//# sourceMappingURL=parseFontDeclaration.d.ts.map
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Parses "points" attribute, returning an array of values
|
|
3
|
+
* @static
|
|
4
|
+
* @memberOf fabric
|
|
5
|
+
* @param {String} points points attribute string
|
|
6
|
+
* @return {Array} array of points
|
|
7
|
+
*/
|
|
8
|
+
export declare function parsePointsAttribute(points: any): {
|
|
9
|
+
x: number;
|
|
10
|
+
y: number;
|
|
11
|
+
}[] | null;
|
|
12
|
+
//# sourceMappingURL=parsePointsAttribute.d.ts.map
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Parses an SVG document, converts it to an array of corresponding fabric.* instances and passes them to a callback
|
|
3
|
+
* @static
|
|
4
|
+
* @function
|
|
5
|
+
* @memberOf fabric
|
|
6
|
+
* @param {SVGDocument} doc SVG document to parse
|
|
7
|
+
* @param {Function} callback Callback to call when parsing is finished;
|
|
8
|
+
* It's being passed an array of elements (parsed from a document).
|
|
9
|
+
* @param {Function} [reviver] Method for further parsing of SVG elements, called after each fabric object created.
|
|
10
|
+
* @param {Object} [parsingOptions] options for parsing document
|
|
11
|
+
* @param {String} [parsingOptions.crossOrigin] crossOrigin settings
|
|
12
|
+
* @param {AbortSignal} [parsingOptions.signal] see https://developer.mozilla.org/en-US/docs/Web/API/AbortController/signal
|
|
13
|
+
*/
|
|
14
|
+
export declare function parseSVGDocument(doc: any, callback: any, reviver: any, parsingOptions: any): void;
|
|
15
|
+
//# sourceMappingURL=parseSVGDocument.d.ts.map
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Parses "style" attribute, retuning an object with values
|
|
3
|
+
* @static
|
|
4
|
+
* @memberOf fabric
|
|
5
|
+
* @param {SVGElement} element Element to parse
|
|
6
|
+
* @return {Object} Objects with values parsed from style attribute of an element
|
|
7
|
+
*/
|
|
8
|
+
export declare function parseStyleAttribute(element: any): {};
|
|
9
|
+
//# sourceMappingURL=parseStyleAttribute.d.ts.map
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Parses "transform" attribute, returning an array of values
|
|
3
|
+
* @static
|
|
4
|
+
* @function
|
|
5
|
+
* @memberOf fabric
|
|
6
|
+
* @param {String} attributeValue String containing attribute value
|
|
7
|
+
* @return {Array} Array of 6 elements representing transformation matrix
|
|
8
|
+
*/
|
|
9
|
+
export declare function parseTransformAttribute(attributeValue: any): any;
|
|
10
|
+
//# sourceMappingURL=parseTransformAttribute.d.ts.map
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export declare function isPercent(value: string | null): boolean | "" | null;
|
|
2
|
+
/**
|
|
3
|
+
*
|
|
4
|
+
* @param value
|
|
5
|
+
* @param valueIfNaN
|
|
6
|
+
* @returns ∈ [0, 1]
|
|
7
|
+
*/
|
|
8
|
+
export declare function parsePercent(value: string | number | null | undefined, valueIfNaN?: number): number;
|
|
9
|
+
//# sourceMappingURL=percent.d.ts.map
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { ControlRenderingStyleOverride } from '../controls/controls.render';
|
|
2
|
+
import { TClassProperties } from '../typedefs';
|
|
3
|
+
import { Group } from './Group';
|
|
4
|
+
import type { FabricObject } from './Object/FabricObject';
|
|
5
|
+
export declare class ActiveSelection extends Group {
|
|
6
|
+
_objects: FabricObject[];
|
|
7
|
+
constructor(objects?: FabricObject[], options?: any, objectsRelativeToGroup?: boolean);
|
|
8
|
+
/**
|
|
9
|
+
* @private
|
|
10
|
+
*/
|
|
11
|
+
_shouldSetNestedCoords(): boolean;
|
|
12
|
+
/**
|
|
13
|
+
* @private
|
|
14
|
+
* @param {FabricObject} object
|
|
15
|
+
* @param {boolean} [removeParentTransform] true if object is in canvas coordinate plane
|
|
16
|
+
* @returns {boolean} true if object entered group
|
|
17
|
+
*/
|
|
18
|
+
enterGroup(object: FabricObject, removeParentTransform?: boolean): boolean;
|
|
19
|
+
/**
|
|
20
|
+
* we want objects to retain their canvas ref when exiting instance
|
|
21
|
+
* @private
|
|
22
|
+
* @param {FabricObject} object
|
|
23
|
+
* @param {boolean} [removeParentTransform] true if object should exit group without applying group's transform to it
|
|
24
|
+
*/
|
|
25
|
+
exitGroup(object: FabricObject, removeParentTransform?: boolean): void;
|
|
26
|
+
/**
|
|
27
|
+
* @private
|
|
28
|
+
* @param {'added'|'removed'} type
|
|
29
|
+
* @param {FabricObject[]} targets
|
|
30
|
+
*/
|
|
31
|
+
_onAfterObjectsChange(type: 'added' | 'removed', targets: FabricObject[]): void;
|
|
32
|
+
/**
|
|
33
|
+
* If returns true, deselection is cancelled.
|
|
34
|
+
* @since 2.0.0
|
|
35
|
+
* @return {Boolean} [cancel]
|
|
36
|
+
*/
|
|
37
|
+
onDeselect(): boolean;
|
|
38
|
+
/**
|
|
39
|
+
* Returns string representation of a group
|
|
40
|
+
* @return {String}
|
|
41
|
+
*/
|
|
42
|
+
toString(): string;
|
|
43
|
+
/**
|
|
44
|
+
* Decide if the object should cache or not. Create its own cache level
|
|
45
|
+
* objectCaching is a global flag, wins over everything
|
|
46
|
+
* needsItsOwnCache should be used when the object drawing method requires
|
|
47
|
+
* a cache step. None of the fabric classes requires it.
|
|
48
|
+
* Generally you do not cache objects in groups because the group outside is cached.
|
|
49
|
+
* @return {Boolean}
|
|
50
|
+
*/
|
|
51
|
+
shouldCache(): boolean;
|
|
52
|
+
/**
|
|
53
|
+
* Check if this group or its parent group are caching, recursively up
|
|
54
|
+
* @return {Boolean}
|
|
55
|
+
*/
|
|
56
|
+
isOnACache(): boolean;
|
|
57
|
+
/**
|
|
58
|
+
* Renders controls and borders for the object
|
|
59
|
+
* @param {CanvasRenderingContext2D} ctx Context to render on
|
|
60
|
+
* @param {Object} [styleOverride] properties to override the object style
|
|
61
|
+
* @param {Object} [childrenOverride] properties to override the children overrides
|
|
62
|
+
*/
|
|
63
|
+
_renderControls(ctx: CanvasRenderingContext2D, styleOverride?: ControlRenderingStyleOverride, childrenOverride?: ControlRenderingStyleOverride): void;
|
|
64
|
+
}
|
|
65
|
+
export declare const activeSelectionDefaultValues: Partial<TClassProperties<ActiveSelection>>;
|
|
66
|
+
//# sourceMappingURL=ActiveSelection.d.ts.map
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import { FabricObject } from './Object/FabricObject';
|
|
2
|
+
import { TClassProperties } from '../typedefs';
|
|
3
|
+
export declare class Circle extends FabricObject {
|
|
4
|
+
/**
|
|
5
|
+
* Radius of this circle
|
|
6
|
+
* @type Number
|
|
7
|
+
* @default 0
|
|
8
|
+
*/
|
|
9
|
+
radius: number;
|
|
10
|
+
/**
|
|
11
|
+
* degrees of start of the circle.
|
|
12
|
+
* probably will change to degrees in next major version
|
|
13
|
+
* @type Number 0 - 359
|
|
14
|
+
* @default 0
|
|
15
|
+
*/
|
|
16
|
+
startAngle: number;
|
|
17
|
+
/**
|
|
18
|
+
* End angle of the circle
|
|
19
|
+
* probably will change to degrees in next major version
|
|
20
|
+
* @type Number 1 - 360
|
|
21
|
+
* @default 360
|
|
22
|
+
*/
|
|
23
|
+
endAngle: number;
|
|
24
|
+
/**
|
|
25
|
+
* @private
|
|
26
|
+
* @param {String} key
|
|
27
|
+
* @param {*} value
|
|
28
|
+
*/
|
|
29
|
+
_set(key: string, value: any): this;
|
|
30
|
+
/**
|
|
31
|
+
* @private
|
|
32
|
+
* @param {CanvasRenderingContext2D} ctx context to render on
|
|
33
|
+
*/
|
|
34
|
+
_render(ctx: CanvasRenderingContext2D): void;
|
|
35
|
+
/**
|
|
36
|
+
* Returns horizontal radius of an object (according to how an object is scaled)
|
|
37
|
+
* @return {Number}
|
|
38
|
+
*/
|
|
39
|
+
getRadiusX(): number;
|
|
40
|
+
/**
|
|
41
|
+
* Returns vertical radius of an object (according to how an object is scaled)
|
|
42
|
+
* @return {Number}
|
|
43
|
+
*/
|
|
44
|
+
getRadiusY(): number;
|
|
45
|
+
/**
|
|
46
|
+
* Sets radius of an object (and updates width accordingly)
|
|
47
|
+
*/
|
|
48
|
+
setRadius(value: number): void;
|
|
49
|
+
/**
|
|
50
|
+
* Returns object representation of an instance
|
|
51
|
+
* @param {Array} [propertiesToInclude] Any properties that you might want to additionally include in the output
|
|
52
|
+
* @return {Object} object representation of an instance
|
|
53
|
+
*/
|
|
54
|
+
toObject(propertiesToInclude?: string[]): object;
|
|
55
|
+
/**
|
|
56
|
+
* Returns svg representation of an instance
|
|
57
|
+
* @return {Array} an array of strings with the specific svg representation
|
|
58
|
+
* of the instance
|
|
59
|
+
*/
|
|
60
|
+
_toSVG(): (string | number)[];
|
|
61
|
+
/**
|
|
62
|
+
* List of attribute names to account for when parsing SVG element (used by {@link Circle.fromElement})
|
|
63
|
+
* @static
|
|
64
|
+
* @memberOf Circle
|
|
65
|
+
* @see: http://www.w3.org/TR/SVG/shapes.html#CircleElement
|
|
66
|
+
*/
|
|
67
|
+
static ATTRIBUTE_NAMES: string[];
|
|
68
|
+
/**
|
|
69
|
+
* Returns {@link Circle} instance from an SVG element
|
|
70
|
+
* @static
|
|
71
|
+
* @memberOf Circle
|
|
72
|
+
* @param {SVGElement} element Element to parse
|
|
73
|
+
* @param {Function} [callback] Options callback invoked after parsing is finished
|
|
74
|
+
* @param {Object} [options] Partial Circle object to default missing properties on the element.
|
|
75
|
+
* @throws {Error} If value of `r` attribute is missing or invalid
|
|
76
|
+
*/
|
|
77
|
+
static fromElement(element: SVGElement, callback: (circle: Circle) => any): void;
|
|
78
|
+
}
|
|
79
|
+
export declare const circleDefaultValues: Partial<TClassProperties<Circle>>;
|
|
80
|
+
//# sourceMappingURL=Circle.d.ts.map
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { TClassProperties } from '../typedefs';
|
|
2
|
+
import { FabricObject } from './Object/FabricObject';
|
|
3
|
+
export declare class Ellipse extends FabricObject {
|
|
4
|
+
/**
|
|
5
|
+
* Horizontal radius
|
|
6
|
+
* @type Number
|
|
7
|
+
* @default
|
|
8
|
+
*/
|
|
9
|
+
rx: number;
|
|
10
|
+
/**
|
|
11
|
+
* Vertical radius
|
|
12
|
+
* @type Number
|
|
13
|
+
* @default
|
|
14
|
+
*/
|
|
15
|
+
ry: number;
|
|
16
|
+
/**
|
|
17
|
+
* Constructor
|
|
18
|
+
* @param {Object} [options] Options object
|
|
19
|
+
* @return {Ellipse} thisArg
|
|
20
|
+
*/
|
|
21
|
+
constructor(options: Record<string, unknown>);
|
|
22
|
+
/**
|
|
23
|
+
* @private
|
|
24
|
+
* @param {String} key
|
|
25
|
+
* @param {*} value
|
|
26
|
+
* @return {Ellipse} thisArg
|
|
27
|
+
*/
|
|
28
|
+
_set(key: string, value: any): this;
|
|
29
|
+
/**
|
|
30
|
+
* Returns horizontal radius of an object (according to how an object is scaled)
|
|
31
|
+
* @return {Number}
|
|
32
|
+
*/
|
|
33
|
+
getRx(): number;
|
|
34
|
+
/**
|
|
35
|
+
* Returns Vertical radius of an object (according to how an object is scaled)
|
|
36
|
+
* @return {Number}
|
|
37
|
+
*/
|
|
38
|
+
getRy(): number;
|
|
39
|
+
/**
|
|
40
|
+
* Returns object representation of an instance
|
|
41
|
+
* @param {Array} [propertiesToInclude] Any properties that you might want to additionally include in the output
|
|
42
|
+
* @return {Object} object representation of an instance
|
|
43
|
+
*/
|
|
44
|
+
toObject(propertiesToInclude?: string[]): Record<string, any>;
|
|
45
|
+
/**
|
|
46
|
+
* Returns svg representation of an instance
|
|
47
|
+
* @return {Array} an array of strings with the specific svg representation
|
|
48
|
+
* of the instance
|
|
49
|
+
*/
|
|
50
|
+
_toSVG(): (string | number)[];
|
|
51
|
+
/**
|
|
52
|
+
* @private
|
|
53
|
+
* @param {CanvasRenderingContext2D} ctx context to render on
|
|
54
|
+
*/
|
|
55
|
+
_render(ctx: CanvasRenderingContext2D): void;
|
|
56
|
+
/**
|
|
57
|
+
* List of attribute names to account for when parsing SVG element (used by {@link Ellipse.fromElement})
|
|
58
|
+
* @static
|
|
59
|
+
* @memberOf Ellipse
|
|
60
|
+
* @see http://www.w3.org/TR/SVG/shapes.html#EllipseElement
|
|
61
|
+
*/
|
|
62
|
+
static ATTRIBUTE_NAMES: string[];
|
|
63
|
+
/**
|
|
64
|
+
* Returns {@link Ellipse} instance from an SVG element
|
|
65
|
+
* @static
|
|
66
|
+
* @memberOf Ellipse
|
|
67
|
+
* @param {SVGElement} element Element to parse
|
|
68
|
+
* @param {Function} [callback] Options callback invoked after parsing is finished
|
|
69
|
+
* @return {Ellipse}
|
|
70
|
+
*/
|
|
71
|
+
static fromElement(element: SVGElement, callback: (ellipse: Ellipse) => void): void;
|
|
72
|
+
}
|
|
73
|
+
export declare const ellipseDefaultValues: Partial<TClassProperties<Ellipse>>;
|
|
74
|
+
//# sourceMappingURL=Ellipse.d.ts.map
|