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,7 @@
|
|
|
1
|
+
import { TClassProperties } from '../../typedefs';
|
|
2
|
+
import type { Text } from './Text';
|
|
3
|
+
export declare const textLayoutProperties: string[];
|
|
4
|
+
export declare const additionalProps: readonly [...string[], "underline", "overline", "linethrough", "textBackgroundColor", "direction"];
|
|
5
|
+
export declare const styleProperties: readonly ["fontSize", "fontWeight", "fontFamily", "fontStyle", "underline", "overline", "linethrough", "stroke", "strokeWidth", "fill", "deltaY", "textBackgroundColor"];
|
|
6
|
+
export declare const textDefaultValues: Partial<TClassProperties<Text>>;
|
|
7
|
+
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -0,0 +1,185 @@
|
|
|
1
|
+
import { TClassProperties } from '../typedefs';
|
|
2
|
+
import { IText } from './IText/IText';
|
|
3
|
+
export declare const textboxDefaultValues: Partial<TClassProperties<Textbox>>;
|
|
4
|
+
/**
|
|
5
|
+
* Textbox class, based on IText, allows the user to resize the text rectangle
|
|
6
|
+
* and wraps lines automatically. Textboxes have their Y scaling locked, the
|
|
7
|
+
* user can only change width. Height is adjusted automatically based on the
|
|
8
|
+
* wrapping of lines.
|
|
9
|
+
*/
|
|
10
|
+
export declare class Textbox extends IText {
|
|
11
|
+
/**
|
|
12
|
+
* Minimum width of textbox, in pixels.
|
|
13
|
+
* @type Number
|
|
14
|
+
* @default
|
|
15
|
+
*/
|
|
16
|
+
minWidth: number;
|
|
17
|
+
/**
|
|
18
|
+
* Minimum calculated width of a textbox, in pixels.
|
|
19
|
+
* fixed to 2 so that an empty textbox cannot go to 0
|
|
20
|
+
* and is still selectable without text.
|
|
21
|
+
* @type Number
|
|
22
|
+
* @default
|
|
23
|
+
*/
|
|
24
|
+
dynamicMinWidth: number;
|
|
25
|
+
/**
|
|
26
|
+
* Use this boolean property in order to split strings that have no white space concept.
|
|
27
|
+
* this is a cheap way to help with chinese/japanese
|
|
28
|
+
* @type Boolean
|
|
29
|
+
* @since 2.6.0
|
|
30
|
+
*/
|
|
31
|
+
splitByGrapheme: boolean;
|
|
32
|
+
static textLayoutProperties: string[];
|
|
33
|
+
static ownDefaults: Record<string, any>;
|
|
34
|
+
static getDefaults(): {
|
|
35
|
+
controls: {
|
|
36
|
+
mr: import("../..").Control;
|
|
37
|
+
ml: import("../..").Control;
|
|
38
|
+
mb: import("../..").Control;
|
|
39
|
+
mt: import("../..").Control;
|
|
40
|
+
tl: import("../..").Control;
|
|
41
|
+
tr: import("../..").Control;
|
|
42
|
+
bl: import("../..").Control;
|
|
43
|
+
br: import("../..").Control;
|
|
44
|
+
mtr: import("../..").Control;
|
|
45
|
+
};
|
|
46
|
+
};
|
|
47
|
+
/**
|
|
48
|
+
* Unlike superclass's version of this function, Textbox does not update
|
|
49
|
+
* its width.
|
|
50
|
+
* @private
|
|
51
|
+
* @override
|
|
52
|
+
*/
|
|
53
|
+
initDimensions(): void;
|
|
54
|
+
/**
|
|
55
|
+
* Generate an object that translates the style object so that it is
|
|
56
|
+
* broken up by visual lines (new lines and automatic wrapping).
|
|
57
|
+
* The original text styles object is broken up by actual lines (new lines only),
|
|
58
|
+
* which is only sufficient for Text / IText
|
|
59
|
+
* @private
|
|
60
|
+
*/
|
|
61
|
+
_generateStyleMap(textInfo: any): {};
|
|
62
|
+
/**
|
|
63
|
+
* Returns true if object has a style property or has it on a specified line
|
|
64
|
+
* @param {Number} lineIndex
|
|
65
|
+
* @return {Boolean}
|
|
66
|
+
*/
|
|
67
|
+
styleHas(property: any, lineIndex: number): boolean;
|
|
68
|
+
/**
|
|
69
|
+
* Returns true if object has no styling or no styling in a line
|
|
70
|
+
* @param {Number} lineIndex , lineIndex is on wrapped lines.
|
|
71
|
+
* @return {Boolean}
|
|
72
|
+
*/
|
|
73
|
+
isEmptyStyles(lineIndex: number): boolean;
|
|
74
|
+
/**
|
|
75
|
+
* @param {Number} lineIndex
|
|
76
|
+
* @param {Number} charIndex
|
|
77
|
+
* @private
|
|
78
|
+
*/
|
|
79
|
+
_getStyleDeclaration(lineIndex: number, charIndex: number): import("./Text/StyledText").TextStyleDeclaration | null;
|
|
80
|
+
/**
|
|
81
|
+
* @param {Number} lineIndex
|
|
82
|
+
* @param {Number} charIndex
|
|
83
|
+
* @param {Object} style
|
|
84
|
+
* @private
|
|
85
|
+
*/
|
|
86
|
+
_setStyleDeclaration(lineIndex: number, charIndex: number, style: object): void;
|
|
87
|
+
/**
|
|
88
|
+
* @param {Number} lineIndex
|
|
89
|
+
* @param {Number} charIndex
|
|
90
|
+
* @private
|
|
91
|
+
*/
|
|
92
|
+
_deleteStyleDeclaration(lineIndex: number, charIndex: number): void;
|
|
93
|
+
/**
|
|
94
|
+
* probably broken need a fix
|
|
95
|
+
* Returns the real style line that correspond to the wrapped lineIndex line
|
|
96
|
+
* Used just to verify if the line does exist or not.
|
|
97
|
+
* @param {Number} lineIndex
|
|
98
|
+
* @returns {Boolean} if the line exists or not
|
|
99
|
+
* @private
|
|
100
|
+
*/
|
|
101
|
+
_getLineStyle(lineIndex: number): boolean;
|
|
102
|
+
/**
|
|
103
|
+
* Set the line style to an empty object so that is initialized
|
|
104
|
+
* @param {Number} lineIndex
|
|
105
|
+
* @param {Object} style
|
|
106
|
+
* @private
|
|
107
|
+
*/
|
|
108
|
+
_setLineStyle(lineIndex: number): void;
|
|
109
|
+
/**
|
|
110
|
+
* Wraps text using the 'width' property of Textbox. First this function
|
|
111
|
+
* splits text on newlines, so we preserve newlines entered by the user.
|
|
112
|
+
* Then it wraps each line using the width of the Textbox by calling
|
|
113
|
+
* _wrapLine().
|
|
114
|
+
* @param {Array} lines The string array of text that is split into lines
|
|
115
|
+
* @param {Number} desiredWidth width you want to wrap to
|
|
116
|
+
* @returns {Array} Array of lines
|
|
117
|
+
*/
|
|
118
|
+
_wrapText(lines: Array<any>, desiredWidth: number): Array<any>;
|
|
119
|
+
/**
|
|
120
|
+
* Helper function to measure a string of text, given its lineIndex and charIndex offset
|
|
121
|
+
* It gets called when charBounds are not available yet.
|
|
122
|
+
* Override if necessary
|
|
123
|
+
* Use with {@link Textbox#wordSplit}
|
|
124
|
+
*
|
|
125
|
+
* @param {CanvasRenderingContext2D} ctx
|
|
126
|
+
* @param {String} text
|
|
127
|
+
* @param {number} lineIndex
|
|
128
|
+
* @param {number} charOffset
|
|
129
|
+
* @returns {number}
|
|
130
|
+
*/
|
|
131
|
+
_measureWord(word: any, lineIndex: number, charOffset?: number): number;
|
|
132
|
+
/**
|
|
133
|
+
* Override this method to customize word splitting
|
|
134
|
+
* Use with {@link Textbox#_measureWord}
|
|
135
|
+
* @param {string} value
|
|
136
|
+
* @returns {string[]} array of words
|
|
137
|
+
*/
|
|
138
|
+
wordSplit(value: string): string[];
|
|
139
|
+
/**
|
|
140
|
+
* Wraps a line of text using the width of the Textbox and a context.
|
|
141
|
+
* @param {Array} line The grapheme array that represent the line
|
|
142
|
+
* @param {Number} lineIndex
|
|
143
|
+
* @param {Number} desiredWidth width you want to wrap the line to
|
|
144
|
+
* @param {Number} reservedSpace space to remove from wrapping for custom functionalities
|
|
145
|
+
* @returns {Array} Array of line(s) into which the given text is wrapped
|
|
146
|
+
* to.
|
|
147
|
+
*/
|
|
148
|
+
_wrapLine(_line: any, lineIndex: number, desiredWidth: number, reservedSpace?: number): Array<any>;
|
|
149
|
+
/**
|
|
150
|
+
* Detect if the text line is ended with an hard break
|
|
151
|
+
* text and itext do not have wrapping, return false
|
|
152
|
+
* @param {Number} lineIndex text to split
|
|
153
|
+
* @return {Boolean}
|
|
154
|
+
*/
|
|
155
|
+
isEndOfWrapping(lineIndex: number): boolean;
|
|
156
|
+
/**
|
|
157
|
+
* Detect if a line has a linebreak and so we need to account for it when moving
|
|
158
|
+
* and counting style.
|
|
159
|
+
* @return Number
|
|
160
|
+
*/
|
|
161
|
+
missingNewlineOffset(lineIndex: any): 1 | 0;
|
|
162
|
+
/**
|
|
163
|
+
* Gets lines of text to render in the Textbox. This function calculates
|
|
164
|
+
* text wrapping on the fly every time it is called.
|
|
165
|
+
* @param {String} text text to split
|
|
166
|
+
* @returns {Array} Array of lines in the Textbox.
|
|
167
|
+
* @override
|
|
168
|
+
*/
|
|
169
|
+
_splitTextIntoLines(text: string): {
|
|
170
|
+
_unwrappedLines: string[][];
|
|
171
|
+
lines: string[];
|
|
172
|
+
graphemeText: string[];
|
|
173
|
+
graphemeLines: string[][];
|
|
174
|
+
};
|
|
175
|
+
getMinWidth(): number;
|
|
176
|
+
_removeExtraneousStyles(): void;
|
|
177
|
+
/**
|
|
178
|
+
* Returns object representation of an instance
|
|
179
|
+
* @method toObject
|
|
180
|
+
* @param {Array} [propertiesToInclude] Any properties that you might want to additionally include in the output
|
|
181
|
+
* @return {Object} object representation of an instance
|
|
182
|
+
*/
|
|
183
|
+
toObject(propertiesToInclude: Array<any>): object;
|
|
184
|
+
}
|
|
185
|
+
//# sourceMappingURL=Textbox.d.ts.map
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { FabricObject } from './Object/FabricObject';
|
|
2
|
+
import type { FabricObjectProps, SerializedObjectProps, TProps } from './Object/types';
|
|
3
|
+
import type { ObjectEvents } from '../EventTypeDefs';
|
|
4
|
+
export declare const triangleDefaultValues: {
|
|
5
|
+
width: number;
|
|
6
|
+
height: number;
|
|
7
|
+
};
|
|
8
|
+
export declare class Triangle<Props extends TProps<FabricObjectProps> = Partial<FabricObjectProps>, SProps extends SerializedObjectProps = SerializedObjectProps, EventSpec extends ObjectEvents = ObjectEvents> extends FabricObject<Props, SProps, EventSpec> implements FabricObjectProps {
|
|
9
|
+
static ownDefaults: Record<string, any>;
|
|
10
|
+
static getDefaults(): {
|
|
11
|
+
[x: string]: any;
|
|
12
|
+
};
|
|
13
|
+
/**
|
|
14
|
+
* @private
|
|
15
|
+
* @param {CanvasRenderingContext2D} ctx Context to render on
|
|
16
|
+
*/
|
|
17
|
+
_render(ctx: CanvasRenderingContext2D): void;
|
|
18
|
+
/**
|
|
19
|
+
* Returns svg representation of an instance
|
|
20
|
+
* @return {Array} an array of strings with the specific svg representation
|
|
21
|
+
* of the instance
|
|
22
|
+
*/
|
|
23
|
+
_toSVG(): string[];
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=Triangle.d.ts.map
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
import { BaseFabricObject } from './EventTypeDefs';
|
|
2
|
+
import type { Gradient } from './gradient/Gradient';
|
|
3
|
+
import type { Pattern } from './Pattern';
|
|
4
|
+
import type { XY, Point } from './Point';
|
|
5
|
+
interface NominalTag<T> {
|
|
6
|
+
nominalTag?: T;
|
|
7
|
+
}
|
|
8
|
+
type Nominal<Type, Tag> = NominalTag<Tag> & Type;
|
|
9
|
+
type TNonFunctionPropertyNames<T> = {
|
|
10
|
+
[K in keyof T]: T[K] extends Function ? never : K;
|
|
11
|
+
}[keyof T];
|
|
12
|
+
export type TClassProperties<T> = Pick<T, TNonFunctionPropertyNames<T>>;
|
|
13
|
+
export type Constructor<T = object> = new (...args: any[]) => T;
|
|
14
|
+
declare const enum Degree {
|
|
15
|
+
}
|
|
16
|
+
declare const enum Radian {
|
|
17
|
+
}
|
|
18
|
+
export type TDegree = Nominal<number, Degree>;
|
|
19
|
+
export type TRadian = Nominal<number, Radian>;
|
|
20
|
+
export type TAxis = 'x' | 'y';
|
|
21
|
+
export type TAxisKey<T extends string> = `${T}${Capitalize<TAxis>}`;
|
|
22
|
+
export type TFiller = Gradient<'linear'> | Gradient<'radial'> | Pattern;
|
|
23
|
+
export type TSize = {
|
|
24
|
+
width: number;
|
|
25
|
+
height: number;
|
|
26
|
+
};
|
|
27
|
+
export type TBBox = {
|
|
28
|
+
left: number;
|
|
29
|
+
top: number;
|
|
30
|
+
} & TSize;
|
|
31
|
+
export type Percent = `${number}%`;
|
|
32
|
+
export declare const enum ImageFormat {
|
|
33
|
+
jpeg = "jpeg",
|
|
34
|
+
jpg = "jpeg",
|
|
35
|
+
png = "png"
|
|
36
|
+
}
|
|
37
|
+
export declare const enum SVGElementName {
|
|
38
|
+
linearGradient = "linearGradient",
|
|
39
|
+
radialGradient = "radialGradient",
|
|
40
|
+
stop = "stop"
|
|
41
|
+
}
|
|
42
|
+
export declare const enum SupportedSVGUnit {
|
|
43
|
+
mm = "mm",
|
|
44
|
+
cm = "cm",
|
|
45
|
+
in = "in",
|
|
46
|
+
pt = "pt",
|
|
47
|
+
pc = "pc",
|
|
48
|
+
em = "em"
|
|
49
|
+
}
|
|
50
|
+
export type TMat2D = [number, number, number, number, number, number];
|
|
51
|
+
/**
|
|
52
|
+
* An invalid keyword and an empty string will be handled as the `anonymous` keyword.
|
|
53
|
+
* @see https://developer.mozilla.org/en-US/docs/HTML/CORS_settings_attributes
|
|
54
|
+
*/
|
|
55
|
+
export type TCrossOrigin = '' | 'anonymous' | 'use-credentials' | null;
|
|
56
|
+
export type TOriginX = 'center' | 'left' | 'right' | number;
|
|
57
|
+
export type TOriginY = 'center' | 'top' | 'bottom' | number;
|
|
58
|
+
export type TCornerPoint = {
|
|
59
|
+
tl: Point;
|
|
60
|
+
tr: Point;
|
|
61
|
+
bl: Point;
|
|
62
|
+
br: Point;
|
|
63
|
+
};
|
|
64
|
+
export type TSVGReviver = (markup: string) => string;
|
|
65
|
+
export type TValidToObjectMethod = 'toDatalessObject' | 'toObject';
|
|
66
|
+
export type TCacheCanvasDimensions = {
|
|
67
|
+
width: number;
|
|
68
|
+
height: number;
|
|
69
|
+
zoomX: number;
|
|
70
|
+
zoomY: number;
|
|
71
|
+
x: number;
|
|
72
|
+
y: number;
|
|
73
|
+
};
|
|
74
|
+
export type TRectBounds = [min: XY, max: XY];
|
|
75
|
+
export type TToCanvasElementOptions = {
|
|
76
|
+
left?: number;
|
|
77
|
+
top?: number;
|
|
78
|
+
width?: number;
|
|
79
|
+
height?: number;
|
|
80
|
+
filter?: (object: BaseFabricObject) => boolean;
|
|
81
|
+
};
|
|
82
|
+
export type TDataUrlOptions = TToCanvasElementOptions & {
|
|
83
|
+
multiplier: number;
|
|
84
|
+
format?: ImageFormat;
|
|
85
|
+
quality?: number;
|
|
86
|
+
enableRetinaScaling?: boolean;
|
|
87
|
+
};
|
|
88
|
+
export type AssertKeys<T, K extends keyof T> = T & Record<K, NonNullable<T[K]>>;
|
|
89
|
+
export {};
|
|
90
|
+
//# sourceMappingURL=typedefs.d.ts.map
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { AnimationState, TBaseAnimationOptions, TEasingFunction } from './types';
|
|
2
|
+
export declare abstract class AnimationBase<T extends number | number[] = number | number[]> {
|
|
3
|
+
readonly startValue: T;
|
|
4
|
+
readonly endValue: T;
|
|
5
|
+
readonly duration: number;
|
|
6
|
+
readonly delay: number;
|
|
7
|
+
protected readonly byValue: T;
|
|
8
|
+
protected readonly easing: TEasingFunction<T>;
|
|
9
|
+
private readonly _onStart;
|
|
10
|
+
private readonly _onChange;
|
|
11
|
+
private readonly _onComplete;
|
|
12
|
+
private readonly _abort;
|
|
13
|
+
/**
|
|
14
|
+
* Used to register the animation to a target object
|
|
15
|
+
* so that it can be cancelled within the object context
|
|
16
|
+
*/
|
|
17
|
+
readonly target?: unknown;
|
|
18
|
+
private _state;
|
|
19
|
+
/**
|
|
20
|
+
* Time %, or the ratio of `timeElapsed / duration`
|
|
21
|
+
* @see tick
|
|
22
|
+
*/
|
|
23
|
+
durationProgress: number;
|
|
24
|
+
/**
|
|
25
|
+
* Value %, or the ratio of `(currentValue - startValue) / (endValue - startValue)`
|
|
26
|
+
*/
|
|
27
|
+
valueProgress: number;
|
|
28
|
+
/**
|
|
29
|
+
* Current value
|
|
30
|
+
*/
|
|
31
|
+
value: T;
|
|
32
|
+
/**
|
|
33
|
+
* Animation start time ms
|
|
34
|
+
*/
|
|
35
|
+
private startTime;
|
|
36
|
+
constructor({ startValue, byValue, duration, delay, easing, onStart, onChange, onComplete, abort, target, }: TBaseAnimationOptions<T>);
|
|
37
|
+
get state(): AnimationState;
|
|
38
|
+
isDone(): boolean;
|
|
39
|
+
/**
|
|
40
|
+
* Calculate the current value based on the easing parameters
|
|
41
|
+
* @param timeElapsed in ms
|
|
42
|
+
* @protected
|
|
43
|
+
*/
|
|
44
|
+
protected abstract calculate(timeElapsed: number): {
|
|
45
|
+
value: T;
|
|
46
|
+
valueProgress: number;
|
|
47
|
+
};
|
|
48
|
+
start(): void;
|
|
49
|
+
private tick;
|
|
50
|
+
private register;
|
|
51
|
+
private unregister;
|
|
52
|
+
abort(): void;
|
|
53
|
+
}
|
|
54
|
+
//# sourceMappingURL=AnimationBase.d.ts.map
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import type { Canvas } from '../../canvas/Canvas';
|
|
2
|
+
import type { AnimationBase } from './AnimationBase';
|
|
3
|
+
/**
|
|
4
|
+
* Array holding all running animations
|
|
5
|
+
*/
|
|
6
|
+
declare class AnimationRegistry extends Array<AnimationBase> {
|
|
7
|
+
/**
|
|
8
|
+
* Remove a single animation using an animation context
|
|
9
|
+
* @param {AnimationBase} context
|
|
10
|
+
*/
|
|
11
|
+
remove(context: AnimationBase): void;
|
|
12
|
+
/**
|
|
13
|
+
* Cancel all running animations on the next frame
|
|
14
|
+
*/
|
|
15
|
+
cancelAll(): AnimationBase<number | number[]>[];
|
|
16
|
+
/**
|
|
17
|
+
* Cancel all running animations attached to a Canvas on the next frame
|
|
18
|
+
* @param {Canvas} canvas
|
|
19
|
+
*/
|
|
20
|
+
cancelByCanvas(canvas: Canvas): AnimationBase<number | number[]>[];
|
|
21
|
+
/**
|
|
22
|
+
* Cancel all running animations for target on the next frame
|
|
23
|
+
* @param target
|
|
24
|
+
*/
|
|
25
|
+
cancelByTarget(target: AnimationBase['target']): AnimationBase<number | number[]>[];
|
|
26
|
+
}
|
|
27
|
+
export declare const runningAnimations: AnimationRegistry;
|
|
28
|
+
export {};
|
|
29
|
+
//# sourceMappingURL=AnimationRegistry.d.ts.map
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { AnimationBase } from './AnimationBase';
|
|
2
|
+
import { ArrayAnimationOptions } from './types';
|
|
3
|
+
export declare class ArrayAnimation extends AnimationBase<number[]> {
|
|
4
|
+
constructor({ startValue, endValue, ...options }: ArrayAnimationOptions);
|
|
5
|
+
protected calculate(timeElapsed: number): {
|
|
6
|
+
value: number[];
|
|
7
|
+
valueProgress: number;
|
|
8
|
+
};
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=ArrayAnimation.d.ts.map
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { TRGBAColorSource } from '../../color/Color';
|
|
2
|
+
import { AnimationBase } from './AnimationBase';
|
|
3
|
+
import type { ColorAnimationOptions } from './types';
|
|
4
|
+
export declare class ColorAnimation extends AnimationBase<TRGBAColorSource> {
|
|
5
|
+
constructor({ startValue, endValue, easing, onChange, onComplete, abort, ...options }: ColorAnimationOptions);
|
|
6
|
+
protected calculate(timeElapsed: number): {
|
|
7
|
+
value: TRGBAColorSource;
|
|
8
|
+
valueProgress: number;
|
|
9
|
+
};
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=ColorAnimation.d.ts.map
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { AnimationBase } from './AnimationBase';
|
|
2
|
+
import { ValueAnimationOptions } from './types';
|
|
3
|
+
export declare class ValueAnimation extends AnimationBase<number> {
|
|
4
|
+
constructor({ startValue, endValue, ...otherOptions }: ValueAnimationOptions);
|
|
5
|
+
protected calculate(timeElapsed: number): {
|
|
6
|
+
value: number;
|
|
7
|
+
valueProgress: number;
|
|
8
|
+
};
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=ValueAnimation.d.ts.map
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { ValueAnimation } from './ValueAnimation';
|
|
2
|
+
import { ArrayAnimation } from './ArrayAnimation';
|
|
3
|
+
import { ColorAnimation } from './ColorAnimation';
|
|
4
|
+
import { ValueAnimationOptions, ArrayAnimationOptions, ColorAnimationOptions } from './types';
|
|
5
|
+
import { TColorArg } from '../../color/Color';
|
|
6
|
+
export type TAnimation<T extends number | number[] | TColorArg> = T extends TColorArg ? ColorAnimation : T extends number[] ? ArrayAnimation : ValueAnimation;
|
|
7
|
+
/**
|
|
8
|
+
* Changes value(s) from startValue to endValue within a certain period of time,
|
|
9
|
+
* invoking callbacks as the value(s) change.
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* animate({
|
|
13
|
+
* startValue: 1,
|
|
14
|
+
* endValue: 0,
|
|
15
|
+
* onChange: (v) => {
|
|
16
|
+
* obj.set('opacity', v);
|
|
17
|
+
* // since we are running in a requested frame we should call `renderAll` and not `requestRenderAll`
|
|
18
|
+
* canvas.renderAll();
|
|
19
|
+
* }
|
|
20
|
+
* });
|
|
21
|
+
*
|
|
22
|
+
* @example Using lists:
|
|
23
|
+
* animate({
|
|
24
|
+
* startValue: [1, 2, 3],
|
|
25
|
+
* endValue: [2, 4, 6],
|
|
26
|
+
* onChange: ([x, y, zoom]) => {
|
|
27
|
+
* canvas.zoomToPoint(new Point(x, y), zoom);
|
|
28
|
+
* canvas.renderAll();
|
|
29
|
+
* }
|
|
30
|
+
* });
|
|
31
|
+
*
|
|
32
|
+
*/
|
|
33
|
+
export declare function animate(options: ArrayAnimationOptions): ArrayAnimation;
|
|
34
|
+
export declare function animate(options: ValueAnimationOptions): ValueAnimation;
|
|
35
|
+
export declare function animate<T extends ValueAnimationOptions | ArrayAnimationOptions>(options: T): T extends ArrayAnimationOptions ? ArrayAnimation : ValueAnimation;
|
|
36
|
+
export declare function animateColor(options: ColorAnimationOptions): ColorAnimation;
|
|
37
|
+
//# sourceMappingURL=animate.d.ts.map
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Easing functions
|
|
3
|
+
* @see {@link http://gizma.com/easing/ Easing Equations by Robert Penner}
|
|
4
|
+
*/
|
|
5
|
+
import { TEasingFunction } from './types';
|
|
6
|
+
/**
|
|
7
|
+
* Default sinusoidal easing
|
|
8
|
+
*/
|
|
9
|
+
export declare const defaultEasing: TEasingFunction;
|
|
10
|
+
/**
|
|
11
|
+
* Cubic easing in
|
|
12
|
+
*/
|
|
13
|
+
export declare const easeInCubic: TEasingFunction;
|
|
14
|
+
/**
|
|
15
|
+
* Cubic easing out
|
|
16
|
+
*/
|
|
17
|
+
export declare const easeOutCubic: TEasingFunction;
|
|
18
|
+
/**
|
|
19
|
+
* Cubic easing in and out
|
|
20
|
+
*/
|
|
21
|
+
export declare const easeInOutCubic: TEasingFunction;
|
|
22
|
+
/**
|
|
23
|
+
* Quartic easing in
|
|
24
|
+
*/
|
|
25
|
+
export declare const easeInQuart: TEasingFunction;
|
|
26
|
+
/**
|
|
27
|
+
* Quartic easing out
|
|
28
|
+
*/
|
|
29
|
+
export declare const easeOutQuart: TEasingFunction;
|
|
30
|
+
/**
|
|
31
|
+
* Quartic easing in and out
|
|
32
|
+
*/
|
|
33
|
+
export declare const easeInOutQuart: TEasingFunction;
|
|
34
|
+
/**
|
|
35
|
+
* Quintic easing in
|
|
36
|
+
*/
|
|
37
|
+
export declare const easeInQuint: TEasingFunction;
|
|
38
|
+
/**
|
|
39
|
+
* Quintic easing out
|
|
40
|
+
*/
|
|
41
|
+
export declare const easeOutQuint: TEasingFunction;
|
|
42
|
+
/**
|
|
43
|
+
* Quintic easing in and out
|
|
44
|
+
*/
|
|
45
|
+
export declare const easeInOutQuint: TEasingFunction;
|
|
46
|
+
/**
|
|
47
|
+
* Sinusoidal easing in
|
|
48
|
+
*/
|
|
49
|
+
export declare const easeInSine: TEasingFunction;
|
|
50
|
+
/**
|
|
51
|
+
* Sinusoidal easing out
|
|
52
|
+
*/
|
|
53
|
+
export declare const easeOutSine: TEasingFunction;
|
|
54
|
+
/**
|
|
55
|
+
* Sinusoidal easing in and out
|
|
56
|
+
*/
|
|
57
|
+
export declare const easeInOutSine: TEasingFunction;
|
|
58
|
+
/**
|
|
59
|
+
* Exponential easing in
|
|
60
|
+
*/
|
|
61
|
+
export declare const easeInExpo: TEasingFunction;
|
|
62
|
+
/**
|
|
63
|
+
* Exponential easing out
|
|
64
|
+
*/
|
|
65
|
+
export declare const easeOutExpo: TEasingFunction;
|
|
66
|
+
/**
|
|
67
|
+
* Exponential easing in and out
|
|
68
|
+
*/
|
|
69
|
+
export declare const easeInOutExpo: TEasingFunction;
|
|
70
|
+
/**
|
|
71
|
+
* Circular easing in
|
|
72
|
+
*/
|
|
73
|
+
export declare const easeInCirc: TEasingFunction;
|
|
74
|
+
/**
|
|
75
|
+
* Circular easing out
|
|
76
|
+
*/
|
|
77
|
+
export declare const easeOutCirc: TEasingFunction;
|
|
78
|
+
/**
|
|
79
|
+
* Circular easing in and out
|
|
80
|
+
*/
|
|
81
|
+
export declare const easeInOutCirc: TEasingFunction;
|
|
82
|
+
/**
|
|
83
|
+
* Elastic easing in
|
|
84
|
+
*/
|
|
85
|
+
export declare const easeInElastic: TEasingFunction;
|
|
86
|
+
/**
|
|
87
|
+
* Elastic easing out
|
|
88
|
+
*/
|
|
89
|
+
export declare const easeOutElastic: TEasingFunction;
|
|
90
|
+
/**
|
|
91
|
+
* Elastic easing in and out
|
|
92
|
+
*/
|
|
93
|
+
export declare const easeInOutElastic: TEasingFunction;
|
|
94
|
+
/**
|
|
95
|
+
* Backwards easing in
|
|
96
|
+
*/
|
|
97
|
+
export declare const easeInBack: TEasingFunction;
|
|
98
|
+
/**
|
|
99
|
+
* Backwards easing out
|
|
100
|
+
*/
|
|
101
|
+
export declare const easeOutBack: TEasingFunction;
|
|
102
|
+
/**
|
|
103
|
+
* Backwards easing in and out
|
|
104
|
+
*/
|
|
105
|
+
export declare const easeInOutBack: TEasingFunction;
|
|
106
|
+
/**
|
|
107
|
+
* Bouncing easing out
|
|
108
|
+
*/
|
|
109
|
+
export declare const easeOutBounce: TEasingFunction;
|
|
110
|
+
/**
|
|
111
|
+
* Bouncing easing in
|
|
112
|
+
*/
|
|
113
|
+
export declare const easeInBounce: TEasingFunction;
|
|
114
|
+
/**
|
|
115
|
+
* Bouncing easing in and out
|
|
116
|
+
*/
|
|
117
|
+
export declare const easeInOutBounce: TEasingFunction;
|
|
118
|
+
/**
|
|
119
|
+
* Quadratic easing in
|
|
120
|
+
*/
|
|
121
|
+
export declare const easeInQuad: TEasingFunction;
|
|
122
|
+
/**
|
|
123
|
+
* Quadratic easing out
|
|
124
|
+
*/
|
|
125
|
+
export declare const easeOutQuad: TEasingFunction;
|
|
126
|
+
/**
|
|
127
|
+
* Quadratic easing in and out
|
|
128
|
+
*/
|
|
129
|
+
export declare const easeInOutQuad: TEasingFunction;
|
|
130
|
+
//# sourceMappingURL=easing.d.ts.map
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import { TColorArg } from '../../color/Color';
|
|
2
|
+
export type AnimationState = 'pending' | 'running' | 'completed' | 'aborted';
|
|
3
|
+
/**
|
|
4
|
+
* Callback called every frame
|
|
5
|
+
* @param {number | number[]} value current value of the animation.
|
|
6
|
+
* @param {number} valueProgress ∈ [0, 1], the current animation progress reflected on value, normalized.
|
|
7
|
+
* 0 is the starting value and 1 is the ending value.
|
|
8
|
+
* @param {number} durationProgress ∈ [0, 1], the current animation duration normalized to 1.
|
|
9
|
+
*/
|
|
10
|
+
export type TOnAnimationChangeCallback<T, R = void> = (value: T, valueProgress: number, durationProgress: number) => R;
|
|
11
|
+
/**
|
|
12
|
+
* Called on each step to determine if animation should abort
|
|
13
|
+
* @returns truthy if animation should abort
|
|
14
|
+
*/
|
|
15
|
+
export type TAbortCallback<T> = TOnAnimationChangeCallback<T, boolean>;
|
|
16
|
+
/**
|
|
17
|
+
* An easing function used to calculate the current value
|
|
18
|
+
* @see {@link AnimationBase['calculate']}
|
|
19
|
+
*
|
|
20
|
+
* @param timeElapsed ms elapsed since start
|
|
21
|
+
* @param startValue
|
|
22
|
+
* @param byValue
|
|
23
|
+
* @param duration in ms
|
|
24
|
+
* @returns next value
|
|
25
|
+
*/
|
|
26
|
+
export type TEasingFunction<T = unknown> = T extends number[] ? (timeElapsed: number, startValue: number, byValue: number, duration: number, index: number) => number : (timeElapsed: number, startValue: number, byValue: number, duration: number) => number;
|
|
27
|
+
export type TAnimationBaseOptions<T> = {
|
|
28
|
+
/**
|
|
29
|
+
* Duration of the animation in ms
|
|
30
|
+
* @default 500
|
|
31
|
+
*/
|
|
32
|
+
duration: number;
|
|
33
|
+
/**
|
|
34
|
+
* Delay to start the animation in ms
|
|
35
|
+
* @default 0
|
|
36
|
+
*/
|
|
37
|
+
delay: number;
|
|
38
|
+
/**
|
|
39
|
+
* Easing function
|
|
40
|
+
* @default {defaultEasing}
|
|
41
|
+
*/
|
|
42
|
+
easing: TEasingFunction<T>;
|
|
43
|
+
/**
|
|
44
|
+
* The object this animation is being performed on
|
|
45
|
+
*/
|
|
46
|
+
target: unknown;
|
|
47
|
+
};
|
|
48
|
+
export type TAnimationCallbacks<T> = {
|
|
49
|
+
/**
|
|
50
|
+
* Called when the animation starts
|
|
51
|
+
*/
|
|
52
|
+
onStart: VoidFunction;
|
|
53
|
+
/**
|
|
54
|
+
* Called at each frame of the animation
|
|
55
|
+
*/
|
|
56
|
+
onChange: TOnAnimationChangeCallback<T>;
|
|
57
|
+
/**
|
|
58
|
+
* Called after the last frame of the animation
|
|
59
|
+
*/
|
|
60
|
+
onComplete: TOnAnimationChangeCallback<T>;
|
|
61
|
+
/**
|
|
62
|
+
* Function called at each frame.
|
|
63
|
+
* If it returns true, abort
|
|
64
|
+
*/
|
|
65
|
+
abort: TAbortCallback<T>;
|
|
66
|
+
};
|
|
67
|
+
export type TBaseAnimationOptions<T, TCallback = T, TEasing = T> = Partial<TAnimationBaseOptions<TEasing> & TAnimationCallbacks<TCallback>> & {
|
|
68
|
+
startValue: T;
|
|
69
|
+
byValue: T;
|
|
70
|
+
};
|
|
71
|
+
export type TAnimationOptions<T, TCallback = T, TEasing = T> = Partial<TAnimationBaseOptions<TEasing> & TAnimationCallbacks<TCallback> & {
|
|
72
|
+
/**
|
|
73
|
+
* Starting value(s)
|
|
74
|
+
* @default 0
|
|
75
|
+
*/
|
|
76
|
+
startValue: T;
|
|
77
|
+
/**
|
|
78
|
+
* Ending value(s)
|
|
79
|
+
* @default 100
|
|
80
|
+
*/
|
|
81
|
+
endValue: T;
|
|
82
|
+
}>;
|
|
83
|
+
export type ValueAnimationOptions = TAnimationOptions<number>;
|
|
84
|
+
export type ArrayAnimationOptions = TAnimationOptions<number[]>;
|
|
85
|
+
export type ColorAnimationOptions = TAnimationOptions<TColorArg, string, number[]>;
|
|
86
|
+
export type AnimationOptions<T extends number | number[] | TColorArg> = T extends TColorArg ? ColorAnimationOptions : T extends number[] ? ArrayAnimationOptions : ValueAnimationOptions;
|
|
87
|
+
//# sourceMappingURL=types.d.ts.map
|