@nasser-sw/fabric 7.0.1-beta2 → 7.0.1-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 +0 -0
- package/.babelrcAlt +0 -0
- package/.browserslistrc +0 -0
- package/.editorconfig +0 -0
- package/.gitattributes +0 -0
- package/.gitpod.yml +0 -0
- package/.prettierignore +0 -0
- package/.prettierrc +0 -0
- package/CHANGELOG.md +0 -0
- package/CODE_OF_CONDUCT.md +0 -0
- package/CONTRIBUTING.md +0 -0
- package/LICENSE +0 -0
- package/OVERLAY_EDITOR_MIGRATION.md +0 -0
- package/README.md +0 -0
- package/SECURITY.md +0 -0
- package/debug/konva/CHANGELOG.md +0 -0
- package/debug/konva/LICENSE +0 -0
- package/debug/konva/README.md +0 -0
- package/debug/konva/gulpfile.mjs +0 -0
- package/debug/konva/package.json +0 -0
- package/debug/konva/release.sh +0 -0
- package/debug/konva/resources/doc-includes/ContainerParams.txt +0 -0
- package/debug/konva/resources/doc-includes/NodeParams.txt +0 -0
- package/debug/konva/resources/doc-includes/ShapeParams.txt +0 -0
- package/debug/konva/resources/jsdoc.conf.json +0 -0
- package/debug/konva/rollup.config.mjs +0 -0
- package/debug/konva/src/Animation.ts +0 -0
- package/debug/konva/src/BezierFunctions.ts +0 -0
- package/debug/konva/src/Canvas.ts +0 -0
- package/debug/konva/src/Container.ts +0 -0
- package/debug/konva/src/Context.ts +0 -0
- package/debug/konva/src/Core.ts +0 -0
- package/debug/konva/src/DragAndDrop.ts +0 -0
- package/debug/konva/src/Factory.ts +0 -0
- package/debug/konva/src/FastLayer.ts +0 -0
- package/debug/konva/src/Global.ts +0 -0
- package/debug/konva/src/Group.ts +0 -0
- package/debug/konva/src/Layer.ts +0 -0
- package/debug/konva/src/Node.ts +0 -0
- package/debug/konva/src/PointerEvents.ts +0 -0
- package/debug/konva/src/Shape.ts +0 -0
- package/debug/konva/src/Stage.ts +0 -0
- package/debug/konva/src/Tween.ts +0 -0
- package/debug/konva/src/Util.ts +0 -0
- package/debug/konva/src/Validators.ts +0 -0
- package/debug/konva/src/_CoreInternals.ts +0 -0
- package/debug/konva/src/_FullInternals.ts +0 -0
- package/debug/konva/src/canvas-backend.ts +0 -0
- package/debug/konva/src/filters/Blur.ts +0 -0
- package/debug/konva/src/filters/Brighten.ts +0 -0
- package/debug/konva/src/filters/Brightness.ts +0 -0
- package/debug/konva/src/filters/Contrast.ts +0 -0
- package/debug/konva/src/filters/Emboss.ts +0 -0
- package/debug/konva/src/filters/Enhance.ts +0 -0
- package/debug/konva/src/filters/Grayscale.ts +0 -0
- package/debug/konva/src/filters/HSL.ts +0 -0
- package/debug/konva/src/filters/HSV.ts +0 -0
- package/debug/konva/src/filters/Invert.ts +0 -0
- package/debug/konva/src/filters/Kaleidoscope.ts +0 -0
- package/debug/konva/src/filters/Mask.ts +0 -0
- package/debug/konva/src/filters/Noise.ts +0 -0
- package/debug/konva/src/filters/Pixelate.ts +0 -0
- package/debug/konva/src/filters/Posterize.ts +0 -0
- package/debug/konva/src/filters/RGB.ts +0 -0
- package/debug/konva/src/filters/RGBA.ts +0 -0
- package/debug/konva/src/filters/Sepia.ts +0 -0
- package/debug/konva/src/filters/Solarize.ts +0 -0
- package/debug/konva/src/filters/Threshold.ts +0 -0
- package/debug/konva/src/index.ts +0 -0
- package/debug/konva/src/shapes/Arc.ts +0 -0
- package/debug/konva/src/shapes/Arrow.ts +0 -0
- package/debug/konva/src/shapes/Circle.ts +0 -0
- package/debug/konva/src/shapes/Ellipse.ts +0 -0
- package/debug/konva/src/shapes/Image.ts +0 -0
- package/debug/konva/src/shapes/Label.ts +0 -0
- package/debug/konva/src/shapes/Line.ts +0 -0
- package/debug/konva/src/shapes/Path.ts +0 -0
- package/debug/konva/src/shapes/Rect.ts +0 -0
- package/debug/konva/src/shapes/RegularPolygon.ts +0 -0
- package/debug/konva/src/shapes/Ring.ts +0 -0
- package/debug/konva/src/shapes/Sprite.ts +0 -0
- package/debug/konva/src/shapes/Star.ts +0 -0
- package/debug/konva/src/shapes/Text.ts +0 -0
- package/debug/konva/src/shapes/TextPath.ts +0 -0
- package/debug/konva/src/shapes/Transformer.ts +0 -0
- package/debug/konva/src/shapes/Wedge.ts +0 -0
- package/debug/konva/src/skia-backend.ts +0 -0
- package/debug/konva/src/types.ts +0 -0
- package/debug/konva/tsconfig.json +0 -0
- package/debug/konva/tsconfig.test.json +0 -0
- package/dist/_virtual/_rollupPluginBabelHelpers.min.mjs +0 -0
- package/dist/_virtual/_rollupPluginBabelHelpers.min.mjs.map +0 -0
- package/dist/_virtual/_rollupPluginBabelHelpers.mjs +0 -0
- package/dist/_virtual/_rollupPluginBabelHelpers.mjs.map +0 -0
- package/dist/extensions/aligning_guidelines/constant.d.ts +0 -0
- package/dist/extensions/aligning_guidelines/constant.d.ts.map +0 -0
- package/dist/extensions/aligning_guidelines/index.d.ts +0 -0
- package/dist/extensions/aligning_guidelines/index.d.ts.map +0 -0
- package/dist/extensions/aligning_guidelines/typedefs.d.ts +0 -0
- package/dist/extensions/aligning_guidelines/typedefs.d.ts.map +0 -0
- package/dist/extensions/aligning_guidelines/util/basic.d.ts +0 -0
- package/dist/extensions/aligning_guidelines/util/basic.d.ts.map +0 -0
- package/dist/extensions/aligning_guidelines/util/collect-line.d.ts +0 -0
- package/dist/extensions/aligning_guidelines/util/collect-line.d.ts.map +0 -0
- package/dist/extensions/aligning_guidelines/util/collect-point.d.ts +0 -0
- package/dist/extensions/aligning_guidelines/util/collect-point.d.ts.map +0 -0
- package/dist/extensions/aligning_guidelines/util/draw.d.ts +0 -0
- package/dist/extensions/aligning_guidelines/util/draw.d.ts.map +0 -0
- package/dist/extensions/aligning_guidelines/util/get-objects-by-target.d.ts +0 -0
- package/dist/extensions/aligning_guidelines/util/get-objects-by-target.d.ts.map +0 -0
- package/dist/extensions/data_updaters/gradient/index.d.ts +0 -0
- package/dist/extensions/data_updaters/gradient/index.d.ts.map +0 -0
- package/dist/extensions/data_updaters/origins/index.d.ts +0 -0
- package/dist/extensions/data_updaters/origins/index.d.ts.map +0 -0
- package/dist/extensions/index.d.ts +0 -0
- package/dist/extensions/index.d.ts.map +0 -0
- package/dist/fabric.d.ts +0 -0
- package/dist/fabric.d.ts.map +0 -0
- package/dist/fabric.min.mjs +0 -0
- package/dist/fabric.min.mjs.map +0 -0
- package/dist/fabric.mjs +0 -0
- package/dist/fabric.mjs.map +0 -0
- package/dist/index.d.ts +0 -0
- package/dist/index.d.ts.map +0 -0
- package/dist/index.js +1266 -1000
- package/dist/index.js.map +1 -1
- package/dist/index.min.js +1 -1
- package/dist/index.min.js.map +1 -1
- package/dist/index.min.mjs +1 -1
- package/dist/index.min.mjs.map +1 -1
- package/dist/index.mjs +1266 -1000
- package/dist/index.mjs.map +1 -1
- package/dist/index.node.cjs +1266 -1000
- package/dist/index.node.cjs.map +1 -1
- package/dist/index.node.d.ts +0 -0
- package/dist/index.node.d.ts.map +0 -0
- package/dist/index.node.mjs +1266 -1000
- package/dist/index.node.mjs.map +1 -1
- package/dist/package.json.min.mjs +1 -1
- package/dist/package.json.min.mjs.map +0 -0
- package/dist/package.json.mjs +1 -1
- package/dist/package.json.mjs.map +0 -0
- package/dist/src/ClassRegistry.d.ts +0 -0
- package/dist/src/ClassRegistry.d.ts.map +0 -0
- package/dist/src/ClassRegistry.min.mjs +0 -0
- package/dist/src/ClassRegistry.min.mjs.map +0 -0
- package/dist/src/ClassRegistry.mjs +0 -0
- package/dist/src/ClassRegistry.mjs.map +0 -0
- package/dist/src/Collection.d.ts +0 -0
- package/dist/src/Collection.d.ts.map +0 -0
- package/dist/src/Collection.min.mjs +0 -0
- package/dist/src/Collection.min.mjs.map +0 -0
- package/dist/src/Collection.mjs +0 -0
- package/dist/src/Collection.mjs.map +0 -0
- package/dist/src/CommonMethods.d.ts +0 -0
- package/dist/src/CommonMethods.d.ts.map +0 -0
- package/dist/src/CommonMethods.min.mjs +0 -0
- package/dist/src/CommonMethods.min.mjs.map +0 -0
- package/dist/src/CommonMethods.mjs +0 -0
- package/dist/src/CommonMethods.mjs.map +0 -0
- package/dist/src/EventTypeDefs.d.ts +0 -0
- package/dist/src/EventTypeDefs.d.ts.map +0 -0
- package/dist/src/Intersection.d.ts +0 -0
- package/dist/src/Intersection.d.ts.map +0 -0
- package/dist/src/Intersection.min.mjs +0 -0
- package/dist/src/Intersection.min.mjs.map +0 -0
- package/dist/src/Intersection.mjs +0 -0
- package/dist/src/Intersection.mjs.map +0 -0
- package/dist/src/LayoutManager/ActiveSelectionLayoutManager.d.ts +0 -0
- package/dist/src/LayoutManager/ActiveSelectionLayoutManager.d.ts.map +0 -0
- package/dist/src/LayoutManager/ActiveSelectionLayoutManager.min.mjs +0 -0
- package/dist/src/LayoutManager/ActiveSelectionLayoutManager.min.mjs.map +0 -0
- package/dist/src/LayoutManager/ActiveSelectionLayoutManager.mjs +0 -0
- package/dist/src/LayoutManager/ActiveSelectionLayoutManager.mjs.map +0 -0
- package/dist/src/LayoutManager/LayoutManager.d.ts +0 -0
- package/dist/src/LayoutManager/LayoutManager.d.ts.map +0 -0
- package/dist/src/LayoutManager/LayoutManager.min.mjs +0 -0
- package/dist/src/LayoutManager/LayoutManager.min.mjs.map +0 -0
- package/dist/src/LayoutManager/LayoutManager.mjs +0 -0
- package/dist/src/LayoutManager/LayoutManager.mjs.map +0 -0
- package/dist/src/LayoutManager/LayoutStrategies/ClipPathLayout.d.ts +0 -0
- package/dist/src/LayoutManager/LayoutStrategies/ClipPathLayout.d.ts.map +0 -0
- package/dist/src/LayoutManager/LayoutStrategies/ClipPathLayout.min.mjs +0 -0
- package/dist/src/LayoutManager/LayoutStrategies/ClipPathLayout.min.mjs.map +0 -0
- package/dist/src/LayoutManager/LayoutStrategies/ClipPathLayout.mjs +0 -0
- package/dist/src/LayoutManager/LayoutStrategies/ClipPathLayout.mjs.map +0 -0
- package/dist/src/LayoutManager/LayoutStrategies/FitContentLayout.d.ts +0 -0
- package/dist/src/LayoutManager/LayoutStrategies/FitContentLayout.d.ts.map +0 -0
- package/dist/src/LayoutManager/LayoutStrategies/FitContentLayout.min.mjs +0 -0
- package/dist/src/LayoutManager/LayoutStrategies/FitContentLayout.min.mjs.map +0 -0
- package/dist/src/LayoutManager/LayoutStrategies/FitContentLayout.mjs +0 -0
- package/dist/src/LayoutManager/LayoutStrategies/FitContentLayout.mjs.map +0 -0
- package/dist/src/LayoutManager/LayoutStrategies/FixedLayout.d.ts +0 -0
- package/dist/src/LayoutManager/LayoutStrategies/FixedLayout.d.ts.map +0 -0
- package/dist/src/LayoutManager/LayoutStrategies/FixedLayout.min.mjs +0 -0
- package/dist/src/LayoutManager/LayoutStrategies/FixedLayout.min.mjs.map +0 -0
- package/dist/src/LayoutManager/LayoutStrategies/FixedLayout.mjs +0 -0
- package/dist/src/LayoutManager/LayoutStrategies/FixedLayout.mjs.map +0 -0
- package/dist/src/LayoutManager/LayoutStrategies/LayoutStrategy.d.ts +0 -0
- package/dist/src/LayoutManager/LayoutStrategies/LayoutStrategy.d.ts.map +0 -0
- package/dist/src/LayoutManager/LayoutStrategies/LayoutStrategy.min.mjs +0 -0
- package/dist/src/LayoutManager/LayoutStrategies/LayoutStrategy.min.mjs.map +0 -0
- package/dist/src/LayoutManager/LayoutStrategies/LayoutStrategy.mjs +0 -0
- package/dist/src/LayoutManager/LayoutStrategies/LayoutStrategy.mjs.map +0 -0
- package/dist/src/LayoutManager/LayoutStrategies/utils.d.ts +0 -0
- package/dist/src/LayoutManager/LayoutStrategies/utils.d.ts.map +0 -0
- package/dist/src/LayoutManager/LayoutStrategies/utils.min.mjs +0 -0
- package/dist/src/LayoutManager/LayoutStrategies/utils.min.mjs.map +0 -0
- package/dist/src/LayoutManager/LayoutStrategies/utils.mjs +0 -0
- package/dist/src/LayoutManager/LayoutStrategies/utils.mjs.map +0 -0
- package/dist/src/LayoutManager/constants.d.ts +0 -0
- package/dist/src/LayoutManager/constants.d.ts.map +0 -0
- package/dist/src/LayoutManager/constants.min.mjs +0 -0
- package/dist/src/LayoutManager/constants.min.mjs.map +0 -0
- package/dist/src/LayoutManager/constants.mjs +0 -0
- package/dist/src/LayoutManager/constants.mjs.map +0 -0
- package/dist/src/LayoutManager/index.d.ts +0 -0
- package/dist/src/LayoutManager/index.d.ts.map +0 -0
- package/dist/src/LayoutManager/types.d.ts +0 -0
- package/dist/src/LayoutManager/types.d.ts.map +0 -0
- package/dist/src/Observable.d.ts +0 -0
- package/dist/src/Observable.d.ts.map +0 -0
- package/dist/src/Observable.min.mjs +0 -0
- package/dist/src/Observable.min.mjs.map +0 -0
- package/dist/src/Observable.mjs +0 -0
- package/dist/src/Observable.mjs.map +0 -0
- package/dist/src/Pattern/Pattern.d.ts +0 -0
- package/dist/src/Pattern/Pattern.d.ts.map +0 -0
- package/dist/src/Pattern/Pattern.min.mjs +0 -0
- package/dist/src/Pattern/Pattern.min.mjs.map +0 -0
- package/dist/src/Pattern/Pattern.mjs +0 -0
- package/dist/src/Pattern/Pattern.mjs.map +0 -0
- package/dist/src/Pattern/index.d.ts +0 -0
- package/dist/src/Pattern/index.d.ts.map +0 -0
- package/dist/src/Pattern/types.d.ts +0 -0
- package/dist/src/Pattern/types.d.ts.map +0 -0
- package/dist/src/Point.d.ts +0 -0
- package/dist/src/Point.d.ts.map +0 -0
- package/dist/src/Point.min.mjs +0 -0
- package/dist/src/Point.min.mjs.map +0 -0
- package/dist/src/Point.mjs +0 -0
- package/dist/src/Point.mjs.map +0 -0
- package/dist/src/Shadow.d.ts +0 -0
- package/dist/src/Shadow.d.ts.map +0 -0
- package/dist/src/Shadow.min.mjs +0 -0
- package/dist/src/Shadow.min.mjs.map +0 -0
- package/dist/src/Shadow.mjs +0 -0
- package/dist/src/Shadow.mjs.map +0 -0
- package/dist/src/brushes/BaseBrush.d.ts +0 -0
- package/dist/src/brushes/BaseBrush.d.ts.map +0 -0
- package/dist/src/brushes/BaseBrush.min.mjs +0 -0
- package/dist/src/brushes/BaseBrush.min.mjs.map +0 -0
- package/dist/src/brushes/BaseBrush.mjs +0 -0
- package/dist/src/brushes/BaseBrush.mjs.map +0 -0
- package/dist/src/brushes/CircleBrush.d.ts +0 -0
- package/dist/src/brushes/CircleBrush.d.ts.map +0 -0
- package/dist/src/brushes/CircleBrush.min.mjs +0 -0
- package/dist/src/brushes/CircleBrush.min.mjs.map +0 -0
- package/dist/src/brushes/CircleBrush.mjs +0 -0
- package/dist/src/brushes/CircleBrush.mjs.map +0 -0
- package/dist/src/brushes/PatternBrush.d.ts +0 -0
- package/dist/src/brushes/PatternBrush.d.ts.map +0 -0
- package/dist/src/brushes/PatternBrush.min.mjs +0 -0
- package/dist/src/brushes/PatternBrush.min.mjs.map +0 -0
- package/dist/src/brushes/PatternBrush.mjs +0 -0
- package/dist/src/brushes/PatternBrush.mjs.map +0 -0
- package/dist/src/brushes/PencilBrush.d.ts +0 -0
- package/dist/src/brushes/PencilBrush.d.ts.map +0 -0
- package/dist/src/brushes/PencilBrush.min.mjs +0 -0
- package/dist/src/brushes/PencilBrush.min.mjs.map +0 -0
- package/dist/src/brushes/PencilBrush.mjs +0 -0
- package/dist/src/brushes/PencilBrush.mjs.map +0 -0
- package/dist/src/brushes/SprayBrush.d.ts +0 -0
- package/dist/src/brushes/SprayBrush.d.ts.map +0 -0
- package/dist/src/brushes/SprayBrush.min.mjs +0 -0
- package/dist/src/brushes/SprayBrush.min.mjs.map +0 -0
- package/dist/src/brushes/SprayBrush.mjs +0 -0
- package/dist/src/brushes/SprayBrush.mjs.map +0 -0
- package/dist/src/brushes/typedefs.d.ts +0 -0
- package/dist/src/brushes/typedefs.d.ts.map +0 -0
- package/dist/src/cache.d.ts +0 -0
- package/dist/src/cache.d.ts.map +0 -0
- package/dist/src/cache.min.mjs +0 -0
- package/dist/src/cache.min.mjs.map +0 -0
- package/dist/src/cache.mjs +0 -0
- package/dist/src/cache.mjs.map +0 -0
- package/dist/src/canvas/Canvas.d.ts +0 -0
- package/dist/src/canvas/Canvas.d.ts.map +0 -0
- package/dist/src/canvas/Canvas.min.mjs +0 -0
- package/dist/src/canvas/Canvas.min.mjs.map +0 -0
- package/dist/src/canvas/Canvas.mjs +0 -0
- package/dist/src/canvas/Canvas.mjs.map +0 -0
- package/dist/src/canvas/CanvasOptions.d.ts +0 -0
- package/dist/src/canvas/CanvasOptions.d.ts.map +0 -0
- package/dist/src/canvas/CanvasOptions.min.mjs +0 -0
- package/dist/src/canvas/CanvasOptions.min.mjs.map +0 -0
- package/dist/src/canvas/CanvasOptions.mjs +0 -0
- package/dist/src/canvas/CanvasOptions.mjs.map +0 -0
- package/dist/src/canvas/DOMManagers/CanvasDOMManager.d.ts +0 -0
- package/dist/src/canvas/DOMManagers/CanvasDOMManager.d.ts.map +0 -0
- package/dist/src/canvas/DOMManagers/CanvasDOMManager.min.mjs +0 -0
- package/dist/src/canvas/DOMManagers/CanvasDOMManager.min.mjs.map +0 -0
- package/dist/src/canvas/DOMManagers/CanvasDOMManager.mjs +0 -0
- package/dist/src/canvas/DOMManagers/CanvasDOMManager.mjs.map +0 -0
- package/dist/src/canvas/DOMManagers/StaticCanvasDOMManager.d.ts +0 -0
- package/dist/src/canvas/DOMManagers/StaticCanvasDOMManager.d.ts.map +0 -0
- package/dist/src/canvas/DOMManagers/StaticCanvasDOMManager.min.mjs +0 -0
- package/dist/src/canvas/DOMManagers/StaticCanvasDOMManager.min.mjs.map +0 -0
- package/dist/src/canvas/DOMManagers/StaticCanvasDOMManager.mjs +0 -0
- package/dist/src/canvas/DOMManagers/StaticCanvasDOMManager.mjs.map +0 -0
- package/dist/src/canvas/DOMManagers/util.d.ts +0 -0
- package/dist/src/canvas/DOMManagers/util.d.ts.map +0 -0
- package/dist/src/canvas/DOMManagers/util.min.mjs +0 -0
- package/dist/src/canvas/DOMManagers/util.min.mjs.map +0 -0
- package/dist/src/canvas/DOMManagers/util.mjs +0 -0
- package/dist/src/canvas/DOMManagers/util.mjs.map +0 -0
- package/dist/src/canvas/SelectableCanvas.d.ts +0 -0
- package/dist/src/canvas/SelectableCanvas.d.ts.map +0 -0
- package/dist/src/canvas/SelectableCanvas.min.mjs +0 -0
- package/dist/src/canvas/SelectableCanvas.min.mjs.map +0 -0
- package/dist/src/canvas/SelectableCanvas.mjs +0 -0
- package/dist/src/canvas/SelectableCanvas.mjs.map +0 -0
- package/dist/src/canvas/StaticCanvas.d.ts +0 -0
- package/dist/src/canvas/StaticCanvas.d.ts.map +0 -0
- package/dist/src/canvas/StaticCanvas.min.mjs +0 -0
- package/dist/src/canvas/StaticCanvas.min.mjs.map +0 -0
- package/dist/src/canvas/StaticCanvas.mjs +0 -0
- package/dist/src/canvas/StaticCanvas.mjs.map +0 -0
- package/dist/src/canvas/StaticCanvasOptions.d.ts +0 -0
- package/dist/src/canvas/StaticCanvasOptions.d.ts.map +0 -0
- package/dist/src/canvas/StaticCanvasOptions.min.mjs +0 -0
- package/dist/src/canvas/StaticCanvasOptions.min.mjs.map +0 -0
- package/dist/src/canvas/StaticCanvasOptions.mjs +0 -0
- package/dist/src/canvas/StaticCanvasOptions.mjs.map +0 -0
- package/dist/src/canvas/TextEditingManager.d.ts +0 -0
- package/dist/src/canvas/TextEditingManager.d.ts.map +0 -0
- package/dist/src/canvas/TextEditingManager.min.mjs +0 -0
- package/dist/src/canvas/TextEditingManager.min.mjs.map +0 -0
- package/dist/src/canvas/TextEditingManager.mjs +0 -0
- package/dist/src/canvas/TextEditingManager.mjs.map +0 -0
- package/dist/src/canvas/canvas_gestures.mixin.d.ts +0 -0
- package/dist/src/canvas/canvas_gestures.mixin.d.ts.map +0 -0
- package/dist/src/color/Color.d.ts +0 -0
- package/dist/src/color/Color.d.ts.map +0 -0
- package/dist/src/color/Color.min.mjs +0 -0
- package/dist/src/color/Color.min.mjs.map +0 -0
- package/dist/src/color/Color.mjs +0 -0
- package/dist/src/color/Color.mjs.map +0 -0
- package/dist/src/color/color_map.d.ts +0 -0
- package/dist/src/color/color_map.d.ts.map +0 -0
- package/dist/src/color/color_map.min.mjs +0 -0
- package/dist/src/color/color_map.min.mjs.map +0 -0
- package/dist/src/color/color_map.mjs +0 -0
- package/dist/src/color/color_map.mjs.map +0 -0
- package/dist/src/color/constants.d.ts +0 -0
- package/dist/src/color/constants.d.ts.map +0 -0
- package/dist/src/color/constants.min.mjs +0 -0
- package/dist/src/color/constants.min.mjs.map +0 -0
- package/dist/src/color/constants.mjs +0 -0
- package/dist/src/color/constants.mjs.map +0 -0
- package/dist/src/color/typedefs.d.ts +0 -0
- package/dist/src/color/typedefs.d.ts.map +0 -0
- package/dist/src/color/util.d.ts +0 -0
- package/dist/src/color/util.d.ts.map +0 -0
- package/dist/src/color/util.min.mjs +0 -0
- package/dist/src/color/util.min.mjs.map +0 -0
- package/dist/src/color/util.mjs +0 -0
- package/dist/src/color/util.mjs.map +0 -0
- package/dist/src/config.d.ts +0 -0
- package/dist/src/config.d.ts.map +0 -0
- package/dist/src/config.min.mjs +0 -0
- package/dist/src/config.min.mjs.map +0 -0
- package/dist/src/config.mjs +0 -0
- package/dist/src/config.mjs.map +0 -0
- package/dist/src/constants.d.ts +0 -0
- package/dist/src/constants.d.ts.map +0 -0
- package/dist/src/constants.min.mjs +0 -0
- package/dist/src/constants.min.mjs.map +0 -0
- package/dist/src/constants.mjs +0 -0
- package/dist/src/constants.mjs.map +0 -0
- package/dist/src/controls/Control.d.ts +0 -0
- package/dist/src/controls/Control.d.ts.map +0 -0
- package/dist/src/controls/Control.min.mjs +0 -0
- package/dist/src/controls/Control.min.mjs.map +0 -0
- package/dist/src/controls/Control.mjs +0 -0
- package/dist/src/controls/Control.mjs.map +0 -0
- package/dist/src/controls/changeHeight.d.ts +0 -0
- package/dist/src/controls/changeHeight.d.ts.map +0 -0
- package/dist/src/controls/changeWidth.d.ts +0 -0
- package/dist/src/controls/changeWidth.d.ts.map +0 -0
- package/dist/src/controls/changeWidth.min.mjs +0 -0
- package/dist/src/controls/changeWidth.min.mjs.map +0 -0
- package/dist/src/controls/changeWidth.mjs +0 -0
- package/dist/src/controls/changeWidth.mjs.map +0 -0
- package/dist/src/controls/commonControls.d.ts +0 -0
- package/dist/src/controls/commonControls.d.ts.map +0 -0
- package/dist/src/controls/commonControls.min.mjs +0 -0
- package/dist/src/controls/commonControls.min.mjs.map +0 -0
- package/dist/src/controls/commonControls.mjs +0 -0
- package/dist/src/controls/commonControls.mjs.map +0 -0
- package/dist/src/controls/controlRendering.d.ts +0 -0
- package/dist/src/controls/controlRendering.d.ts.map +0 -0
- package/dist/src/controls/controlRendering.min.mjs +0 -0
- package/dist/src/controls/controlRendering.min.mjs.map +0 -0
- package/dist/src/controls/controlRendering.mjs +0 -0
- package/dist/src/controls/controlRendering.mjs.map +0 -0
- package/dist/src/controls/drag.d.ts +0 -0
- package/dist/src/controls/drag.d.ts.map +0 -0
- package/dist/src/controls/drag.min.mjs +0 -0
- package/dist/src/controls/drag.min.mjs.map +0 -0
- package/dist/src/controls/drag.mjs +0 -0
- package/dist/src/controls/drag.mjs.map +0 -0
- package/dist/src/controls/fireEvent.d.ts +0 -0
- package/dist/src/controls/fireEvent.d.ts.map +0 -0
- package/dist/src/controls/fireEvent.min.mjs +0 -0
- package/dist/src/controls/fireEvent.min.mjs.map +0 -0
- package/dist/src/controls/fireEvent.mjs +0 -0
- package/dist/src/controls/fireEvent.mjs.map +0 -0
- package/dist/src/controls/index.d.ts +0 -0
- package/dist/src/controls/index.d.ts.map +0 -0
- package/dist/src/controls/index.min.mjs +0 -0
- package/dist/src/controls/index.min.mjs.map +0 -0
- package/dist/src/controls/index.mjs +0 -0
- package/dist/src/controls/index.mjs.map +0 -0
- package/dist/src/controls/pathControl.d.ts +0 -0
- package/dist/src/controls/pathControl.d.ts.map +0 -0
- package/dist/src/controls/pathControl.min.mjs +0 -0
- package/dist/src/controls/pathControl.min.mjs.map +0 -0
- package/dist/src/controls/pathControl.mjs +0 -0
- package/dist/src/controls/pathControl.mjs.map +0 -0
- package/dist/src/controls/polyControl.d.ts +0 -0
- package/dist/src/controls/polyControl.d.ts.map +0 -0
- package/dist/src/controls/polyControl.min.mjs +0 -0
- package/dist/src/controls/polyControl.min.mjs.map +0 -0
- package/dist/src/controls/polyControl.mjs +0 -0
- package/dist/src/controls/polyControl.mjs.map +0 -0
- package/dist/src/controls/rotate.d.ts +0 -0
- package/dist/src/controls/rotate.d.ts.map +0 -0
- package/dist/src/controls/rotate.min.mjs +0 -0
- package/dist/src/controls/rotate.min.mjs.map +0 -0
- package/dist/src/controls/rotate.mjs +0 -0
- package/dist/src/controls/rotate.mjs.map +0 -0
- package/dist/src/controls/scale.d.ts +0 -0
- package/dist/src/controls/scale.d.ts.map +0 -0
- package/dist/src/controls/scale.min.mjs +0 -0
- package/dist/src/controls/scale.min.mjs.map +0 -0
- package/dist/src/controls/scale.mjs +0 -0
- package/dist/src/controls/scale.mjs.map +0 -0
- package/dist/src/controls/scaleSkew.d.ts +0 -0
- package/dist/src/controls/scaleSkew.d.ts.map +0 -0
- package/dist/src/controls/scaleSkew.min.mjs +0 -0
- package/dist/src/controls/scaleSkew.min.mjs.map +0 -0
- package/dist/src/controls/scaleSkew.mjs +0 -0
- package/dist/src/controls/scaleSkew.mjs.map +0 -0
- package/dist/src/controls/skew.d.ts +0 -0
- package/dist/src/controls/skew.d.ts.map +0 -0
- package/dist/src/controls/skew.min.mjs +0 -0
- package/dist/src/controls/skew.min.mjs.map +0 -0
- package/dist/src/controls/skew.mjs +0 -0
- package/dist/src/controls/skew.mjs.map +0 -0
- package/dist/src/controls/util.d.ts +0 -0
- package/dist/src/controls/util.d.ts.map +0 -0
- package/dist/src/controls/util.min.mjs +0 -0
- package/dist/src/controls/util.min.mjs.map +0 -0
- package/dist/src/controls/util.mjs +0 -0
- package/dist/src/controls/util.mjs.map +0 -0
- package/dist/src/controls/wrapWithFireEvent.d.ts +0 -0
- package/dist/src/controls/wrapWithFireEvent.d.ts.map +0 -0
- package/dist/src/controls/wrapWithFireEvent.min.mjs +0 -0
- package/dist/src/controls/wrapWithFireEvent.min.mjs.map +0 -0
- package/dist/src/controls/wrapWithFireEvent.mjs +0 -0
- package/dist/src/controls/wrapWithFireEvent.mjs.map +0 -0
- package/dist/src/controls/wrapWithFixedAnchor.d.ts +0 -0
- package/dist/src/controls/wrapWithFixedAnchor.d.ts.map +0 -0
- package/dist/src/controls/wrapWithFixedAnchor.min.mjs +0 -0
- package/dist/src/controls/wrapWithFixedAnchor.min.mjs.map +0 -0
- package/dist/src/controls/wrapWithFixedAnchor.mjs +0 -0
- package/dist/src/controls/wrapWithFixedAnchor.mjs.map +0 -0
- package/dist/src/env/browser.d.ts +0 -0
- package/dist/src/env/browser.d.ts.map +0 -0
- package/dist/src/env/browser.min.mjs +0 -0
- package/dist/src/env/browser.min.mjs.map +0 -0
- package/dist/src/env/browser.mjs +0 -0
- package/dist/src/env/browser.mjs.map +0 -0
- package/dist/src/env/index.d.ts +0 -0
- package/dist/src/env/index.d.ts.map +0 -0
- package/dist/src/env/index.min.mjs +0 -0
- package/dist/src/env/index.min.mjs.map +0 -0
- package/dist/src/env/index.mjs +0 -0
- package/dist/src/env/index.mjs.map +0 -0
- package/dist/src/env/node.d.ts +0 -0
- package/dist/src/env/node.d.ts.map +0 -0
- package/dist/src/env/types.d.ts +0 -0
- package/dist/src/env/types.d.ts.map +0 -0
- package/dist/src/filters/BaseFilter.d.ts +0 -0
- package/dist/src/filters/BaseFilter.d.ts.map +0 -0
- package/dist/src/filters/BaseFilter.min.mjs +0 -0
- package/dist/src/filters/BaseFilter.min.mjs.map +0 -0
- package/dist/src/filters/BaseFilter.mjs +0 -0
- package/dist/src/filters/BaseFilter.mjs.map +0 -0
- package/dist/src/filters/BlendColor.d.ts +0 -0
- package/dist/src/filters/BlendColor.d.ts.map +0 -0
- package/dist/src/filters/BlendColor.min.mjs +0 -0
- package/dist/src/filters/BlendColor.min.mjs.map +0 -0
- package/dist/src/filters/BlendColor.mjs +0 -0
- package/dist/src/filters/BlendColor.mjs.map +0 -0
- package/dist/src/filters/BlendImage.d.ts +0 -0
- package/dist/src/filters/BlendImage.d.ts.map +0 -0
- package/dist/src/filters/BlendImage.min.mjs +0 -0
- package/dist/src/filters/BlendImage.min.mjs.map +0 -0
- package/dist/src/filters/BlendImage.mjs +0 -0
- package/dist/src/filters/BlendImage.mjs.map +0 -0
- package/dist/src/filters/Blur.d.ts +0 -0
- package/dist/src/filters/Blur.d.ts.map +0 -0
- package/dist/src/filters/Blur.min.mjs +0 -0
- package/dist/src/filters/Blur.min.mjs.map +0 -0
- package/dist/src/filters/Blur.mjs +0 -0
- package/dist/src/filters/Blur.mjs.map +0 -0
- package/dist/src/filters/Boilerplate.d.ts +0 -0
- package/dist/src/filters/Boilerplate.d.ts.map +0 -0
- package/dist/src/filters/Brightness.d.ts +0 -0
- package/dist/src/filters/Brightness.d.ts.map +0 -0
- package/dist/src/filters/Brightness.min.mjs +0 -0
- package/dist/src/filters/Brightness.min.mjs.map +0 -0
- package/dist/src/filters/Brightness.mjs +0 -0
- package/dist/src/filters/Brightness.mjs.map +0 -0
- package/dist/src/filters/Canvas2dFilterBackend.d.ts +0 -0
- package/dist/src/filters/Canvas2dFilterBackend.d.ts.map +0 -0
- package/dist/src/filters/Canvas2dFilterBackend.min.mjs +0 -0
- package/dist/src/filters/Canvas2dFilterBackend.min.mjs.map +0 -0
- package/dist/src/filters/Canvas2dFilterBackend.mjs +0 -0
- package/dist/src/filters/Canvas2dFilterBackend.mjs.map +0 -0
- package/dist/src/filters/ColorMatrix.d.ts +0 -0
- package/dist/src/filters/ColorMatrix.d.ts.map +0 -0
- package/dist/src/filters/ColorMatrix.min.mjs +0 -0
- package/dist/src/filters/ColorMatrix.min.mjs.map +0 -0
- package/dist/src/filters/ColorMatrix.mjs +0 -0
- package/dist/src/filters/ColorMatrix.mjs.map +0 -0
- package/dist/src/filters/ColorMatrixFilters.d.ts +0 -0
- package/dist/src/filters/ColorMatrixFilters.d.ts.map +0 -0
- package/dist/src/filters/ColorMatrixFilters.min.mjs +0 -0
- package/dist/src/filters/ColorMatrixFilters.min.mjs.map +0 -0
- package/dist/src/filters/ColorMatrixFilters.mjs +0 -0
- package/dist/src/filters/ColorMatrixFilters.mjs.map +0 -0
- package/dist/src/filters/Composed.d.ts +0 -0
- package/dist/src/filters/Composed.d.ts.map +0 -0
- package/dist/src/filters/Composed.min.mjs +0 -0
- package/dist/src/filters/Composed.min.mjs.map +0 -0
- package/dist/src/filters/Composed.mjs +0 -0
- package/dist/src/filters/Composed.mjs.map +0 -0
- package/dist/src/filters/Contrast.d.ts +0 -0
- package/dist/src/filters/Contrast.d.ts.map +0 -0
- package/dist/src/filters/Contrast.min.mjs +0 -0
- package/dist/src/filters/Contrast.min.mjs.map +0 -0
- package/dist/src/filters/Contrast.mjs +0 -0
- package/dist/src/filters/Contrast.mjs.map +0 -0
- package/dist/src/filters/Convolute.d.ts +0 -0
- package/dist/src/filters/Convolute.d.ts.map +0 -0
- package/dist/src/filters/Convolute.min.mjs +0 -0
- package/dist/src/filters/Convolute.min.mjs.map +0 -0
- package/dist/src/filters/Convolute.mjs +0 -0
- package/dist/src/filters/Convolute.mjs.map +0 -0
- package/dist/src/filters/FilterBackend.d.ts +0 -0
- package/dist/src/filters/FilterBackend.d.ts.map +0 -0
- package/dist/src/filters/FilterBackend.min.mjs +0 -0
- package/dist/src/filters/FilterBackend.min.mjs.map +0 -0
- package/dist/src/filters/FilterBackend.mjs +0 -0
- package/dist/src/filters/FilterBackend.mjs.map +0 -0
- package/dist/src/filters/GLProbes/GLProbe.d.ts +0 -0
- package/dist/src/filters/GLProbes/GLProbe.d.ts.map +0 -0
- package/dist/src/filters/GLProbes/GLProbe.min.mjs +0 -0
- package/dist/src/filters/GLProbes/GLProbe.min.mjs.map +0 -0
- package/dist/src/filters/GLProbes/GLProbe.mjs +0 -0
- package/dist/src/filters/GLProbes/GLProbe.mjs.map +0 -0
- package/dist/src/filters/GLProbes/NodeGLProbe.d.ts +0 -0
- package/dist/src/filters/GLProbes/NodeGLProbe.d.ts.map +0 -0
- package/dist/src/filters/GLProbes/WebGLProbe.d.ts +0 -0
- package/dist/src/filters/GLProbes/WebGLProbe.d.ts.map +0 -0
- package/dist/src/filters/GLProbes/WebGLProbe.min.mjs +0 -0
- package/dist/src/filters/GLProbes/WebGLProbe.min.mjs.map +0 -0
- package/dist/src/filters/GLProbes/WebGLProbe.mjs +0 -0
- package/dist/src/filters/GLProbes/WebGLProbe.mjs.map +0 -0
- package/dist/src/filters/Gamma.d.ts +0 -0
- package/dist/src/filters/Gamma.d.ts.map +0 -0
- package/dist/src/filters/Gamma.min.mjs +0 -0
- package/dist/src/filters/Gamma.min.mjs.map +0 -0
- package/dist/src/filters/Gamma.mjs +0 -0
- package/dist/src/filters/Gamma.mjs.map +0 -0
- package/dist/src/filters/Grayscale.d.ts +0 -0
- package/dist/src/filters/Grayscale.d.ts.map +0 -0
- package/dist/src/filters/Grayscale.min.mjs +0 -0
- package/dist/src/filters/Grayscale.min.mjs.map +0 -0
- package/dist/src/filters/Grayscale.mjs +0 -0
- package/dist/src/filters/Grayscale.mjs.map +0 -0
- package/dist/src/filters/HueRotation.d.ts +0 -0
- package/dist/src/filters/HueRotation.d.ts.map +0 -0
- package/dist/src/filters/HueRotation.min.mjs +0 -0
- package/dist/src/filters/HueRotation.min.mjs.map +0 -0
- package/dist/src/filters/HueRotation.mjs +0 -0
- package/dist/src/filters/HueRotation.mjs.map +0 -0
- package/dist/src/filters/Invert.d.ts +0 -0
- package/dist/src/filters/Invert.d.ts.map +0 -0
- package/dist/src/filters/Invert.min.mjs +0 -0
- package/dist/src/filters/Invert.min.mjs.map +0 -0
- package/dist/src/filters/Invert.mjs +0 -0
- package/dist/src/filters/Invert.mjs.map +0 -0
- package/dist/src/filters/Noise.d.ts +0 -0
- package/dist/src/filters/Noise.d.ts.map +0 -0
- package/dist/src/filters/Noise.min.mjs +0 -0
- package/dist/src/filters/Noise.min.mjs.map +0 -0
- package/dist/src/filters/Noise.mjs +0 -0
- package/dist/src/filters/Noise.mjs.map +0 -0
- package/dist/src/filters/Pixelate.d.ts +0 -0
- package/dist/src/filters/Pixelate.d.ts.map +0 -0
- package/dist/src/filters/Pixelate.min.mjs +0 -0
- package/dist/src/filters/Pixelate.min.mjs.map +0 -0
- package/dist/src/filters/Pixelate.mjs +0 -0
- package/dist/src/filters/Pixelate.mjs.map +0 -0
- package/dist/src/filters/RemoveColor.d.ts +0 -0
- package/dist/src/filters/RemoveColor.d.ts.map +0 -0
- package/dist/src/filters/RemoveColor.min.mjs +0 -0
- package/dist/src/filters/RemoveColor.min.mjs.map +0 -0
- package/dist/src/filters/RemoveColor.mjs +0 -0
- package/dist/src/filters/RemoveColor.mjs.map +0 -0
- package/dist/src/filters/Resize.d.ts +0 -0
- package/dist/src/filters/Resize.d.ts.map +0 -0
- package/dist/src/filters/Resize.min.mjs +0 -0
- package/dist/src/filters/Resize.min.mjs.map +0 -0
- package/dist/src/filters/Resize.mjs +0 -0
- package/dist/src/filters/Resize.mjs.map +0 -0
- package/dist/src/filters/Saturation.d.ts +0 -0
- package/dist/src/filters/Saturation.d.ts.map +0 -0
- package/dist/src/filters/Saturation.min.mjs +0 -0
- package/dist/src/filters/Saturation.min.mjs.map +0 -0
- package/dist/src/filters/Saturation.mjs +0 -0
- package/dist/src/filters/Saturation.mjs.map +0 -0
- package/dist/src/filters/Vibrance.d.ts +0 -0
- package/dist/src/filters/Vibrance.d.ts.map +0 -0
- package/dist/src/filters/Vibrance.min.mjs +0 -0
- package/dist/src/filters/Vibrance.min.mjs.map +0 -0
- package/dist/src/filters/Vibrance.mjs +0 -0
- package/dist/src/filters/Vibrance.mjs.map +0 -0
- package/dist/src/filters/WebGLFilterBackend.d.ts +0 -0
- package/dist/src/filters/WebGLFilterBackend.d.ts.map +0 -0
- package/dist/src/filters/WebGLFilterBackend.min.mjs +0 -0
- package/dist/src/filters/WebGLFilterBackend.min.mjs.map +0 -0
- package/dist/src/filters/WebGLFilterBackend.mjs +0 -0
- package/dist/src/filters/WebGLFilterBackend.mjs.map +0 -0
- package/dist/src/filters/filters.d.ts +0 -0
- package/dist/src/filters/filters.d.ts.map +0 -0
- package/dist/src/filters/filters.min.mjs +0 -0
- package/dist/src/filters/filters.min.mjs.map +0 -0
- package/dist/src/filters/filters.mjs +0 -0
- package/dist/src/filters/filters.mjs.map +0 -0
- package/dist/src/filters/index.d.ts +0 -0
- package/dist/src/filters/index.d.ts.map +0 -0
- package/dist/src/filters/shaders/baseFilter.d.ts +0 -0
- package/dist/src/filters/shaders/baseFilter.d.ts.map +0 -0
- package/dist/src/filters/shaders/baseFilter.min.mjs +0 -0
- package/dist/src/filters/shaders/baseFilter.min.mjs.map +0 -0
- package/dist/src/filters/shaders/baseFilter.mjs +0 -0
- package/dist/src/filters/shaders/baseFilter.mjs.map +0 -0
- package/dist/src/filters/shaders/blendColor.d.ts +0 -0
- package/dist/src/filters/shaders/blendColor.d.ts.map +0 -0
- package/dist/src/filters/shaders/blendColor.min.mjs +0 -0
- package/dist/src/filters/shaders/blendColor.min.mjs.map +0 -0
- package/dist/src/filters/shaders/blendColor.mjs +0 -0
- package/dist/src/filters/shaders/blendColor.mjs.map +0 -0
- package/dist/src/filters/shaders/blendImage.d.ts +0 -0
- package/dist/src/filters/shaders/blendImage.d.ts.map +0 -0
- package/dist/src/filters/shaders/blendImage.min.mjs +0 -0
- package/dist/src/filters/shaders/blendImage.min.mjs.map +0 -0
- package/dist/src/filters/shaders/blendImage.mjs +0 -0
- package/dist/src/filters/shaders/blendImage.mjs.map +0 -0
- package/dist/src/filters/shaders/blur.d.ts +0 -0
- package/dist/src/filters/shaders/blur.d.ts.map +0 -0
- package/dist/src/filters/shaders/blur.min.mjs +0 -0
- package/dist/src/filters/shaders/blur.min.mjs.map +0 -0
- package/dist/src/filters/shaders/blur.mjs +0 -0
- package/dist/src/filters/shaders/blur.mjs.map +0 -0
- package/dist/src/filters/shaders/brightness.d.ts +0 -0
- package/dist/src/filters/shaders/brightness.d.ts.map +0 -0
- package/dist/src/filters/shaders/brightness.min.mjs +0 -0
- package/dist/src/filters/shaders/brightness.min.mjs.map +0 -0
- package/dist/src/filters/shaders/brightness.mjs +0 -0
- package/dist/src/filters/shaders/brightness.mjs.map +0 -0
- package/dist/src/filters/shaders/colorMatrix.d.ts +0 -0
- package/dist/src/filters/shaders/colorMatrix.d.ts.map +0 -0
- package/dist/src/filters/shaders/colorMatrix.min.mjs +0 -0
- package/dist/src/filters/shaders/colorMatrix.min.mjs.map +0 -0
- package/dist/src/filters/shaders/colorMatrix.mjs +0 -0
- package/dist/src/filters/shaders/colorMatrix.mjs.map +0 -0
- package/dist/src/filters/shaders/constrast.d.ts +0 -0
- package/dist/src/filters/shaders/constrast.d.ts.map +0 -0
- package/dist/src/filters/shaders/constrast.min.mjs +0 -0
- package/dist/src/filters/shaders/constrast.min.mjs.map +0 -0
- package/dist/src/filters/shaders/constrast.mjs +0 -0
- package/dist/src/filters/shaders/constrast.mjs.map +0 -0
- package/dist/src/filters/shaders/convolute.d.ts +0 -0
- package/dist/src/filters/shaders/convolute.d.ts.map +0 -0
- package/dist/src/filters/shaders/convolute.min.mjs +0 -0
- package/dist/src/filters/shaders/convolute.min.mjs.map +0 -0
- package/dist/src/filters/shaders/convolute.mjs +0 -0
- package/dist/src/filters/shaders/convolute.mjs.map +0 -0
- package/dist/src/filters/shaders/gamma.d.ts +0 -0
- package/dist/src/filters/shaders/gamma.d.ts.map +0 -0
- package/dist/src/filters/shaders/gamma.min.mjs +0 -0
- package/dist/src/filters/shaders/gamma.min.mjs.map +0 -0
- package/dist/src/filters/shaders/gamma.mjs +0 -0
- package/dist/src/filters/shaders/gamma.mjs.map +0 -0
- package/dist/src/filters/shaders/grayscale.d.ts +0 -0
- package/dist/src/filters/shaders/grayscale.d.ts.map +0 -0
- package/dist/src/filters/shaders/grayscale.min.mjs +0 -0
- package/dist/src/filters/shaders/grayscale.min.mjs.map +0 -0
- package/dist/src/filters/shaders/grayscale.mjs +0 -0
- package/dist/src/filters/shaders/grayscale.mjs.map +0 -0
- package/dist/src/filters/shaders/invert.d.ts +0 -0
- package/dist/src/filters/shaders/invert.d.ts.map +0 -0
- package/dist/src/filters/shaders/invert.min.mjs +0 -0
- package/dist/src/filters/shaders/invert.min.mjs.map +0 -0
- package/dist/src/filters/shaders/invert.mjs +0 -0
- package/dist/src/filters/shaders/invert.mjs.map +0 -0
- package/dist/src/filters/shaders/noise.d.ts +0 -0
- package/dist/src/filters/shaders/noise.d.ts.map +0 -0
- package/dist/src/filters/shaders/noise.min.mjs +0 -0
- package/dist/src/filters/shaders/noise.min.mjs.map +0 -0
- package/dist/src/filters/shaders/noise.mjs +0 -0
- package/dist/src/filters/shaders/noise.mjs.map +0 -0
- package/dist/src/filters/shaders/pixelate.d.ts +0 -0
- package/dist/src/filters/shaders/pixelate.d.ts.map +0 -0
- package/dist/src/filters/shaders/pixelate.min.mjs +0 -0
- package/dist/src/filters/shaders/pixelate.min.mjs.map +0 -0
- package/dist/src/filters/shaders/pixelate.mjs +0 -0
- package/dist/src/filters/shaders/pixelate.mjs.map +0 -0
- package/dist/src/filters/shaders/removeColor.d.ts +0 -0
- package/dist/src/filters/shaders/removeColor.d.ts.map +0 -0
- package/dist/src/filters/shaders/removeColor.min.mjs +0 -0
- package/dist/src/filters/shaders/removeColor.min.mjs.map +0 -0
- package/dist/src/filters/shaders/removeColor.mjs +0 -0
- package/dist/src/filters/shaders/removeColor.mjs.map +0 -0
- package/dist/src/filters/shaders/saturation.d.ts +0 -0
- package/dist/src/filters/shaders/saturation.d.ts.map +0 -0
- package/dist/src/filters/shaders/saturation.min.mjs +0 -0
- package/dist/src/filters/shaders/saturation.min.mjs.map +0 -0
- package/dist/src/filters/shaders/saturation.mjs +0 -0
- package/dist/src/filters/shaders/saturation.mjs.map +0 -0
- package/dist/src/filters/shaders/vibrance.d.ts +0 -0
- package/dist/src/filters/shaders/vibrance.d.ts.map +0 -0
- package/dist/src/filters/shaders/vibrance.min.mjs +0 -0
- package/dist/src/filters/shaders/vibrance.min.mjs.map +0 -0
- package/dist/src/filters/shaders/vibrance.mjs +0 -0
- package/dist/src/filters/shaders/vibrance.mjs.map +0 -0
- package/dist/src/filters/typedefs.d.ts +0 -0
- package/dist/src/filters/typedefs.d.ts.map +0 -0
- package/dist/src/filters/utils.d.ts +0 -0
- package/dist/src/filters/utils.d.ts.map +0 -0
- package/dist/src/filters/utils.min.mjs +0 -0
- package/dist/src/filters/utils.min.mjs.map +0 -0
- package/dist/src/filters/utils.mjs +0 -0
- package/dist/src/filters/utils.mjs.map +0 -0
- package/dist/src/gradient/Gradient.d.ts +0 -0
- package/dist/src/gradient/Gradient.d.ts.map +0 -0
- package/dist/src/gradient/Gradient.min.mjs +0 -0
- package/dist/src/gradient/Gradient.min.mjs.map +0 -0
- package/dist/src/gradient/Gradient.mjs +0 -0
- package/dist/src/gradient/Gradient.mjs.map +0 -0
- package/dist/src/gradient/constants.d.ts +0 -0
- package/dist/src/gradient/constants.d.ts.map +0 -0
- package/dist/src/gradient/constants.min.mjs +0 -0
- package/dist/src/gradient/constants.min.mjs.map +0 -0
- package/dist/src/gradient/constants.mjs +0 -0
- package/dist/src/gradient/constants.mjs.map +0 -0
- package/dist/src/gradient/index.d.ts +0 -0
- package/dist/src/gradient/index.d.ts.map +0 -0
- package/dist/src/gradient/parser/misc.d.ts +0 -0
- package/dist/src/gradient/parser/misc.d.ts.map +0 -0
- package/dist/src/gradient/parser/misc.min.mjs +0 -0
- package/dist/src/gradient/parser/misc.min.mjs.map +0 -0
- package/dist/src/gradient/parser/misc.mjs +0 -0
- package/dist/src/gradient/parser/misc.mjs.map +0 -0
- package/dist/src/gradient/parser/parseColorStops.d.ts +0 -0
- package/dist/src/gradient/parser/parseColorStops.d.ts.map +0 -0
- package/dist/src/gradient/parser/parseColorStops.min.mjs +0 -0
- package/dist/src/gradient/parser/parseColorStops.min.mjs.map +0 -0
- package/dist/src/gradient/parser/parseColorStops.mjs +0 -0
- package/dist/src/gradient/parser/parseColorStops.mjs.map +0 -0
- package/dist/src/gradient/parser/parseCoords.d.ts +0 -0
- package/dist/src/gradient/parser/parseCoords.d.ts.map +0 -0
- package/dist/src/gradient/parser/parseCoords.min.mjs +0 -0
- package/dist/src/gradient/parser/parseCoords.min.mjs.map +0 -0
- package/dist/src/gradient/parser/parseCoords.mjs +0 -0
- package/dist/src/gradient/parser/parseCoords.mjs.map +0 -0
- package/dist/src/gradient/typedefs.d.ts +0 -0
- package/dist/src/gradient/typedefs.d.ts.map +0 -0
- package/dist/src/mixins/eraser_brush.mixin.d.ts +0 -0
- package/dist/src/mixins/eraser_brush.mixin.d.ts.map +0 -0
- package/dist/src/parkinglot/canvas_animation.mixin.d.ts +0 -0
- package/dist/src/parkinglot/canvas_animation.mixin.d.ts.map +0 -0
- package/dist/src/parkinglot/straighten.d.ts +0 -0
- package/dist/src/parkinglot/straighten.d.ts.map +0 -0
- package/dist/src/parser/applyViewboxTransform.d.ts +0 -0
- package/dist/src/parser/applyViewboxTransform.d.ts.map +0 -0
- package/dist/src/parser/applyViewboxTransform.min.mjs +0 -0
- package/dist/src/parser/applyViewboxTransform.min.mjs.map +0 -0
- package/dist/src/parser/applyViewboxTransform.mjs +0 -0
- package/dist/src/parser/applyViewboxTransform.mjs.map +0 -0
- package/dist/src/parser/attributes.d.ts +0 -0
- package/dist/src/parser/attributes.d.ts.map +0 -0
- package/dist/src/parser/attributes.min.mjs +0 -0
- package/dist/src/parser/attributes.min.mjs.map +0 -0
- package/dist/src/parser/attributes.mjs +0 -0
- package/dist/src/parser/attributes.mjs.map +0 -0
- package/dist/src/parser/constants.d.ts +0 -0
- package/dist/src/parser/constants.d.ts.map +0 -0
- package/dist/src/parser/constants.min.mjs +0 -0
- package/dist/src/parser/constants.min.mjs.map +0 -0
- package/dist/src/parser/constants.mjs +0 -0
- package/dist/src/parser/constants.mjs.map +0 -0
- package/dist/src/parser/doesSomeParentMatch.d.ts +0 -0
- package/dist/src/parser/doesSomeParentMatch.d.ts.map +0 -0
- package/dist/src/parser/doesSomeParentMatch.min.mjs +0 -0
- package/dist/src/parser/doesSomeParentMatch.min.mjs.map +0 -0
- package/dist/src/parser/doesSomeParentMatch.mjs +0 -0
- package/dist/src/parser/doesSomeParentMatch.mjs.map +0 -0
- package/dist/src/parser/elementMatchesRule.d.ts +0 -0
- package/dist/src/parser/elementMatchesRule.d.ts.map +0 -0
- package/dist/src/parser/elementMatchesRule.min.mjs +0 -0
- package/dist/src/parser/elementMatchesRule.min.mjs.map +0 -0
- package/dist/src/parser/elementMatchesRule.mjs +0 -0
- package/dist/src/parser/elementMatchesRule.mjs.map +0 -0
- package/dist/src/parser/elements_parser.d.ts +0 -0
- package/dist/src/parser/elements_parser.d.ts.map +0 -0
- package/dist/src/parser/elements_parser.min.mjs +0 -0
- package/dist/src/parser/elements_parser.min.mjs.map +0 -0
- package/dist/src/parser/elements_parser.mjs +0 -0
- package/dist/src/parser/elements_parser.mjs.map +0 -0
- package/dist/src/parser/getCSSRules.d.ts +0 -0
- package/dist/src/parser/getCSSRules.d.ts.map +0 -0
- package/dist/src/parser/getCSSRules.min.mjs +0 -0
- package/dist/src/parser/getCSSRules.min.mjs.map +0 -0
- package/dist/src/parser/getCSSRules.mjs +0 -0
- package/dist/src/parser/getCSSRules.mjs.map +0 -0
- package/dist/src/parser/getGlobalStylesForElement.d.ts +0 -0
- package/dist/src/parser/getGlobalStylesForElement.d.ts.map +0 -0
- package/dist/src/parser/getGlobalStylesForElement.min.mjs +0 -0
- package/dist/src/parser/getGlobalStylesForElement.min.mjs.map +0 -0
- package/dist/src/parser/getGlobalStylesForElement.mjs +0 -0
- package/dist/src/parser/getGlobalStylesForElement.mjs.map +0 -0
- package/dist/src/parser/getGradientDefs.d.ts +0 -0
- package/dist/src/parser/getGradientDefs.d.ts.map +0 -0
- package/dist/src/parser/getGradientDefs.min.mjs +0 -0
- package/dist/src/parser/getGradientDefs.min.mjs.map +0 -0
- package/dist/src/parser/getGradientDefs.mjs +0 -0
- package/dist/src/parser/getGradientDefs.mjs.map +0 -0
- package/dist/src/parser/getMultipleNodes.d.ts +0 -0
- package/dist/src/parser/getMultipleNodes.d.ts.map +0 -0
- package/dist/src/parser/getMultipleNodes.min.mjs +0 -0
- package/dist/src/parser/getMultipleNodes.min.mjs.map +0 -0
- package/dist/src/parser/getMultipleNodes.mjs +0 -0
- package/dist/src/parser/getMultipleNodes.mjs.map +0 -0
- package/dist/src/parser/getSvgRegex.d.ts +0 -0
- package/dist/src/parser/getSvgRegex.d.ts.map +0 -0
- package/dist/src/parser/getSvgRegex.min.mjs +0 -0
- package/dist/src/parser/getSvgRegex.min.mjs.map +0 -0
- package/dist/src/parser/getSvgRegex.mjs +0 -0
- package/dist/src/parser/getSvgRegex.mjs.map +0 -0
- package/dist/src/parser/getTagName.d.ts +0 -0
- package/dist/src/parser/getTagName.d.ts.map +0 -0
- package/dist/src/parser/getTagName.min.mjs +0 -0
- package/dist/src/parser/getTagName.min.mjs.map +0 -0
- package/dist/src/parser/getTagName.mjs +0 -0
- package/dist/src/parser/getTagName.mjs.map +0 -0
- package/dist/src/parser/hasInvalidAncestor.d.ts +0 -0
- package/dist/src/parser/hasInvalidAncestor.d.ts.map +0 -0
- package/dist/src/parser/hasInvalidAncestor.min.mjs +0 -0
- package/dist/src/parser/hasInvalidAncestor.min.mjs.map +0 -0
- package/dist/src/parser/hasInvalidAncestor.mjs +0 -0
- package/dist/src/parser/hasInvalidAncestor.mjs.map +0 -0
- package/dist/src/parser/loadSVGFromString.d.ts +0 -0
- package/dist/src/parser/loadSVGFromString.d.ts.map +0 -0
- package/dist/src/parser/loadSVGFromString.min.mjs +0 -0
- package/dist/src/parser/loadSVGFromString.min.mjs.map +0 -0
- package/dist/src/parser/loadSVGFromString.mjs +0 -0
- package/dist/src/parser/loadSVGFromString.mjs.map +0 -0
- package/dist/src/parser/loadSVGFromURL.d.ts +0 -0
- package/dist/src/parser/loadSVGFromURL.d.ts.map +0 -0
- package/dist/src/parser/loadSVGFromURL.min.mjs +0 -0
- package/dist/src/parser/loadSVGFromURL.min.mjs.map +0 -0
- package/dist/src/parser/loadSVGFromURL.mjs +0 -0
- package/dist/src/parser/loadSVGFromURL.mjs.map +0 -0
- package/dist/src/parser/normalizeAttr.d.ts +0 -0
- package/dist/src/parser/normalizeAttr.d.ts.map +0 -0
- package/dist/src/parser/normalizeAttr.min.mjs +0 -0
- package/dist/src/parser/normalizeAttr.min.mjs.map +0 -0
- package/dist/src/parser/normalizeAttr.mjs +0 -0
- package/dist/src/parser/normalizeAttr.mjs.map +0 -0
- package/dist/src/parser/normalizeValue.d.ts +0 -0
- package/dist/src/parser/normalizeValue.d.ts.map +0 -0
- package/dist/src/parser/normalizeValue.min.mjs +0 -0
- package/dist/src/parser/normalizeValue.min.mjs.map +0 -0
- package/dist/src/parser/normalizeValue.mjs +0 -0
- package/dist/src/parser/normalizeValue.mjs.map +0 -0
- package/dist/src/parser/parseAttributes.d.ts +0 -0
- package/dist/src/parser/parseAttributes.d.ts.map +0 -0
- package/dist/src/parser/parseAttributes.min.mjs +0 -0
- package/dist/src/parser/parseAttributes.min.mjs.map +0 -0
- package/dist/src/parser/parseAttributes.mjs +0 -0
- package/dist/src/parser/parseAttributes.mjs.map +0 -0
- package/dist/src/parser/parseFontDeclaration.d.ts +0 -0
- package/dist/src/parser/parseFontDeclaration.d.ts.map +0 -0
- package/dist/src/parser/parseFontDeclaration.min.mjs +0 -0
- package/dist/src/parser/parseFontDeclaration.min.mjs.map +0 -0
- package/dist/src/parser/parseFontDeclaration.mjs +0 -0
- package/dist/src/parser/parseFontDeclaration.mjs.map +0 -0
- package/dist/src/parser/parsePointsAttribute.d.ts +0 -0
- package/dist/src/parser/parsePointsAttribute.d.ts.map +0 -0
- package/dist/src/parser/parsePointsAttribute.min.mjs +0 -0
- package/dist/src/parser/parsePointsAttribute.min.mjs.map +0 -0
- package/dist/src/parser/parsePointsAttribute.mjs +0 -0
- package/dist/src/parser/parsePointsAttribute.mjs.map +0 -0
- package/dist/src/parser/parseSVGDocument.d.ts +0 -0
- package/dist/src/parser/parseSVGDocument.d.ts.map +0 -0
- package/dist/src/parser/parseSVGDocument.min.mjs +0 -0
- package/dist/src/parser/parseSVGDocument.min.mjs.map +0 -0
- package/dist/src/parser/parseSVGDocument.mjs +0 -0
- package/dist/src/parser/parseSVGDocument.mjs.map +0 -0
- package/dist/src/parser/parseStyleAttribute.d.ts +0 -0
- package/dist/src/parser/parseStyleAttribute.d.ts.map +0 -0
- package/dist/src/parser/parseStyleAttribute.min.mjs +0 -0
- package/dist/src/parser/parseStyleAttribute.min.mjs.map +0 -0
- package/dist/src/parser/parseStyleAttribute.mjs +0 -0
- package/dist/src/parser/parseStyleAttribute.mjs.map +0 -0
- package/dist/src/parser/parseStyleObject.d.ts +0 -0
- package/dist/src/parser/parseStyleObject.d.ts.map +0 -0
- package/dist/src/parser/parseStyleObject.min.mjs +0 -0
- package/dist/src/parser/parseStyleObject.min.mjs.map +0 -0
- package/dist/src/parser/parseStyleObject.mjs +0 -0
- package/dist/src/parser/parseStyleObject.mjs.map +0 -0
- package/dist/src/parser/parseStyleString.d.ts +0 -0
- package/dist/src/parser/parseStyleString.d.ts.map +0 -0
- package/dist/src/parser/parseStyleString.min.mjs +0 -0
- package/dist/src/parser/parseStyleString.min.mjs.map +0 -0
- package/dist/src/parser/parseStyleString.mjs +0 -0
- package/dist/src/parser/parseStyleString.mjs.map +0 -0
- package/dist/src/parser/parseTransformAttribute.d.ts +0 -0
- package/dist/src/parser/parseTransformAttribute.d.ts.map +0 -0
- package/dist/src/parser/parseTransformAttribute.min.mjs +0 -0
- package/dist/src/parser/parseTransformAttribute.min.mjs.map +0 -0
- package/dist/src/parser/parseTransformAttribute.mjs +0 -0
- package/dist/src/parser/parseTransformAttribute.mjs.map +0 -0
- package/dist/src/parser/parseUseDirectives.d.ts +0 -0
- package/dist/src/parser/parseUseDirectives.d.ts.map +0 -0
- package/dist/src/parser/parseUseDirectives.min.mjs +0 -0
- package/dist/src/parser/parseUseDirectives.min.mjs.map +0 -0
- package/dist/src/parser/parseUseDirectives.mjs +0 -0
- package/dist/src/parser/parseUseDirectives.mjs.map +0 -0
- package/dist/src/parser/percent.d.ts +0 -0
- package/dist/src/parser/percent.d.ts.map +0 -0
- package/dist/src/parser/percent.min.mjs +0 -0
- package/dist/src/parser/percent.min.mjs.map +0 -0
- package/dist/src/parser/percent.mjs +0 -0
- package/dist/src/parser/percent.mjs.map +0 -0
- package/dist/src/parser/recursivelyParseGradientsXlink.d.ts +0 -0
- package/dist/src/parser/recursivelyParseGradientsXlink.d.ts.map +0 -0
- package/dist/src/parser/recursivelyParseGradientsXlink.min.mjs +0 -0
- package/dist/src/parser/recursivelyParseGradientsXlink.min.mjs.map +0 -0
- package/dist/src/parser/recursivelyParseGradientsXlink.mjs +0 -0
- package/dist/src/parser/recursivelyParseGradientsXlink.mjs.map +0 -0
- package/dist/src/parser/selectorMatches.d.ts +0 -0
- package/dist/src/parser/selectorMatches.d.ts.map +0 -0
- package/dist/src/parser/selectorMatches.min.mjs +0 -0
- package/dist/src/parser/selectorMatches.min.mjs.map +0 -0
- package/dist/src/parser/selectorMatches.mjs +0 -0
- package/dist/src/parser/selectorMatches.mjs.map +0 -0
- package/dist/src/parser/setStrokeFillOpacity.d.ts +0 -0
- package/dist/src/parser/setStrokeFillOpacity.d.ts.map +0 -0
- package/dist/src/parser/setStrokeFillOpacity.min.mjs +0 -0
- package/dist/src/parser/setStrokeFillOpacity.min.mjs.map +0 -0
- package/dist/src/parser/setStrokeFillOpacity.mjs +0 -0
- package/dist/src/parser/setStrokeFillOpacity.mjs.map +0 -0
- package/dist/src/parser/typedefs.d.ts +0 -0
- package/dist/src/parser/typedefs.d.ts.map +0 -0
- package/dist/src/shapes/ActiveSelection.d.ts +0 -0
- package/dist/src/shapes/ActiveSelection.d.ts.map +0 -0
- package/dist/src/shapes/ActiveSelection.min.mjs +0 -0
- package/dist/src/shapes/ActiveSelection.min.mjs.map +0 -0
- package/dist/src/shapes/ActiveSelection.mjs +0 -0
- package/dist/src/shapes/ActiveSelection.mjs.map +0 -0
- package/dist/src/shapes/Circle.d.ts +0 -0
- package/dist/src/shapes/Circle.d.ts.map +0 -0
- package/dist/src/shapes/Circle.min.mjs +0 -0
- package/dist/src/shapes/Circle.min.mjs.map +0 -0
- package/dist/src/shapes/Circle.mjs +0 -0
- package/dist/src/shapes/Circle.mjs.map +0 -0
- package/dist/src/shapes/Ellipse.d.ts +0 -0
- package/dist/src/shapes/Ellipse.d.ts.map +0 -0
- package/dist/src/shapes/Ellipse.min.mjs +0 -0
- package/dist/src/shapes/Ellipse.min.mjs.map +0 -0
- package/dist/src/shapes/Ellipse.mjs +0 -0
- package/dist/src/shapes/Ellipse.mjs.map +0 -0
- package/dist/src/shapes/Group.d.ts +0 -0
- package/dist/src/shapes/Group.d.ts.map +0 -0
- package/dist/src/shapes/Group.min.mjs +0 -0
- package/dist/src/shapes/Group.min.mjs.map +0 -0
- package/dist/src/shapes/Group.mjs +0 -0
- package/dist/src/shapes/Group.mjs.map +0 -0
- package/dist/src/shapes/IText/DraggableTextDelegate.d.ts +0 -0
- package/dist/src/shapes/IText/DraggableTextDelegate.d.ts.map +0 -0
- package/dist/src/shapes/IText/DraggableTextDelegate.min.mjs +0 -0
- package/dist/src/shapes/IText/DraggableTextDelegate.min.mjs.map +0 -0
- package/dist/src/shapes/IText/DraggableTextDelegate.mjs +0 -0
- package/dist/src/shapes/IText/DraggableTextDelegate.mjs.map +0 -0
- package/dist/src/shapes/IText/IText.d.ts +0 -0
- package/dist/src/shapes/IText/IText.d.ts.map +0 -0
- package/dist/src/shapes/IText/IText.min.mjs +0 -0
- package/dist/src/shapes/IText/IText.min.mjs.map +1 -1
- package/dist/src/shapes/IText/IText.mjs +206 -206
- package/dist/src/shapes/IText/IText.mjs.map +1 -1
- package/dist/src/shapes/IText/ITextBehavior.d.ts +0 -0
- package/dist/src/shapes/IText/ITextBehavior.d.ts.map +0 -0
- package/dist/src/shapes/IText/ITextBehavior.min.mjs +0 -0
- package/dist/src/shapes/IText/ITextBehavior.min.mjs.map +1 -1
- package/dist/src/shapes/IText/ITextBehavior.mjs +152 -152
- package/dist/src/shapes/IText/ITextBehavior.mjs.map +1 -1
- package/dist/src/shapes/IText/ITextClickBehavior.d.ts +0 -0
- package/dist/src/shapes/IText/ITextClickBehavior.d.ts.map +0 -0
- package/dist/src/shapes/IText/ITextClickBehavior.min.mjs +0 -0
- package/dist/src/shapes/IText/ITextClickBehavior.min.mjs.map +1 -1
- package/dist/src/shapes/IText/ITextClickBehavior.mjs +36 -36
- package/dist/src/shapes/IText/ITextClickBehavior.mjs.map +1 -1
- package/dist/src/shapes/IText/ITextKeyBehavior.d.ts +0 -0
- package/dist/src/shapes/IText/ITextKeyBehavior.d.ts.map +0 -0
- package/dist/src/shapes/IText/ITextKeyBehavior.min.mjs +0 -0
- package/dist/src/shapes/IText/ITextKeyBehavior.min.mjs.map +0 -0
- package/dist/src/shapes/IText/ITextKeyBehavior.mjs +0 -0
- package/dist/src/shapes/IText/ITextKeyBehavior.mjs.map +0 -0
- package/dist/src/shapes/IText/constants.d.ts +0 -0
- package/dist/src/shapes/IText/constants.d.ts.map +0 -0
- package/dist/src/shapes/IText/constants.min.mjs +0 -0
- package/dist/src/shapes/IText/constants.min.mjs.map +0 -0
- package/dist/src/shapes/IText/constants.mjs +0 -0
- package/dist/src/shapes/IText/constants.mjs.map +0 -0
- package/dist/src/shapes/Image.d.ts +0 -0
- package/dist/src/shapes/Image.d.ts.map +0 -0
- package/dist/src/shapes/Image.min.mjs +0 -0
- package/dist/src/shapes/Image.min.mjs.map +0 -0
- package/dist/src/shapes/Image.mjs +0 -0
- package/dist/src/shapes/Image.mjs.map +0 -0
- package/dist/src/shapes/Line.d.ts +0 -0
- package/dist/src/shapes/Line.d.ts.map +0 -0
- package/dist/src/shapes/Line.min.mjs +0 -0
- package/dist/src/shapes/Line.min.mjs.map +0 -0
- package/dist/src/shapes/Line.mjs +0 -0
- package/dist/src/shapes/Line.mjs.map +0 -0
- package/dist/src/shapes/Object/FabricObject.d.ts +0 -0
- package/dist/src/shapes/Object/FabricObject.d.ts.map +0 -0
- package/dist/src/shapes/Object/FabricObject.min.mjs +0 -0
- package/dist/src/shapes/Object/FabricObject.min.mjs.map +0 -0
- package/dist/src/shapes/Object/FabricObject.mjs +0 -0
- package/dist/src/shapes/Object/FabricObject.mjs.map +0 -0
- package/dist/src/shapes/Object/FabricObjectSVGExportMixin.d.ts +0 -0
- package/dist/src/shapes/Object/FabricObjectSVGExportMixin.d.ts.map +0 -0
- package/dist/src/shapes/Object/FabricObjectSVGExportMixin.min.mjs +0 -0
- package/dist/src/shapes/Object/FabricObjectSVGExportMixin.min.mjs.map +0 -0
- package/dist/src/shapes/Object/FabricObjectSVGExportMixin.mjs +0 -0
- package/dist/src/shapes/Object/FabricObjectSVGExportMixin.mjs.map +0 -0
- package/dist/src/shapes/Object/InteractiveObject.d.ts +0 -0
- package/dist/src/shapes/Object/InteractiveObject.d.ts.map +0 -0
- package/dist/src/shapes/Object/InteractiveObject.min.mjs +0 -0
- package/dist/src/shapes/Object/InteractiveObject.min.mjs.map +0 -0
- package/dist/src/shapes/Object/InteractiveObject.mjs +0 -0
- package/dist/src/shapes/Object/InteractiveObject.mjs.map +0 -0
- package/dist/src/shapes/Object/Object.d.ts +0 -0
- package/dist/src/shapes/Object/Object.d.ts.map +0 -0
- package/dist/src/shapes/Object/Object.min.mjs +0 -0
- package/dist/src/shapes/Object/Object.min.mjs.map +0 -0
- package/dist/src/shapes/Object/Object.mjs +0 -0
- package/dist/src/shapes/Object/Object.mjs.map +0 -0
- package/dist/src/shapes/Object/ObjectGeometry.d.ts +0 -0
- package/dist/src/shapes/Object/ObjectGeometry.d.ts.map +0 -0
- package/dist/src/shapes/Object/ObjectGeometry.min.mjs +0 -0
- package/dist/src/shapes/Object/ObjectGeometry.min.mjs.map +0 -0
- package/dist/src/shapes/Object/ObjectGeometry.mjs +0 -0
- package/dist/src/shapes/Object/ObjectGeometry.mjs.map +0 -0
- package/dist/src/shapes/Object/defaultValues.d.ts +0 -0
- package/dist/src/shapes/Object/defaultValues.d.ts.map +0 -0
- package/dist/src/shapes/Object/defaultValues.min.mjs +0 -0
- package/dist/src/shapes/Object/defaultValues.min.mjs.map +0 -0
- package/dist/src/shapes/Object/defaultValues.mjs +0 -0
- package/dist/src/shapes/Object/defaultValues.mjs.map +0 -0
- package/dist/src/shapes/Object/types/BaseProps.d.ts +0 -0
- package/dist/src/shapes/Object/types/BaseProps.d.ts.map +0 -0
- package/dist/src/shapes/Object/types/BorderProps.d.ts +0 -0
- package/dist/src/shapes/Object/types/BorderProps.d.ts.map +0 -0
- package/dist/src/shapes/Object/types/ControlProps.d.ts +0 -0
- package/dist/src/shapes/Object/types/ControlProps.d.ts.map +0 -0
- package/dist/src/shapes/Object/types/FabricObjectProps.d.ts +0 -0
- package/dist/src/shapes/Object/types/FabricObjectProps.d.ts.map +0 -0
- package/dist/src/shapes/Object/types/FillStrokeProps.d.ts +0 -0
- package/dist/src/shapes/Object/types/FillStrokeProps.d.ts.map +0 -0
- package/dist/src/shapes/Object/types/LockInteractionProps.d.ts +0 -0
- package/dist/src/shapes/Object/types/LockInteractionProps.d.ts.map +0 -0
- package/dist/src/shapes/Object/types/ObjectProps.d.ts +0 -0
- package/dist/src/shapes/Object/types/ObjectProps.d.ts.map +0 -0
- package/dist/src/shapes/Object/types/ObjectTransformProps.d.ts +0 -0
- package/dist/src/shapes/Object/types/ObjectTransformProps.d.ts.map +0 -0
- package/dist/src/shapes/Object/types/SerializedObjectProps.d.ts +0 -0
- package/dist/src/shapes/Object/types/SerializedObjectProps.d.ts.map +0 -0
- package/dist/src/shapes/Object/types/index.d.ts +0 -0
- package/dist/src/shapes/Object/types/index.d.ts.map +0 -0
- package/dist/src/shapes/Path.d.ts +0 -0
- package/dist/src/shapes/Path.d.ts.map +0 -0
- package/dist/src/shapes/Path.min.mjs +0 -0
- package/dist/src/shapes/Path.min.mjs.map +0 -0
- package/dist/src/shapes/Path.mjs +0 -0
- package/dist/src/shapes/Path.mjs.map +0 -0
- package/dist/src/shapes/Polygon.d.ts +0 -0
- package/dist/src/shapes/Polygon.d.ts.map +0 -0
- package/dist/src/shapes/Polygon.min.mjs +0 -0
- package/dist/src/shapes/Polygon.min.mjs.map +0 -0
- package/dist/src/shapes/Polygon.mjs +0 -0
- package/dist/src/shapes/Polygon.mjs.map +0 -0
- package/dist/src/shapes/Polyline.d.ts +7 -0
- package/dist/src/shapes/Polyline.d.ts.map +1 -1
- package/dist/src/shapes/Polyline.min.mjs +1 -1
- package/dist/src/shapes/Polyline.min.mjs.map +1 -1
- package/dist/src/shapes/Polyline.mjs +48 -16
- package/dist/src/shapes/Polyline.mjs.map +1 -1
- package/dist/src/shapes/Rect.d.ts +0 -0
- package/dist/src/shapes/Rect.d.ts.map +0 -0
- package/dist/src/shapes/Rect.min.mjs +0 -0
- package/dist/src/shapes/Rect.min.mjs.map +0 -0
- package/dist/src/shapes/Rect.mjs +0 -0
- package/dist/src/shapes/Rect.mjs.map +0 -0
- package/dist/src/shapes/Text/StyledText.d.ts +0 -0
- package/dist/src/shapes/Text/StyledText.d.ts.map +0 -0
- package/dist/src/shapes/Text/StyledText.min.mjs +0 -0
- package/dist/src/shapes/Text/StyledText.min.mjs.map +0 -0
- package/dist/src/shapes/Text/StyledText.mjs +0 -0
- package/dist/src/shapes/Text/StyledText.mjs.map +0 -0
- package/dist/src/shapes/Text/Text.d.ts +0 -0
- package/dist/src/shapes/Text/Text.d.ts.map +0 -0
- package/dist/src/shapes/Text/Text.min.mjs +0 -0
- package/dist/src/shapes/Text/Text.min.mjs.map +1 -1
- package/dist/src/shapes/Text/Text.mjs +283 -283
- package/dist/src/shapes/Text/Text.mjs.map +1 -1
- package/dist/src/shapes/Text/TextSVGExportMixin.d.ts +0 -0
- package/dist/src/shapes/Text/TextSVGExportMixin.d.ts.map +0 -0
- package/dist/src/shapes/Text/TextSVGExportMixin.min.mjs +0 -0
- package/dist/src/shapes/Text/TextSVGExportMixin.min.mjs.map +0 -0
- package/dist/src/shapes/Text/TextSVGExportMixin.mjs +0 -0
- package/dist/src/shapes/Text/TextSVGExportMixin.mjs.map +0 -0
- package/dist/src/shapes/Text/constants.d.ts +0 -0
- package/dist/src/shapes/Text/constants.d.ts.map +0 -0
- package/dist/src/shapes/Text/constants.min.mjs +0 -0
- package/dist/src/shapes/Text/constants.min.mjs.map +1 -1
- package/dist/src/shapes/Text/constants.mjs +0 -0
- package/dist/src/shapes/Text/constants.mjs.map +1 -1
- package/dist/src/shapes/Textbox.d.ts +0 -0
- package/dist/src/shapes/Textbox.d.ts.map +0 -0
- package/dist/src/shapes/Textbox.min.mjs +0 -0
- package/dist/src/shapes/Textbox.min.mjs.map +1 -1
- package/dist/src/shapes/Textbox.mjs +147 -147
- package/dist/src/shapes/Textbox.mjs.map +1 -1
- package/dist/src/shapes/Triangle.d.ts +27 -2
- package/dist/src/shapes/Triangle.d.ts.map +1 -1
- package/dist/src/shapes/Triangle.min.mjs +1 -1
- package/dist/src/shapes/Triangle.min.mjs.map +1 -1
- package/dist/src/shapes/Triangle.mjs +72 -12
- package/dist/src/shapes/Triangle.mjs.map +1 -1
- package/dist/src/text/browserLines.d.ts +0 -0
- package/dist/src/text/browserLines.d.ts.map +0 -0
- package/dist/src/text/browserLines.min.mjs +0 -0
- package/dist/src/text/browserLines.min.mjs.map +1 -1
- package/dist/src/text/browserLines.mjs +20 -20
- package/dist/src/text/browserLines.mjs.map +1 -1
- package/dist/src/text/ellipsis.d.ts +0 -0
- package/dist/src/text/ellipsis.d.ts.map +0 -0
- package/dist/src/text/ellipsis.min.mjs +0 -0
- package/dist/src/text/ellipsis.min.mjs.map +1 -1
- package/dist/src/text/ellipsis.mjs +11 -11
- package/dist/src/text/ellipsis.mjs.map +1 -1
- package/dist/src/text/hitTest.d.ts +0 -0
- package/dist/src/text/hitTest.d.ts.map +0 -0
- package/dist/src/text/hitTest.min.mjs +0 -0
- package/dist/src/text/hitTest.min.mjs.map +1 -1
- package/dist/src/text/hitTest.mjs +19 -19
- package/dist/src/text/hitTest.mjs.map +1 -1
- package/dist/src/text/layout.d.ts +0 -0
- package/dist/src/text/layout.d.ts.map +0 -0
- package/dist/src/text/layout.min.mjs +0 -0
- package/dist/src/text/layout.min.mjs.map +1 -1
- package/dist/src/text/layout.mjs +33 -33
- package/dist/src/text/layout.mjs.map +1 -1
- package/dist/src/text/measure.d.ts +0 -0
- package/dist/src/text/measure.d.ts.map +0 -0
- package/dist/src/text/measure.min.mjs +0 -0
- package/dist/src/text/measure.min.mjs.map +1 -1
- package/dist/src/text/measure.mjs +20 -20
- package/dist/src/text/measure.mjs.map +1 -1
- package/dist/src/text/overlayEditor.d.ts +0 -0
- package/dist/src/text/overlayEditor.d.ts.map +0 -0
- package/dist/src/text/overlayEditor.min.mjs +0 -0
- package/dist/src/text/overlayEditor.min.mjs.map +1 -1
- package/dist/src/text/overlayEditor.mjs +33 -33
- package/dist/src/text/overlayEditor.mjs.map +1 -1
- package/dist/src/text/unicode.d.ts +0 -0
- package/dist/src/text/unicode.d.ts.map +0 -0
- package/dist/src/text/unicode.min.mjs +0 -0
- package/dist/src/text/unicode.min.mjs.map +1 -1
- package/dist/src/text/unicode.mjs +8 -8
- package/dist/src/text/unicode.mjs.map +1 -1
- package/dist/src/typedefs.d.ts +0 -0
- package/dist/src/typedefs.d.ts.map +0 -0
- package/dist/src/util/animation/AnimationBase.d.ts +0 -0
- package/dist/src/util/animation/AnimationBase.d.ts.map +0 -0
- package/dist/src/util/animation/AnimationBase.min.mjs +0 -0
- package/dist/src/util/animation/AnimationBase.min.mjs.map +0 -0
- package/dist/src/util/animation/AnimationBase.mjs +0 -0
- package/dist/src/util/animation/AnimationBase.mjs.map +0 -0
- package/dist/src/util/animation/AnimationFrameProvider.d.ts +0 -0
- package/dist/src/util/animation/AnimationFrameProvider.d.ts.map +0 -0
- package/dist/src/util/animation/AnimationFrameProvider.min.mjs +0 -0
- package/dist/src/util/animation/AnimationFrameProvider.min.mjs.map +0 -0
- package/dist/src/util/animation/AnimationFrameProvider.mjs +0 -0
- package/dist/src/util/animation/AnimationFrameProvider.mjs.map +0 -0
- package/dist/src/util/animation/AnimationRegistry.d.ts +0 -0
- package/dist/src/util/animation/AnimationRegistry.d.ts.map +0 -0
- package/dist/src/util/animation/AnimationRegistry.min.mjs +0 -0
- package/dist/src/util/animation/AnimationRegistry.min.mjs.map +0 -0
- package/dist/src/util/animation/AnimationRegistry.mjs +0 -0
- package/dist/src/util/animation/AnimationRegistry.mjs.map +0 -0
- package/dist/src/util/animation/ArrayAnimation.d.ts +0 -0
- package/dist/src/util/animation/ArrayAnimation.d.ts.map +0 -0
- package/dist/src/util/animation/ArrayAnimation.min.mjs +0 -0
- package/dist/src/util/animation/ArrayAnimation.min.mjs.map +0 -0
- package/dist/src/util/animation/ArrayAnimation.mjs +0 -0
- package/dist/src/util/animation/ArrayAnimation.mjs.map +0 -0
- package/dist/src/util/animation/ColorAnimation.d.ts +0 -0
- package/dist/src/util/animation/ColorAnimation.d.ts.map +0 -0
- package/dist/src/util/animation/ColorAnimation.min.mjs +0 -0
- package/dist/src/util/animation/ColorAnimation.min.mjs.map +0 -0
- package/dist/src/util/animation/ColorAnimation.mjs +0 -0
- package/dist/src/util/animation/ColorAnimation.mjs.map +0 -0
- package/dist/src/util/animation/ValueAnimation.d.ts +0 -0
- package/dist/src/util/animation/ValueAnimation.d.ts.map +0 -0
- package/dist/src/util/animation/ValueAnimation.min.mjs +0 -0
- package/dist/src/util/animation/ValueAnimation.min.mjs.map +0 -0
- package/dist/src/util/animation/ValueAnimation.mjs +0 -0
- package/dist/src/util/animation/ValueAnimation.mjs.map +0 -0
- package/dist/src/util/animation/animate.d.ts +0 -0
- package/dist/src/util/animation/animate.d.ts.map +0 -0
- package/dist/src/util/animation/animate.min.mjs +0 -0
- package/dist/src/util/animation/animate.min.mjs.map +0 -0
- package/dist/src/util/animation/animate.mjs +0 -0
- package/dist/src/util/animation/animate.mjs.map +0 -0
- package/dist/src/util/animation/easing.d.ts +0 -0
- package/dist/src/util/animation/easing.d.ts.map +0 -0
- package/dist/src/util/animation/easing.min.mjs +0 -0
- package/dist/src/util/animation/easing.min.mjs.map +0 -0
- package/dist/src/util/animation/easing.mjs +0 -0
- package/dist/src/util/animation/easing.mjs.map +0 -0
- package/dist/src/util/animation/index.d.ts +0 -0
- package/dist/src/util/animation/index.d.ts.map +0 -0
- package/dist/src/util/animation/types.d.ts +0 -0
- package/dist/src/util/animation/types.d.ts.map +0 -0
- package/dist/src/util/applyMixins.d.ts +0 -0
- package/dist/src/util/applyMixins.d.ts.map +0 -0
- package/dist/src/util/applyMixins.min.mjs +0 -0
- package/dist/src/util/applyMixins.min.mjs.map +0 -0
- package/dist/src/util/applyMixins.mjs +0 -0
- package/dist/src/util/applyMixins.mjs.map +0 -0
- package/dist/src/util/dom_event.d.ts +0 -0
- package/dist/src/util/dom_event.d.ts.map +0 -0
- package/dist/src/util/dom_event.min.mjs +0 -0
- package/dist/src/util/dom_event.min.mjs.map +0 -0
- package/dist/src/util/dom_event.mjs +0 -0
- package/dist/src/util/dom_event.mjs.map +0 -0
- package/dist/src/util/dom_misc.d.ts +0 -0
- package/dist/src/util/dom_misc.d.ts.map +0 -0
- package/dist/src/util/dom_misc.min.mjs +0 -0
- package/dist/src/util/dom_misc.min.mjs.map +0 -0
- package/dist/src/util/dom_misc.mjs +0 -0
- package/dist/src/util/dom_misc.mjs.map +0 -0
- package/dist/src/util/index.d.ts +0 -0
- package/dist/src/util/index.d.ts.map +0 -0
- package/dist/src/util/index.min.mjs +0 -0
- package/dist/src/util/index.min.mjs.map +0 -0
- package/dist/src/util/index.mjs +0 -0
- package/dist/src/util/index.mjs.map +0 -0
- package/dist/src/util/internals/applyCanvasTransform.d.ts +0 -0
- package/dist/src/util/internals/applyCanvasTransform.d.ts.map +0 -0
- package/dist/src/util/internals/applyCanvasTransform.min.mjs +0 -0
- package/dist/src/util/internals/applyCanvasTransform.min.mjs.map +0 -0
- package/dist/src/util/internals/applyCanvasTransform.mjs +0 -0
- package/dist/src/util/internals/applyCanvasTransform.mjs.map +0 -0
- package/dist/src/util/internals/cleanupSvgAttribute.d.ts +0 -0
- package/dist/src/util/internals/cleanupSvgAttribute.d.ts.map +0 -0
- package/dist/src/util/internals/cleanupSvgAttribute.min.mjs +0 -0
- package/dist/src/util/internals/cleanupSvgAttribute.min.mjs.map +0 -0
- package/dist/src/util/internals/cleanupSvgAttribute.mjs +0 -0
- package/dist/src/util/internals/cleanupSvgAttribute.mjs.map +0 -0
- package/dist/src/util/internals/cloneStyles.d.ts +0 -0
- package/dist/src/util/internals/cloneStyles.d.ts.map +0 -0
- package/dist/src/util/internals/cloneStyles.min.mjs +0 -0
- package/dist/src/util/internals/cloneStyles.min.mjs.map +0 -0
- package/dist/src/util/internals/cloneStyles.mjs +0 -0
- package/dist/src/util/internals/cloneStyles.mjs.map +0 -0
- package/dist/src/util/internals/console.d.ts +0 -0
- package/dist/src/util/internals/console.d.ts.map +0 -0
- package/dist/src/util/internals/console.min.mjs +0 -0
- package/dist/src/util/internals/console.min.mjs.map +0 -0
- package/dist/src/util/internals/console.mjs +0 -0
- package/dist/src/util/internals/console.mjs.map +0 -0
- package/dist/src/util/internals/dom_style.d.ts +0 -0
- package/dist/src/util/internals/dom_style.d.ts.map +0 -0
- package/dist/src/util/internals/dom_style.min.mjs +0 -0
- package/dist/src/util/internals/dom_style.min.mjs.map +0 -0
- package/dist/src/util/internals/dom_style.mjs +0 -0
- package/dist/src/util/internals/dom_style.mjs.map +0 -0
- package/dist/src/util/internals/findRight.d.ts +0 -0
- package/dist/src/util/internals/findRight.d.ts.map +0 -0
- package/dist/src/util/internals/findRight.min.mjs +0 -0
- package/dist/src/util/internals/findRight.min.mjs.map +0 -0
- package/dist/src/util/internals/findRight.mjs +0 -0
- package/dist/src/util/internals/findRight.mjs.map +0 -0
- package/dist/src/util/internals/getRandomInt.d.ts +0 -0
- package/dist/src/util/internals/getRandomInt.d.ts.map +0 -0
- package/dist/src/util/internals/getRandomInt.min.mjs +0 -0
- package/dist/src/util/internals/getRandomInt.min.mjs.map +0 -0
- package/dist/src/util/internals/getRandomInt.mjs +0 -0
- package/dist/src/util/internals/getRandomInt.mjs.map +0 -0
- package/dist/src/util/internals/ifNaN.d.ts +0 -0
- package/dist/src/util/internals/ifNaN.d.ts.map +0 -0
- package/dist/src/util/internals/ifNaN.min.mjs +0 -0
- package/dist/src/util/internals/ifNaN.min.mjs.map +0 -0
- package/dist/src/util/internals/ifNaN.mjs +0 -0
- package/dist/src/util/internals/ifNaN.mjs.map +0 -0
- package/dist/src/util/internals/removeFromArray.d.ts +0 -0
- package/dist/src/util/internals/removeFromArray.d.ts.map +0 -0
- package/dist/src/util/internals/removeFromArray.min.mjs +0 -0
- package/dist/src/util/internals/removeFromArray.min.mjs.map +0 -0
- package/dist/src/util/internals/removeFromArray.mjs +0 -0
- package/dist/src/util/internals/removeFromArray.mjs.map +0 -0
- package/dist/src/util/internals/uid.d.ts +0 -0
- package/dist/src/util/internals/uid.d.ts.map +0 -0
- package/dist/src/util/internals/uid.min.mjs +0 -0
- package/dist/src/util/internals/uid.min.mjs.map +0 -0
- package/dist/src/util/internals/uid.mjs +0 -0
- package/dist/src/util/internals/uid.mjs.map +0 -0
- package/dist/src/util/lang_string.d.ts +0 -0
- package/dist/src/util/lang_string.d.ts.map +0 -0
- package/dist/src/util/lang_string.min.mjs +0 -0
- package/dist/src/util/lang_string.min.mjs.map +0 -0
- package/dist/src/util/lang_string.mjs +0 -0
- package/dist/src/util/lang_string.mjs.map +0 -0
- package/dist/src/util/misc/boundingBoxFromPoints.d.ts +0 -0
- package/dist/src/util/misc/boundingBoxFromPoints.d.ts.map +0 -0
- package/dist/src/util/misc/boundingBoxFromPoints.min.mjs +0 -0
- package/dist/src/util/misc/boundingBoxFromPoints.min.mjs.map +0 -0
- package/dist/src/util/misc/boundingBoxFromPoints.mjs +0 -0
- package/dist/src/util/misc/boundingBoxFromPoints.mjs.map +0 -0
- package/dist/src/util/misc/capValue.d.ts +0 -0
- package/dist/src/util/misc/capValue.d.ts.map +0 -0
- package/dist/src/util/misc/capValue.min.mjs +0 -0
- package/dist/src/util/misc/capValue.min.mjs.map +0 -0
- package/dist/src/util/misc/capValue.mjs +0 -0
- package/dist/src/util/misc/capValue.mjs.map +0 -0
- package/dist/src/util/misc/cornerRadius.d.ts +70 -0
- package/dist/src/util/misc/cornerRadius.d.ts.map +1 -0
- package/dist/src/util/misc/cornerRadius.min.mjs +2 -0
- package/dist/src/util/misc/cornerRadius.min.mjs.map +1 -0
- package/dist/src/util/misc/cornerRadius.mjs +181 -0
- package/dist/src/util/misc/cornerRadius.mjs.map +1 -0
- package/dist/src/util/misc/cos.d.ts +0 -0
- package/dist/src/util/misc/cos.d.ts.map +0 -0
- package/dist/src/util/misc/cos.min.mjs +0 -0
- package/dist/src/util/misc/cos.min.mjs.map +0 -0
- package/dist/src/util/misc/cos.mjs +0 -0
- package/dist/src/util/misc/cos.mjs.map +0 -0
- package/dist/src/util/misc/dom.d.ts +0 -0
- package/dist/src/util/misc/dom.d.ts.map +0 -0
- package/dist/src/util/misc/dom.min.mjs +0 -0
- package/dist/src/util/misc/dom.min.mjs.map +0 -0
- package/dist/src/util/misc/dom.mjs +0 -0
- package/dist/src/util/misc/dom.mjs.map +0 -0
- package/dist/src/util/misc/findScaleTo.d.ts +0 -0
- package/dist/src/util/misc/findScaleTo.d.ts.map +0 -0
- package/dist/src/util/misc/findScaleTo.min.mjs +0 -0
- package/dist/src/util/misc/findScaleTo.min.mjs.map +0 -0
- package/dist/src/util/misc/findScaleTo.mjs +0 -0
- package/dist/src/util/misc/findScaleTo.mjs.map +0 -0
- package/dist/src/util/misc/groupSVGElements.d.ts +0 -0
- package/dist/src/util/misc/groupSVGElements.d.ts.map +0 -0
- package/dist/src/util/misc/groupSVGElements.min.mjs +0 -0
- package/dist/src/util/misc/groupSVGElements.min.mjs.map +0 -0
- package/dist/src/util/misc/groupSVGElements.mjs +0 -0
- package/dist/src/util/misc/groupSVGElements.mjs.map +0 -0
- package/dist/src/util/misc/isTransparent.d.ts +0 -0
- package/dist/src/util/misc/isTransparent.d.ts.map +0 -0
- package/dist/src/util/misc/isTransparent.min.mjs +0 -0
- package/dist/src/util/misc/isTransparent.min.mjs.map +0 -0
- package/dist/src/util/misc/isTransparent.mjs +0 -0
- package/dist/src/util/misc/isTransparent.mjs.map +0 -0
- package/dist/src/util/misc/matrix.d.ts +0 -0
- package/dist/src/util/misc/matrix.d.ts.map +0 -0
- package/dist/src/util/misc/matrix.min.mjs +0 -0
- package/dist/src/util/misc/matrix.min.mjs.map +0 -0
- package/dist/src/util/misc/matrix.mjs +0 -0
- package/dist/src/util/misc/matrix.mjs.map +0 -0
- package/dist/src/util/misc/mergeClipPaths.d.ts +0 -0
- package/dist/src/util/misc/mergeClipPaths.d.ts.map +0 -0
- package/dist/src/util/misc/mergeClipPaths.min.mjs +0 -0
- package/dist/src/util/misc/mergeClipPaths.min.mjs.map +0 -0
- package/dist/src/util/misc/mergeClipPaths.mjs +0 -0
- package/dist/src/util/misc/mergeClipPaths.mjs.map +0 -0
- package/dist/src/util/misc/objectEnlive.d.ts +0 -0
- package/dist/src/util/misc/objectEnlive.d.ts.map +0 -0
- package/dist/src/util/misc/objectEnlive.min.mjs +0 -0
- package/dist/src/util/misc/objectEnlive.min.mjs.map +0 -0
- package/dist/src/util/misc/objectEnlive.mjs +0 -0
- package/dist/src/util/misc/objectEnlive.mjs.map +0 -0
- package/dist/src/util/misc/objectTransforms.d.ts +0 -0
- package/dist/src/util/misc/objectTransforms.d.ts.map +0 -0
- package/dist/src/util/misc/objectTransforms.min.mjs +0 -0
- package/dist/src/util/misc/objectTransforms.min.mjs.map +0 -0
- package/dist/src/util/misc/objectTransforms.mjs +0 -0
- package/dist/src/util/misc/objectTransforms.mjs.map +0 -0
- package/dist/src/util/misc/pick.d.ts +0 -0
- package/dist/src/util/misc/pick.d.ts.map +0 -0
- package/dist/src/util/misc/pick.min.mjs +0 -0
- package/dist/src/util/misc/pick.min.mjs.map +0 -0
- package/dist/src/util/misc/pick.mjs +0 -0
- package/dist/src/util/misc/pick.mjs.map +0 -0
- package/dist/src/util/misc/planeChange.d.ts +0 -0
- package/dist/src/util/misc/planeChange.d.ts.map +0 -0
- package/dist/src/util/misc/planeChange.min.mjs +0 -0
- package/dist/src/util/misc/planeChange.min.mjs.map +0 -0
- package/dist/src/util/misc/planeChange.mjs +0 -0
- package/dist/src/util/misc/planeChange.mjs.map +0 -0
- package/dist/src/util/misc/projectStroke/StrokeLineCapProjections.d.ts +0 -0
- package/dist/src/util/misc/projectStroke/StrokeLineCapProjections.d.ts.map +0 -0
- package/dist/src/util/misc/projectStroke/StrokeLineCapProjections.min.mjs +0 -0
- package/dist/src/util/misc/projectStroke/StrokeLineCapProjections.min.mjs.map +0 -0
- package/dist/src/util/misc/projectStroke/StrokeLineCapProjections.mjs +0 -0
- package/dist/src/util/misc/projectStroke/StrokeLineCapProjections.mjs.map +0 -0
- package/dist/src/util/misc/projectStroke/StrokeLineJoinProjections.d.ts +0 -0
- package/dist/src/util/misc/projectStroke/StrokeLineJoinProjections.d.ts.map +0 -0
- package/dist/src/util/misc/projectStroke/StrokeLineJoinProjections.min.mjs +0 -0
- package/dist/src/util/misc/projectStroke/StrokeLineJoinProjections.min.mjs.map +0 -0
- package/dist/src/util/misc/projectStroke/StrokeLineJoinProjections.mjs +0 -0
- package/dist/src/util/misc/projectStroke/StrokeLineJoinProjections.mjs.map +0 -0
- package/dist/src/util/misc/projectStroke/StrokeProjectionsBase.d.ts +0 -0
- package/dist/src/util/misc/projectStroke/StrokeProjectionsBase.d.ts.map +0 -0
- package/dist/src/util/misc/projectStroke/StrokeProjectionsBase.min.mjs +0 -0
- package/dist/src/util/misc/projectStroke/StrokeProjectionsBase.min.mjs.map +0 -0
- package/dist/src/util/misc/projectStroke/StrokeProjectionsBase.mjs +0 -0
- package/dist/src/util/misc/projectStroke/StrokeProjectionsBase.mjs.map +0 -0
- package/dist/src/util/misc/projectStroke/index.d.ts +0 -0
- package/dist/src/util/misc/projectStroke/index.d.ts.map +0 -0
- package/dist/src/util/misc/projectStroke/index.min.mjs +0 -0
- package/dist/src/util/misc/projectStroke/index.min.mjs.map +0 -0
- package/dist/src/util/misc/projectStroke/index.mjs +0 -0
- package/dist/src/util/misc/projectStroke/index.mjs.map +0 -0
- package/dist/src/util/misc/projectStroke/types.d.ts +0 -0
- package/dist/src/util/misc/projectStroke/types.d.ts.map +0 -0
- package/dist/src/util/misc/radiansDegreesConversion.d.ts +0 -0
- package/dist/src/util/misc/radiansDegreesConversion.d.ts.map +0 -0
- package/dist/src/util/misc/radiansDegreesConversion.min.mjs +0 -0
- package/dist/src/util/misc/radiansDegreesConversion.min.mjs.map +0 -0
- package/dist/src/util/misc/radiansDegreesConversion.mjs +0 -0
- package/dist/src/util/misc/radiansDegreesConversion.mjs.map +0 -0
- package/dist/src/util/misc/resolveOrigin.d.ts +0 -0
- package/dist/src/util/misc/resolveOrigin.d.ts.map +0 -0
- package/dist/src/util/misc/resolveOrigin.min.mjs +0 -0
- package/dist/src/util/misc/resolveOrigin.min.mjs.map +0 -0
- package/dist/src/util/misc/resolveOrigin.mjs +0 -0
- package/dist/src/util/misc/resolveOrigin.mjs.map +0 -0
- package/dist/src/util/misc/sin.d.ts +0 -0
- package/dist/src/util/misc/sin.d.ts.map +0 -0
- package/dist/src/util/misc/sin.min.mjs +0 -0
- package/dist/src/util/misc/sin.min.mjs.map +0 -0
- package/dist/src/util/misc/sin.mjs +0 -0
- package/dist/src/util/misc/sin.mjs.map +0 -0
- package/dist/src/util/misc/svgExport.d.ts +0 -0
- package/dist/src/util/misc/svgExport.d.ts.map +0 -0
- package/dist/src/util/misc/svgExport.min.mjs +0 -0
- package/dist/src/util/misc/svgExport.min.mjs.map +0 -0
- package/dist/src/util/misc/svgExport.mjs +0 -0
- package/dist/src/util/misc/svgExport.mjs.map +0 -0
- package/dist/src/util/misc/svgParsing.d.ts +0 -0
- package/dist/src/util/misc/svgParsing.d.ts.map +0 -0
- package/dist/src/util/misc/svgParsing.min.mjs +0 -0
- package/dist/src/util/misc/svgParsing.min.mjs.map +0 -0
- package/dist/src/util/misc/svgParsing.mjs +0 -0
- package/dist/src/util/misc/svgParsing.mjs.map +0 -0
- package/dist/src/util/misc/textStyles.d.ts +0 -0
- package/dist/src/util/misc/textStyles.d.ts.map +0 -0
- package/dist/src/util/misc/textStyles.min.mjs +0 -0
- package/dist/src/util/misc/textStyles.min.mjs.map +0 -0
- package/dist/src/util/misc/textStyles.mjs +0 -0
- package/dist/src/util/misc/textStyles.mjs.map +0 -0
- package/dist/src/util/misc/toFixed.d.ts +0 -0
- package/dist/src/util/misc/toFixed.d.ts.map +0 -0
- package/dist/src/util/misc/toFixed.min.mjs +0 -0
- package/dist/src/util/misc/toFixed.min.mjs.map +0 -0
- package/dist/src/util/misc/toFixed.mjs +0 -0
- package/dist/src/util/misc/toFixed.mjs.map +0 -0
- package/dist/src/util/misc/vectors.d.ts +0 -0
- package/dist/src/util/misc/vectors.d.ts.map +0 -0
- package/dist/src/util/misc/vectors.min.mjs +0 -0
- package/dist/src/util/misc/vectors.min.mjs.map +0 -0
- package/dist/src/util/misc/vectors.mjs +0 -0
- package/dist/src/util/misc/vectors.mjs.map +0 -0
- package/dist/src/util/path/index.d.ts +0 -0
- package/dist/src/util/path/index.d.ts.map +0 -0
- package/dist/src/util/path/index.min.mjs +0 -0
- package/dist/src/util/path/index.min.mjs.map +0 -0
- package/dist/src/util/path/index.mjs +0 -0
- package/dist/src/util/path/index.mjs.map +0 -0
- package/dist/src/util/path/regex.d.ts +0 -0
- package/dist/src/util/path/regex.d.ts.map +0 -0
- package/dist/src/util/path/regex.min.mjs +0 -0
- package/dist/src/util/path/regex.min.mjs.map +0 -0
- package/dist/src/util/path/regex.mjs +0 -0
- package/dist/src/util/path/regex.mjs.map +0 -0
- package/dist/src/util/path/typechecks.d.ts +0 -0
- package/dist/src/util/path/typechecks.d.ts.map +0 -0
- package/dist/src/util/path/typedefs.d.ts +0 -0
- package/dist/src/util/path/typedefs.d.ts.map +0 -0
- package/dist/src/util/transform_matrix_removal.d.ts +0 -0
- package/dist/src/util/transform_matrix_removal.d.ts.map +0 -0
- package/dist/src/util/transform_matrix_removal.min.mjs +0 -0
- package/dist/src/util/transform_matrix_removal.min.mjs.map +0 -0
- package/dist/src/util/transform_matrix_removal.mjs +0 -0
- package/dist/src/util/transform_matrix_removal.mjs.map +0 -0
- package/dist/src/util/typeAssertions.d.ts +0 -0
- package/dist/src/util/typeAssertions.d.ts.map +0 -0
- package/dist/src/util/typeAssertions.min.mjs +0 -0
- package/dist/src/util/typeAssertions.min.mjs.map +0 -0
- package/dist/src/util/typeAssertions.mjs +0 -0
- package/dist/src/util/typeAssertions.mjs.map +0 -0
- package/dist-extensions/aligning_guidelines/constant.mjs +0 -0
- package/dist-extensions/aligning_guidelines/constant.mjs.map +0 -0
- package/dist-extensions/aligning_guidelines/index.mjs +0 -0
- package/dist-extensions/aligning_guidelines/index.mjs.map +0 -0
- package/dist-extensions/aligning_guidelines/util/basic.mjs +0 -0
- package/dist-extensions/aligning_guidelines/util/basic.mjs.map +0 -0
- package/dist-extensions/aligning_guidelines/util/collect-line.mjs +0 -0
- package/dist-extensions/aligning_guidelines/util/collect-line.mjs.map +0 -0
- package/dist-extensions/aligning_guidelines/util/collect-point.mjs +0 -0
- package/dist-extensions/aligning_guidelines/util/collect-point.mjs.map +0 -0
- package/dist-extensions/aligning_guidelines/util/draw.mjs +0 -0
- package/dist-extensions/aligning_guidelines/util/draw.mjs.map +0 -0
- package/dist-extensions/aligning_guidelines/util/get-objects-by-target.mjs +0 -0
- package/dist-extensions/aligning_guidelines/util/get-objects-by-target.mjs.map +0 -0
- package/dist-extensions/data_updaters/gradient/index.mjs +0 -0
- package/dist-extensions/data_updaters/gradient/index.mjs.map +0 -0
- package/dist-extensions/data_updaters/origins/index.mjs +0 -0
- package/dist-extensions/data_updaters/origins/index.mjs.map +0 -0
- package/dist-extensions/extensions/aligning_guidelines/constant.d.ts +0 -0
- package/dist-extensions/extensions/aligning_guidelines/constant.d.ts.map +0 -0
- package/dist-extensions/extensions/aligning_guidelines/index.d.ts +0 -0
- package/dist-extensions/extensions/aligning_guidelines/index.d.ts.map +0 -0
- package/dist-extensions/extensions/aligning_guidelines/typedefs.d.ts +0 -0
- package/dist-extensions/extensions/aligning_guidelines/typedefs.d.ts.map +0 -0
- package/dist-extensions/extensions/aligning_guidelines/util/basic.d.ts +0 -0
- package/dist-extensions/extensions/aligning_guidelines/util/basic.d.ts.map +0 -0
- package/dist-extensions/extensions/aligning_guidelines/util/collect-line.d.ts +0 -0
- package/dist-extensions/extensions/aligning_guidelines/util/collect-line.d.ts.map +0 -0
- package/dist-extensions/extensions/aligning_guidelines/util/collect-point.d.ts +0 -0
- package/dist-extensions/extensions/aligning_guidelines/util/collect-point.d.ts.map +0 -0
- package/dist-extensions/extensions/aligning_guidelines/util/draw.d.ts +0 -0
- package/dist-extensions/extensions/aligning_guidelines/util/draw.d.ts.map +0 -0
- package/dist-extensions/extensions/aligning_guidelines/util/get-objects-by-target.d.ts +0 -0
- package/dist-extensions/extensions/aligning_guidelines/util/get-objects-by-target.d.ts.map +0 -0
- package/dist-extensions/extensions/data_updaters/gradient/index.d.ts +0 -0
- package/dist-extensions/extensions/data_updaters/gradient/index.d.ts.map +0 -0
- package/dist-extensions/extensions/data_updaters/origins/index.d.ts +0 -0
- package/dist-extensions/extensions/data_updaters/origins/index.d.ts.map +0 -0
- package/dist-extensions/extensions/index.d.ts +0 -0
- package/dist-extensions/extensions/index.d.ts.map +0 -0
- package/dist-extensions/fabric-extensions.min.js +0 -0
- package/dist-extensions/fabric-extensions.min.js.map +0 -0
- package/dist-extensions/fabric.d.ts +0 -0
- package/dist-extensions/fabric.d.ts.map +0 -0
- package/dist-extensions/index.d.ts +0 -0
- package/dist-extensions/index.d.ts.map +0 -0
- package/dist-extensions/index.mjs +0 -0
- package/dist-extensions/index.mjs.map +0 -0
- package/dist-extensions/src/ClassRegistry.d.ts +0 -0
- package/dist-extensions/src/ClassRegistry.d.ts.map +0 -0
- package/dist-extensions/src/Collection.d.ts +0 -0
- package/dist-extensions/src/Collection.d.ts.map +0 -0
- package/dist-extensions/src/CommonMethods.d.ts +0 -0
- package/dist-extensions/src/CommonMethods.d.ts.map +0 -0
- package/dist-extensions/src/EventTypeDefs.d.ts +0 -0
- package/dist-extensions/src/EventTypeDefs.d.ts.map +0 -0
- package/dist-extensions/src/Intersection.d.ts +0 -0
- package/dist-extensions/src/Intersection.d.ts.map +0 -0
- package/dist-extensions/src/LayoutManager/ActiveSelectionLayoutManager.d.ts +0 -0
- package/dist-extensions/src/LayoutManager/ActiveSelectionLayoutManager.d.ts.map +0 -0
- package/dist-extensions/src/LayoutManager/LayoutManager.d.ts +0 -0
- package/dist-extensions/src/LayoutManager/LayoutManager.d.ts.map +0 -0
- package/dist-extensions/src/LayoutManager/LayoutStrategies/ClipPathLayout.d.ts +0 -0
- package/dist-extensions/src/LayoutManager/LayoutStrategies/ClipPathLayout.d.ts.map +0 -0
- package/dist-extensions/src/LayoutManager/LayoutStrategies/FitContentLayout.d.ts +0 -0
- package/dist-extensions/src/LayoutManager/LayoutStrategies/FitContentLayout.d.ts.map +0 -0
- package/dist-extensions/src/LayoutManager/LayoutStrategies/FixedLayout.d.ts +0 -0
- package/dist-extensions/src/LayoutManager/LayoutStrategies/FixedLayout.d.ts.map +0 -0
- package/dist-extensions/src/LayoutManager/LayoutStrategies/LayoutStrategy.d.ts +0 -0
- package/dist-extensions/src/LayoutManager/LayoutStrategies/LayoutStrategy.d.ts.map +0 -0
- package/dist-extensions/src/LayoutManager/LayoutStrategies/utils.d.ts +0 -0
- package/dist-extensions/src/LayoutManager/LayoutStrategies/utils.d.ts.map +0 -0
- package/dist-extensions/src/LayoutManager/constants.d.ts +0 -0
- package/dist-extensions/src/LayoutManager/constants.d.ts.map +0 -0
- package/dist-extensions/src/LayoutManager/index.d.ts +0 -0
- package/dist-extensions/src/LayoutManager/index.d.ts.map +0 -0
- package/dist-extensions/src/LayoutManager/types.d.ts +0 -0
- package/dist-extensions/src/LayoutManager/types.d.ts.map +0 -0
- package/dist-extensions/src/Observable.d.ts +0 -0
- package/dist-extensions/src/Observable.d.ts.map +0 -0
- package/dist-extensions/src/Pattern/Pattern.d.ts +0 -0
- package/dist-extensions/src/Pattern/Pattern.d.ts.map +0 -0
- package/dist-extensions/src/Pattern/index.d.ts +0 -0
- package/dist-extensions/src/Pattern/index.d.ts.map +0 -0
- package/dist-extensions/src/Pattern/types.d.ts +0 -0
- package/dist-extensions/src/Pattern/types.d.ts.map +0 -0
- package/dist-extensions/src/Point.d.ts +0 -0
- package/dist-extensions/src/Point.d.ts.map +0 -0
- package/dist-extensions/src/Shadow.d.ts +0 -0
- package/dist-extensions/src/Shadow.d.ts.map +0 -0
- package/dist-extensions/src/brushes/BaseBrush.d.ts +0 -0
- package/dist-extensions/src/brushes/BaseBrush.d.ts.map +0 -0
- package/dist-extensions/src/brushes/CircleBrush.d.ts +0 -0
- package/dist-extensions/src/brushes/CircleBrush.d.ts.map +0 -0
- package/dist-extensions/src/brushes/PatternBrush.d.ts +0 -0
- package/dist-extensions/src/brushes/PatternBrush.d.ts.map +0 -0
- package/dist-extensions/src/brushes/PencilBrush.d.ts +0 -0
- package/dist-extensions/src/brushes/PencilBrush.d.ts.map +0 -0
- package/dist-extensions/src/brushes/SprayBrush.d.ts +0 -0
- package/dist-extensions/src/brushes/SprayBrush.d.ts.map +0 -0
- package/dist-extensions/src/brushes/typedefs.d.ts +0 -0
- package/dist-extensions/src/brushes/typedefs.d.ts.map +0 -0
- package/dist-extensions/src/cache.d.ts +0 -0
- package/dist-extensions/src/cache.d.ts.map +0 -0
- package/dist-extensions/src/canvas/Canvas.d.ts +0 -0
- package/dist-extensions/src/canvas/Canvas.d.ts.map +0 -0
- package/dist-extensions/src/canvas/CanvasOptions.d.ts +0 -0
- package/dist-extensions/src/canvas/CanvasOptions.d.ts.map +0 -0
- package/dist-extensions/src/canvas/DOMManagers/CanvasDOMManager.d.ts +0 -0
- package/dist-extensions/src/canvas/DOMManagers/CanvasDOMManager.d.ts.map +0 -0
- package/dist-extensions/src/canvas/DOMManagers/StaticCanvasDOMManager.d.ts +0 -0
- package/dist-extensions/src/canvas/DOMManagers/StaticCanvasDOMManager.d.ts.map +0 -0
- package/dist-extensions/src/canvas/DOMManagers/util.d.ts +0 -0
- package/dist-extensions/src/canvas/DOMManagers/util.d.ts.map +0 -0
- package/dist-extensions/src/canvas/SelectableCanvas.d.ts +0 -0
- package/dist-extensions/src/canvas/SelectableCanvas.d.ts.map +0 -0
- package/dist-extensions/src/canvas/StaticCanvas.d.ts +0 -0
- package/dist-extensions/src/canvas/StaticCanvas.d.ts.map +0 -0
- package/dist-extensions/src/canvas/StaticCanvasOptions.d.ts +0 -0
- package/dist-extensions/src/canvas/StaticCanvasOptions.d.ts.map +0 -0
- package/dist-extensions/src/canvas/TextEditingManager.d.ts +0 -0
- package/dist-extensions/src/canvas/TextEditingManager.d.ts.map +0 -0
- package/dist-extensions/src/color/Color.d.ts +0 -0
- package/dist-extensions/src/color/Color.d.ts.map +0 -0
- package/dist-extensions/src/color/color_map.d.ts +0 -0
- package/dist-extensions/src/color/color_map.d.ts.map +0 -0
- package/dist-extensions/src/color/constants.d.ts +0 -0
- package/dist-extensions/src/color/constants.d.ts.map +0 -0
- package/dist-extensions/src/color/typedefs.d.ts +0 -0
- package/dist-extensions/src/color/typedefs.d.ts.map +0 -0
- package/dist-extensions/src/color/util.d.ts +0 -0
- package/dist-extensions/src/color/util.d.ts.map +0 -0
- package/dist-extensions/src/config.d.ts +0 -0
- package/dist-extensions/src/config.d.ts.map +0 -0
- package/dist-extensions/src/constants.d.ts +0 -0
- package/dist-extensions/src/constants.d.ts.map +0 -0
- package/dist-extensions/src/controls/Control.d.ts +0 -0
- package/dist-extensions/src/controls/Control.d.ts.map +0 -0
- package/dist-extensions/src/controls/changeHeight.d.ts +0 -0
- package/dist-extensions/src/controls/changeHeight.d.ts.map +0 -0
- package/dist-extensions/src/controls/changeWidth.d.ts +0 -0
- package/dist-extensions/src/controls/changeWidth.d.ts.map +0 -0
- package/dist-extensions/src/controls/commonControls.d.ts +0 -0
- package/dist-extensions/src/controls/commonControls.d.ts.map +0 -0
- package/dist-extensions/src/controls/controlRendering.d.ts +0 -0
- package/dist-extensions/src/controls/controlRendering.d.ts.map +0 -0
- package/dist-extensions/src/controls/drag.d.ts +0 -0
- package/dist-extensions/src/controls/drag.d.ts.map +0 -0
- package/dist-extensions/src/controls/fireEvent.d.ts +0 -0
- package/dist-extensions/src/controls/fireEvent.d.ts.map +0 -0
- package/dist-extensions/src/controls/index.d.ts +0 -0
- package/dist-extensions/src/controls/index.d.ts.map +0 -0
- package/dist-extensions/src/controls/pathControl.d.ts +0 -0
- package/dist-extensions/src/controls/pathControl.d.ts.map +0 -0
- package/dist-extensions/src/controls/polyControl.d.ts +0 -0
- package/dist-extensions/src/controls/polyControl.d.ts.map +0 -0
- package/dist-extensions/src/controls/rotate.d.ts +0 -0
- package/dist-extensions/src/controls/rotate.d.ts.map +0 -0
- package/dist-extensions/src/controls/scale.d.ts +0 -0
- package/dist-extensions/src/controls/scale.d.ts.map +0 -0
- package/dist-extensions/src/controls/scaleSkew.d.ts +0 -0
- package/dist-extensions/src/controls/scaleSkew.d.ts.map +0 -0
- package/dist-extensions/src/controls/skew.d.ts +0 -0
- package/dist-extensions/src/controls/skew.d.ts.map +0 -0
- package/dist-extensions/src/controls/util.d.ts +0 -0
- package/dist-extensions/src/controls/util.d.ts.map +0 -0
- package/dist-extensions/src/controls/wrapWithFireEvent.d.ts +0 -0
- package/dist-extensions/src/controls/wrapWithFireEvent.d.ts.map +0 -0
- package/dist-extensions/src/controls/wrapWithFixedAnchor.d.ts +0 -0
- package/dist-extensions/src/controls/wrapWithFixedAnchor.d.ts.map +0 -0
- package/dist-extensions/src/env/browser.d.ts +0 -0
- package/dist-extensions/src/env/browser.d.ts.map +0 -0
- package/dist-extensions/src/env/index.d.ts +0 -0
- package/dist-extensions/src/env/index.d.ts.map +0 -0
- package/dist-extensions/src/env/types.d.ts +0 -0
- package/dist-extensions/src/env/types.d.ts.map +0 -0
- package/dist-extensions/src/filters/BaseFilter.d.ts +0 -0
- package/dist-extensions/src/filters/BaseFilter.d.ts.map +0 -0
- package/dist-extensions/src/filters/BlendColor.d.ts +0 -0
- package/dist-extensions/src/filters/BlendColor.d.ts.map +0 -0
- package/dist-extensions/src/filters/BlendImage.d.ts +0 -0
- package/dist-extensions/src/filters/BlendImage.d.ts.map +0 -0
- package/dist-extensions/src/filters/Blur.d.ts +0 -0
- package/dist-extensions/src/filters/Blur.d.ts.map +0 -0
- package/dist-extensions/src/filters/Brightness.d.ts +0 -0
- package/dist-extensions/src/filters/Brightness.d.ts.map +0 -0
- package/dist-extensions/src/filters/Canvas2dFilterBackend.d.ts +0 -0
- package/dist-extensions/src/filters/Canvas2dFilterBackend.d.ts.map +0 -0
- package/dist-extensions/src/filters/ColorMatrix.d.ts +0 -0
- package/dist-extensions/src/filters/ColorMatrix.d.ts.map +0 -0
- package/dist-extensions/src/filters/ColorMatrixFilters.d.ts +0 -0
- package/dist-extensions/src/filters/ColorMatrixFilters.d.ts.map +0 -0
- package/dist-extensions/src/filters/Composed.d.ts +0 -0
- package/dist-extensions/src/filters/Composed.d.ts.map +0 -0
- package/dist-extensions/src/filters/Contrast.d.ts +0 -0
- package/dist-extensions/src/filters/Contrast.d.ts.map +0 -0
- package/dist-extensions/src/filters/Convolute.d.ts +0 -0
- package/dist-extensions/src/filters/Convolute.d.ts.map +0 -0
- package/dist-extensions/src/filters/FilterBackend.d.ts +0 -0
- package/dist-extensions/src/filters/FilterBackend.d.ts.map +0 -0
- package/dist-extensions/src/filters/GLProbes/GLProbe.d.ts +0 -0
- package/dist-extensions/src/filters/GLProbes/GLProbe.d.ts.map +0 -0
- package/dist-extensions/src/filters/GLProbes/WebGLProbe.d.ts +0 -0
- package/dist-extensions/src/filters/GLProbes/WebGLProbe.d.ts.map +0 -0
- package/dist-extensions/src/filters/Gamma.d.ts +0 -0
- package/dist-extensions/src/filters/Gamma.d.ts.map +0 -0
- package/dist-extensions/src/filters/Grayscale.d.ts +0 -0
- package/dist-extensions/src/filters/Grayscale.d.ts.map +0 -0
- package/dist-extensions/src/filters/HueRotation.d.ts +0 -0
- package/dist-extensions/src/filters/HueRotation.d.ts.map +0 -0
- package/dist-extensions/src/filters/Invert.d.ts +0 -0
- package/dist-extensions/src/filters/Invert.d.ts.map +0 -0
- package/dist-extensions/src/filters/Noise.d.ts +0 -0
- package/dist-extensions/src/filters/Noise.d.ts.map +0 -0
- package/dist-extensions/src/filters/Pixelate.d.ts +0 -0
- package/dist-extensions/src/filters/Pixelate.d.ts.map +0 -0
- package/dist-extensions/src/filters/RemoveColor.d.ts +0 -0
- package/dist-extensions/src/filters/RemoveColor.d.ts.map +0 -0
- package/dist-extensions/src/filters/Resize.d.ts +0 -0
- package/dist-extensions/src/filters/Resize.d.ts.map +0 -0
- package/dist-extensions/src/filters/Saturation.d.ts +0 -0
- package/dist-extensions/src/filters/Saturation.d.ts.map +0 -0
- package/dist-extensions/src/filters/Vibrance.d.ts +0 -0
- package/dist-extensions/src/filters/Vibrance.d.ts.map +0 -0
- package/dist-extensions/src/filters/WebGLFilterBackend.d.ts +0 -0
- package/dist-extensions/src/filters/WebGLFilterBackend.d.ts.map +0 -0
- package/dist-extensions/src/filters/filters.d.ts +0 -0
- package/dist-extensions/src/filters/filters.d.ts.map +0 -0
- package/dist-extensions/src/filters/index.d.ts +0 -0
- package/dist-extensions/src/filters/index.d.ts.map +0 -0
- package/dist-extensions/src/filters/shaders/baseFilter.d.ts +0 -0
- package/dist-extensions/src/filters/shaders/baseFilter.d.ts.map +0 -0
- package/dist-extensions/src/filters/shaders/blendColor.d.ts +0 -0
- package/dist-extensions/src/filters/shaders/blendColor.d.ts.map +0 -0
- package/dist-extensions/src/filters/shaders/blendImage.d.ts +0 -0
- package/dist-extensions/src/filters/shaders/blendImage.d.ts.map +0 -0
- package/dist-extensions/src/filters/shaders/blur.d.ts +0 -0
- package/dist-extensions/src/filters/shaders/blur.d.ts.map +0 -0
- package/dist-extensions/src/filters/shaders/brightness.d.ts +0 -0
- package/dist-extensions/src/filters/shaders/brightness.d.ts.map +0 -0
- package/dist-extensions/src/filters/shaders/colorMatrix.d.ts +0 -0
- package/dist-extensions/src/filters/shaders/colorMatrix.d.ts.map +0 -0
- package/dist-extensions/src/filters/shaders/constrast.d.ts +0 -0
- package/dist-extensions/src/filters/shaders/constrast.d.ts.map +0 -0
- package/dist-extensions/src/filters/shaders/convolute.d.ts +0 -0
- package/dist-extensions/src/filters/shaders/convolute.d.ts.map +0 -0
- package/dist-extensions/src/filters/shaders/gamma.d.ts +0 -0
- package/dist-extensions/src/filters/shaders/gamma.d.ts.map +0 -0
- package/dist-extensions/src/filters/shaders/grayscale.d.ts +0 -0
- package/dist-extensions/src/filters/shaders/grayscale.d.ts.map +0 -0
- package/dist-extensions/src/filters/shaders/invert.d.ts +0 -0
- package/dist-extensions/src/filters/shaders/invert.d.ts.map +0 -0
- package/dist-extensions/src/filters/shaders/noise.d.ts +0 -0
- package/dist-extensions/src/filters/shaders/noise.d.ts.map +0 -0
- package/dist-extensions/src/filters/shaders/pixelate.d.ts +0 -0
- package/dist-extensions/src/filters/shaders/pixelate.d.ts.map +0 -0
- package/dist-extensions/src/filters/shaders/removeColor.d.ts +0 -0
- package/dist-extensions/src/filters/shaders/removeColor.d.ts.map +0 -0
- package/dist-extensions/src/filters/shaders/saturation.d.ts +0 -0
- package/dist-extensions/src/filters/shaders/saturation.d.ts.map +0 -0
- package/dist-extensions/src/filters/shaders/vibrance.d.ts +0 -0
- package/dist-extensions/src/filters/shaders/vibrance.d.ts.map +0 -0
- package/dist-extensions/src/filters/typedefs.d.ts +0 -0
- package/dist-extensions/src/filters/typedefs.d.ts.map +0 -0
- package/dist-extensions/src/filters/utils.d.ts +0 -0
- package/dist-extensions/src/filters/utils.d.ts.map +0 -0
- package/dist-extensions/src/gradient/Gradient.d.ts +0 -0
- package/dist-extensions/src/gradient/Gradient.d.ts.map +0 -0
- package/dist-extensions/src/gradient/constants.d.ts +0 -0
- package/dist-extensions/src/gradient/constants.d.ts.map +0 -0
- package/dist-extensions/src/gradient/index.d.ts +0 -0
- package/dist-extensions/src/gradient/index.d.ts.map +0 -0
- package/dist-extensions/src/gradient/parser/misc.d.ts +0 -0
- package/dist-extensions/src/gradient/parser/misc.d.ts.map +0 -0
- package/dist-extensions/src/gradient/parser/parseColorStops.d.ts +0 -0
- package/dist-extensions/src/gradient/parser/parseColorStops.d.ts.map +0 -0
- package/dist-extensions/src/gradient/parser/parseCoords.d.ts +0 -0
- package/dist-extensions/src/gradient/parser/parseCoords.d.ts.map +0 -0
- package/dist-extensions/src/gradient/typedefs.d.ts +0 -0
- package/dist-extensions/src/gradient/typedefs.d.ts.map +0 -0
- package/dist-extensions/src/parser/applyViewboxTransform.d.ts +0 -0
- package/dist-extensions/src/parser/applyViewboxTransform.d.ts.map +0 -0
- package/dist-extensions/src/parser/attributes.d.ts +0 -0
- package/dist-extensions/src/parser/attributes.d.ts.map +0 -0
- package/dist-extensions/src/parser/constants.d.ts +0 -0
- package/dist-extensions/src/parser/constants.d.ts.map +0 -0
- package/dist-extensions/src/parser/doesSomeParentMatch.d.ts +0 -0
- package/dist-extensions/src/parser/doesSomeParentMatch.d.ts.map +0 -0
- package/dist-extensions/src/parser/elementMatchesRule.d.ts +0 -0
- package/dist-extensions/src/parser/elementMatchesRule.d.ts.map +0 -0
- package/dist-extensions/src/parser/elements_parser.d.ts +0 -0
- package/dist-extensions/src/parser/elements_parser.d.ts.map +0 -0
- package/dist-extensions/src/parser/getCSSRules.d.ts +0 -0
- package/dist-extensions/src/parser/getCSSRules.d.ts.map +0 -0
- package/dist-extensions/src/parser/getGlobalStylesForElement.d.ts +0 -0
- package/dist-extensions/src/parser/getGlobalStylesForElement.d.ts.map +0 -0
- package/dist-extensions/src/parser/getGradientDefs.d.ts +0 -0
- package/dist-extensions/src/parser/getGradientDefs.d.ts.map +0 -0
- package/dist-extensions/src/parser/getMultipleNodes.d.ts +0 -0
- package/dist-extensions/src/parser/getMultipleNodes.d.ts.map +0 -0
- package/dist-extensions/src/parser/getSvgRegex.d.ts +0 -0
- package/dist-extensions/src/parser/getSvgRegex.d.ts.map +0 -0
- package/dist-extensions/src/parser/getTagName.d.ts +0 -0
- package/dist-extensions/src/parser/getTagName.d.ts.map +0 -0
- package/dist-extensions/src/parser/hasInvalidAncestor.d.ts +0 -0
- package/dist-extensions/src/parser/hasInvalidAncestor.d.ts.map +0 -0
- package/dist-extensions/src/parser/loadSVGFromString.d.ts +0 -0
- package/dist-extensions/src/parser/loadSVGFromString.d.ts.map +0 -0
- package/dist-extensions/src/parser/loadSVGFromURL.d.ts +0 -0
- package/dist-extensions/src/parser/loadSVGFromURL.d.ts.map +0 -0
- package/dist-extensions/src/parser/normalizeAttr.d.ts +0 -0
- package/dist-extensions/src/parser/normalizeAttr.d.ts.map +0 -0
- package/dist-extensions/src/parser/normalizeValue.d.ts +0 -0
- package/dist-extensions/src/parser/normalizeValue.d.ts.map +0 -0
- package/dist-extensions/src/parser/parseAttributes.d.ts +0 -0
- package/dist-extensions/src/parser/parseAttributes.d.ts.map +0 -0
- package/dist-extensions/src/parser/parseFontDeclaration.d.ts +0 -0
- package/dist-extensions/src/parser/parseFontDeclaration.d.ts.map +0 -0
- package/dist-extensions/src/parser/parsePointsAttribute.d.ts +0 -0
- package/dist-extensions/src/parser/parsePointsAttribute.d.ts.map +0 -0
- package/dist-extensions/src/parser/parseSVGDocument.d.ts +0 -0
- package/dist-extensions/src/parser/parseSVGDocument.d.ts.map +0 -0
- package/dist-extensions/src/parser/parseStyleAttribute.d.ts +0 -0
- package/dist-extensions/src/parser/parseStyleAttribute.d.ts.map +0 -0
- package/dist-extensions/src/parser/parseStyleObject.d.ts +0 -0
- package/dist-extensions/src/parser/parseStyleObject.d.ts.map +0 -0
- package/dist-extensions/src/parser/parseStyleString.d.ts +0 -0
- package/dist-extensions/src/parser/parseStyleString.d.ts.map +0 -0
- package/dist-extensions/src/parser/parseTransformAttribute.d.ts +0 -0
- package/dist-extensions/src/parser/parseTransformAttribute.d.ts.map +0 -0
- package/dist-extensions/src/parser/parseUseDirectives.d.ts +0 -0
- package/dist-extensions/src/parser/parseUseDirectives.d.ts.map +0 -0
- package/dist-extensions/src/parser/percent.d.ts +0 -0
- package/dist-extensions/src/parser/percent.d.ts.map +0 -0
- package/dist-extensions/src/parser/recursivelyParseGradientsXlink.d.ts +0 -0
- package/dist-extensions/src/parser/recursivelyParseGradientsXlink.d.ts.map +0 -0
- package/dist-extensions/src/parser/selectorMatches.d.ts +0 -0
- package/dist-extensions/src/parser/selectorMatches.d.ts.map +0 -0
- package/dist-extensions/src/parser/setStrokeFillOpacity.d.ts +0 -0
- package/dist-extensions/src/parser/setStrokeFillOpacity.d.ts.map +0 -0
- package/dist-extensions/src/parser/typedefs.d.ts +0 -0
- package/dist-extensions/src/parser/typedefs.d.ts.map +0 -0
- package/dist-extensions/src/shapes/ActiveSelection.d.ts +0 -0
- package/dist-extensions/src/shapes/ActiveSelection.d.ts.map +0 -0
- package/dist-extensions/src/shapes/Circle.d.ts +0 -0
- package/dist-extensions/src/shapes/Circle.d.ts.map +0 -0
- package/dist-extensions/src/shapes/Ellipse.d.ts +0 -0
- package/dist-extensions/src/shapes/Ellipse.d.ts.map +0 -0
- package/dist-extensions/src/shapes/Group.d.ts +0 -0
- package/dist-extensions/src/shapes/Group.d.ts.map +0 -0
- package/dist-extensions/src/shapes/IText/DraggableTextDelegate.d.ts +0 -0
- package/dist-extensions/src/shapes/IText/DraggableTextDelegate.d.ts.map +0 -0
- package/dist-extensions/src/shapes/IText/IText.d.ts +0 -0
- package/dist-extensions/src/shapes/IText/IText.d.ts.map +0 -0
- package/dist-extensions/src/shapes/IText/ITextBehavior.d.ts +0 -0
- package/dist-extensions/src/shapes/IText/ITextBehavior.d.ts.map +0 -0
- package/dist-extensions/src/shapes/IText/ITextClickBehavior.d.ts +0 -0
- package/dist-extensions/src/shapes/IText/ITextClickBehavior.d.ts.map +0 -0
- package/dist-extensions/src/shapes/IText/ITextKeyBehavior.d.ts +0 -0
- package/dist-extensions/src/shapes/IText/ITextKeyBehavior.d.ts.map +0 -0
- package/dist-extensions/src/shapes/IText/constants.d.ts +0 -0
- package/dist-extensions/src/shapes/IText/constants.d.ts.map +0 -0
- package/dist-extensions/src/shapes/Image.d.ts +0 -0
- package/dist-extensions/src/shapes/Image.d.ts.map +0 -0
- package/dist-extensions/src/shapes/Line.d.ts +0 -0
- package/dist-extensions/src/shapes/Line.d.ts.map +0 -0
- package/dist-extensions/src/shapes/Object/FabricObject.d.ts +0 -0
- package/dist-extensions/src/shapes/Object/FabricObject.d.ts.map +0 -0
- package/dist-extensions/src/shapes/Object/FabricObjectSVGExportMixin.d.ts +0 -0
- package/dist-extensions/src/shapes/Object/FabricObjectSVGExportMixin.d.ts.map +0 -0
- package/dist-extensions/src/shapes/Object/InteractiveObject.d.ts +0 -0
- package/dist-extensions/src/shapes/Object/InteractiveObject.d.ts.map +0 -0
- package/dist-extensions/src/shapes/Object/Object.d.ts +0 -0
- package/dist-extensions/src/shapes/Object/Object.d.ts.map +0 -0
- package/dist-extensions/src/shapes/Object/ObjectGeometry.d.ts +0 -0
- package/dist-extensions/src/shapes/Object/ObjectGeometry.d.ts.map +0 -0
- package/dist-extensions/src/shapes/Object/defaultValues.d.ts +0 -0
- package/dist-extensions/src/shapes/Object/defaultValues.d.ts.map +0 -0
- package/dist-extensions/src/shapes/Object/types/BaseProps.d.ts +0 -0
- package/dist-extensions/src/shapes/Object/types/BaseProps.d.ts.map +0 -0
- package/dist-extensions/src/shapes/Object/types/BorderProps.d.ts +0 -0
- package/dist-extensions/src/shapes/Object/types/BorderProps.d.ts.map +0 -0
- package/dist-extensions/src/shapes/Object/types/ControlProps.d.ts +0 -0
- package/dist-extensions/src/shapes/Object/types/ControlProps.d.ts.map +0 -0
- package/dist-extensions/src/shapes/Object/types/FabricObjectProps.d.ts +0 -0
- package/dist-extensions/src/shapes/Object/types/FabricObjectProps.d.ts.map +0 -0
- package/dist-extensions/src/shapes/Object/types/FillStrokeProps.d.ts +0 -0
- package/dist-extensions/src/shapes/Object/types/FillStrokeProps.d.ts.map +0 -0
- package/dist-extensions/src/shapes/Object/types/LockInteractionProps.d.ts +0 -0
- package/dist-extensions/src/shapes/Object/types/LockInteractionProps.d.ts.map +0 -0
- package/dist-extensions/src/shapes/Object/types/ObjectProps.d.ts +0 -0
- package/dist-extensions/src/shapes/Object/types/ObjectProps.d.ts.map +0 -0
- package/dist-extensions/src/shapes/Object/types/ObjectTransformProps.d.ts +0 -0
- package/dist-extensions/src/shapes/Object/types/ObjectTransformProps.d.ts.map +0 -0
- package/dist-extensions/src/shapes/Object/types/SerializedObjectProps.d.ts +0 -0
- package/dist-extensions/src/shapes/Object/types/SerializedObjectProps.d.ts.map +0 -0
- package/dist-extensions/src/shapes/Object/types/index.d.ts +0 -0
- package/dist-extensions/src/shapes/Object/types/index.d.ts.map +0 -0
- package/dist-extensions/src/shapes/Path.d.ts +0 -0
- package/dist-extensions/src/shapes/Path.d.ts.map +0 -0
- package/dist-extensions/src/shapes/Polygon.d.ts +0 -0
- package/dist-extensions/src/shapes/Polygon.d.ts.map +0 -0
- package/dist-extensions/src/shapes/Polyline.d.ts +7 -0
- package/dist-extensions/src/shapes/Polyline.d.ts.map +1 -1
- package/dist-extensions/src/shapes/Rect.d.ts +0 -0
- package/dist-extensions/src/shapes/Rect.d.ts.map +0 -0
- package/dist-extensions/src/shapes/Text/StyledText.d.ts +0 -0
- package/dist-extensions/src/shapes/Text/StyledText.d.ts.map +0 -0
- package/dist-extensions/src/shapes/Text/Text.d.ts +0 -0
- package/dist-extensions/src/shapes/Text/Text.d.ts.map +0 -0
- package/dist-extensions/src/shapes/Text/TextSVGExportMixin.d.ts +0 -0
- package/dist-extensions/src/shapes/Text/TextSVGExportMixin.d.ts.map +0 -0
- package/dist-extensions/src/shapes/Text/constants.d.ts +0 -0
- package/dist-extensions/src/shapes/Text/constants.d.ts.map +0 -0
- package/dist-extensions/src/shapes/Textbox.d.ts +0 -0
- package/dist-extensions/src/shapes/Textbox.d.ts.map +0 -0
- package/dist-extensions/src/shapes/Triangle.d.ts +27 -2
- package/dist-extensions/src/shapes/Triangle.d.ts.map +1 -1
- package/dist-extensions/src/text/browserLines.d.ts +0 -0
- package/dist-extensions/src/text/browserLines.d.ts.map +0 -0
- package/dist-extensions/src/text/ellipsis.d.ts +0 -0
- package/dist-extensions/src/text/ellipsis.d.ts.map +0 -0
- package/dist-extensions/src/text/hitTest.d.ts +0 -0
- package/dist-extensions/src/text/hitTest.d.ts.map +0 -0
- package/dist-extensions/src/text/layout.d.ts +0 -0
- package/dist-extensions/src/text/layout.d.ts.map +0 -0
- package/dist-extensions/src/text/measure.d.ts +0 -0
- package/dist-extensions/src/text/measure.d.ts.map +0 -0
- package/dist-extensions/src/text/overlayEditor.d.ts +0 -0
- package/dist-extensions/src/text/overlayEditor.d.ts.map +0 -0
- package/dist-extensions/src/text/unicode.d.ts +0 -0
- package/dist-extensions/src/text/unicode.d.ts.map +0 -0
- package/dist-extensions/src/typedefs.d.ts +0 -0
- package/dist-extensions/src/typedefs.d.ts.map +0 -0
- package/dist-extensions/src/util/animation/AnimationBase.d.ts +0 -0
- package/dist-extensions/src/util/animation/AnimationBase.d.ts.map +0 -0
- package/dist-extensions/src/util/animation/AnimationFrameProvider.d.ts +0 -0
- package/dist-extensions/src/util/animation/AnimationFrameProvider.d.ts.map +0 -0
- package/dist-extensions/src/util/animation/AnimationRegistry.d.ts +0 -0
- package/dist-extensions/src/util/animation/AnimationRegistry.d.ts.map +0 -0
- package/dist-extensions/src/util/animation/ArrayAnimation.d.ts +0 -0
- package/dist-extensions/src/util/animation/ArrayAnimation.d.ts.map +0 -0
- package/dist-extensions/src/util/animation/ColorAnimation.d.ts +0 -0
- package/dist-extensions/src/util/animation/ColorAnimation.d.ts.map +0 -0
- package/dist-extensions/src/util/animation/ValueAnimation.d.ts +0 -0
- package/dist-extensions/src/util/animation/ValueAnimation.d.ts.map +0 -0
- package/dist-extensions/src/util/animation/animate.d.ts +0 -0
- package/dist-extensions/src/util/animation/animate.d.ts.map +0 -0
- package/dist-extensions/src/util/animation/easing.d.ts +0 -0
- package/dist-extensions/src/util/animation/easing.d.ts.map +0 -0
- package/dist-extensions/src/util/animation/index.d.ts +0 -0
- package/dist-extensions/src/util/animation/index.d.ts.map +0 -0
- package/dist-extensions/src/util/animation/types.d.ts +0 -0
- package/dist-extensions/src/util/animation/types.d.ts.map +0 -0
- package/dist-extensions/src/util/applyMixins.d.ts +0 -0
- package/dist-extensions/src/util/applyMixins.d.ts.map +0 -0
- package/dist-extensions/src/util/dom_event.d.ts +0 -0
- package/dist-extensions/src/util/dom_event.d.ts.map +0 -0
- package/dist-extensions/src/util/dom_misc.d.ts +0 -0
- package/dist-extensions/src/util/dom_misc.d.ts.map +0 -0
- package/dist-extensions/src/util/index.d.ts +0 -0
- package/dist-extensions/src/util/index.d.ts.map +0 -0
- package/dist-extensions/src/util/internals/applyCanvasTransform.d.ts +0 -0
- package/dist-extensions/src/util/internals/applyCanvasTransform.d.ts.map +0 -0
- package/dist-extensions/src/util/internals/cleanupSvgAttribute.d.ts +0 -0
- package/dist-extensions/src/util/internals/cleanupSvgAttribute.d.ts.map +0 -0
- package/dist-extensions/src/util/internals/cloneStyles.d.ts +0 -0
- package/dist-extensions/src/util/internals/cloneStyles.d.ts.map +0 -0
- package/dist-extensions/src/util/internals/console.d.ts +0 -0
- package/dist-extensions/src/util/internals/console.d.ts.map +0 -0
- package/dist-extensions/src/util/internals/dom_style.d.ts +0 -0
- package/dist-extensions/src/util/internals/dom_style.d.ts.map +0 -0
- package/dist-extensions/src/util/internals/findRight.d.ts +0 -0
- package/dist-extensions/src/util/internals/findRight.d.ts.map +0 -0
- package/dist-extensions/src/util/internals/getRandomInt.d.ts +0 -0
- package/dist-extensions/src/util/internals/getRandomInt.d.ts.map +0 -0
- package/dist-extensions/src/util/internals/ifNaN.d.ts +0 -0
- package/dist-extensions/src/util/internals/ifNaN.d.ts.map +0 -0
- package/dist-extensions/src/util/internals/removeFromArray.d.ts +0 -0
- package/dist-extensions/src/util/internals/removeFromArray.d.ts.map +0 -0
- package/dist-extensions/src/util/internals/uid.d.ts +0 -0
- package/dist-extensions/src/util/internals/uid.d.ts.map +0 -0
- package/dist-extensions/src/util/lang_string.d.ts +0 -0
- package/dist-extensions/src/util/lang_string.d.ts.map +0 -0
- package/dist-extensions/src/util/misc/boundingBoxFromPoints.d.ts +0 -0
- package/dist-extensions/src/util/misc/boundingBoxFromPoints.d.ts.map +0 -0
- package/dist-extensions/src/util/misc/capValue.d.ts +0 -0
- package/dist-extensions/src/util/misc/capValue.d.ts.map +0 -0
- package/dist-extensions/src/util/misc/cornerRadius.d.ts +70 -0
- package/dist-extensions/src/util/misc/cornerRadius.d.ts.map +1 -0
- package/dist-extensions/src/util/misc/cos.d.ts +0 -0
- package/dist-extensions/src/util/misc/cos.d.ts.map +0 -0
- package/dist-extensions/src/util/misc/dom.d.ts +0 -0
- package/dist-extensions/src/util/misc/dom.d.ts.map +0 -0
- package/dist-extensions/src/util/misc/findScaleTo.d.ts +0 -0
- package/dist-extensions/src/util/misc/findScaleTo.d.ts.map +0 -0
- package/dist-extensions/src/util/misc/groupSVGElements.d.ts +0 -0
- package/dist-extensions/src/util/misc/groupSVGElements.d.ts.map +0 -0
- package/dist-extensions/src/util/misc/isTransparent.d.ts +0 -0
- package/dist-extensions/src/util/misc/isTransparent.d.ts.map +0 -0
- package/dist-extensions/src/util/misc/matrix.d.ts +0 -0
- package/dist-extensions/src/util/misc/matrix.d.ts.map +0 -0
- package/dist-extensions/src/util/misc/mergeClipPaths.d.ts +0 -0
- package/dist-extensions/src/util/misc/mergeClipPaths.d.ts.map +0 -0
- package/dist-extensions/src/util/misc/objectEnlive.d.ts +0 -0
- package/dist-extensions/src/util/misc/objectEnlive.d.ts.map +0 -0
- package/dist-extensions/src/util/misc/objectTransforms.d.ts +0 -0
- package/dist-extensions/src/util/misc/objectTransforms.d.ts.map +0 -0
- package/dist-extensions/src/util/misc/pick.d.ts +0 -0
- package/dist-extensions/src/util/misc/pick.d.ts.map +0 -0
- package/dist-extensions/src/util/misc/planeChange.d.ts +0 -0
- package/dist-extensions/src/util/misc/planeChange.d.ts.map +0 -0
- package/dist-extensions/src/util/misc/projectStroke/StrokeLineCapProjections.d.ts +0 -0
- package/dist-extensions/src/util/misc/projectStroke/StrokeLineCapProjections.d.ts.map +0 -0
- package/dist-extensions/src/util/misc/projectStroke/StrokeLineJoinProjections.d.ts +0 -0
- package/dist-extensions/src/util/misc/projectStroke/StrokeLineJoinProjections.d.ts.map +0 -0
- package/dist-extensions/src/util/misc/projectStroke/StrokeProjectionsBase.d.ts +0 -0
- package/dist-extensions/src/util/misc/projectStroke/StrokeProjectionsBase.d.ts.map +0 -0
- package/dist-extensions/src/util/misc/projectStroke/index.d.ts +0 -0
- package/dist-extensions/src/util/misc/projectStroke/index.d.ts.map +0 -0
- package/dist-extensions/src/util/misc/projectStroke/types.d.ts +0 -0
- package/dist-extensions/src/util/misc/projectStroke/types.d.ts.map +0 -0
- package/dist-extensions/src/util/misc/radiansDegreesConversion.d.ts +0 -0
- package/dist-extensions/src/util/misc/radiansDegreesConversion.d.ts.map +0 -0
- package/dist-extensions/src/util/misc/resolveOrigin.d.ts +0 -0
- package/dist-extensions/src/util/misc/resolveOrigin.d.ts.map +0 -0
- package/dist-extensions/src/util/misc/sin.d.ts +0 -0
- package/dist-extensions/src/util/misc/sin.d.ts.map +0 -0
- package/dist-extensions/src/util/misc/svgExport.d.ts +0 -0
- package/dist-extensions/src/util/misc/svgExport.d.ts.map +0 -0
- package/dist-extensions/src/util/misc/svgParsing.d.ts +0 -0
- package/dist-extensions/src/util/misc/svgParsing.d.ts.map +0 -0
- package/dist-extensions/src/util/misc/textStyles.d.ts +0 -0
- package/dist-extensions/src/util/misc/textStyles.d.ts.map +0 -0
- package/dist-extensions/src/util/misc/toFixed.d.ts +0 -0
- package/dist-extensions/src/util/misc/toFixed.d.ts.map +0 -0
- package/dist-extensions/src/util/misc/vectors.d.ts +0 -0
- package/dist-extensions/src/util/misc/vectors.d.ts.map +0 -0
- package/dist-extensions/src/util/path/index.d.ts +0 -0
- package/dist-extensions/src/util/path/index.d.ts.map +0 -0
- package/dist-extensions/src/util/path/regex.d.ts +0 -0
- package/dist-extensions/src/util/path/regex.d.ts.map +0 -0
- package/dist-extensions/src/util/path/typedefs.d.ts +0 -0
- package/dist-extensions/src/util/path/typedefs.d.ts.map +0 -0
- package/dist-extensions/src/util/transform_matrix_removal.d.ts +0 -0
- package/dist-extensions/src/util/transform_matrix_removal.d.ts.map +0 -0
- package/dist-extensions/src/util/typeAssertions.d.ts +0 -0
- package/dist-extensions/src/util/typeAssertions.d.ts.map +0 -0
- package/docs/fabric-konva-gap-analysis.md +274 -0
- package/docs/konva-text-behavior-spec.md +265 -0
- package/docs/text-engine-design.md +698 -0
- package/eslint.config.mjs +0 -0
- package/examples/overlay-edit.html +416 -416
- package/extensions/README.MD +0 -0
- package/extensions/aligning_guidelines/README.MD +0 -0
- package/extensions/aligning_guidelines/constant.ts +0 -0
- package/extensions/aligning_guidelines/index.ts +0 -0
- package/extensions/aligning_guidelines/typedefs.ts +0 -0
- package/extensions/aligning_guidelines/util/basic.spec.ts +0 -0
- package/extensions/aligning_guidelines/util/basic.ts +0 -0
- package/extensions/aligning_guidelines/util/collect-line.ts +0 -0
- package/extensions/aligning_guidelines/util/collect-point.ts +0 -0
- package/extensions/aligning_guidelines/util/draw.ts +0 -0
- package/extensions/aligning_guidelines/util/get-objects-by-target.ts +0 -0
- package/extensions/data_updaters/README.md +0 -0
- package/extensions/data_updaters/gradient/__snapshots__/index.spec.ts.snap +0 -0
- package/extensions/data_updaters/gradient/index.spec.ts +0 -0
- package/extensions/data_updaters/gradient/index.ts +0 -0
- package/extensions/data_updaters/origins/README.md +0 -0
- package/extensions/data_updaters/origins/index.spec.ts +0 -0
- package/extensions/data_updaters/origins/index.ts +0 -0
- package/extensions/index.ts +0 -0
- package/fabric-test-editor.html +964 -507
- package/fabric.ts +0 -0
- package/index.node.ts +0 -0
- package/index.ts +0 -0
- package/lib/aligning_guidelines.js +0 -0
- package/lib/centering_guidelines.js +0 -0
- package/lib/event.js +0 -0
- package/package.json +164 -164
- package/playwright.config.ts +0 -0
- package/playwright.setup.ts +0 -0
- package/publish-next.js +0 -0
- package/publish.js +0 -0
- package/rollup.config.mjs +0 -0
- package/scripts/bench-text.js +591 -591
- package/scripts/build.mjs +0 -0
- package/scripts/buildLock.mjs +0 -0
- package/scripts/buildReporter.mjs +0 -0
- package/scripts/buildStats.mjs +0 -0
- package/scripts/dirname.mjs +0 -0
- package/scripts/git.mjs +0 -0
- package/scripts/index.mjs +0 -0
- package/scripts/sandbox.mjs +0 -0
- package/src/ClassRegistry.spec.ts +0 -0
- package/src/ClassRegistry.ts +0 -0
- package/src/Collection.spec.ts +0 -0
- package/src/Collection.ts +0 -0
- package/src/CommonMethods.ts +0 -0
- package/src/EventTypeDefs.ts +0 -0
- package/src/Intersection.spec.ts +0 -0
- package/src/Intersection.ts +0 -0
- package/src/LayoutManager/ActiveSelectionLayoutManager.spec.ts +0 -0
- package/src/LayoutManager/ActiveSelectionLayoutManager.ts +0 -0
- package/src/LayoutManager/LayoutManager.spec.ts +0 -0
- package/src/LayoutManager/LayoutManager.ts +0 -0
- package/src/LayoutManager/LayoutStrategies/ClipPathLayout.ts +0 -0
- package/src/LayoutManager/LayoutStrategies/FitContentLayout.ts +0 -0
- package/src/LayoutManager/LayoutStrategies/FixedLayout.ts +0 -0
- package/src/LayoutManager/LayoutStrategies/LayoutStrategy.ts +0 -0
- package/src/LayoutManager/LayoutStrategies/utils.ts +0 -0
- package/src/LayoutManager/README.md +0 -0
- package/src/LayoutManager/__snapshots__/LayoutManager.spec.ts.snap +0 -0
- package/src/LayoutManager/constants.ts +0 -0
- package/src/LayoutManager/index.ts +0 -0
- package/src/LayoutManager/types.ts +0 -0
- package/src/Observable.spec.ts +0 -0
- package/src/Observable.ts +0 -0
- package/src/Pattern/Pattern.spec.ts +0 -0
- package/src/Pattern/Pattern.ts +0 -0
- package/src/Pattern/index.ts +0 -0
- package/src/Pattern/types.ts +0 -0
- package/src/Point.spec.ts +0 -0
- package/src/Point.ts +0 -0
- package/src/Shadow.spec.ts +0 -0
- package/src/Shadow.ts +0 -0
- package/src/__snapshots__/Shadow.spec.ts.snap +0 -0
- package/src/brushes/BaseBrush.spec.ts +0 -0
- package/src/brushes/BaseBrush.ts +0 -0
- package/src/brushes/CircleBrush.test.ts +0 -0
- package/src/brushes/CircleBrush.ts +0 -0
- package/src/brushes/PatternBrush.ts +0 -0
- package/src/brushes/PencilBrush.spec.ts +0 -0
- package/src/brushes/PencilBrush.ts +0 -0
- package/src/brushes/SprayBrush.ts +0 -0
- package/src/brushes/__snapshots__/PencilBrush.spec.ts.snap +0 -0
- package/src/brushes/typedefs.ts +0 -0
- package/src/cache.spec.ts +0 -0
- package/src/cache.ts +0 -0
- package/src/canvas/Canvas-dispose.spec.ts +0 -0
- package/src/canvas/Canvas-events.spec.ts +0 -0
- package/src/canvas/Canvas.spec.ts +0 -0
- package/src/canvas/Canvas.ts +0 -0
- package/src/canvas/CanvasOptions.ts +0 -0
- package/src/canvas/DOMManagers/CanvasDOMManager.ts +0 -0
- package/src/canvas/DOMManagers/StaticCanvasDOMManager.ts +0 -0
- package/src/canvas/DOMManagers/util.spec.ts +0 -0
- package/src/canvas/DOMManagers/util.ts +0 -0
- package/src/canvas/SelectableCanvas.spec.ts +0 -0
- package/src/canvas/SelectableCanvas.ts +0 -0
- package/src/canvas/StaticCanvas.spec.ts +0 -0
- package/src/canvas/StaticCanvas.ts +0 -0
- package/src/canvas/StaticCanvasOptions.ts +0 -0
- package/src/canvas/TextEditingManager.ts +0 -0
- package/src/canvas/__tests__/SelectableCanvas.spec.ts +0 -0
- package/src/canvas/__tests__/__snapshots__/eventData.test.ts.snap +0 -0
- package/src/canvas/__tests__/eventData.test.ts +0 -0
- package/src/canvas/canvas_gestures.mixin.ts +0 -0
- package/src/color/Color.ts +0 -0
- package/src/color/color.test.ts +0 -0
- package/src/color/color_map.ts +0 -0
- package/src/color/constants.ts +0 -0
- package/src/color/typedefs.ts +0 -0
- package/src/color/util.ts +0 -0
- package/src/config.ts +0 -0
- package/src/constants.ts +0 -0
- package/src/controls/Control-cursor.spec.ts +0 -0
- package/src/controls/Control-handlers.spec.ts +0 -0
- package/src/controls/Control.spec.ts +0 -0
- package/src/controls/Control.ts +0 -0
- package/src/controls/changeHeight.ts +0 -0
- package/src/controls/changeWidth.test.ts +0 -0
- package/src/controls/changeWidth.ts +0 -0
- package/src/controls/commonControls.ts +0 -0
- package/src/controls/controlRendering.ts +0 -0
- package/src/controls/drag.ts +0 -0
- package/src/controls/fireEvent.ts +0 -0
- package/src/controls/index.ts +0 -0
- package/src/controls/pathControl.spec.ts +0 -0
- package/src/controls/pathControl.ts +0 -0
- package/src/controls/polyControl.spec.ts +0 -0
- package/src/controls/polyControl.ts +0 -0
- package/src/controls/rotate.ts +0 -0
- package/src/controls/scale.test.ts +0 -0
- package/src/controls/scale.ts +0 -0
- package/src/controls/scaleSkew.ts +0 -0
- package/src/controls/skew.ts +0 -0
- package/src/controls/util.ts +0 -0
- package/src/controls/wrapWithFireEvent.ts +0 -0
- package/src/controls/wrapWithFixedAnchor.spec.ts +0 -0
- package/src/controls/wrapWithFixedAnchor.ts +0 -0
- package/src/env/browser.ts +0 -0
- package/src/env/env.spec.ts +0 -0
- package/src/env/index.ts +0 -0
- package/src/env/node.ts +0 -0
- package/src/env/types.ts +0 -0
- package/src/filters/BaseFilter.spec.ts +0 -0
- package/src/filters/BaseFilter.ts +0 -0
- package/src/filters/BlendColor.ts +0 -0
- package/src/filters/BlendImage.ts +0 -0
- package/src/filters/Blur.ts +0 -0
- package/src/filters/Boilerplate.ts +0 -0
- package/src/filters/Brightness.ts +0 -0
- package/src/filters/Canvas2dFilterBackend.ts +0 -0
- package/src/filters/ColorMatrix.spec.ts +0 -0
- package/src/filters/ColorMatrix.ts +0 -0
- package/src/filters/ColorMatrixFilters.ts +0 -0
- package/src/filters/Composed.ts +0 -0
- package/src/filters/Contrast.ts +0 -0
- package/src/filters/Convolute.ts +0 -0
- package/src/filters/FilterBackend.ts +0 -0
- package/src/filters/GLProbes/GLProbe.ts +0 -0
- package/src/filters/GLProbes/NodeGLProbe.ts +0 -0
- package/src/filters/GLProbes/WebGLProbe.ts +0 -0
- package/src/filters/Gamma.ts +0 -0
- package/src/filters/Grayscale.ts +0 -0
- package/src/filters/HueRotation.ts +0 -0
- package/src/filters/Invert.ts +0 -0
- package/src/filters/Noise.ts +0 -0
- package/src/filters/Pixelate.ts +0 -0
- package/src/filters/RemoveColor.ts +0 -0
- package/src/filters/Resize.ts +0 -0
- package/src/filters/Saturation.ts +0 -0
- package/src/filters/Vibrance.ts +0 -0
- package/src/filters/WebGLFilterBackend.spec.ts +0 -0
- package/src/filters/WebGLFilterBackend.ts +0 -0
- package/src/filters/filters.ts +0 -0
- package/src/filters/index.ts +0 -0
- package/src/filters/shaders/baseFilter.ts +0 -0
- package/src/filters/shaders/blendColor.ts +0 -0
- package/src/filters/shaders/blendImage.ts +0 -0
- package/src/filters/shaders/blur.ts +0 -0
- package/src/filters/shaders/brightness.ts +0 -0
- package/src/filters/shaders/colorMatrix.ts +0 -0
- package/src/filters/shaders/constrast.ts +0 -0
- package/src/filters/shaders/convolute.ts +0 -0
- package/src/filters/shaders/gamma.ts +0 -0
- package/src/filters/shaders/grayscale.ts +0 -0
- package/src/filters/shaders/invert.ts +0 -0
- package/src/filters/shaders/noise.ts +0 -0
- package/src/filters/shaders/pixelate.ts +0 -0
- package/src/filters/shaders/removeColor.ts +0 -0
- package/src/filters/shaders/saturation.ts +0 -0
- package/src/filters/shaders/vibrance.ts +0 -0
- package/src/filters/typedefs.ts +0 -0
- package/src/filters/utils.ts +0 -0
- package/src/gradient/Gradient.spec.ts +0 -0
- package/src/gradient/Gradient.ts +0 -0
- package/src/gradient/constants.ts +0 -0
- package/src/gradient/index.ts +0 -0
- package/src/gradient/parser/misc.ts +0 -0
- package/src/gradient/parser/parseColorStops.ts +0 -0
- package/src/gradient/parser/parseCoords.ts +0 -0
- package/src/gradient/typedefs.ts +0 -0
- package/src/mixins/eraser_brush.mixin.ts +0 -0
- package/src/parkinglot/canvas_animation.mixin.ts +0 -0
- package/src/parkinglot/straighten.ts +0 -0
- package/src/parser/applyViewboxTransform.spec.ts +0 -0
- package/src/parser/applyViewboxTransform.ts +0 -0
- package/src/parser/attributes.ts +0 -0
- package/src/parser/constants.spec.ts +0 -0
- package/src/parser/constants.ts +0 -0
- package/src/parser/doesSomeParentMatch.ts +0 -0
- package/src/parser/elementMatchesRule.ts +0 -0
- package/src/parser/elements_parser.ts +0 -0
- package/src/parser/getCSSRules.spec.ts +0 -0
- package/src/parser/getCSSRules.ts +0 -0
- package/src/parser/getGlobalStylesForElement.ts +0 -0
- package/src/parser/getGradientDefs.ts +0 -0
- package/src/parser/getMultipleNodes.ts +0 -0
- package/src/parser/getSvgRegex.ts +0 -0
- package/src/parser/getTagName.ts +0 -0
- package/src/parser/hasInvalidAncestor.ts +0 -0
- package/src/parser/loadSVGFromString.test.ts +0 -0
- package/src/parser/loadSVGFromString.ts +0 -0
- package/src/parser/loadSVGFromURL.ts +0 -0
- package/src/parser/normalizeAttr.ts +0 -0
- package/src/parser/normalizeValue.ts +0 -0
- package/src/parser/parseAttributes.ts +0 -0
- package/src/parser/parseFontDeclaration.ts +0 -0
- package/src/parser/parsePointsAttribute.ts +0 -0
- package/src/parser/parseSVGDocument.ts +0 -0
- package/src/parser/parseStyleAttribute.ts +0 -0
- package/src/parser/parseStyleObject.ts +0 -0
- package/src/parser/parseStyleString.ts +0 -0
- package/src/parser/parseTransformAttribute.ts +0 -0
- package/src/parser/parseUseDirectives.test.ts +0 -0
- package/src/parser/parseUseDirectives.ts +0 -0
- package/src/parser/parser.spec.ts +0 -0
- package/src/parser/percent.ts +0 -0
- package/src/parser/recursivelyParseGradientsXlink.ts +0 -0
- package/src/parser/selectorMatches.ts +0 -0
- package/src/parser/setStrokeFillOpacity.ts +0 -0
- package/src/parser/typedefs.ts +0 -0
- package/src/shapes/ActiveSelection.spec.ts +0 -0
- package/src/shapes/ActiveSelection.ts +0 -0
- package/src/shapes/Circle.spec.ts +0 -0
- package/src/shapes/Circle.ts +0 -0
- package/src/shapes/Ellipse.spec.ts +0 -0
- package/src/shapes/Ellipse.ts +0 -0
- package/src/shapes/Group.spec.ts +0 -0
- package/src/shapes/Group.ts +0 -0
- package/src/shapes/IText/DraggableTextDelegate.ts +0 -0
- package/src/shapes/IText/IText-click-behavior.spec.ts +0 -0
- package/src/shapes/IText/IText.test.ts +0 -0
- package/src/shapes/IText/IText.ts +846 -846
- package/src/shapes/IText/ITextBehavior.test.ts +0 -0
- package/src/shapes/IText/ITextBehavior.ts +1176 -1176
- package/src/shapes/IText/ITextClickBehavior.ts +254 -254
- package/src/shapes/IText/ITextKeyBehavior.test.ts +0 -0
- package/src/shapes/IText/ITextKeyBehavior.ts +0 -0
- package/src/shapes/IText/__snapshots__/IText.test.ts.snap +0 -0
- package/src/shapes/IText/__snapshots__/ITextBehavior.test.ts.snap +0 -0
- package/src/shapes/IText/constants.ts +0 -0
- package/src/shapes/Image-filters.spec.ts +0 -0
- package/src/shapes/Image.spec.ts +0 -0
- package/src/shapes/Image.ts +0 -0
- package/src/shapes/Line.spec.ts +0 -0
- package/src/shapes/Line.ts +0 -0
- package/src/shapes/Object/FabricObject.spec.ts +0 -0
- package/src/shapes/Object/FabricObject.ts +0 -0
- package/src/shapes/Object/FabricObjectSVGExportMixin.ts +0 -0
- package/src/shapes/Object/InteractiveObject.spec.ts +0 -0
- package/src/shapes/Object/InteractiveObject.ts +0 -0
- package/src/shapes/Object/Object-clip-path.spec.ts +0 -0
- package/src/shapes/Object/Object-interactivity.spec.ts +0 -0
- package/src/shapes/Object/Object.spec.ts +0 -0
- package/src/shapes/Object/Object.ts +0 -0
- package/src/shapes/Object/ObjectGeometry.spec.ts +0 -0
- package/src/shapes/Object/ObjectGeometry.ts +0 -0
- package/src/shapes/Object/ObjectOrigin.spec.ts +0 -0
- package/src/shapes/Object/ObjectSerialization.spec.ts +0 -0
- package/src/shapes/Object/StackedObject.spec.ts +0 -0
- package/src/shapes/Object/__snapshots__/InteractiveObject.spec.ts.snap +0 -0
- package/src/shapes/Object/defaultValues.ts +0 -0
- package/src/shapes/Object/types/BaseProps.ts +0 -0
- package/src/shapes/Object/types/BorderProps.ts +0 -0
- package/src/shapes/Object/types/ControlProps.ts +0 -0
- package/src/shapes/Object/types/FabricObjectProps.ts +0 -0
- package/src/shapes/Object/types/FillStrokeProps.ts +0 -0
- package/src/shapes/Object/types/LockInteractionProps.ts +0 -0
- package/src/shapes/Object/types/ObjectProps.ts +0 -0
- package/src/shapes/Object/types/ObjectTransformProps.ts +0 -0
- package/src/shapes/Object/types/SerializedObjectProps.ts +0 -0
- package/src/shapes/Object/types/index.ts +0 -0
- package/src/shapes/Path.spec.ts +0 -0
- package/src/shapes/Path.ts +0 -0
- package/src/shapes/Polygon.spec.ts +0 -0
- package/src/shapes/Polygon.ts +0 -0
- package/src/shapes/Polyline.spec.ts +0 -0
- package/src/shapes/Polyline.ts +70 -29
- package/src/shapes/Rect.spec.ts +0 -0
- package/src/shapes/Rect.ts +0 -0
- package/src/shapes/Text/StyledText.spec.ts +0 -0
- package/src/shapes/Text/StyledText.ts +0 -0
- package/src/shapes/Text/Text.spec.ts +0 -0
- package/src/shapes/Text/Text.ts +2226 -2226
- package/src/shapes/Text/TextSVGExportMixin.spec.ts +0 -0
- package/src/shapes/Text/TextSVGExportMixin.ts +0 -0
- package/src/shapes/Text/__snapshots__/Text.spec.ts.snap +0 -0
- package/src/shapes/Text/__snapshots__/TextSVGExportMixin.spec.ts.snap +0 -0
- package/src/shapes/Text/constants.ts +134 -134
- package/src/shapes/Textbox.spec.ts +0 -0
- package/src/shapes/Textbox.ts +788 -788
- package/src/shapes/Triangle.spec.ts +76 -0
- package/src/shapes/Triangle.ts +85 -15
- package/src/shapes/__snapshots__/Image.spec.ts.snap +0 -0
- package/src/shapes/__snapshots__/Textbox.spec.ts.snap +0 -0
- package/src/text/browserLines.ts +233 -233
- package/src/text/ellipsis.ts +516 -516
- package/src/text/hitTest.ts +623 -623
- package/src/text/layout.ts +586 -586
- package/src/text/measure.ts +475 -475
- package/src/text/overlayEditor.ts +1035 -1035
- package/src/text/unicode.ts +454 -454
- package/src/typedefs.ts +0 -0
- package/src/util/__snapshots__/index.spec.ts.snap +0 -0
- package/src/util/animation/AnimationBase.ts +0 -0
- package/src/util/animation/AnimationFrameProvider.ts +0 -0
- package/src/util/animation/AnimationRegistry.ts +0 -0
- package/src/util/animation/ArrayAnimation.ts +0 -0
- package/src/util/animation/ColorAnimation.ts +0 -0
- package/src/util/animation/ValueAnimation.ts +0 -0
- package/src/util/animation/__snapshots__/animations.spec.ts.snap +0 -0
- package/src/util/animation/animate.ts +0 -0
- package/src/util/animation/animations.spec.ts +0 -0
- package/src/util/animation/easing.ts +0 -0
- package/src/util/animation/index.ts +0 -0
- package/src/util/animation/types.ts +0 -0
- package/src/util/applyMixins.ts +0 -0
- package/src/util/dom_event.spec.ts +0 -0
- package/src/util/dom_event.ts +0 -0
- package/src/util/dom_misc.ts +0 -0
- package/src/util/index.spec.ts +0 -0
- package/src/util/index.ts +0 -0
- package/src/util/internals/applyCanvasTransform.ts +0 -0
- package/src/util/internals/cleanupSvgAttribute.test.ts +0 -0
- package/src/util/internals/cleanupSvgAttribute.ts +0 -0
- package/src/util/internals/cloneStyles.spec.ts +0 -0
- package/src/util/internals/cloneStyles.ts +0 -0
- package/src/util/internals/console.ts +0 -0
- package/src/util/internals/dom_style.spec.ts +0 -0
- package/src/util/internals/dom_style.ts +0 -0
- package/src/util/internals/findRight.ts +0 -0
- package/src/util/internals/getRandomInt.test.ts +0 -0
- package/src/util/internals/getRandomInt.ts +0 -0
- package/src/util/internals/ifNaN.ts +0 -0
- package/src/util/internals/removeFromArray.spec.ts +0 -0
- package/src/util/internals/removeFromArray.ts +0 -0
- package/src/util/internals/uid.ts +0 -0
- package/src/util/lang_string.spec.ts +0 -0
- package/src/util/lang_string.ts +0 -0
- package/src/util/misc/boundingBoxFromPoints.spec.ts +0 -0
- package/src/util/misc/boundingBoxFromPoints.ts +0 -0
- package/src/util/misc/capValue.spec.ts +0 -0
- package/src/util/misc/capValue.ts +0 -0
- package/src/util/misc/cornerRadius.spec.ts +141 -0
- package/src/util/misc/cornerRadius.ts +269 -0
- package/src/util/misc/cos.spec.ts +0 -0
- package/src/util/misc/cos.ts +0 -0
- package/src/util/misc/dom.spec.ts +0 -0
- package/src/util/misc/dom.ts +0 -0
- package/src/util/misc/findScaleTo.spec.ts +0 -0
- package/src/util/misc/findScaleTo.ts +0 -0
- package/src/util/misc/groupSVGElements.spec.ts +0 -0
- package/src/util/misc/groupSVGElements.ts +0 -0
- package/src/util/misc/isTransparent.ts +0 -0
- package/src/util/misc/matrix.spec.ts +0 -0
- package/src/util/misc/matrix.ts +0 -0
- package/src/util/misc/mergeClipPaths.spec.ts +0 -0
- package/src/util/misc/mergeClipPaths.ts +0 -0
- package/src/util/misc/objectEnlive.spec.ts +0 -0
- package/src/util/misc/objectEnlive.ts +0 -0
- package/src/util/misc/objectTransforms.spec.ts +0 -0
- package/src/util/misc/objectTransforms.ts +0 -0
- package/src/util/misc/pick.spec.ts +0 -0
- package/src/util/misc/pick.ts +0 -0
- package/src/util/misc/planeChange.spec.ts +0 -0
- package/src/util/misc/planeChange.ts +0 -0
- package/src/util/misc/projectStroke/StrokeLineCapProjections.ts +0 -0
- package/src/util/misc/projectStroke/StrokeLineJoinProjections.ts +0 -0
- package/src/util/misc/projectStroke/StrokeProjectionsBase.ts +0 -0
- package/src/util/misc/projectStroke/index.ts +0 -0
- package/src/util/misc/projectStroke/types.ts +0 -0
- package/src/util/misc/radiansDegreesConversion.spec.ts +0 -0
- package/src/util/misc/radiansDegreesConversion.ts +0 -0
- package/src/util/misc/resolveOrigin.ts +0 -0
- package/src/util/misc/sin.ts +0 -0
- package/src/util/misc/svgExport.ts +0 -0
- package/src/util/misc/svgParsing.spec.ts +0 -0
- package/src/util/misc/svgParsing.ts +0 -0
- package/src/util/misc/textStyles.ts +0 -0
- package/src/util/misc/toFixed.spec.ts +0 -0
- package/src/util/misc/toFixed.ts +0 -0
- package/src/util/misc/vectors.spec.ts +0 -0
- package/src/util/misc/vectors.ts +0 -0
- package/src/util/path/__snapshots__/index.spec.ts.snap +0 -0
- package/src/util/path/index.spec.ts +0 -0
- package/src/util/path/index.ts +0 -0
- package/src/util/path/regex.ts +0 -0
- package/src/util/path/typechecks.ts +0 -0
- package/src/util/path/typedefs.ts +0 -0
- package/src/util/transform_matrix_removal.ts +0 -0
- package/src/util/typeAssertions.spec.ts +0 -0
- package/src/util/typeAssertions.ts +0 -0
- package/tsconfig-extensions.json +0 -0
- package/tsconfig.json +0 -0
- package/tsconfig.spec.json +0 -0
- package/typedoc.config.json +0 -0
- package/vitest.config.ts +0 -0
- package/vitest.d.ts +0 -0
- package/vitest.env.d.ts +0 -0
- package/vitest.extend.ts +0 -0
- package/vitest.setup.ts +0 -0
- package/dist/src/controls/changeHeight.min.mjs +0 -2
- package/dist/src/controls/changeHeight.min.mjs.map +0 -1
- package/dist/src/controls/changeHeight.mjs +0 -36
- package/dist/src/controls/changeHeight.mjs.map +0 -1
package/dist/index.js
CHANGED
|
@@ -360,7 +360,7 @@
|
|
|
360
360
|
}
|
|
361
361
|
const cache = new Cache();
|
|
362
362
|
|
|
363
|
-
var version = "7.0.1-
|
|
363
|
+
var version = "7.0.1-beta2";
|
|
364
364
|
|
|
365
365
|
// use this syntax so babel plugin see this import here
|
|
366
366
|
const VERSION = version;
|
|
@@ -17840,10 +17840,189 @@
|
|
|
17840
17840
|
classRegistry.setClass(Line);
|
|
17841
17841
|
classRegistry.setSVGClass(Line);
|
|
17842
17842
|
|
|
17843
|
+
/**
|
|
17844
|
+
* Calculate the distance between two points
|
|
17845
|
+
*/
|
|
17846
|
+
function pointDistance(p1, p2) {
|
|
17847
|
+
return Math.sqrt(Math.pow(p2.x - p1.x, 2) + Math.pow(p2.y - p1.y, 2));
|
|
17848
|
+
}
|
|
17849
|
+
|
|
17850
|
+
/**
|
|
17851
|
+
* Normalize a vector
|
|
17852
|
+
*/
|
|
17853
|
+
function normalizeVector(vector) {
|
|
17854
|
+
const length = Math.sqrt(vector.x * vector.x + vector.y * vector.y);
|
|
17855
|
+
if (length === 0) return {
|
|
17856
|
+
x: 0,
|
|
17857
|
+
y: 0
|
|
17858
|
+
};
|
|
17859
|
+
return {
|
|
17860
|
+
x: vector.x / length,
|
|
17861
|
+
y: vector.y / length
|
|
17862
|
+
};
|
|
17863
|
+
}
|
|
17864
|
+
|
|
17865
|
+
/**
|
|
17866
|
+
* Get the maximum allowed radius for a corner based on adjacent edge lengths
|
|
17867
|
+
*/
|
|
17868
|
+
function getMaxRadius(prevPoint, currentPoint, nextPoint) {
|
|
17869
|
+
const dist1 = pointDistance(prevPoint, currentPoint);
|
|
17870
|
+
const dist2 = pointDistance(currentPoint, nextPoint);
|
|
17871
|
+
return Math.min(dist1, dist2) / 2;
|
|
17872
|
+
}
|
|
17873
|
+
|
|
17874
|
+
/**
|
|
17875
|
+
* Calculate rounded corner data for a single corner
|
|
17876
|
+
*/
|
|
17877
|
+
function calculateRoundedCorner(prevPoint, currentPoint, nextPoint, radius) {
|
|
17878
|
+
// Calculate edge vectors
|
|
17879
|
+
const edge1 = {
|
|
17880
|
+
x: currentPoint.x - prevPoint.x,
|
|
17881
|
+
y: currentPoint.y - prevPoint.y
|
|
17882
|
+
};
|
|
17883
|
+
const edge2 = {
|
|
17884
|
+
x: nextPoint.x - currentPoint.x,
|
|
17885
|
+
y: nextPoint.y - currentPoint.y
|
|
17886
|
+
};
|
|
17887
|
+
|
|
17888
|
+
// Normalize edge vectors
|
|
17889
|
+
const norm1 = normalizeVector(edge1);
|
|
17890
|
+
const norm2 = normalizeVector(edge2);
|
|
17891
|
+
|
|
17892
|
+
// Calculate the maximum allowed radius
|
|
17893
|
+
const maxRadius = getMaxRadius(prevPoint, currentPoint, nextPoint);
|
|
17894
|
+
const actualRadius = Math.min(radius, maxRadius);
|
|
17895
|
+
|
|
17896
|
+
// Calculate start and end points of the rounded corner
|
|
17897
|
+
const startPoint = {
|
|
17898
|
+
x: currentPoint.x - norm1.x * actualRadius,
|
|
17899
|
+
y: currentPoint.y - norm1.y * actualRadius
|
|
17900
|
+
};
|
|
17901
|
+
const endPoint = {
|
|
17902
|
+
x: currentPoint.x + norm2.x * actualRadius,
|
|
17903
|
+
y: currentPoint.y + norm2.y * actualRadius
|
|
17904
|
+
};
|
|
17905
|
+
|
|
17906
|
+
// Calculate control points for bezier curve
|
|
17907
|
+
// Using the magic number kRect for optimal circular approximation
|
|
17908
|
+
const controlOffset = actualRadius * kRect;
|
|
17909
|
+
const cp1 = {
|
|
17910
|
+
x: startPoint.x + norm1.x * controlOffset,
|
|
17911
|
+
y: startPoint.y + norm1.y * controlOffset
|
|
17912
|
+
};
|
|
17913
|
+
const cp2 = {
|
|
17914
|
+
x: endPoint.x - norm2.x * controlOffset,
|
|
17915
|
+
y: endPoint.y - norm2.y * controlOffset
|
|
17916
|
+
};
|
|
17917
|
+
return {
|
|
17918
|
+
corner: currentPoint,
|
|
17919
|
+
start: startPoint,
|
|
17920
|
+
end: endPoint,
|
|
17921
|
+
cp1,
|
|
17922
|
+
cp2,
|
|
17923
|
+
actualRadius
|
|
17924
|
+
};
|
|
17925
|
+
}
|
|
17926
|
+
|
|
17927
|
+
/**
|
|
17928
|
+
* Apply corner radius to a polygon defined by points
|
|
17929
|
+
*/
|
|
17930
|
+
function applyCornerRadiusToPolygon(points, radius) {
|
|
17931
|
+
let radiusAsPercentage = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
|
|
17932
|
+
if (points.length < 3) {
|
|
17933
|
+
throw new Error('Polygon must have at least 3 points');
|
|
17934
|
+
}
|
|
17935
|
+
|
|
17936
|
+
// Calculate bounding box if radius is percentage-based
|
|
17937
|
+
let actualRadius = radius;
|
|
17938
|
+
if (radiusAsPercentage) {
|
|
17939
|
+
const minX = Math.min(...points.map(p => p.x));
|
|
17940
|
+
const maxX = Math.max(...points.map(p => p.x));
|
|
17941
|
+
const minY = Math.min(...points.map(p => p.y));
|
|
17942
|
+
const maxY = Math.max(...points.map(p => p.y));
|
|
17943
|
+
const width = maxX - minX;
|
|
17944
|
+
const height = maxY - minY;
|
|
17945
|
+
const minDimension = Math.min(width, height);
|
|
17946
|
+
actualRadius = radius / 100 * minDimension;
|
|
17947
|
+
}
|
|
17948
|
+
const roundedCorners = [];
|
|
17949
|
+
for (let i = 0; i < points.length; i++) {
|
|
17950
|
+
const prevIndex = (i - 1 + points.length) % points.length;
|
|
17951
|
+
const nextIndex = (i + 1) % points.length;
|
|
17952
|
+
const prevPoint = points[prevIndex];
|
|
17953
|
+
const currentPoint = points[i];
|
|
17954
|
+
const nextPoint = points[nextIndex];
|
|
17955
|
+
const roundedCorner = calculateRoundedCorner(prevPoint, currentPoint, nextPoint, actualRadius);
|
|
17956
|
+
roundedCorners.push(roundedCorner);
|
|
17957
|
+
}
|
|
17958
|
+
return roundedCorners;
|
|
17959
|
+
}
|
|
17960
|
+
|
|
17961
|
+
/**
|
|
17962
|
+
* Render a rounded polygon to a canvas context
|
|
17963
|
+
*/
|
|
17964
|
+
function renderRoundedPolygon(ctx, roundedCorners) {
|
|
17965
|
+
let closed = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
|
|
17966
|
+
if (roundedCorners.length === 0) return;
|
|
17967
|
+
ctx.beginPath();
|
|
17968
|
+
|
|
17969
|
+
// Start at the first corner's start point
|
|
17970
|
+
const firstCorner = roundedCorners[0];
|
|
17971
|
+
ctx.moveTo(firstCorner.start.x, firstCorner.start.y);
|
|
17972
|
+
for (let i = 0; i < roundedCorners.length; i++) {
|
|
17973
|
+
const corner = roundedCorners[i];
|
|
17974
|
+
const nextIndex = (i + 1) % roundedCorners.length;
|
|
17975
|
+
const nextCorner = roundedCorners[nextIndex];
|
|
17976
|
+
|
|
17977
|
+
// Draw the rounded corner using bezier curve
|
|
17978
|
+
ctx.bezierCurveTo(corner.cp1.x, corner.cp1.y, corner.cp2.x, corner.cp2.y, corner.end.x, corner.end.y);
|
|
17979
|
+
|
|
17980
|
+
// Draw line to next corner's start point (if not the last segment in open path)
|
|
17981
|
+
if (i < roundedCorners.length - 1 || closed) {
|
|
17982
|
+
ctx.lineTo(nextCorner.start.x, nextCorner.start.y);
|
|
17983
|
+
}
|
|
17984
|
+
}
|
|
17985
|
+
if (closed) {
|
|
17986
|
+
ctx.closePath();
|
|
17987
|
+
}
|
|
17988
|
+
}
|
|
17989
|
+
|
|
17990
|
+
/**
|
|
17991
|
+
* Generate SVG path data for a rounded polygon
|
|
17992
|
+
*/
|
|
17993
|
+
function generateRoundedPolygonPath(roundedCorners) {
|
|
17994
|
+
let closed = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
|
|
17995
|
+
if (roundedCorners.length === 0) return '';
|
|
17996
|
+
const pathData = [];
|
|
17997
|
+
const firstCorner = roundedCorners[0];
|
|
17998
|
+
|
|
17999
|
+
// Move to first corner's start point
|
|
18000
|
+
pathData.push(`M ${firstCorner.start.x} ${firstCorner.start.y}`);
|
|
18001
|
+
for (let i = 0; i < roundedCorners.length; i++) {
|
|
18002
|
+
const corner = roundedCorners[i];
|
|
18003
|
+
const nextIndex = (i + 1) % roundedCorners.length;
|
|
18004
|
+
const nextCorner = roundedCorners[nextIndex];
|
|
18005
|
+
|
|
18006
|
+
// Add bezier curve for the rounded corner
|
|
18007
|
+
pathData.push(`C ${corner.cp1.x} ${corner.cp1.y} ${corner.cp2.x} ${corner.cp2.y} ${corner.end.x} ${corner.end.y}`);
|
|
18008
|
+
|
|
18009
|
+
// Add line to next corner's start point (if not the last segment in open path)
|
|
18010
|
+
if (i < roundedCorners.length - 1 || closed) {
|
|
18011
|
+
pathData.push(`L ${nextCorner.start.x} ${nextCorner.start.y}`);
|
|
18012
|
+
}
|
|
18013
|
+
}
|
|
18014
|
+
if (closed) {
|
|
18015
|
+
pathData.push('Z');
|
|
18016
|
+
}
|
|
18017
|
+
return pathData.join(' ');
|
|
18018
|
+
}
|
|
18019
|
+
|
|
17843
18020
|
const triangleDefaultValues = {
|
|
17844
18021
|
width: 100,
|
|
17845
|
-
height: 100
|
|
18022
|
+
height: 100,
|
|
18023
|
+
cornerRadius: 0
|
|
17846
18024
|
};
|
|
18025
|
+
const TRIANGLE_PROPS = ['cornerRadius'];
|
|
17847
18026
|
class Triangle extends FabricObject {
|
|
17848
18027
|
static getDefaults() {
|
|
17849
18028
|
return {
|
|
@@ -17862,34 +18041,90 @@
|
|
|
17862
18041
|
this.setOptions(options);
|
|
17863
18042
|
}
|
|
17864
18043
|
|
|
18044
|
+
/**
|
|
18045
|
+
* Get triangle points as an array of XY coordinates
|
|
18046
|
+
* @private
|
|
18047
|
+
*/
|
|
18048
|
+
_getTrianglePoints() {
|
|
18049
|
+
const widthBy2 = this.width / 2;
|
|
18050
|
+
const heightBy2 = this.height / 2;
|
|
18051
|
+
return [{
|
|
18052
|
+
x: -widthBy2,
|
|
18053
|
+
y: heightBy2
|
|
18054
|
+
},
|
|
18055
|
+
// bottom left
|
|
18056
|
+
{
|
|
18057
|
+
x: 0,
|
|
18058
|
+
y: -heightBy2
|
|
18059
|
+
},
|
|
18060
|
+
// top center
|
|
18061
|
+
{
|
|
18062
|
+
x: widthBy2,
|
|
18063
|
+
y: heightBy2
|
|
18064
|
+
} // bottom right
|
|
18065
|
+
];
|
|
18066
|
+
}
|
|
18067
|
+
|
|
17865
18068
|
/**
|
|
17866
18069
|
* @private
|
|
17867
18070
|
* @param {CanvasRenderingContext2D} ctx Context to render on
|
|
17868
18071
|
*/
|
|
17869
18072
|
_render(ctx) {
|
|
17870
|
-
|
|
17871
|
-
|
|
17872
|
-
|
|
17873
|
-
|
|
17874
|
-
|
|
17875
|
-
|
|
17876
|
-
|
|
18073
|
+
if (this.cornerRadius > 0) {
|
|
18074
|
+
// Render rounded triangle
|
|
18075
|
+
const points = this._getTrianglePoints();
|
|
18076
|
+
const roundedCorners = applyCornerRadiusToPolygon(points, this.cornerRadius);
|
|
18077
|
+
renderRoundedPolygon(ctx, roundedCorners, true);
|
|
18078
|
+
} else {
|
|
18079
|
+
// Render sharp triangle (original implementation)
|
|
18080
|
+
const widthBy2 = this.width / 2;
|
|
18081
|
+
const heightBy2 = this.height / 2;
|
|
18082
|
+
ctx.beginPath();
|
|
18083
|
+
ctx.moveTo(-widthBy2, heightBy2);
|
|
18084
|
+
ctx.lineTo(0, -heightBy2);
|
|
18085
|
+
ctx.lineTo(widthBy2, heightBy2);
|
|
18086
|
+
ctx.closePath();
|
|
18087
|
+
}
|
|
17877
18088
|
this._renderPaintInOrder(ctx);
|
|
17878
18089
|
}
|
|
17879
18090
|
|
|
18091
|
+
/**
|
|
18092
|
+
* Returns object representation of an instance
|
|
18093
|
+
* @param {Array} [propertiesToInclude] Any properties that you might want to additionally include in the output
|
|
18094
|
+
* @return {Object} object representation of an instance
|
|
18095
|
+
*/
|
|
18096
|
+
toObject() {
|
|
18097
|
+
let propertiesToInclude = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
|
|
18098
|
+
return super.toObject([...TRIANGLE_PROPS, ...propertiesToInclude]);
|
|
18099
|
+
}
|
|
18100
|
+
|
|
17880
18101
|
/**
|
|
17881
18102
|
* Returns svg representation of an instance
|
|
17882
18103
|
* @return {Array} an array of strings with the specific svg representation
|
|
17883
18104
|
* of the instance
|
|
17884
18105
|
*/
|
|
17885
18106
|
_toSVG() {
|
|
17886
|
-
|
|
17887
|
-
|
|
17888
|
-
points =
|
|
17889
|
-
|
|
18107
|
+
if (this.cornerRadius > 0) {
|
|
18108
|
+
// Generate rounded triangle as path
|
|
18109
|
+
const points = this._getTrianglePoints();
|
|
18110
|
+
const roundedCorners = applyCornerRadiusToPolygon(points, this.cornerRadius);
|
|
18111
|
+
const pathData = generateRoundedPolygonPath(roundedCorners, true);
|
|
18112
|
+
return ['<path ', 'COMMON_PARTS', `d="${pathData}" />`];
|
|
18113
|
+
} else {
|
|
18114
|
+
// Original sharp triangle implementation
|
|
18115
|
+
const widthBy2 = this.width / 2;
|
|
18116
|
+
const heightBy2 = this.height / 2;
|
|
18117
|
+
const points = `${-widthBy2} ${heightBy2},0 ${-heightBy2},${widthBy2} ${heightBy2}`;
|
|
18118
|
+
return ['<polygon ', 'COMMON_PARTS', 'points="', points, '" />'];
|
|
18119
|
+
}
|
|
17890
18120
|
}
|
|
17891
18121
|
}
|
|
18122
|
+
/**
|
|
18123
|
+
* Corner radius for rounded triangle corners
|
|
18124
|
+
* @type Number
|
|
18125
|
+
*/
|
|
17892
18126
|
_defineProperty(Triangle, "type", 'Triangle');
|
|
18127
|
+
_defineProperty(Triangle, "cacheProperties", [...cacheProperties, ...TRIANGLE_PROPS]);
|
|
17893
18128
|
_defineProperty(Triangle, "ownDefaults", triangleDefaultValues);
|
|
17894
18129
|
classRegistry.setClass(Triangle);
|
|
17895
18130
|
classRegistry.setSVGClass(Triangle);
|
|
@@ -18054,7 +18289,8 @@
|
|
|
18054
18289
|
/**
|
|
18055
18290
|
* @deprecated transient option soon to be removed in favor of a different design
|
|
18056
18291
|
*/
|
|
18057
|
-
exactBoundingBox: false
|
|
18292
|
+
exactBoundingBox: false,
|
|
18293
|
+
cornerRadius: 0
|
|
18058
18294
|
};
|
|
18059
18295
|
class Polyline extends FabricObject {
|
|
18060
18296
|
static getDefaults() {
|
|
@@ -18268,7 +18504,7 @@
|
|
|
18268
18504
|
toObject() {
|
|
18269
18505
|
let propertiesToInclude = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
|
|
18270
18506
|
return {
|
|
18271
|
-
...super.toObject(propertiesToInclude),
|
|
18507
|
+
...super.toObject(['cornerRadius', ...propertiesToInclude]),
|
|
18272
18508
|
points: this.points.map(_ref => {
|
|
18273
18509
|
let {
|
|
18274
18510
|
x,
|
|
@@ -18288,14 +18524,28 @@
|
|
|
18288
18524
|
* of the instance
|
|
18289
18525
|
*/
|
|
18290
18526
|
_toSVG() {
|
|
18291
|
-
|
|
18292
|
-
|
|
18293
|
-
|
|
18294
|
-
|
|
18295
|
-
|
|
18296
|
-
|
|
18527
|
+
if (this.cornerRadius > 0 && this.points.length >= 3) {
|
|
18528
|
+
// Generate rounded polygon/polyline as path
|
|
18529
|
+
const diffX = this.pathOffset.x;
|
|
18530
|
+
const diffY = this.pathOffset.y;
|
|
18531
|
+
const adjustedPoints = this.points.map(point => ({
|
|
18532
|
+
x: point.x - diffX,
|
|
18533
|
+
y: point.y - diffY
|
|
18534
|
+
}));
|
|
18535
|
+
const roundedCorners = applyCornerRadiusToPolygon(adjustedPoints, this.cornerRadius);
|
|
18536
|
+
const pathData = generateRoundedPolygonPath(roundedCorners, !this.isOpen());
|
|
18537
|
+
return ['<path ', 'COMMON_PARTS', `d="${pathData}" />\n`];
|
|
18538
|
+
} else {
|
|
18539
|
+
// Original sharp corners implementation
|
|
18540
|
+
const points = [];
|
|
18541
|
+
const diffX = this.pathOffset.x;
|
|
18542
|
+
const diffY = this.pathOffset.y;
|
|
18543
|
+
const NUM_FRACTION_DIGITS = config.NUM_FRACTION_DIGITS;
|
|
18544
|
+
for (let i = 0, len = this.points.length; i < len; i++) {
|
|
18545
|
+
points.push(toFixed(this.points[i].x - diffX, NUM_FRACTION_DIGITS), ',', toFixed(this.points[i].y - diffY, NUM_FRACTION_DIGITS), ' ');
|
|
18546
|
+
}
|
|
18547
|
+
return [`<${this.constructor.type.toLowerCase()} `, 'COMMON_PARTS', `points="${points.join('')}" />\n`];
|
|
18297
18548
|
}
|
|
18298
|
-
return [`<${this.constructor.type.toLowerCase()} `, 'COMMON_PARTS', `points="${points.join('')}" />\n`];
|
|
18299
18549
|
}
|
|
18300
18550
|
|
|
18301
18551
|
/**
|
|
@@ -18311,13 +18561,24 @@
|
|
|
18311
18561
|
// NaN comes from parseFloat of a empty string in parser
|
|
18312
18562
|
return;
|
|
18313
18563
|
}
|
|
18314
|
-
|
|
18315
|
-
|
|
18316
|
-
|
|
18317
|
-
|
|
18318
|
-
|
|
18564
|
+
if (this.cornerRadius > 0 && len >= 3) {
|
|
18565
|
+
// Render with rounded corners
|
|
18566
|
+
const adjustedPoints = this.points.map(point => ({
|
|
18567
|
+
x: point.x - x,
|
|
18568
|
+
y: point.y - y
|
|
18569
|
+
}));
|
|
18570
|
+
const roundedCorners = applyCornerRadiusToPolygon(adjustedPoints, this.cornerRadius);
|
|
18571
|
+
renderRoundedPolygon(ctx, roundedCorners, !this.isOpen());
|
|
18572
|
+
} else {
|
|
18573
|
+
// Original sharp corners implementation
|
|
18574
|
+
ctx.beginPath();
|
|
18575
|
+
ctx.moveTo(this.points[0].x - x, this.points[0].y - y);
|
|
18576
|
+
for (let i = 0; i < len; i++) {
|
|
18577
|
+
const point = this.points[i];
|
|
18578
|
+
ctx.lineTo(point.x - x, point.y - y);
|
|
18579
|
+
}
|
|
18580
|
+
!this.isOpen() && ctx.closePath();
|
|
18319
18581
|
}
|
|
18320
|
-
!this.isOpen() && ctx.closePath();
|
|
18321
18582
|
this._renderPaintInOrder(ctx);
|
|
18322
18583
|
}
|
|
18323
18584
|
|
|
@@ -18382,10 +18643,15 @@
|
|
|
18382
18643
|
* @type Boolean
|
|
18383
18644
|
* @default false
|
|
18384
18645
|
*/
|
|
18646
|
+
/**
|
|
18647
|
+
* Corner radius for rounded corners
|
|
18648
|
+
* @type Number
|
|
18649
|
+
* @default 0
|
|
18650
|
+
*/
|
|
18385
18651
|
_defineProperty(Polyline, "ownDefaults", polylineDefaultValues);
|
|
18386
18652
|
_defineProperty(Polyline, "type", 'Polyline');
|
|
18387
18653
|
_defineProperty(Polyline, "layoutProperties", [SKEW_X, SKEW_Y, 'strokeLineCap', 'strokeLineJoin', 'strokeMiterLimit', 'strokeWidth', 'strokeUniform', 'points']);
|
|
18388
|
-
_defineProperty(Polyline, "cacheProperties", [...cacheProperties, 'points']);
|
|
18654
|
+
_defineProperty(Polyline, "cacheProperties", [...cacheProperties, 'points', 'cornerRadius']);
|
|
18389
18655
|
_defineProperty(Polyline, "ATTRIBUTE_NAMES", [...SHARED_ATTRIBUTES]);
|
|
18390
18656
|
classRegistry.setClass(Polyline);
|
|
18391
18657
|
classRegistry.setSVGClass(Polyline);
|
|
@@ -18679,8 +18945,8 @@
|
|
|
18679
18945
|
// Global measurement context - reused for performance
|
|
18680
18946
|
let measurementContext = null;
|
|
18681
18947
|
|
|
18682
|
-
/**
|
|
18683
|
-
* Get or create the shared measurement context
|
|
18948
|
+
/**
|
|
18949
|
+
* Get or create the shared measurement context
|
|
18684
18950
|
*/
|
|
18685
18951
|
function getMeasurementContext() {
|
|
18686
18952
|
if (!measurementContext) {
|
|
@@ -18693,8 +18959,8 @@
|
|
|
18693
18959
|
return measurementContext;
|
|
18694
18960
|
}
|
|
18695
18961
|
|
|
18696
|
-
/**
|
|
18697
|
-
* Measure a single grapheme
|
|
18962
|
+
/**
|
|
18963
|
+
* Measure a single grapheme
|
|
18698
18964
|
*/
|
|
18699
18965
|
function measureGrapheme(grapheme, options, ctx) {
|
|
18700
18966
|
// Check cache first
|
|
@@ -18727,8 +18993,8 @@
|
|
|
18727
18993
|
return measurement;
|
|
18728
18994
|
}
|
|
18729
18995
|
|
|
18730
|
-
/**
|
|
18731
|
-
* Measure a grapheme with kerning relative to previous character
|
|
18996
|
+
/**
|
|
18997
|
+
* Measure a grapheme with kerning relative to previous character
|
|
18732
18998
|
*/
|
|
18733
18999
|
function measureGraphemeWithKerning(grapheme, previousGrapheme, options, ctx) {
|
|
18734
19000
|
// Get individual measurement
|
|
@@ -18769,8 +19035,8 @@
|
|
|
18769
19035
|
};
|
|
18770
19036
|
}
|
|
18771
19037
|
|
|
18772
|
-
/**
|
|
18773
|
-
* Get font metrics for layout calculations
|
|
19038
|
+
/**
|
|
19039
|
+
* Get font metrics for layout calculations
|
|
18774
19040
|
*/
|
|
18775
19041
|
function getFontMetrics(options) {
|
|
18776
19042
|
var _metrics$fontBounding, _metrics$fontBounding2, _metrics$actualBoundi, _metrics$actualBoundi2;
|
|
@@ -18805,8 +19071,8 @@
|
|
|
18805
19071
|
return result;
|
|
18806
19072
|
}
|
|
18807
19073
|
|
|
18808
|
-
/**
|
|
18809
|
-
* Apply font styling to canvas context
|
|
19074
|
+
/**
|
|
19075
|
+
* Apply font styling to canvas context
|
|
18810
19076
|
*/
|
|
18811
19077
|
function applyFontStyle(ctx, options) {
|
|
18812
19078
|
const fontDeclaration = getFontDeclaration(options);
|
|
@@ -18823,8 +19089,8 @@
|
|
|
18823
19089
|
ctx.textBaseline = 'alphabetic';
|
|
18824
19090
|
}
|
|
18825
19091
|
|
|
18826
|
-
/**
|
|
18827
|
-
* Generate font declaration string
|
|
19092
|
+
/**
|
|
19093
|
+
* Generate font declaration string
|
|
18828
19094
|
*/
|
|
18829
19095
|
function getFontDeclaration(options) {
|
|
18830
19096
|
const {
|
|
@@ -18839,8 +19105,8 @@
|
|
|
18839
19105
|
return `${fontStyle} ${fontWeight} ${fontSize}px ${normalizedFamily}`;
|
|
18840
19106
|
}
|
|
18841
19107
|
|
|
18842
|
-
/**
|
|
18843
|
-
* LRU Cache implementation for measurements
|
|
19108
|
+
/**
|
|
19109
|
+
* LRU Cache implementation for measurements
|
|
18844
19110
|
*/
|
|
18845
19111
|
class LRUCache {
|
|
18846
19112
|
constructor() {
|
|
@@ -18902,8 +19168,8 @@
|
|
|
18902
19168
|
}
|
|
18903
19169
|
}
|
|
18904
19170
|
|
|
18905
|
-
/**
|
|
18906
|
-
* Advanced measurement cache with font-aware keys
|
|
19171
|
+
/**
|
|
19172
|
+
* Advanced measurement cache with font-aware keys
|
|
18907
19173
|
*/
|
|
18908
19174
|
class MeasurementCache {
|
|
18909
19175
|
constructor() {
|
|
@@ -18930,8 +19196,8 @@
|
|
|
18930
19196
|
}
|
|
18931
19197
|
}
|
|
18932
19198
|
|
|
18933
|
-
/**
|
|
18934
|
-
* Kerning cache for character pairs
|
|
19199
|
+
/**
|
|
19200
|
+
* Kerning cache for character pairs
|
|
18935
19201
|
*/
|
|
18936
19202
|
class KerningCache {
|
|
18937
19203
|
constructor() {
|
|
@@ -18959,8 +19225,8 @@
|
|
|
18959
19225
|
}
|
|
18960
19226
|
}
|
|
18961
19227
|
|
|
18962
|
-
/**
|
|
18963
|
-
* Font metrics cache
|
|
19228
|
+
/**
|
|
19229
|
+
* Font metrics cache
|
|
18964
19230
|
*/
|
|
18965
19231
|
class FontMetricsCache {
|
|
18966
19232
|
constructor() {
|
|
@@ -18987,17 +19253,17 @@
|
|
|
18987
19253
|
const kerningCache = new KerningCache();
|
|
18988
19254
|
const fontMetricsCache = new FontMetricsCache();
|
|
18989
19255
|
|
|
18990
|
-
/**
|
|
18991
|
-
* Unicode and Internationalization Support
|
|
18992
|
-
*
|
|
18993
|
-
* Enhanced Unicode handling for complex scripts, RTL/LTR text,
|
|
18994
|
-
* and grapheme cluster boundary detection.
|
|
19256
|
+
/**
|
|
19257
|
+
* Unicode and Internationalization Support
|
|
19258
|
+
*
|
|
19259
|
+
* Enhanced Unicode handling for complex scripts, RTL/LTR text,
|
|
19260
|
+
* and grapheme cluster boundary detection.
|
|
18995
19261
|
*/
|
|
18996
19262
|
|
|
18997
19263
|
|
|
18998
|
-
/**
|
|
18999
|
-
* Enhanced grapheme segmentation using Intl.Segmenter when available
|
|
19000
|
-
* with fallback to existing graphemeSplit implementation
|
|
19264
|
+
/**
|
|
19265
|
+
* Enhanced grapheme segmentation using Intl.Segmenter when available
|
|
19266
|
+
* with fallback to existing graphemeSplit implementation
|
|
19001
19267
|
*/
|
|
19002
19268
|
function segmentGraphemes(text) {
|
|
19003
19269
|
// Use native Intl.Segmenter if available
|
|
@@ -19017,15 +19283,15 @@
|
|
|
19017
19283
|
return graphemeSplit(text);
|
|
19018
19284
|
}
|
|
19019
19285
|
|
|
19020
|
-
/**
|
|
19021
|
-
* Ellipsis Text Truncation System
|
|
19022
|
-
*
|
|
19023
|
-
* Implements text truncation with ellipsis when content exceeds bounds,
|
|
19024
|
-
* using binary search for optimal truncation points.
|
|
19286
|
+
/**
|
|
19287
|
+
* Ellipsis Text Truncation System
|
|
19288
|
+
*
|
|
19289
|
+
* Implements text truncation with ellipsis when content exceeds bounds,
|
|
19290
|
+
* using binary search for optimal truncation points.
|
|
19025
19291
|
*/
|
|
19026
19292
|
|
|
19027
|
-
/**
|
|
19028
|
-
* Apply ellipsis truncation to text based on width/height constraints
|
|
19293
|
+
/**
|
|
19294
|
+
* Apply ellipsis truncation to text based on width/height constraints
|
|
19029
19295
|
*/
|
|
19030
19296
|
function applyEllipsis(text, options) {
|
|
19031
19297
|
const {
|
|
@@ -19095,8 +19361,8 @@
|
|
|
19095
19361
|
};
|
|
19096
19362
|
}
|
|
19097
19363
|
|
|
19098
|
-
/**
|
|
19099
|
-
* Truncate text based on width constraint using binary search
|
|
19364
|
+
/**
|
|
19365
|
+
* Truncate text based on width constraint using binary search
|
|
19100
19366
|
*/
|
|
19101
19367
|
function truncateByWidth(text, maxWidth, ellipsisChar, ellipsisWidth, measureFn) {
|
|
19102
19368
|
const graphemes = segmentGraphemes(text);
|
|
@@ -19146,8 +19412,8 @@
|
|
|
19146
19412
|
};
|
|
19147
19413
|
}
|
|
19148
19414
|
|
|
19149
|
-
/**
|
|
19150
|
-
* Truncate text based on height constraint
|
|
19415
|
+
/**
|
|
19416
|
+
* Truncate text based on height constraint
|
|
19151
19417
|
*/
|
|
19152
19418
|
function truncateByHeight(text, maxHeight, ellipsisChar, measureFn) {
|
|
19153
19419
|
var _measureFn;
|
|
@@ -19195,19 +19461,19 @@
|
|
|
19195
19461
|
return truncateByWidth(lines[0], firstLineWidth, ellipsisChar, 0, measureFn);
|
|
19196
19462
|
}
|
|
19197
19463
|
|
|
19198
|
-
/**
|
|
19199
|
-
* Core Text Layout Engine
|
|
19200
|
-
*
|
|
19201
|
-
* Implements Konva-compatible text layout with support for:
|
|
19202
|
-
* - Multiple wrap modes (word/char/none)
|
|
19203
|
-
* - Ellipsis truncation
|
|
19204
|
-
* - Justify alignment with proper space distribution
|
|
19205
|
-
* - RTL/LTR text direction
|
|
19206
|
-
* - Advanced grapheme handling
|
|
19464
|
+
/**
|
|
19465
|
+
* Core Text Layout Engine
|
|
19466
|
+
*
|
|
19467
|
+
* Implements Konva-compatible text layout with support for:
|
|
19468
|
+
* - Multiple wrap modes (word/char/none)
|
|
19469
|
+
* - Ellipsis truncation
|
|
19470
|
+
* - Justify alignment with proper space distribution
|
|
19471
|
+
* - RTL/LTR text direction
|
|
19472
|
+
* - Advanced grapheme handling
|
|
19207
19473
|
*/
|
|
19208
19474
|
|
|
19209
|
-
/**
|
|
19210
|
-
* Main text layout function - converts text and options into positioned layout
|
|
19475
|
+
/**
|
|
19476
|
+
* Main text layout function - converts text and options into positioned layout
|
|
19211
19477
|
*/
|
|
19212
19478
|
function layoutText(options) {
|
|
19213
19479
|
var _ellipsisResult;
|
|
@@ -19326,8 +19592,8 @@
|
|
|
19326
19592
|
};
|
|
19327
19593
|
}
|
|
19328
19594
|
|
|
19329
|
-
/**
|
|
19330
|
-
* Layout a single paragraph with wrapping
|
|
19595
|
+
/**
|
|
19596
|
+
* Layout a single paragraph with wrapping
|
|
19331
19597
|
*/
|
|
19332
19598
|
function layoutParagraph(text, options) {
|
|
19333
19599
|
const {
|
|
@@ -19362,8 +19628,8 @@
|
|
|
19362
19628
|
return layoutLines;
|
|
19363
19629
|
}
|
|
19364
19630
|
|
|
19365
|
-
/**
|
|
19366
|
-
* Layout a single line of text (no wrapping)
|
|
19631
|
+
/**
|
|
19632
|
+
* Layout a single line of text (no wrapping)
|
|
19367
19633
|
*/
|
|
19368
19634
|
function layoutSingleLine(text, options) {
|
|
19369
19635
|
let textOffset = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;
|
|
@@ -19433,8 +19699,8 @@
|
|
|
19433
19699
|
};
|
|
19434
19700
|
}
|
|
19435
19701
|
|
|
19436
|
-
/**
|
|
19437
|
-
* Word-based wrapping algorithm
|
|
19702
|
+
/**
|
|
19703
|
+
* Word-based wrapping algorithm
|
|
19438
19704
|
*/
|
|
19439
19705
|
function wrapByWords(text, maxWidth, options) {
|
|
19440
19706
|
const lines = [];
|
|
@@ -19467,8 +19733,8 @@
|
|
|
19467
19733
|
return lines.length > 0 ? lines : [''];
|
|
19468
19734
|
}
|
|
19469
19735
|
|
|
19470
|
-
/**
|
|
19471
|
-
* Character-based wrapping algorithm
|
|
19736
|
+
/**
|
|
19737
|
+
* Character-based wrapping algorithm
|
|
19472
19738
|
*/
|
|
19473
19739
|
function wrapByCharacters(text, maxWidth, options) {
|
|
19474
19740
|
const lines = [];
|
|
@@ -19490,8 +19756,8 @@
|
|
|
19490
19756
|
return lines.length > 0 ? lines : [''];
|
|
19491
19757
|
}
|
|
19492
19758
|
|
|
19493
|
-
/**
|
|
19494
|
-
* Apply text alignment to lines
|
|
19759
|
+
/**
|
|
19760
|
+
* Apply text alignment to lines
|
|
19495
19761
|
*/
|
|
19496
19762
|
function applyAlignment(lines, align, containerWidth, options) {
|
|
19497
19763
|
return lines.map(line => {
|
|
@@ -19525,8 +19791,8 @@
|
|
|
19525
19791
|
});
|
|
19526
19792
|
}
|
|
19527
19793
|
|
|
19528
|
-
/**
|
|
19529
|
-
* Apply justify alignment by expanding spaces
|
|
19794
|
+
/**
|
|
19795
|
+
* Apply justify alignment by expanding spaces
|
|
19530
19796
|
*/
|
|
19531
19797
|
function applyJustification(line, containerWidth, options) {
|
|
19532
19798
|
const spaces = line.graphemes.filter(g => /\s/.test(g)).length;
|
|
@@ -19549,8 +19815,8 @@
|
|
|
19549
19815
|
return line;
|
|
19550
19816
|
}
|
|
19551
19817
|
|
|
19552
|
-
/**
|
|
19553
|
-
* Calculate vertical alignment offset
|
|
19818
|
+
/**
|
|
19819
|
+
* Calculate vertical alignment offset
|
|
19554
19820
|
*/
|
|
19555
19821
|
function calculateVerticalOffset(contentHeight, containerHeight, align) {
|
|
19556
19822
|
switch (align) {
|
|
@@ -19564,8 +19830,8 @@
|
|
|
19564
19830
|
}
|
|
19565
19831
|
}
|
|
19566
19832
|
|
|
19567
|
-
/**
|
|
19568
|
-
* Handle height overflow with ellipsis
|
|
19833
|
+
/**
|
|
19834
|
+
* Handle height overflow with ellipsis
|
|
19569
19835
|
*/
|
|
19570
19836
|
function handleHeightOverflow(existingLines, overflowLine, remainingHeight, options) {
|
|
19571
19837
|
// If ellipsis is enabled, try to fit part of the overflow line
|
|
@@ -19594,8 +19860,8 @@
|
|
|
19594
19860
|
};
|
|
19595
19861
|
}
|
|
19596
19862
|
|
|
19597
|
-
/**
|
|
19598
|
-
* Create empty line for empty paragraphs
|
|
19863
|
+
/**
|
|
19864
|
+
* Create empty line for empty paragraphs
|
|
19599
19865
|
*/
|
|
19600
19866
|
function createEmptyLine(options) {
|
|
19601
19867
|
const height = options.fontSize * options.lineHeight;
|
|
@@ -19611,8 +19877,8 @@
|
|
|
19611
19877
|
};
|
|
19612
19878
|
}
|
|
19613
19879
|
|
|
19614
|
-
/**
|
|
19615
|
-
* Measure width of a line of text
|
|
19880
|
+
/**
|
|
19881
|
+
* Measure width of a line of text
|
|
19616
19882
|
*/
|
|
19617
19883
|
function measureLineWidth(text, options) {
|
|
19618
19884
|
const graphemes = segmentGraphemes(text);
|
|
@@ -19629,8 +19895,8 @@
|
|
|
19629
19895
|
return width;
|
|
19630
19896
|
}
|
|
19631
19897
|
|
|
19632
|
-
/**
|
|
19633
|
-
* Convert layout options to measurement options
|
|
19898
|
+
/**
|
|
19899
|
+
* Convert layout options to measurement options
|
|
19634
19900
|
*/
|
|
19635
19901
|
function createMeasurementOptions(options) {
|
|
19636
19902
|
return {
|
|
@@ -19873,15 +20139,15 @@
|
|
|
19873
20139
|
}
|
|
19874
20140
|
}
|
|
19875
20141
|
|
|
19876
|
-
/**
|
|
19877
|
-
* Browser Line Break Extraction
|
|
19878
|
-
*
|
|
19879
|
-
* Captures exact line breaks as rendered by the browser to ensure
|
|
19880
|
-
* pixel-perfect consistency between DOM editing and canvas rendering.
|
|
20142
|
+
/**
|
|
20143
|
+
* Browser Line Break Extraction
|
|
20144
|
+
*
|
|
20145
|
+
* Captures exact line breaks as rendered by the browser to ensure
|
|
20146
|
+
* pixel-perfect consistency between DOM editing and canvas rendering.
|
|
19881
20147
|
*/
|
|
19882
20148
|
|
|
19883
|
-
/**
|
|
19884
|
-
* Segment text into graphemes safely using Intl.Segmenter or fallback
|
|
20149
|
+
/**
|
|
20150
|
+
* Segment text into graphemes safely using Intl.Segmenter or fallback
|
|
19885
20151
|
*/
|
|
19886
20152
|
function segmentIntoGraphemes(text) {
|
|
19887
20153
|
if (typeof Intl !== 'undefined' && Intl.Segmenter) {
|
|
@@ -19895,9 +20161,9 @@
|
|
|
19895
20161
|
return Array.from(text);
|
|
19896
20162
|
}
|
|
19897
20163
|
|
|
19898
|
-
/**
|
|
19899
|
-
* Extract line break information from a textarea by creating a mirror element
|
|
19900
|
-
* with identical computed styles and measuring grapheme positions.
|
|
20164
|
+
/**
|
|
20165
|
+
* Extract line break information from a textarea by creating a mirror element
|
|
20166
|
+
* with identical computed styles and measuring grapheme positions.
|
|
19901
20167
|
*/
|
|
19902
20168
|
function extractLinesFromDOM(textarea) {
|
|
19903
20169
|
const text = textarea.value;
|
|
@@ -19992,16 +20258,16 @@
|
|
|
19992
20258
|
}
|
|
19993
20259
|
}
|
|
19994
20260
|
|
|
19995
|
-
/**
|
|
19996
|
-
* Create a hash of layout-affecting properties to detect when browser lines are still valid
|
|
20261
|
+
/**
|
|
20262
|
+
* Create a hash of layout-affecting properties to detect when browser lines are still valid
|
|
19997
20263
|
*/
|
|
19998
20264
|
function createLayoutHash(target) {
|
|
19999
20265
|
const properties = [target.text, target.width, target.height, target.fontFamily, target.fontSize, target.fontWeight, target.fontStyle, target.lineHeight, target.charSpacing, target.textAlign, target.direction];
|
|
20000
20266
|
return properties.map(p => String(p)).join('|');
|
|
20001
20267
|
}
|
|
20002
20268
|
|
|
20003
|
-
/**
|
|
20004
|
-
* Check if stored browser lines are still valid for the current target state
|
|
20269
|
+
/**
|
|
20270
|
+
* Check if stored browser lines are still valid for the current target state
|
|
20005
20271
|
*/
|
|
20006
20272
|
function areBrowserLinesValid(target, storedHash) {
|
|
20007
20273
|
if (!storedHash || !target.__lastBrowserLines) {
|
|
@@ -20011,24 +20277,24 @@
|
|
|
20011
20277
|
return currentHash === storedHash;
|
|
20012
20278
|
}
|
|
20013
20279
|
|
|
20014
|
-
/**
|
|
20015
|
-
* Store browser lines on a target object with validity hash
|
|
20280
|
+
/**
|
|
20281
|
+
* Store browser lines on a target object with validity hash
|
|
20016
20282
|
*/
|
|
20017
20283
|
function storeBrowserLines(target, lines, layoutHash) {
|
|
20018
20284
|
target.__lastBrowserLines = lines;
|
|
20019
20285
|
target.__lastBrowserLinesHash = createLayoutHash(target);
|
|
20020
20286
|
}
|
|
20021
20287
|
|
|
20022
|
-
/**
|
|
20023
|
-
* Clear stored browser lines from a target object
|
|
20288
|
+
/**
|
|
20289
|
+
* Clear stored browser lines from a target object
|
|
20024
20290
|
*/
|
|
20025
20291
|
function clearBrowserLines(target) {
|
|
20026
20292
|
delete target.__lastBrowserLines;
|
|
20027
20293
|
delete target.__lastBrowserLinesHash;
|
|
20028
20294
|
}
|
|
20029
20295
|
|
|
20030
|
-
/**
|
|
20031
|
-
* Get stored browser lines if they're still valid
|
|
20296
|
+
/**
|
|
20297
|
+
* Get stored browser lines if they're still valid
|
|
20032
20298
|
*/
|
|
20033
20299
|
function getBrowserLines(target) {
|
|
20034
20300
|
const lines = target.__lastBrowserLines;
|
|
@@ -20041,9 +20307,9 @@
|
|
|
20041
20307
|
|
|
20042
20308
|
let measuringContext;
|
|
20043
20309
|
|
|
20044
|
-
/**
|
|
20045
|
-
* Return a context for measurement of text string.
|
|
20046
|
-
* if created it gets stored for reuse
|
|
20310
|
+
/**
|
|
20311
|
+
* Return a context for measurement of text string.
|
|
20312
|
+
* if created it gets stored for reuse
|
|
20047
20313
|
*/
|
|
20048
20314
|
function getMeasuringContext() {
|
|
20049
20315
|
if (!measuringContext) {
|
|
@@ -20056,17 +20322,17 @@
|
|
|
20056
20322
|
return measuringContext;
|
|
20057
20323
|
}
|
|
20058
20324
|
|
|
20059
|
-
/**
|
|
20060
|
-
* Measure and return the info of a single grapheme.
|
|
20061
|
-
* needs the the info of previous graphemes already filled
|
|
20062
|
-
* Override to customize measuring
|
|
20325
|
+
/**
|
|
20326
|
+
* Measure and return the info of a single grapheme.
|
|
20327
|
+
* needs the the info of previous graphemes already filled
|
|
20328
|
+
* Override to customize measuring
|
|
20063
20329
|
*/
|
|
20064
20330
|
|
|
20065
20331
|
// @TODO this is not complete
|
|
20066
20332
|
|
|
20067
|
-
/**
|
|
20068
|
-
* Text class
|
|
20069
|
-
* @see {@link http://fabricjs.com/fabric-intro-part-2#text}
|
|
20333
|
+
/**
|
|
20334
|
+
* Text class
|
|
20335
|
+
* @see {@link http://fabricjs.com/fabric-intro-part-2#text}
|
|
20070
20336
|
*/
|
|
20071
20337
|
class FabricText extends StyledText {
|
|
20072
20338
|
static getDefaults() {
|
|
@@ -20077,11 +20343,11 @@
|
|
|
20077
20343
|
}
|
|
20078
20344
|
constructor(text, options) {
|
|
20079
20345
|
super();
|
|
20080
|
-
/**
|
|
20081
|
-
* contains characters bounding boxes
|
|
20082
|
-
* This variable is considered to be protected.
|
|
20083
|
-
* But for how mixins are implemented right now, we can't leave it private
|
|
20084
|
-
* @protected
|
|
20346
|
+
/**
|
|
20347
|
+
* contains characters bounding boxes
|
|
20348
|
+
* This variable is considered to be protected.
|
|
20349
|
+
* But for how mixins are implemented right now, we can't leave it private
|
|
20350
|
+
* @protected
|
|
20085
20351
|
*/
|
|
20086
20352
|
_defineProperty(this, "__charBounds", []);
|
|
20087
20353
|
Object.assign(this, FabricText.ownDefaults);
|
|
@@ -20098,9 +20364,9 @@
|
|
|
20098
20364
|
this.setCoords();
|
|
20099
20365
|
}
|
|
20100
20366
|
|
|
20101
|
-
/**
|
|
20102
|
-
* If text has a path, it will add the extra information needed
|
|
20103
|
-
* for path and text calculations
|
|
20367
|
+
/**
|
|
20368
|
+
* If text has a path, it will add the extra information needed
|
|
20369
|
+
* for path and text calculations
|
|
20104
20370
|
*/
|
|
20105
20371
|
setPathInfo() {
|
|
20106
20372
|
const path = this.path;
|
|
@@ -20109,10 +20375,10 @@
|
|
|
20109
20375
|
}
|
|
20110
20376
|
}
|
|
20111
20377
|
|
|
20112
|
-
/**
|
|
20113
|
-
* @private
|
|
20114
|
-
* Divides text into lines of text and lines of graphemes.
|
|
20115
|
-
* Uses browser lines when available for pixel-perfect consistency.
|
|
20378
|
+
/**
|
|
20379
|
+
* @private
|
|
20380
|
+
* Divides text into lines of text and lines of graphemes.
|
|
20381
|
+
* Uses browser lines when available for pixel-perfect consistency.
|
|
20116
20382
|
*/
|
|
20117
20383
|
_splitText() {
|
|
20118
20384
|
// Check if we have valid browser lines and should use them
|
|
@@ -20128,9 +20394,9 @@
|
|
|
20128
20394
|
return newLines;
|
|
20129
20395
|
}
|
|
20130
20396
|
|
|
20131
|
-
/**
|
|
20132
|
-
* Create TextLinesInfo from browser-extracted lines
|
|
20133
|
-
* @private
|
|
20397
|
+
/**
|
|
20398
|
+
* Create TextLinesInfo from browser-extracted lines
|
|
20399
|
+
* @private
|
|
20134
20400
|
*/
|
|
20135
20401
|
_splitTextFromBrowserLines(browserLines) {
|
|
20136
20402
|
const lines = [];
|
|
@@ -20164,10 +20430,10 @@
|
|
|
20164
20430
|
return result;
|
|
20165
20431
|
}
|
|
20166
20432
|
|
|
20167
|
-
/**
|
|
20168
|
-
* Initialize or update text dimensions.
|
|
20169
|
-
* Updates this.width and this.height with the proper values.
|
|
20170
|
-
* Does not return dimensions.
|
|
20433
|
+
/**
|
|
20434
|
+
* Initialize or update text dimensions.
|
|
20435
|
+
* Updates this.width and this.height with the proper values.
|
|
20436
|
+
* Does not return dimensions.
|
|
20171
20437
|
*/
|
|
20172
20438
|
initDimensions() {
|
|
20173
20439
|
// Use advanced layout if enabled
|
|
@@ -20190,8 +20456,8 @@
|
|
|
20190
20456
|
}
|
|
20191
20457
|
}
|
|
20192
20458
|
|
|
20193
|
-
/**
|
|
20194
|
-
* Enlarge space boxes and shift the others
|
|
20459
|
+
/**
|
|
20460
|
+
* Enlarge space boxes and shift the others
|
|
20195
20461
|
*/
|
|
20196
20462
|
enlargeSpaces() {
|
|
20197
20463
|
let diffSpace, currentLineWidth, numberOfSpaces, accumulatedSpace, line, charBound, spaces;
|
|
@@ -20250,18 +20516,18 @@
|
|
|
20250
20516
|
}
|
|
20251
20517
|
}
|
|
20252
20518
|
|
|
20253
|
-
/**
|
|
20254
|
-
* Advanced layout using new text engine (Konva-compatible)
|
|
20255
|
-
* @private
|
|
20519
|
+
/**
|
|
20520
|
+
* Advanced layout using new text engine (Konva-compatible)
|
|
20521
|
+
* @private
|
|
20256
20522
|
*/
|
|
20257
20523
|
_layoutTextAdvanced() {
|
|
20258
20524
|
const options = this._getAdvancedLayoutOptions();
|
|
20259
20525
|
return layoutText(options);
|
|
20260
20526
|
}
|
|
20261
20527
|
|
|
20262
|
-
/**
|
|
20263
|
-
* Get advanced layout options from current text properties
|
|
20264
|
-
* @private
|
|
20528
|
+
/**
|
|
20529
|
+
* Get advanced layout options from current text properties
|
|
20530
|
+
* @private
|
|
20265
20531
|
*/
|
|
20266
20532
|
_getAdvancedLayoutOptions() {
|
|
20267
20533
|
return {
|
|
@@ -20283,9 +20549,9 @@
|
|
|
20283
20549
|
};
|
|
20284
20550
|
}
|
|
20285
20551
|
|
|
20286
|
-
/**
|
|
20287
|
-
* Map Fabric textAlign to Konva align format
|
|
20288
|
-
* @private
|
|
20552
|
+
/**
|
|
20553
|
+
* Map Fabric textAlign to Konva align format
|
|
20554
|
+
* @private
|
|
20289
20555
|
*/
|
|
20290
20556
|
_mapTextAlignToAlign(textAlign) {
|
|
20291
20557
|
switch (textAlign) {
|
|
@@ -20306,8 +20572,8 @@
|
|
|
20306
20572
|
}
|
|
20307
20573
|
}
|
|
20308
20574
|
|
|
20309
|
-
/**
|
|
20310
|
-
* Enhanced initDimensions that uses advanced layout when enabled
|
|
20575
|
+
/**
|
|
20576
|
+
* Enhanced initDimensions that uses advanced layout when enabled
|
|
20311
20577
|
*/
|
|
20312
20578
|
initDimensionsAdvanced() {
|
|
20313
20579
|
if (!this.enableAdvancedLayout) {
|
|
@@ -20324,9 +20590,9 @@
|
|
|
20324
20590
|
this.dirty = true;
|
|
20325
20591
|
}
|
|
20326
20592
|
|
|
20327
|
-
/**
|
|
20328
|
-
* Convert new layout format to legacy _textLines and __charBounds format
|
|
20329
|
-
* @private
|
|
20593
|
+
/**
|
|
20594
|
+
* Convert new layout format to legacy _textLines and __charBounds format
|
|
20595
|
+
* @private
|
|
20330
20596
|
*/
|
|
20331
20597
|
_convertLayoutToLegacyFormat(layout) {
|
|
20332
20598
|
this._textLines = layout.lines.map(line => line.graphemes);
|
|
@@ -20348,30 +20614,30 @@
|
|
|
20348
20614
|
}
|
|
20349
20615
|
}
|
|
20350
20616
|
|
|
20351
|
-
/**
|
|
20352
|
-
* Detect if the text line is ended with an hard break
|
|
20353
|
-
* text and itext do not have wrapping, return false
|
|
20354
|
-
* @return {Boolean}
|
|
20617
|
+
/**
|
|
20618
|
+
* Detect if the text line is ended with an hard break
|
|
20619
|
+
* text and itext do not have wrapping, return false
|
|
20620
|
+
* @return {Boolean}
|
|
20355
20621
|
*/
|
|
20356
20622
|
isEndOfWrapping(lineIndex) {
|
|
20357
20623
|
return lineIndex === this._textLines.length - 1;
|
|
20358
20624
|
}
|
|
20359
20625
|
|
|
20360
|
-
/**
|
|
20361
|
-
* Detect if a line has a linebreak and so we need to account for it when moving
|
|
20362
|
-
* and counting style.
|
|
20363
|
-
* It return always 1 for text and Itext. Textbox has its own implementation
|
|
20364
|
-
* @return Number
|
|
20626
|
+
/**
|
|
20627
|
+
* Detect if a line has a linebreak and so we need to account for it when moving
|
|
20628
|
+
* and counting style.
|
|
20629
|
+
* It return always 1 for text and Itext. Textbox has its own implementation
|
|
20630
|
+
* @return Number
|
|
20365
20631
|
*/
|
|
20366
20632
|
|
|
20367
20633
|
missingNewlineOffset(_lineIndex) {
|
|
20368
20634
|
return 1;
|
|
20369
20635
|
}
|
|
20370
20636
|
|
|
20371
|
-
/**
|
|
20372
|
-
* Returns 2d representation (lineIndex and charIndex) of cursor
|
|
20373
|
-
* @param {Number} selectionStart
|
|
20374
|
-
* @param {Boolean} [skipWrapping] consider the location for unwrapped lines. useful to manage styles.
|
|
20637
|
+
/**
|
|
20638
|
+
* Returns 2d representation (lineIndex and charIndex) of cursor
|
|
20639
|
+
* @param {Number} selectionStart
|
|
20640
|
+
* @param {Boolean} [skipWrapping] consider the location for unwrapped lines. useful to manage styles.
|
|
20375
20641
|
*/
|
|
20376
20642
|
get2DCursorLocation(selectionStart, skipWrapping) {
|
|
20377
20643
|
const lines = skipWrapping ? this._unwrappedTextLines : this._textLines;
|
|
@@ -20391,24 +20657,24 @@
|
|
|
20391
20657
|
};
|
|
20392
20658
|
}
|
|
20393
20659
|
|
|
20394
|
-
/**
|
|
20395
|
-
* Returns string representation of an instance
|
|
20396
|
-
* @return {String} String representation of text object
|
|
20660
|
+
/**
|
|
20661
|
+
* Returns string representation of an instance
|
|
20662
|
+
* @return {String} String representation of text object
|
|
20397
20663
|
*/
|
|
20398
20664
|
toString() {
|
|
20399
20665
|
return `#<Text (${this.complexity()}): { "text": "${this.text}", "fontFamily": "${this.fontFamily}" }>`;
|
|
20400
20666
|
}
|
|
20401
20667
|
|
|
20402
|
-
/**
|
|
20403
|
-
* Return the dimension and the zoom level needed to create a cache canvas
|
|
20404
|
-
* big enough to host the object to be cached.
|
|
20405
|
-
* @private
|
|
20406
|
-
* @param {Object} dim.x width of object to be cached
|
|
20407
|
-
* @param {Object} dim.y height of object to be cached
|
|
20408
|
-
* @return {Object}.width width of canvas
|
|
20409
|
-
* @return {Object}.height height of canvas
|
|
20410
|
-
* @return {Object}.zoomX zoomX zoom value to unscale the canvas before drawing cache
|
|
20411
|
-
* @return {Object}.zoomY zoomY zoom value to unscale the canvas before drawing cache
|
|
20668
|
+
/**
|
|
20669
|
+
* Return the dimension and the zoom level needed to create a cache canvas
|
|
20670
|
+
* big enough to host the object to be cached.
|
|
20671
|
+
* @private
|
|
20672
|
+
* @param {Object} dim.x width of object to be cached
|
|
20673
|
+
* @param {Object} dim.y height of object to be cached
|
|
20674
|
+
* @return {Object}.width width of canvas
|
|
20675
|
+
* @return {Object}.height height of canvas
|
|
20676
|
+
* @return {Object}.zoomX zoomX zoom value to unscale the canvas before drawing cache
|
|
20677
|
+
* @return {Object}.zoomY zoomY zoom value to unscale the canvas before drawing cache
|
|
20412
20678
|
*/
|
|
20413
20679
|
_getCacheCanvasDimensions() {
|
|
20414
20680
|
const dims = super._getCacheCanvasDimensions();
|
|
@@ -20418,9 +20684,9 @@
|
|
|
20418
20684
|
return dims;
|
|
20419
20685
|
}
|
|
20420
20686
|
|
|
20421
|
-
/**
|
|
20422
|
-
* @private
|
|
20423
|
-
* @param {CanvasRenderingContext2D} ctx Context to render on
|
|
20687
|
+
/**
|
|
20688
|
+
* @private
|
|
20689
|
+
* @param {CanvasRenderingContext2D} ctx Context to render on
|
|
20424
20690
|
*/
|
|
20425
20691
|
_render(ctx) {
|
|
20426
20692
|
const path = this.path;
|
|
@@ -20433,9 +20699,9 @@
|
|
|
20433
20699
|
this._renderTextDecoration(ctx, 'linethrough');
|
|
20434
20700
|
}
|
|
20435
20701
|
|
|
20436
|
-
/**
|
|
20437
|
-
* @private
|
|
20438
|
-
* @param {CanvasRenderingContext2D} ctx Context to render on
|
|
20702
|
+
/**
|
|
20703
|
+
* @private
|
|
20704
|
+
* @param {CanvasRenderingContext2D} ctx Context to render on
|
|
20439
20705
|
*/
|
|
20440
20706
|
_renderText(ctx) {
|
|
20441
20707
|
// Skip text rendering if in overlay editing mode
|
|
@@ -20451,15 +20717,15 @@
|
|
|
20451
20717
|
}
|
|
20452
20718
|
}
|
|
20453
20719
|
|
|
20454
|
-
/**
|
|
20455
|
-
* Set the font parameter of the context with the object properties or with charStyle
|
|
20456
|
-
* @private
|
|
20457
|
-
* @param {CanvasRenderingContext2D} ctx Context to render on
|
|
20458
|
-
* @param {Object} [charStyle] object with font style properties
|
|
20459
|
-
* @param {String} [charStyle.fontFamily] Font Family
|
|
20460
|
-
* @param {Number} [charStyle.fontSize] Font size in pixels. ( without px suffix )
|
|
20461
|
-
* @param {String} [charStyle.fontWeight] Font weight
|
|
20462
|
-
* @param {String} [charStyle.fontStyle] Font style (italic|normal)
|
|
20720
|
+
/**
|
|
20721
|
+
* Set the font parameter of the context with the object properties or with charStyle
|
|
20722
|
+
* @private
|
|
20723
|
+
* @param {CanvasRenderingContext2D} ctx Context to render on
|
|
20724
|
+
* @param {Object} [charStyle] object with font style properties
|
|
20725
|
+
* @param {String} [charStyle.fontFamily] Font Family
|
|
20726
|
+
* @param {Number} [charStyle.fontSize] Font size in pixels. ( without px suffix )
|
|
20727
|
+
* @param {String} [charStyle.fontWeight] Font weight
|
|
20728
|
+
* @param {String} [charStyle.fontStyle] Font style (italic|normal)
|
|
20463
20729
|
*/
|
|
20464
20730
|
_setTextStyles(ctx, charStyle, forMeasuring) {
|
|
20465
20731
|
ctx.textBaseline = 'alphabetic';
|
|
@@ -20479,11 +20745,11 @@
|
|
|
20479
20745
|
ctx.font = this._getFontDeclaration(charStyle, forMeasuring);
|
|
20480
20746
|
}
|
|
20481
20747
|
|
|
20482
|
-
/**
|
|
20483
|
-
* calculate and return the text Width measuring each line.
|
|
20484
|
-
* @private
|
|
20485
|
-
* @param {CanvasRenderingContext2D} ctx Context to render on
|
|
20486
|
-
* @return {Number} Maximum width of Text object
|
|
20748
|
+
/**
|
|
20749
|
+
* calculate and return the text Width measuring each line.
|
|
20750
|
+
* @private
|
|
20751
|
+
* @param {CanvasRenderingContext2D} ctx Context to render on
|
|
20752
|
+
* @return {Number} Maximum width of Text object
|
|
20487
20753
|
*/
|
|
20488
20754
|
calcTextWidth() {
|
|
20489
20755
|
let maxWidth = this.getLineWidth(0);
|
|
@@ -20496,23 +20762,23 @@
|
|
|
20496
20762
|
return maxWidth;
|
|
20497
20763
|
}
|
|
20498
20764
|
|
|
20499
|
-
/**
|
|
20500
|
-
* @private
|
|
20501
|
-
* @param {String} method Method name ("fillText" or "strokeText")
|
|
20502
|
-
* @param {CanvasRenderingContext2D} ctx Context to render on
|
|
20503
|
-
* @param {String} line Text to render
|
|
20504
|
-
* @param {Number} left Left position of text
|
|
20505
|
-
* @param {Number} top Top position of text
|
|
20506
|
-
* @param {Number} lineIndex Index of a line in a text
|
|
20765
|
+
/**
|
|
20766
|
+
* @private
|
|
20767
|
+
* @param {String} method Method name ("fillText" or "strokeText")
|
|
20768
|
+
* @param {CanvasRenderingContext2D} ctx Context to render on
|
|
20769
|
+
* @param {String} line Text to render
|
|
20770
|
+
* @param {Number} left Left position of text
|
|
20771
|
+
* @param {Number} top Top position of text
|
|
20772
|
+
* @param {Number} lineIndex Index of a line in a text
|
|
20507
20773
|
*/
|
|
20508
20774
|
_renderTextLine(method, ctx, line, left, top, lineIndex) {
|
|
20509
20775
|
this._renderChars(method, ctx, line, left, top, lineIndex);
|
|
20510
20776
|
}
|
|
20511
20777
|
|
|
20512
|
-
/**
|
|
20513
|
-
* Renders the text background for lines, taking care of style
|
|
20514
|
-
* @private
|
|
20515
|
-
* @param {CanvasRenderingContext2D} ctx Context to render on
|
|
20778
|
+
/**
|
|
20779
|
+
* Renders the text background for lines, taking care of style
|
|
20780
|
+
* @private
|
|
20781
|
+
* @param {CanvasRenderingContext2D} ctx Context to render on
|
|
20516
20782
|
*/
|
|
20517
20783
|
_renderTextLinesBackground(ctx) {
|
|
20518
20784
|
if (!this.textBackgroundColor && !this.styleHas('textBackgroundColor')) {
|
|
@@ -20575,15 +20841,15 @@
|
|
|
20575
20841
|
this._removeShadow(ctx);
|
|
20576
20842
|
}
|
|
20577
20843
|
|
|
20578
|
-
/**
|
|
20579
|
-
* measure and return the width of a single character.
|
|
20580
|
-
* possibly overridden to accommodate different measure logic or
|
|
20581
|
-
* to hook some external lib for character measurement
|
|
20582
|
-
* @private
|
|
20583
|
-
* @param {String} _char, char to be measured
|
|
20584
|
-
* @param {Object} charStyle style of char to be measured
|
|
20585
|
-
* @param {String} [previousChar] previous char
|
|
20586
|
-
* @param {Object} [prevCharStyle] style of previous char
|
|
20844
|
+
/**
|
|
20845
|
+
* measure and return the width of a single character.
|
|
20846
|
+
* possibly overridden to accommodate different measure logic or
|
|
20847
|
+
* to hook some external lib for character measurement
|
|
20848
|
+
* @private
|
|
20849
|
+
* @param {String} _char, char to be measured
|
|
20850
|
+
* @param {Object} charStyle style of char to be measured
|
|
20851
|
+
* @param {String} [previousChar] previous char
|
|
20852
|
+
* @param {Object} [prevCharStyle] style of previous char
|
|
20587
20853
|
*/
|
|
20588
20854
|
_measureChar(_char, charStyle, previousChar, prevCharStyle) {
|
|
20589
20855
|
const fontCache = cache.getFontCache(charStyle),
|
|
@@ -20628,19 +20894,19 @@
|
|
|
20628
20894
|
};
|
|
20629
20895
|
}
|
|
20630
20896
|
|
|
20631
|
-
/**
|
|
20632
|
-
* Computes height of character at given position
|
|
20633
|
-
* @param {Number} line the line index number
|
|
20634
|
-
* @param {Number} _char the character index number
|
|
20635
|
-
* @return {Number} fontSize of the character
|
|
20897
|
+
/**
|
|
20898
|
+
* Computes height of character at given position
|
|
20899
|
+
* @param {Number} line the line index number
|
|
20900
|
+
* @param {Number} _char the character index number
|
|
20901
|
+
* @return {Number} fontSize of the character
|
|
20636
20902
|
*/
|
|
20637
20903
|
getHeightOfChar(line, _char) {
|
|
20638
20904
|
return this.getValueOfPropertyAt(line, _char, 'fontSize');
|
|
20639
20905
|
}
|
|
20640
20906
|
|
|
20641
|
-
/**
|
|
20642
|
-
* measure a text line measuring all characters.
|
|
20643
|
-
* @param {Number} lineIndex line number
|
|
20907
|
+
/**
|
|
20908
|
+
* measure a text line measuring all characters.
|
|
20909
|
+
* @param {Number} lineIndex line number
|
|
20644
20910
|
*/
|
|
20645
20911
|
measureLine(lineIndex) {
|
|
20646
20912
|
const lineInfo = this._measureLine(lineIndex);
|
|
@@ -20653,11 +20919,11 @@
|
|
|
20653
20919
|
return lineInfo;
|
|
20654
20920
|
}
|
|
20655
20921
|
|
|
20656
|
-
/**
|
|
20657
|
-
* measure every grapheme of a line, populating __charBounds
|
|
20658
|
-
* @param {Number} lineIndex
|
|
20659
|
-
* @return {Object} object.width total width of characters
|
|
20660
|
-
* @return {Object} object.numOfSpaces length of chars that match this._reSpacesAndTabs
|
|
20922
|
+
/**
|
|
20923
|
+
* measure every grapheme of a line, populating __charBounds
|
|
20924
|
+
* @param {Number} lineIndex
|
|
20925
|
+
* @return {Object} object.width total width of characters
|
|
20926
|
+
* @return {Object} object.numOfSpaces length of chars that match this._reSpacesAndTabs
|
|
20661
20927
|
*/
|
|
20662
20928
|
_measureLine(lineIndex) {
|
|
20663
20929
|
let width = 0,
|
|
@@ -20720,13 +20986,13 @@
|
|
|
20720
20986
|
};
|
|
20721
20987
|
}
|
|
20722
20988
|
|
|
20723
|
-
/**
|
|
20724
|
-
* Calculate the angle and the left,top position of the char that follow a path.
|
|
20725
|
-
* It appends it to graphemeInfo to be reused later at rendering
|
|
20726
|
-
* @private
|
|
20727
|
-
* @param {Number} positionInPath to be measured
|
|
20728
|
-
* @param {GraphemeBBox} graphemeInfo current grapheme box information
|
|
20729
|
-
* @param {Object} startingPoint position of the point
|
|
20989
|
+
/**
|
|
20990
|
+
* Calculate the angle and the left,top position of the char that follow a path.
|
|
20991
|
+
* It appends it to graphemeInfo to be reused later at rendering
|
|
20992
|
+
* @private
|
|
20993
|
+
* @param {Number} positionInPath to be measured
|
|
20994
|
+
* @param {GraphemeBBox} graphemeInfo current grapheme box information
|
|
20995
|
+
* @param {Object} startingPoint position of the point
|
|
20730
20996
|
*/
|
|
20731
20997
|
_setGraphemeOnPath(positionInPath, graphemeInfo) {
|
|
20732
20998
|
const centerPosition = positionInPath + graphemeInfo.kernedWidth / 2,
|
|
@@ -20739,13 +21005,13 @@
|
|
|
20739
21005
|
graphemeInfo.angle = info.angle + (this.pathSide === RIGHT ? Math.PI : 0);
|
|
20740
21006
|
}
|
|
20741
21007
|
|
|
20742
|
-
/**
|
|
20743
|
-
*
|
|
20744
|
-
* @param {String} grapheme to be measured
|
|
20745
|
-
* @param {Number} lineIndex index of the line where the char is
|
|
20746
|
-
* @param {Number} charIndex position in the line
|
|
20747
|
-
* @param {String} [prevGrapheme] character preceding the one to be measured
|
|
20748
|
-
* @returns {GraphemeBBox} grapheme bbox
|
|
21008
|
+
/**
|
|
21009
|
+
*
|
|
21010
|
+
* @param {String} grapheme to be measured
|
|
21011
|
+
* @param {Number} lineIndex index of the line where the char is
|
|
21012
|
+
* @param {Number} charIndex position in the line
|
|
21013
|
+
* @param {String} [prevGrapheme] character preceding the one to be measured
|
|
21014
|
+
* @returns {GraphemeBBox} grapheme bbox
|
|
20749
21015
|
*/
|
|
20750
21016
|
_getGraphemeBox(grapheme, lineIndex, charIndex, prevGrapheme, skipLeft) {
|
|
20751
21017
|
const style = this.getCompleteStyleDeclaration(lineIndex, charIndex),
|
|
@@ -20773,10 +21039,10 @@
|
|
|
20773
21039
|
return box;
|
|
20774
21040
|
}
|
|
20775
21041
|
|
|
20776
|
-
/**
|
|
20777
|
-
* Calculate height of line at 'lineIndex'
|
|
20778
|
-
* @param {Number} lineIndex index of line to calculate
|
|
20779
|
-
* @return {Number}
|
|
21042
|
+
/**
|
|
21043
|
+
* Calculate height of line at 'lineIndex'
|
|
21044
|
+
* @param {Number} lineIndex index of line to calculate
|
|
21045
|
+
* @return {Number}
|
|
20780
21046
|
*/
|
|
20781
21047
|
getHeightOfLine(lineIndex) {
|
|
20782
21048
|
if (this.__lineHeights[lineIndex]) {
|
|
@@ -20792,8 +21058,8 @@
|
|
|
20792
21058
|
return this.__lineHeights[lineIndex] = maxHeight * this.lineHeight * this._fontSizeMult;
|
|
20793
21059
|
}
|
|
20794
21060
|
|
|
20795
|
-
/**
|
|
20796
|
-
* Calculate text box height
|
|
21061
|
+
/**
|
|
21062
|
+
* Calculate text box height
|
|
20797
21063
|
*/
|
|
20798
21064
|
calcTextHeight() {
|
|
20799
21065
|
let lineHeight,
|
|
@@ -20805,26 +21071,26 @@
|
|
|
20805
21071
|
return height;
|
|
20806
21072
|
}
|
|
20807
21073
|
|
|
20808
|
-
/**
|
|
20809
|
-
* @private
|
|
20810
|
-
* @return {Number} Left offset
|
|
21074
|
+
/**
|
|
21075
|
+
* @private
|
|
21076
|
+
* @return {Number} Left offset
|
|
20811
21077
|
*/
|
|
20812
21078
|
_getLeftOffset() {
|
|
20813
21079
|
return this.direction === 'ltr' ? -this.width / 2 : this.width / 2;
|
|
20814
21080
|
}
|
|
20815
21081
|
|
|
20816
|
-
/**
|
|
20817
|
-
* @private
|
|
20818
|
-
* @return {Number} Top offset
|
|
21082
|
+
/**
|
|
21083
|
+
* @private
|
|
21084
|
+
* @return {Number} Top offset
|
|
20819
21085
|
*/
|
|
20820
21086
|
_getTopOffset() {
|
|
20821
21087
|
return -this.height / 2;
|
|
20822
21088
|
}
|
|
20823
21089
|
|
|
20824
|
-
/**
|
|
20825
|
-
* @private
|
|
20826
|
-
* @param {CanvasRenderingContext2D} ctx Context to render on
|
|
20827
|
-
* @param {String} method Method name ("fillText" or "strokeText")
|
|
21090
|
+
/**
|
|
21091
|
+
* @private
|
|
21092
|
+
* @param {CanvasRenderingContext2D} ctx Context to render on
|
|
21093
|
+
* @param {String} method Method name ("fillText" or "strokeText")
|
|
20828
21094
|
*/
|
|
20829
21095
|
_renderTextCommon(ctx, method) {
|
|
20830
21096
|
ctx.save();
|
|
@@ -20841,9 +21107,9 @@
|
|
|
20841
21107
|
ctx.restore();
|
|
20842
21108
|
}
|
|
20843
21109
|
|
|
20844
|
-
/**
|
|
20845
|
-
* @private
|
|
20846
|
-
* @param {CanvasRenderingContext2D} ctx Context to render on
|
|
21110
|
+
/**
|
|
21111
|
+
* @private
|
|
21112
|
+
* @param {CanvasRenderingContext2D} ctx Context to render on
|
|
20847
21113
|
*/
|
|
20848
21114
|
_renderTextFill(ctx) {
|
|
20849
21115
|
if (!this.fill && !this.styleHas(FILL)) {
|
|
@@ -20852,9 +21118,9 @@
|
|
|
20852
21118
|
this._renderTextCommon(ctx, 'fillText');
|
|
20853
21119
|
}
|
|
20854
21120
|
|
|
20855
|
-
/**
|
|
20856
|
-
* @private
|
|
20857
|
-
* @param {CanvasRenderingContext2D} ctx Context to render on
|
|
21121
|
+
/**
|
|
21122
|
+
* @private
|
|
21123
|
+
* @param {CanvasRenderingContext2D} ctx Context to render on
|
|
20858
21124
|
*/
|
|
20859
21125
|
_renderTextStroke(ctx) {
|
|
20860
21126
|
if ((!this.stroke || this.strokeWidth === 0) && this.isEmptyStyles()) {
|
|
@@ -20871,14 +21137,14 @@
|
|
|
20871
21137
|
ctx.restore();
|
|
20872
21138
|
}
|
|
20873
21139
|
|
|
20874
|
-
/**
|
|
20875
|
-
* @private
|
|
20876
|
-
* @param {String} method fillText or strokeText.
|
|
20877
|
-
* @param {CanvasRenderingContext2D} ctx Context to render on
|
|
20878
|
-
* @param {Array} line Content of the line, splitted in an array by grapheme
|
|
20879
|
-
* @param {Number} left
|
|
20880
|
-
* @param {Number} top
|
|
20881
|
-
* @param {Number} lineIndex
|
|
21140
|
+
/**
|
|
21141
|
+
* @private
|
|
21142
|
+
* @param {String} method fillText or strokeText.
|
|
21143
|
+
* @param {CanvasRenderingContext2D} ctx Context to render on
|
|
21144
|
+
* @param {Array} line Content of the line, splitted in an array by grapheme
|
|
21145
|
+
* @param {Number} left
|
|
21146
|
+
* @param {Number} top
|
|
21147
|
+
* @param {Number} lineIndex
|
|
20882
21148
|
*/
|
|
20883
21149
|
_renderChars(method, ctx, line, left, top, lineIndex) {
|
|
20884
21150
|
const lineHeight = this.getHeightOfLine(lineIndex),
|
|
@@ -20960,16 +21226,16 @@
|
|
|
20960
21226
|
ctx.restore();
|
|
20961
21227
|
}
|
|
20962
21228
|
|
|
20963
|
-
/**
|
|
20964
|
-
* This function try to patch the missing gradientTransform on canvas gradients.
|
|
20965
|
-
* transforming a context to transform the gradient, is going to transform the stroke too.
|
|
20966
|
-
* we want to transform the gradient but not the stroke operation, so we create
|
|
20967
|
-
* a transformed gradient on a pattern and then we use the pattern instead of the gradient.
|
|
20968
|
-
* this method has drawbacks: is slow, is in low resolution, needs a patch for when the size
|
|
20969
|
-
* is limited.
|
|
20970
|
-
* @private
|
|
20971
|
-
* @param {TFiller} filler a fabric gradient instance
|
|
20972
|
-
* @return {CanvasPattern} a pattern to use as fill/stroke style
|
|
21229
|
+
/**
|
|
21230
|
+
* This function try to patch the missing gradientTransform on canvas gradients.
|
|
21231
|
+
* transforming a context to transform the gradient, is going to transform the stroke too.
|
|
21232
|
+
* we want to transform the gradient but not the stroke operation, so we create
|
|
21233
|
+
* a transformed gradient on a pattern and then we use the pattern instead of the gradient.
|
|
21234
|
+
* this method has drawbacks: is slow, is in low resolution, needs a patch for when the size
|
|
21235
|
+
* is limited.
|
|
21236
|
+
* @private
|
|
21237
|
+
* @param {TFiller} filler a fabric gradient instance
|
|
21238
|
+
* @return {CanvasPattern} a pattern to use as fill/stroke style
|
|
20973
21239
|
*/
|
|
20974
21240
|
_applyPatternGradientTransformText(filler) {
|
|
20975
21241
|
// TODO: verify compatibility with strokeUniform
|
|
@@ -21025,12 +21291,12 @@
|
|
|
21025
21291
|
};
|
|
21026
21292
|
}
|
|
21027
21293
|
|
|
21028
|
-
/**
|
|
21029
|
-
* This function prepare the canvas for a stroke style, and stroke and strokeWidth
|
|
21030
|
-
* need to be sent in as defined
|
|
21031
|
-
* @param {CanvasRenderingContext2D} ctx
|
|
21032
|
-
* @param {CompleteTextStyleDeclaration} style with stroke and strokeWidth defined
|
|
21033
|
-
* @returns
|
|
21294
|
+
/**
|
|
21295
|
+
* This function prepare the canvas for a stroke style, and stroke and strokeWidth
|
|
21296
|
+
* need to be sent in as defined
|
|
21297
|
+
* @param {CanvasRenderingContext2D} ctx
|
|
21298
|
+
* @param {CompleteTextStyleDeclaration} style with stroke and strokeWidth defined
|
|
21299
|
+
* @returns
|
|
21034
21300
|
*/
|
|
21035
21301
|
_setStrokeStyles(ctx, _ref) {
|
|
21036
21302
|
let {
|
|
@@ -21045,12 +21311,12 @@
|
|
|
21045
21311
|
return this.handleFiller(ctx, 'strokeStyle', stroke);
|
|
21046
21312
|
}
|
|
21047
21313
|
|
|
21048
|
-
/**
|
|
21049
|
-
* This function prepare the canvas for a ill style, and fill
|
|
21050
|
-
* need to be sent in as defined
|
|
21051
|
-
* @param {CanvasRenderingContext2D} ctx
|
|
21052
|
-
* @param {CompleteTextStyleDeclaration} style with ill defined
|
|
21053
|
-
* @returns
|
|
21314
|
+
/**
|
|
21315
|
+
* This function prepare the canvas for a ill style, and fill
|
|
21316
|
+
* need to be sent in as defined
|
|
21317
|
+
* @param {CanvasRenderingContext2D} ctx
|
|
21318
|
+
* @param {CompleteTextStyleDeclaration} style with ill defined
|
|
21319
|
+
* @returns
|
|
21054
21320
|
*/
|
|
21055
21321
|
_setFillStyles(ctx, _ref2) {
|
|
21056
21322
|
let {
|
|
@@ -21059,16 +21325,16 @@
|
|
|
21059
21325
|
return this.handleFiller(ctx, 'fillStyle', fill);
|
|
21060
21326
|
}
|
|
21061
21327
|
|
|
21062
|
-
/**
|
|
21063
|
-
* @private
|
|
21064
|
-
* @param {String} method
|
|
21065
|
-
* @param {CanvasRenderingContext2D} ctx Context to render on
|
|
21066
|
-
* @param {Number} lineIndex
|
|
21067
|
-
* @param {Number} charIndex
|
|
21068
|
-
* @param {String} _char
|
|
21069
|
-
* @param {Number} left Left coordinate
|
|
21070
|
-
* @param {Number} top Top coordinate
|
|
21071
|
-
* @param {Number} lineHeight Height of the line
|
|
21328
|
+
/**
|
|
21329
|
+
* @private
|
|
21330
|
+
* @param {String} method
|
|
21331
|
+
* @param {CanvasRenderingContext2D} ctx Context to render on
|
|
21332
|
+
* @param {Number} lineIndex
|
|
21333
|
+
* @param {Number} charIndex
|
|
21334
|
+
* @param {String} _char
|
|
21335
|
+
* @param {Number} left Left coordinate
|
|
21336
|
+
* @param {Number} top Top coordinate
|
|
21337
|
+
* @param {Number} lineHeight Height of the line
|
|
21072
21338
|
*/
|
|
21073
21339
|
_renderChar(method, ctx, lineIndex, charIndex, _char, left, top) {
|
|
21074
21340
|
const decl = this._getStyleDeclaration(lineIndex, charIndex),
|
|
@@ -21097,30 +21363,30 @@
|
|
|
21097
21363
|
ctx.restore();
|
|
21098
21364
|
}
|
|
21099
21365
|
|
|
21100
|
-
/**
|
|
21101
|
-
* Turns the character into a 'superior figure' (i.e. 'superscript')
|
|
21102
|
-
* @param {Number} start selection start
|
|
21103
|
-
* @param {Number} end selection end
|
|
21366
|
+
/**
|
|
21367
|
+
* Turns the character into a 'superior figure' (i.e. 'superscript')
|
|
21368
|
+
* @param {Number} start selection start
|
|
21369
|
+
* @param {Number} end selection end
|
|
21104
21370
|
*/
|
|
21105
21371
|
setSuperscript(start, end) {
|
|
21106
21372
|
this._setScript(start, end, this.superscript);
|
|
21107
21373
|
}
|
|
21108
21374
|
|
|
21109
|
-
/**
|
|
21110
|
-
* Turns the character into an 'inferior figure' (i.e. 'subscript')
|
|
21111
|
-
* @param {Number} start selection start
|
|
21112
|
-
* @param {Number} end selection end
|
|
21375
|
+
/**
|
|
21376
|
+
* Turns the character into an 'inferior figure' (i.e. 'subscript')
|
|
21377
|
+
* @param {Number} start selection start
|
|
21378
|
+
* @param {Number} end selection end
|
|
21113
21379
|
*/
|
|
21114
21380
|
setSubscript(start, end) {
|
|
21115
21381
|
this._setScript(start, end, this.subscript);
|
|
21116
21382
|
}
|
|
21117
21383
|
|
|
21118
|
-
/**
|
|
21119
|
-
* Applies 'schema' at given position
|
|
21120
|
-
* @private
|
|
21121
|
-
* @param {Number} start selection start
|
|
21122
|
-
* @param {Number} end selection end
|
|
21123
|
-
* @param {Number} schema
|
|
21384
|
+
/**
|
|
21385
|
+
* Applies 'schema' at given position
|
|
21386
|
+
* @private
|
|
21387
|
+
* @param {Number} start selection start
|
|
21388
|
+
* @param {Number} end selection end
|
|
21389
|
+
* @param {Number} schema
|
|
21124
21390
|
*/
|
|
21125
21391
|
_setScript(start, end, schema) {
|
|
21126
21392
|
const loc = this.get2DCursorLocation(start, true),
|
|
@@ -21133,10 +21399,10 @@
|
|
|
21133
21399
|
this.setSelectionStyles(style, start, end);
|
|
21134
21400
|
}
|
|
21135
21401
|
|
|
21136
|
-
/**
|
|
21137
|
-
* @private
|
|
21138
|
-
* @param {Number} lineIndex index text line
|
|
21139
|
-
* @return {Number} Line left offset
|
|
21402
|
+
/**
|
|
21403
|
+
* @private
|
|
21404
|
+
* @param {Number} lineIndex index text line
|
|
21405
|
+
* @return {Number} Line left offset
|
|
21140
21406
|
*/
|
|
21141
21407
|
_getLineLeftOffset(lineIndex) {
|
|
21142
21408
|
const lineWidth = this.getLineWidth(lineIndex),
|
|
@@ -21186,8 +21452,8 @@
|
|
|
21186
21452
|
return leftOffset;
|
|
21187
21453
|
}
|
|
21188
21454
|
|
|
21189
|
-
/**
|
|
21190
|
-
* @private
|
|
21455
|
+
/**
|
|
21456
|
+
* @private
|
|
21191
21457
|
*/
|
|
21192
21458
|
_clearCache() {
|
|
21193
21459
|
this._forceClearCache = false;
|
|
@@ -21196,12 +21462,12 @@
|
|
|
21196
21462
|
this.__charBounds = [];
|
|
21197
21463
|
}
|
|
21198
21464
|
|
|
21199
|
-
/**
|
|
21200
|
-
* Measure a single line given its index. Used to calculate the initial
|
|
21201
|
-
* text bounding box. The values are calculated and stored in __lineWidths cache.
|
|
21202
|
-
* @private
|
|
21203
|
-
* @param {Number} lineIndex line number
|
|
21204
|
-
* @return {Number} Line width
|
|
21465
|
+
/**
|
|
21466
|
+
* Measure a single line given its index. Used to calculate the initial
|
|
21467
|
+
* text bounding box. The values are calculated and stored in __lineWidths cache.
|
|
21468
|
+
* @private
|
|
21469
|
+
* @param {Number} lineIndex line number
|
|
21470
|
+
* @return {Number} Line width
|
|
21205
21471
|
*/
|
|
21206
21472
|
getLineWidth(lineIndex) {
|
|
21207
21473
|
if (this.__lineWidths[lineIndex] !== undefined) {
|
|
@@ -21220,12 +21486,12 @@
|
|
|
21220
21486
|
return 0;
|
|
21221
21487
|
}
|
|
21222
21488
|
|
|
21223
|
-
/**
|
|
21224
|
-
* Retrieves the value of property at given character position
|
|
21225
|
-
* @param {Number} lineIndex the line number
|
|
21226
|
-
* @param {Number} charIndex the character number
|
|
21227
|
-
* @param {String} property the property name
|
|
21228
|
-
* @returns the value of 'property'
|
|
21489
|
+
/**
|
|
21490
|
+
* Retrieves the value of property at given character position
|
|
21491
|
+
* @param {Number} lineIndex the line number
|
|
21492
|
+
* @param {Number} charIndex the character number
|
|
21493
|
+
* @param {String} property the property name
|
|
21494
|
+
* @returns the value of 'property'
|
|
21229
21495
|
*/
|
|
21230
21496
|
getValueOfPropertyAt(lineIndex, charIndex, property) {
|
|
21231
21497
|
var _charStyle$property;
|
|
@@ -21233,9 +21499,9 @@
|
|
|
21233
21499
|
return (_charStyle$property = charStyle[property]) !== null && _charStyle$property !== void 0 ? _charStyle$property : this[property];
|
|
21234
21500
|
}
|
|
21235
21501
|
|
|
21236
|
-
/**
|
|
21237
|
-
* @private
|
|
21238
|
-
* @param {CanvasRenderingContext2D} ctx Context to render on
|
|
21502
|
+
/**
|
|
21503
|
+
* @private
|
|
21504
|
+
* @param {CanvasRenderingContext2D} ctx Context to render on
|
|
21239
21505
|
*/
|
|
21240
21506
|
_renderTextDecoration(ctx, type) {
|
|
21241
21507
|
if (!this[type] && !this.styleHas(type)) {
|
|
@@ -21319,10 +21585,10 @@
|
|
|
21319
21585
|
this._removeShadow(ctx);
|
|
21320
21586
|
}
|
|
21321
21587
|
|
|
21322
|
-
/**
|
|
21323
|
-
* return font declaration string for canvas context
|
|
21324
|
-
* @param {Object} [styleObject] object
|
|
21325
|
-
* @returns {String} font declaration formatted for canvas context.
|
|
21588
|
+
/**
|
|
21589
|
+
* return font declaration string for canvas context
|
|
21590
|
+
* @param {Object} [styleObject] object
|
|
21591
|
+
* @returns {String} font declaration formatted for canvas context.
|
|
21326
21592
|
*/
|
|
21327
21593
|
_getFontDeclaration() {
|
|
21328
21594
|
let {
|
|
@@ -21336,9 +21602,9 @@
|
|
|
21336
21602
|
return [fontStyle, fontWeight, `${forMeasuring ? this.CACHE_FONT_SIZE : fontSize}px`, parsedFontFamily].join(' ');
|
|
21337
21603
|
}
|
|
21338
21604
|
|
|
21339
|
-
/**
|
|
21340
|
-
* Renders text instance on a specified context
|
|
21341
|
-
* @param {CanvasRenderingContext2D} ctx Context to render on
|
|
21605
|
+
/**
|
|
21606
|
+
* Renders text instance on a specified context
|
|
21607
|
+
* @param {CanvasRenderingContext2D} ctx Context to render on
|
|
21342
21608
|
*/
|
|
21343
21609
|
render(ctx) {
|
|
21344
21610
|
if (!this.visible) {
|
|
@@ -21353,22 +21619,22 @@
|
|
|
21353
21619
|
super.render(ctx);
|
|
21354
21620
|
}
|
|
21355
21621
|
|
|
21356
|
-
/**
|
|
21357
|
-
* Override this method to customize grapheme splitting
|
|
21358
|
-
* @todo the util `graphemeSplit` needs to be injectable in some way.
|
|
21359
|
-
* is more comfortable to inject the correct util rather than having to override text
|
|
21360
|
-
* in the middle of the prototype chain
|
|
21361
|
-
* @param {string} value
|
|
21362
|
-
* @returns {string[]} array of graphemes
|
|
21622
|
+
/**
|
|
21623
|
+
* Override this method to customize grapheme splitting
|
|
21624
|
+
* @todo the util `graphemeSplit` needs to be injectable in some way.
|
|
21625
|
+
* is more comfortable to inject the correct util rather than having to override text
|
|
21626
|
+
* in the middle of the prototype chain
|
|
21627
|
+
* @param {string} value
|
|
21628
|
+
* @returns {string[]} array of graphemes
|
|
21363
21629
|
*/
|
|
21364
21630
|
graphemeSplit(value) {
|
|
21365
21631
|
return graphemeSplit(value);
|
|
21366
21632
|
}
|
|
21367
21633
|
|
|
21368
|
-
/**
|
|
21369
|
-
* Returns the text as an array of lines.
|
|
21370
|
-
* @param {String} text text to split
|
|
21371
|
-
* @returns Lines in the text
|
|
21634
|
+
/**
|
|
21635
|
+
* Returns the text as an array of lines.
|
|
21636
|
+
* @param {String} text text to split
|
|
21637
|
+
* @returns Lines in the text
|
|
21372
21638
|
*/
|
|
21373
21639
|
_splitTextIntoLines(text) {
|
|
21374
21640
|
const lines = text.split(this._reNewline),
|
|
@@ -21388,10 +21654,10 @@
|
|
|
21388
21654
|
};
|
|
21389
21655
|
}
|
|
21390
21656
|
|
|
21391
|
-
/**
|
|
21392
|
-
* Returns object representation of an instance
|
|
21393
|
-
* @param {Array} [propertiesToInclude] Any properties that you might want to additionally include in the output
|
|
21394
|
-
* @return {Object} Object representation of an instance
|
|
21657
|
+
/**
|
|
21658
|
+
* Returns object representation of an instance
|
|
21659
|
+
* @param {Array} [propertiesToInclude] Any properties that you might want to additionally include in the output
|
|
21660
|
+
* @return {Object} Object representation of an instance
|
|
21395
21661
|
*/
|
|
21396
21662
|
toObject() {
|
|
21397
21663
|
let propertiesToInclude = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
|
|
@@ -21434,23 +21700,23 @@
|
|
|
21434
21700
|
return this;
|
|
21435
21701
|
}
|
|
21436
21702
|
|
|
21437
|
-
/**
|
|
21438
|
-
* Returns complexity of an instance
|
|
21439
|
-
* @return {Number} complexity
|
|
21703
|
+
/**
|
|
21704
|
+
* Returns complexity of an instance
|
|
21705
|
+
* @return {Number} complexity
|
|
21440
21706
|
*/
|
|
21441
21707
|
complexity() {
|
|
21442
21708
|
return 1;
|
|
21443
21709
|
}
|
|
21444
21710
|
|
|
21445
|
-
/**
|
|
21446
|
-
* List of generic font families
|
|
21447
|
-
* @see https://developer.mozilla.org/en-US/docs/Web/CSS/font-family#generic-name
|
|
21711
|
+
/**
|
|
21712
|
+
* List of generic font families
|
|
21713
|
+
* @see https://developer.mozilla.org/en-US/docs/Web/CSS/font-family#generic-name
|
|
21448
21714
|
*/
|
|
21449
|
-
|
|
21450
|
-
/**
|
|
21451
|
-
* Returns FabricText instance from an SVG element (<b>not yet implemented</b>)
|
|
21452
|
-
* @param {HTMLElement} element Element to parse
|
|
21453
|
-
* @param {Object} [options] Options object
|
|
21715
|
+
|
|
21716
|
+
/**
|
|
21717
|
+
* Returns FabricText instance from an SVG element (<b>not yet implemented</b>)
|
|
21718
|
+
* @param {HTMLElement} element Element to parse
|
|
21719
|
+
* @param {Object} [options] Options object
|
|
21454
21720
|
*/
|
|
21455
21721
|
static async fromElement(element, options, cssRules) {
|
|
21456
21722
|
const parsedAttributes = parseAttributes(element, FabricText.ATTRIBUTE_NAMES, cssRules);
|
|
@@ -21489,10 +21755,10 @@
|
|
|
21489
21755
|
scaledDiff = lineHeightDiff * textHeightScaleFactor,
|
|
21490
21756
|
textHeight = text.getScaledHeight() + scaledDiff;
|
|
21491
21757
|
let offX = 0;
|
|
21492
|
-
/*
|
|
21493
|
-
Adjust positioning:
|
|
21494
|
-
x/y attributes in SVG correspond to the bottom-left corner of text bounding box
|
|
21495
|
-
fabric output by default at top, left.
|
|
21758
|
+
/*
|
|
21759
|
+
Adjust positioning:
|
|
21760
|
+
x/y attributes in SVG correspond to the bottom-left corner of text bounding box
|
|
21761
|
+
fabric output by default at top, left.
|
|
21496
21762
|
*/
|
|
21497
21763
|
if (textAnchor === CENTER) {
|
|
21498
21764
|
offX = text.getScaledWidth() / 2;
|
|
@@ -21510,10 +21776,10 @@
|
|
|
21510
21776
|
|
|
21511
21777
|
/* _FROM_SVG_END_ */
|
|
21512
21778
|
|
|
21513
|
-
/**
|
|
21514
|
-
* Returns FabricText instance from an object representation
|
|
21515
|
-
* @param {Object} object plain js Object to create an instance from
|
|
21516
|
-
* @returns {Promise<FabricText>}
|
|
21779
|
+
/**
|
|
21780
|
+
* Returns FabricText instance from an object representation
|
|
21781
|
+
* @param {Object} object plain js Object to create an instance from
|
|
21782
|
+
* @returns {Promise<FabricText>}
|
|
21517
21783
|
*/
|
|
21518
21784
|
static fromObject(object) {
|
|
21519
21785
|
return this._fromObject({
|
|
@@ -21524,10 +21790,10 @@
|
|
|
21524
21790
|
});
|
|
21525
21791
|
}
|
|
21526
21792
|
}
|
|
21527
|
-
/**
|
|
21528
|
-
* Properties that requires a text layout recalculation when changed
|
|
21529
|
-
* @type string[]
|
|
21530
|
-
* @protected
|
|
21793
|
+
/**
|
|
21794
|
+
* Properties that requires a text layout recalculation when changed
|
|
21795
|
+
* @type string[]
|
|
21796
|
+
* @protected
|
|
21531
21797
|
*/
|
|
21532
21798
|
_defineProperty(FabricText, "textLayoutProperties", textLayoutProperties);
|
|
21533
21799
|
_defineProperty(FabricText, "cacheProperties", [...cacheProperties, ...additionalProps]);
|
|
@@ -21535,9 +21801,9 @@
|
|
|
21535
21801
|
_defineProperty(FabricText, "type", 'Text');
|
|
21536
21802
|
_defineProperty(FabricText, "genericFonts", ['serif', 'sans-serif', 'monospace', 'cursive', 'fantasy', 'system-ui', 'ui-serif', 'ui-sans-serif', 'ui-monospace', 'ui-rounded', 'math', 'emoji', 'fangsong']);
|
|
21537
21803
|
/* _FROM_SVG_START_ */
|
|
21538
|
-
/**
|
|
21539
|
-
* List of attribute names to account for when parsing SVG element (used by {@link FabricText.fromElement})
|
|
21540
|
-
* @see: http://www.w3.org/TR/SVG/text.html#TextElement
|
|
21804
|
+
/**
|
|
21805
|
+
* List of attribute names to account for when parsing SVG element (used by {@link FabricText.fromElement})
|
|
21806
|
+
* @see: http://www.w3.org/TR/SVG/text.html#TextElement
|
|
21541
21807
|
*/
|
|
21542
21808
|
_defineProperty(FabricText, "ATTRIBUTE_NAMES", SHARED_ATTRIBUTES.concat('x', 'y', 'dx', 'dy', 'font-family', 'font-style', 'font-weight', 'font-size', 'letter-spacing', 'text-decoration', 'text-anchor'));
|
|
21543
21809
|
applyMixins(FabricText, [TextSVGExportMixin]);
|
|
@@ -21924,8 +22190,8 @@
|
|
|
21924
22190
|
// We don't need to save/restore them here as it would conflict with IText's restoration
|
|
21925
22191
|
}
|
|
21926
22192
|
|
|
21927
|
-
/**
|
|
21928
|
-
* Get the container element for the overlay (parent of upperCanvasEl)
|
|
22193
|
+
/**
|
|
22194
|
+
* Get the container element for the overlay (parent of upperCanvasEl)
|
|
21929
22195
|
*/
|
|
21930
22196
|
getCanvasContainer() {
|
|
21931
22197
|
const upperCanvas = this.canvas.upperCanvasEl;
|
|
@@ -21939,8 +22205,8 @@
|
|
|
21939
22205
|
return container;
|
|
21940
22206
|
}
|
|
21941
22207
|
|
|
21942
|
-
/**
|
|
21943
|
-
* Create the overlay DOM structure
|
|
22208
|
+
/**
|
|
22209
|
+
* Create the overlay DOM structure
|
|
21944
22210
|
*/
|
|
21945
22211
|
createOverlayDOM() {
|
|
21946
22212
|
// Host div for positioning and overflow control
|
|
@@ -21995,8 +22261,8 @@
|
|
|
21995
22261
|
document.body.appendChild(this.hostDiv);
|
|
21996
22262
|
}
|
|
21997
22263
|
|
|
21998
|
-
/**
|
|
21999
|
-
* Attach all event listeners
|
|
22264
|
+
/**
|
|
22265
|
+
* Attach all event listeners
|
|
22000
22266
|
*/
|
|
22001
22267
|
attachEventListeners() {
|
|
22002
22268
|
// Textarea events
|
|
@@ -22016,8 +22282,8 @@
|
|
|
22016
22282
|
this.setupViewportChangeDetection();
|
|
22017
22283
|
}
|
|
22018
22284
|
|
|
22019
|
-
/**
|
|
22020
|
-
* Remove all event listeners
|
|
22285
|
+
/**
|
|
22286
|
+
* Remove all event listeners
|
|
22021
22287
|
*/
|
|
22022
22288
|
removeEventListeners() {
|
|
22023
22289
|
this.textarea.removeEventListener('input', this.boundHandlers.onInput);
|
|
@@ -22034,16 +22300,16 @@
|
|
|
22034
22300
|
this.restoreViewportChangeDetection();
|
|
22035
22301
|
}
|
|
22036
22302
|
|
|
22037
|
-
/**
|
|
22038
|
-
* Simple method to refresh positioning when canvas changes
|
|
22303
|
+
/**
|
|
22304
|
+
* Simple method to refresh positioning when canvas changes
|
|
22039
22305
|
*/
|
|
22040
22306
|
updatePosition() {
|
|
22041
22307
|
this.applyOverlayStyle();
|
|
22042
22308
|
}
|
|
22043
22309
|
|
|
22044
|
-
/**
|
|
22045
|
-
* Update the Fabric object bounds to match current textarea size
|
|
22046
|
-
* This ensures Fabric.js selection controls follow the growing textbox
|
|
22310
|
+
/**
|
|
22311
|
+
* Update the Fabric object bounds to match current textarea size
|
|
22312
|
+
* This ensures Fabric.js selection controls follow the growing textbox
|
|
22047
22313
|
*/
|
|
22048
22314
|
updateObjectBounds() {
|
|
22049
22315
|
if (this.isDestroyed) return;
|
|
@@ -22077,15 +22343,15 @@
|
|
|
22077
22343
|
}
|
|
22078
22344
|
}
|
|
22079
22345
|
|
|
22080
|
-
/**
|
|
22081
|
-
* Convert Fabric charSpacing (1/1000 em) to CSS letter-spacing (px)
|
|
22346
|
+
/**
|
|
22347
|
+
* Convert Fabric charSpacing (1/1000 em) to CSS letter-spacing (px)
|
|
22082
22348
|
*/
|
|
22083
22349
|
letterSpacingPx(charSpacing, fontSize) {
|
|
22084
22350
|
return charSpacing / 1000 * fontSize;
|
|
22085
22351
|
}
|
|
22086
22352
|
|
|
22087
|
-
/**
|
|
22088
|
-
* Detect text direction using first strong directional character
|
|
22353
|
+
/**
|
|
22354
|
+
* Detect text direction using first strong directional character
|
|
22089
22355
|
*/
|
|
22090
22356
|
firstStrongDir(text) {
|
|
22091
22357
|
// Hebrew: \u0590-\u05FF, Arabic: \u0600-\u06FF, \u0750-\u077F, \uFB50-\uFDFF, \uFE70-\uFEFF
|
|
@@ -22315,8 +22581,8 @@
|
|
|
22315
22581
|
// Initial bounds are set correctly by Fabric.js - don't force update here
|
|
22316
22582
|
}
|
|
22317
22583
|
|
|
22318
|
-
/**
|
|
22319
|
-
* Debug method to compare textarea and canvas object bounding boxes
|
|
22584
|
+
/**
|
|
22585
|
+
* Debug method to compare textarea and canvas object bounding boxes
|
|
22320
22586
|
*/
|
|
22321
22587
|
debugBoundingBoxComparison() {
|
|
22322
22588
|
const target = this.target;
|
|
@@ -22386,8 +22652,8 @@
|
|
|
22386
22652
|
console.log('━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━');
|
|
22387
22653
|
}
|
|
22388
22654
|
|
|
22389
|
-
/**
|
|
22390
|
-
* Debug method to compare text wrapping between textarea and Fabric text object
|
|
22655
|
+
/**
|
|
22656
|
+
* Debug method to compare text wrapping between textarea and Fabric text object
|
|
22391
22657
|
*/
|
|
22392
22658
|
debugTextWrapping() {
|
|
22393
22659
|
const target = this.target;
|
|
@@ -22472,8 +22738,8 @@
|
|
|
22472
22738
|
console.log('━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━');
|
|
22473
22739
|
}
|
|
22474
22740
|
|
|
22475
|
-
/**
|
|
22476
|
-
* Focus the textarea and position cursor at end
|
|
22741
|
+
/**
|
|
22742
|
+
* Focus the textarea and position cursor at end
|
|
22477
22743
|
*/
|
|
22478
22744
|
focusTextarea() {
|
|
22479
22745
|
// For overlay editing, we want to keep the object in "selection mode" not "editing mode"
|
|
@@ -22508,8 +22774,8 @@
|
|
|
22508
22774
|
this.canvas.requestRenderAll();
|
|
22509
22775
|
}
|
|
22510
22776
|
|
|
22511
|
-
/**
|
|
22512
|
-
* Refresh overlay positioning and styling
|
|
22777
|
+
/**
|
|
22778
|
+
* Refresh overlay positioning and styling
|
|
22513
22779
|
*/
|
|
22514
22780
|
refresh() {
|
|
22515
22781
|
if (this.isDestroyed) return;
|
|
@@ -22517,8 +22783,8 @@
|
|
|
22517
22783
|
// Don't update object bounds on every refresh - only when textarea actually resizes
|
|
22518
22784
|
}
|
|
22519
22785
|
|
|
22520
|
-
/**
|
|
22521
|
-
* Destroy the overlay editor
|
|
22786
|
+
/**
|
|
22787
|
+
* Destroy the overlay editor
|
|
22522
22788
|
*/
|
|
22523
22789
|
destroy() {
|
|
22524
22790
|
let commit = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
|
|
@@ -22686,8 +22952,8 @@
|
|
|
22686
22952
|
}
|
|
22687
22953
|
}
|
|
22688
22954
|
|
|
22689
|
-
/**
|
|
22690
|
-
* Setup detection for viewport changes (zoom/pan)
|
|
22955
|
+
/**
|
|
22956
|
+
* Setup detection for viewport changes (zoom/pan)
|
|
22691
22957
|
*/
|
|
22692
22958
|
setupViewportChangeDetection() {
|
|
22693
22959
|
// Store original methods
|
|
@@ -22716,8 +22982,8 @@
|
|
|
22716
22982
|
};
|
|
22717
22983
|
}
|
|
22718
22984
|
|
|
22719
|
-
/**
|
|
22720
|
-
* Restore original viewport methods
|
|
22985
|
+
/**
|
|
22986
|
+
* Restore original viewport methods
|
|
22721
22987
|
*/
|
|
22722
22988
|
restoreViewportChangeDetection() {
|
|
22723
22989
|
if (this.canvas.__originalSetZoom) {
|
|
@@ -22732,8 +22998,8 @@
|
|
|
22732
22998
|
}
|
|
22733
22999
|
}
|
|
22734
23000
|
|
|
22735
|
-
/**
|
|
22736
|
-
* Enter overlay text editing mode for a text object
|
|
23001
|
+
/**
|
|
23002
|
+
* Enter overlay text editing mode for a text object
|
|
22737
23003
|
*/
|
|
22738
23004
|
function enterTextOverlayEdit(canvas, target, options) {
|
|
22739
23005
|
// If already in overlay editing, destroy existing editor first
|
|
@@ -22757,35 +23023,35 @@
|
|
|
22757
23023
|
return editor;
|
|
22758
23024
|
}
|
|
22759
23025
|
|
|
22760
|
-
/**
|
|
22761
|
-
* extend this regex to support non english languages
|
|
22762
|
-
*
|
|
22763
|
-
* - ` ` Matches a SPACE character (char code 32).
|
|
22764
|
-
* - `\n` Matches a LINE FEED character (char code 10).
|
|
22765
|
-
* - `.` Matches a "." character (char code 46).
|
|
22766
|
-
* - `,` Matches a "," character (char code 44).
|
|
22767
|
-
* - `;` Matches a ";" character (char code 59).
|
|
22768
|
-
* - `!` Matches a "!" character (char code 33).
|
|
22769
|
-
* - `\?` Matches a "?" character (char code 63).
|
|
22770
|
-
* - `\-` Matches a "-" character (char code 45).
|
|
23026
|
+
/**
|
|
23027
|
+
* extend this regex to support non english languages
|
|
23028
|
+
*
|
|
23029
|
+
* - ` ` Matches a SPACE character (char code 32).
|
|
23030
|
+
* - `\n` Matches a LINE FEED character (char code 10).
|
|
23031
|
+
* - `.` Matches a "." character (char code 46).
|
|
23032
|
+
* - `,` Matches a "," character (char code 44).
|
|
23033
|
+
* - `;` Matches a ";" character (char code 59).
|
|
23034
|
+
* - `!` Matches a "!" character (char code 33).
|
|
23035
|
+
* - `\?` Matches a "?" character (char code 63).
|
|
23036
|
+
* - `\-` Matches a "-" character (char code 45).
|
|
22771
23037
|
*/
|
|
22772
23038
|
// eslint-disable-next-line no-useless-escape
|
|
22773
23039
|
const reNonWord = /[ \n\.,;!\?\-]/;
|
|
22774
23040
|
class ITextBehavior extends FabricText {
|
|
22775
23041
|
constructor() {
|
|
22776
23042
|
super(...arguments);
|
|
22777
|
-
/**
|
|
22778
|
-
* Helps determining when the text is in composition, so that the cursor
|
|
22779
|
-
* rendering is altered.
|
|
23043
|
+
/**
|
|
23044
|
+
* Helps determining when the text is in composition, so that the cursor
|
|
23045
|
+
* rendering is altered.
|
|
22780
23046
|
*/
|
|
22781
23047
|
_defineProperty(this, "_currentCursorOpacity", 1);
|
|
22782
23048
|
}
|
|
22783
|
-
/**
|
|
22784
|
-
* Keeps track if the IText object was selected before the actual click.
|
|
22785
|
-
* This because we want to delay enter editing by a click.
|
|
23049
|
+
/**
|
|
23050
|
+
* Keeps track if the IText object was selected before the actual click.
|
|
23051
|
+
* This because we want to delay enter editing by a click.
|
|
22786
23052
|
*/
|
|
22787
|
-
/**
|
|
22788
|
-
* Initializes all the interactive behavior of IText
|
|
23053
|
+
/**
|
|
23054
|
+
* Initializes all the interactive behavior of IText
|
|
22789
23055
|
*/
|
|
22790
23056
|
initBehavior() {
|
|
22791
23057
|
this._tick = this._tick.bind(this);
|
|
@@ -22798,8 +23064,8 @@
|
|
|
22798
23064
|
return super.onDeselect(options);
|
|
22799
23065
|
}
|
|
22800
23066
|
|
|
22801
|
-
/**
|
|
22802
|
-
* @private
|
|
23067
|
+
/**
|
|
23068
|
+
* @private
|
|
22803
23069
|
*/
|
|
22804
23070
|
_animateCursor(_ref) {
|
|
22805
23071
|
let {
|
|
@@ -22824,8 +23090,8 @@
|
|
|
22824
23090
|
});
|
|
22825
23091
|
}
|
|
22826
23092
|
|
|
22827
|
-
/**
|
|
22828
|
-
* changes the cursor from visible to invisible
|
|
23093
|
+
/**
|
|
23094
|
+
* changes the cursor from visible to invisible
|
|
22829
23095
|
*/
|
|
22830
23096
|
_tick(delay) {
|
|
22831
23097
|
this._currentTickState = this._animateCursor({
|
|
@@ -22836,8 +23102,8 @@
|
|
|
22836
23102
|
});
|
|
22837
23103
|
}
|
|
22838
23104
|
|
|
22839
|
-
/**
|
|
22840
|
-
* Changes the cursor from invisible to visible
|
|
23105
|
+
/**
|
|
23106
|
+
* Changes the cursor from invisible to visible
|
|
22841
23107
|
*/
|
|
22842
23108
|
_onTickComplete() {
|
|
22843
23109
|
var _this$_currentTickCom;
|
|
@@ -22849,16 +23115,16 @@
|
|
|
22849
23115
|
});
|
|
22850
23116
|
}
|
|
22851
23117
|
|
|
22852
|
-
/**
|
|
22853
|
-
* Initializes delayed cursor
|
|
23118
|
+
/**
|
|
23119
|
+
* Initializes delayed cursor
|
|
22854
23120
|
*/
|
|
22855
23121
|
initDelayedCursor(restart) {
|
|
22856
23122
|
this.abortCursorAnimation();
|
|
22857
23123
|
this._tick(restart ? 0 : this.cursorDelay);
|
|
22858
23124
|
}
|
|
22859
23125
|
|
|
22860
|
-
/**
|
|
22861
|
-
* Aborts cursor animation, clears all timeouts and clear textarea context if necessary
|
|
23126
|
+
/**
|
|
23127
|
+
* Aborts cursor animation, clears all timeouts and clear textarea context if necessary
|
|
22862
23128
|
*/
|
|
22863
23129
|
abortCursorAnimation() {
|
|
22864
23130
|
let shouldClear = false;
|
|
@@ -22876,9 +23142,9 @@
|
|
|
22876
23142
|
}
|
|
22877
23143
|
}
|
|
22878
23144
|
|
|
22879
|
-
/**
|
|
22880
|
-
* Restart tue cursor animation if either is in complete state ( between animations )
|
|
22881
|
-
* or if it never started before
|
|
23145
|
+
/**
|
|
23146
|
+
* Restart tue cursor animation if either is in complete state ( between animations )
|
|
23147
|
+
* or if it never started before
|
|
22882
23148
|
*/
|
|
22883
23149
|
restartCursorIfNeeded() {
|
|
22884
23150
|
if ([this._currentTickState, this._currentTickCompleteState].some(cursorAnimation => !cursorAnimation || cursorAnimation.isDone())) {
|
|
@@ -22886,8 +23152,8 @@
|
|
|
22886
23152
|
}
|
|
22887
23153
|
}
|
|
22888
23154
|
|
|
22889
|
-
/**
|
|
22890
|
-
* Selects entire text
|
|
23155
|
+
/**
|
|
23156
|
+
* Selects entire text
|
|
22891
23157
|
*/
|
|
22892
23158
|
selectAll() {
|
|
22893
23159
|
this.selectionStart = 0;
|
|
@@ -22897,26 +23163,26 @@
|
|
|
22897
23163
|
return this;
|
|
22898
23164
|
}
|
|
22899
23165
|
|
|
22900
|
-
/**
|
|
22901
|
-
* Selects entire text and updates the visual state
|
|
23166
|
+
/**
|
|
23167
|
+
* Selects entire text and updates the visual state
|
|
22902
23168
|
*/
|
|
22903
23169
|
cmdAll() {
|
|
22904
23170
|
this.selectAll();
|
|
22905
23171
|
this.renderCursorOrSelection();
|
|
22906
23172
|
}
|
|
22907
23173
|
|
|
22908
|
-
/**
|
|
22909
|
-
* Returns selected text
|
|
22910
|
-
* @return {String}
|
|
23174
|
+
/**
|
|
23175
|
+
* Returns selected text
|
|
23176
|
+
* @return {String}
|
|
22911
23177
|
*/
|
|
22912
23178
|
getSelectedText() {
|
|
22913
23179
|
return this._text.slice(this.selectionStart, this.selectionEnd).join('');
|
|
22914
23180
|
}
|
|
22915
23181
|
|
|
22916
|
-
/**
|
|
22917
|
-
* Find new selection index representing start of current word according to current selection index
|
|
22918
|
-
* @param {Number} startFrom Current selection index
|
|
22919
|
-
* @return {Number} New selection index
|
|
23182
|
+
/**
|
|
23183
|
+
* Find new selection index representing start of current word according to current selection index
|
|
23184
|
+
* @param {Number} startFrom Current selection index
|
|
23185
|
+
* @return {Number} New selection index
|
|
22920
23186
|
*/
|
|
22921
23187
|
findWordBoundaryLeft(startFrom) {
|
|
22922
23188
|
let offset = 0,
|
|
@@ -22936,10 +23202,10 @@
|
|
|
22936
23202
|
return startFrom - offset;
|
|
22937
23203
|
}
|
|
22938
23204
|
|
|
22939
|
-
/**
|
|
22940
|
-
* Find new selection index representing end of current word according to current selection index
|
|
22941
|
-
* @param {Number} startFrom Current selection index
|
|
22942
|
-
* @return {Number} New selection index
|
|
23205
|
+
/**
|
|
23206
|
+
* Find new selection index representing end of current word according to current selection index
|
|
23207
|
+
* @param {Number} startFrom Current selection index
|
|
23208
|
+
* @return {Number} New selection index
|
|
22943
23209
|
*/
|
|
22944
23210
|
findWordBoundaryRight(startFrom) {
|
|
22945
23211
|
let offset = 0,
|
|
@@ -22959,10 +23225,10 @@
|
|
|
22959
23225
|
return startFrom + offset;
|
|
22960
23226
|
}
|
|
22961
23227
|
|
|
22962
|
-
/**
|
|
22963
|
-
* Find new selection index representing start of current line according to current selection index
|
|
22964
|
-
* @param {Number} startFrom Current selection index
|
|
22965
|
-
* @return {Number} New selection index
|
|
23228
|
+
/**
|
|
23229
|
+
* Find new selection index representing start of current line according to current selection index
|
|
23230
|
+
* @param {Number} startFrom Current selection index
|
|
23231
|
+
* @return {Number} New selection index
|
|
22966
23232
|
*/
|
|
22967
23233
|
findLineBoundaryLeft(startFrom) {
|
|
22968
23234
|
let offset = 0,
|
|
@@ -22974,10 +23240,10 @@
|
|
|
22974
23240
|
return startFrom - offset;
|
|
22975
23241
|
}
|
|
22976
23242
|
|
|
22977
|
-
/**
|
|
22978
|
-
* Find new selection index representing end of current line according to current selection index
|
|
22979
|
-
* @param {Number} startFrom Current selection index
|
|
22980
|
-
* @return {Number} New selection index
|
|
23243
|
+
/**
|
|
23244
|
+
* Find new selection index representing end of current line according to current selection index
|
|
23245
|
+
* @param {Number} startFrom Current selection index
|
|
23246
|
+
* @return {Number} New selection index
|
|
22981
23247
|
*/
|
|
22982
23248
|
findLineBoundaryRight(startFrom) {
|
|
22983
23249
|
let offset = 0,
|
|
@@ -22989,11 +23255,11 @@
|
|
|
22989
23255
|
return startFrom + offset;
|
|
22990
23256
|
}
|
|
22991
23257
|
|
|
22992
|
-
/**
|
|
22993
|
-
* Finds index corresponding to beginning or end of a word
|
|
22994
|
-
* @param {Number} selectionStart Index of a character
|
|
22995
|
-
* @param {Number} direction 1 or -1
|
|
22996
|
-
* @return {Number} Index of the beginning or end of a word
|
|
23258
|
+
/**
|
|
23259
|
+
* Finds index corresponding to beginning or end of a word
|
|
23260
|
+
* @param {Number} selectionStart Index of a character
|
|
23261
|
+
* @param {Number} direction 1 or -1
|
|
23262
|
+
* @return {Number} Index of the beginning or end of a word
|
|
22997
23263
|
*/
|
|
22998
23264
|
searchWordBoundary(selectionStart, direction) {
|
|
22999
23265
|
const text = this._text;
|
|
@@ -23011,9 +23277,9 @@
|
|
|
23011
23277
|
return index;
|
|
23012
23278
|
}
|
|
23013
23279
|
|
|
23014
|
-
/**
|
|
23015
|
-
* Selects the word that contains the char at index selectionStart
|
|
23016
|
-
* @param {Number} selectionStart Index of a character
|
|
23280
|
+
/**
|
|
23281
|
+
* Selects the word that contains the char at index selectionStart
|
|
23282
|
+
* @param {Number} selectionStart Index of a character
|
|
23017
23283
|
*/
|
|
23018
23284
|
selectWord(selectionStart) {
|
|
23019
23285
|
selectionStart = selectionStart !== null && selectionStart !== void 0 ? selectionStart : this.selectionStart;
|
|
@@ -23029,9 +23295,9 @@
|
|
|
23029
23295
|
this.renderCursorOrSelection();
|
|
23030
23296
|
}
|
|
23031
23297
|
|
|
23032
|
-
/**
|
|
23033
|
-
* Selects the line that contains selectionStart
|
|
23034
|
-
* @param {Number} selectionStart Index of a character
|
|
23298
|
+
/**
|
|
23299
|
+
* Selects the line that contains selectionStart
|
|
23300
|
+
* @param {Number} selectionStart Index of a character
|
|
23035
23301
|
*/
|
|
23036
23302
|
selectLine(selectionStart) {
|
|
23037
23303
|
selectionStart = selectionStart !== null && selectionStart !== void 0 ? selectionStart : this.selectionStart;
|
|
@@ -23043,8 +23309,8 @@
|
|
|
23043
23309
|
this._updateTextarea();
|
|
23044
23310
|
}
|
|
23045
23311
|
|
|
23046
|
-
/**
|
|
23047
|
-
* Enters editing state
|
|
23312
|
+
/**
|
|
23313
|
+
* Enters editing state
|
|
23048
23314
|
*/
|
|
23049
23315
|
enterEditing(e) {
|
|
23050
23316
|
if (this.isEditing || !this.editable) {
|
|
@@ -23064,8 +23330,8 @@
|
|
|
23064
23330
|
}
|
|
23065
23331
|
}
|
|
23066
23332
|
|
|
23067
|
-
/**
|
|
23068
|
-
* runs the actual logic that enter from editing state, see {@link enterEditing}
|
|
23333
|
+
/**
|
|
23334
|
+
* runs the actual logic that enter from editing state, see {@link enterEditing}
|
|
23069
23335
|
*/
|
|
23070
23336
|
enterEditingImpl() {
|
|
23071
23337
|
if (this.canvas) {
|
|
@@ -23089,8 +23355,8 @@
|
|
|
23089
23355
|
}
|
|
23090
23356
|
}
|
|
23091
23357
|
|
|
23092
|
-
/**
|
|
23093
|
-
* Enter overlay editing mode using DOM textarea overlay
|
|
23358
|
+
/**
|
|
23359
|
+
* Enter overlay editing mode using DOM textarea overlay
|
|
23094
23360
|
*/
|
|
23095
23361
|
enterOverlayEditing() {
|
|
23096
23362
|
this._saveEditingProps();
|
|
@@ -23111,8 +23377,8 @@
|
|
|
23111
23377
|
});
|
|
23112
23378
|
}
|
|
23113
23379
|
|
|
23114
|
-
/**
|
|
23115
|
-
* Commit overlay editing changes
|
|
23380
|
+
/**
|
|
23381
|
+
* Commit overlay editing changes
|
|
23116
23382
|
*/
|
|
23117
23383
|
commitOverlayEdit(text) {
|
|
23118
23384
|
const overlayEditor = this.__overlayEditor;
|
|
@@ -23136,8 +23402,8 @@
|
|
|
23136
23402
|
this.canvas && this.canvas.requestRenderAll();
|
|
23137
23403
|
}
|
|
23138
23404
|
|
|
23139
|
-
/**
|
|
23140
|
-
* Cancel overlay editing without changes
|
|
23405
|
+
/**
|
|
23406
|
+
* Cancel overlay editing without changes
|
|
23141
23407
|
*/
|
|
23142
23408
|
cancelOverlayEdit() {
|
|
23143
23409
|
// Restore original text
|
|
@@ -23145,8 +23411,8 @@
|
|
|
23145
23411
|
this.exitEditing();
|
|
23146
23412
|
}
|
|
23147
23413
|
|
|
23148
|
-
/**
|
|
23149
|
-
* called by {@link Canvas#textEditingManager}
|
|
23414
|
+
/**
|
|
23415
|
+
* called by {@link Canvas#textEditingManager}
|
|
23150
23416
|
*/
|
|
23151
23417
|
updateSelectionOnMouseMove(e) {
|
|
23152
23418
|
if (this.getActiveControl()) {
|
|
@@ -23174,8 +23440,8 @@
|
|
|
23174
23440
|
}
|
|
23175
23441
|
}
|
|
23176
23442
|
|
|
23177
|
-
/**
|
|
23178
|
-
* @private
|
|
23443
|
+
/**
|
|
23444
|
+
* @private
|
|
23179
23445
|
*/
|
|
23180
23446
|
_setEditingProps() {
|
|
23181
23447
|
this.hoverCursor = 'text';
|
|
@@ -23187,8 +23453,8 @@
|
|
|
23187
23453
|
this.lockMovementX = this.lockMovementY = true;
|
|
23188
23454
|
}
|
|
23189
23455
|
|
|
23190
|
-
/**
|
|
23191
|
-
* convert from textarea to grapheme indexes
|
|
23456
|
+
/**
|
|
23457
|
+
* convert from textarea to grapheme indexes
|
|
23192
23458
|
*/
|
|
23193
23459
|
fromStringToGraphemeSelection(start, end, text) {
|
|
23194
23460
|
const smallerTextStart = text.slice(0, start),
|
|
@@ -23207,8 +23473,8 @@
|
|
|
23207
23473
|
};
|
|
23208
23474
|
}
|
|
23209
23475
|
|
|
23210
|
-
/**
|
|
23211
|
-
* convert from fabric to textarea values
|
|
23476
|
+
/**
|
|
23477
|
+
* convert from fabric to textarea values
|
|
23212
23478
|
*/
|
|
23213
23479
|
fromGraphemeToStringSelection(start, end, graphemes) {
|
|
23214
23480
|
const smallerTextStart = graphemes.slice(0, start),
|
|
@@ -23227,8 +23493,8 @@
|
|
|
23227
23493
|
};
|
|
23228
23494
|
}
|
|
23229
23495
|
|
|
23230
|
-
/**
|
|
23231
|
-
* @private
|
|
23496
|
+
/**
|
|
23497
|
+
* @private
|
|
23232
23498
|
*/
|
|
23233
23499
|
_updateTextarea() {
|
|
23234
23500
|
this.cursorOffsetCache = {};
|
|
@@ -23243,8 +23509,8 @@
|
|
|
23243
23509
|
this.updateTextareaPosition();
|
|
23244
23510
|
}
|
|
23245
23511
|
|
|
23246
|
-
/**
|
|
23247
|
-
* @private
|
|
23512
|
+
/**
|
|
23513
|
+
* @private
|
|
23248
23514
|
*/
|
|
23249
23515
|
updateFromTextArea() {
|
|
23250
23516
|
if (!this.hiddenTextarea) {
|
|
@@ -23264,8 +23530,8 @@
|
|
|
23264
23530
|
this.updateTextareaPosition();
|
|
23265
23531
|
}
|
|
23266
23532
|
|
|
23267
|
-
/**
|
|
23268
|
-
* @private
|
|
23533
|
+
/**
|
|
23534
|
+
* @private
|
|
23269
23535
|
*/
|
|
23270
23536
|
updateTextareaPosition() {
|
|
23271
23537
|
if (this.selectionStart === this.selectionEnd) {
|
|
@@ -23275,9 +23541,9 @@
|
|
|
23275
23541
|
}
|
|
23276
23542
|
}
|
|
23277
23543
|
|
|
23278
|
-
/**
|
|
23279
|
-
* @private
|
|
23280
|
-
* @return {Object} style contains style for hiddenTextarea
|
|
23544
|
+
/**
|
|
23545
|
+
* @private
|
|
23546
|
+
* @return {Object} style contains style for hiddenTextarea
|
|
23281
23547
|
*/
|
|
23282
23548
|
_calcTextareaPosition() {
|
|
23283
23549
|
if (!this.canvas) {
|
|
@@ -23324,8 +23590,8 @@
|
|
|
23324
23590
|
};
|
|
23325
23591
|
}
|
|
23326
23592
|
|
|
23327
|
-
/**
|
|
23328
|
-
* @private
|
|
23593
|
+
/**
|
|
23594
|
+
* @private
|
|
23329
23595
|
*/
|
|
23330
23596
|
_saveEditingProps() {
|
|
23331
23597
|
this._savedProps = {
|
|
@@ -23342,8 +23608,8 @@
|
|
|
23342
23608
|
};
|
|
23343
23609
|
}
|
|
23344
23610
|
|
|
23345
|
-
/**
|
|
23346
|
-
* @private
|
|
23611
|
+
/**
|
|
23612
|
+
* @private
|
|
23347
23613
|
*/
|
|
23348
23614
|
_restoreEditingProps() {
|
|
23349
23615
|
if (!this._savedProps) {
|
|
@@ -23363,9 +23629,9 @@
|
|
|
23363
23629
|
delete this._savedProps;
|
|
23364
23630
|
}
|
|
23365
23631
|
|
|
23366
|
-
/**
|
|
23367
|
-
* runs the actual logic that exits from editing state, see {@link exitEditing}
|
|
23368
|
-
* But it does not fire events
|
|
23632
|
+
/**
|
|
23633
|
+
* runs the actual logic that exits from editing state, see {@link exitEditing}
|
|
23634
|
+
* But it does not fire events
|
|
23369
23635
|
*/
|
|
23370
23636
|
exitEditingImpl() {
|
|
23371
23637
|
const hiddenTextarea = this.hiddenTextarea;
|
|
@@ -23386,8 +23652,8 @@
|
|
|
23386
23652
|
}
|
|
23387
23653
|
}
|
|
23388
23654
|
|
|
23389
|
-
/**
|
|
23390
|
-
* Exits from editing state and fires relevant events
|
|
23655
|
+
/**
|
|
23656
|
+
* Exits from editing state and fires relevant events
|
|
23391
23657
|
*/
|
|
23392
23658
|
exitEditing() {
|
|
23393
23659
|
const isTextChanged = this._textBeforeEdit !== this.text;
|
|
@@ -23406,8 +23672,8 @@
|
|
|
23406
23672
|
return this;
|
|
23407
23673
|
}
|
|
23408
23674
|
|
|
23409
|
-
/**
|
|
23410
|
-
* @private
|
|
23675
|
+
/**
|
|
23676
|
+
* @private
|
|
23411
23677
|
*/
|
|
23412
23678
|
_removeExtraneousStyles() {
|
|
23413
23679
|
for (const prop in this.styles) {
|
|
@@ -23417,10 +23683,10 @@
|
|
|
23417
23683
|
}
|
|
23418
23684
|
}
|
|
23419
23685
|
|
|
23420
|
-
/**
|
|
23421
|
-
* remove and reflow a style block from start to end.
|
|
23422
|
-
* @param {Number} start linear start position for removal (included in removal)
|
|
23423
|
-
* @param {Number} end linear end position for removal ( excluded from removal )
|
|
23686
|
+
/**
|
|
23687
|
+
* remove and reflow a style block from start to end.
|
|
23688
|
+
* @param {Number} start linear start position for removal (included in removal)
|
|
23689
|
+
* @param {Number} end linear end position for removal ( excluded from removal )
|
|
23424
23690
|
*/
|
|
23425
23691
|
removeStyleFromTo(start, end) {
|
|
23426
23692
|
const {
|
|
@@ -23473,10 +23739,10 @@
|
|
|
23473
23739
|
}
|
|
23474
23740
|
}
|
|
23475
23741
|
|
|
23476
|
-
/**
|
|
23477
|
-
* Shifts line styles up or down
|
|
23478
|
-
* @param {Number} lineIndex Index of a line
|
|
23479
|
-
* @param {Number} offset Can any number?
|
|
23742
|
+
/**
|
|
23743
|
+
* Shifts line styles up or down
|
|
23744
|
+
* @param {Number} lineIndex Index of a line
|
|
23745
|
+
* @param {Number} offset Can any number?
|
|
23480
23746
|
*/
|
|
23481
23747
|
shiftLineStyles(lineIndex, offset) {
|
|
23482
23748
|
const clonedStyles = Object.assign({}, this.styles);
|
|
@@ -23491,15 +23757,15 @@
|
|
|
23491
23757
|
}
|
|
23492
23758
|
}
|
|
23493
23759
|
|
|
23494
|
-
/**
|
|
23495
|
-
* Handle insertion of more consecutive style lines for when one or more
|
|
23496
|
-
* newlines gets added to the text. Since current style needs to be shifted
|
|
23497
|
-
* first we shift the current style of the number lines needed, then we add
|
|
23498
|
-
* new lines from the last to the first.
|
|
23499
|
-
* @param {Number} lineIndex Index of a line
|
|
23500
|
-
* @param {Number} charIndex Index of a char
|
|
23501
|
-
* @param {Number} qty number of lines to add
|
|
23502
|
-
* @param {Array} copiedStyle Array of objects styles
|
|
23760
|
+
/**
|
|
23761
|
+
* Handle insertion of more consecutive style lines for when one or more
|
|
23762
|
+
* newlines gets added to the text. Since current style needs to be shifted
|
|
23763
|
+
* first we shift the current style of the number lines needed, then we add
|
|
23764
|
+
* new lines from the last to the first.
|
|
23765
|
+
* @param {Number} lineIndex Index of a line
|
|
23766
|
+
* @param {Number} charIndex Index of a char
|
|
23767
|
+
* @param {Number} qty number of lines to add
|
|
23768
|
+
* @param {Array} copiedStyle Array of objects styles
|
|
23503
23769
|
*/
|
|
23504
23770
|
insertNewlineStyleObject(lineIndex, charIndex, qty, copiedStyle) {
|
|
23505
23771
|
const newLineStyles = {};
|
|
@@ -23559,12 +23825,12 @@
|
|
|
23559
23825
|
this._forceClearCache = true;
|
|
23560
23826
|
}
|
|
23561
23827
|
|
|
23562
|
-
/**
|
|
23563
|
-
* Inserts style object for a given line/char index
|
|
23564
|
-
* @param {Number} lineIndex Index of a line
|
|
23565
|
-
* @param {Number} charIndex Index of a char
|
|
23566
|
-
* @param {Number} quantity number Style object to insert, if given
|
|
23567
|
-
* @param {Array} copiedStyle array of style objects
|
|
23828
|
+
/**
|
|
23829
|
+
* Inserts style object for a given line/char index
|
|
23830
|
+
* @param {Number} lineIndex Index of a line
|
|
23831
|
+
* @param {Number} charIndex Index of a char
|
|
23832
|
+
* @param {Number} quantity number Style object to insert, if given
|
|
23833
|
+
* @param {Array} copiedStyle array of style objects
|
|
23568
23834
|
*/
|
|
23569
23835
|
insertCharStyleObject(lineIndex, charIndex, quantity, copiedStyle) {
|
|
23570
23836
|
if (!this.styles) {
|
|
@@ -23613,11 +23879,11 @@
|
|
|
23613
23879
|
}
|
|
23614
23880
|
}
|
|
23615
23881
|
|
|
23616
|
-
/**
|
|
23617
|
-
* Inserts style object(s)
|
|
23618
|
-
* @param {Array} insertedText Characters at the location where style is inserted
|
|
23619
|
-
* @param {Number} start cursor index for inserting style
|
|
23620
|
-
* @param {Array} [copiedStyle] array of style objects to insert.
|
|
23882
|
+
/**
|
|
23883
|
+
* Inserts style object(s)
|
|
23884
|
+
* @param {Array} insertedText Characters at the location where style is inserted
|
|
23885
|
+
* @param {Number} start cursor index for inserting style
|
|
23886
|
+
* @param {Array} [copiedStyle] array of style objects to insert.
|
|
23621
23887
|
*/
|
|
23622
23888
|
insertNewStyleBlock(insertedText, start, copiedStyle) {
|
|
23623
23889
|
const cursorLoc = this.get2DCursorLocation(start, true),
|
|
@@ -23658,12 +23924,12 @@
|
|
|
23658
23924
|
}
|
|
23659
23925
|
}
|
|
23660
23926
|
|
|
23661
|
-
/**
|
|
23662
|
-
* Removes characters from start/end
|
|
23663
|
-
* start/end ar per grapheme position in _text array.
|
|
23664
|
-
*
|
|
23665
|
-
* @param {Number} start
|
|
23666
|
-
* @param {Number} end default to start + 1
|
|
23927
|
+
/**
|
|
23928
|
+
* Removes characters from start/end
|
|
23929
|
+
* start/end ar per grapheme position in _text array.
|
|
23930
|
+
*
|
|
23931
|
+
* @param {Number} start
|
|
23932
|
+
* @param {Number} end default to start + 1
|
|
23667
23933
|
*/
|
|
23668
23934
|
removeChars(start) {
|
|
23669
23935
|
let end = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : start + 1;
|
|
@@ -23676,17 +23942,17 @@
|
|
|
23676
23942
|
this._removeExtraneousStyles();
|
|
23677
23943
|
}
|
|
23678
23944
|
|
|
23679
|
-
/**
|
|
23680
|
-
* insert characters at start position, before start position.
|
|
23681
|
-
* start equal 1 it means the text get inserted between actual grapheme 0 and 1
|
|
23682
|
-
* if style array is provided, it must be as the same length of text in graphemes
|
|
23683
|
-
* if end is provided and is bigger than start, old text is replaced.
|
|
23684
|
-
* start/end ar per grapheme position in _text array.
|
|
23685
|
-
*
|
|
23686
|
-
* @param {String} text text to insert
|
|
23687
|
-
* @param {Array} style array of style objects
|
|
23688
|
-
* @param {Number} start
|
|
23689
|
-
* @param {Number} end default to start + 1
|
|
23945
|
+
/**
|
|
23946
|
+
* insert characters at start position, before start position.
|
|
23947
|
+
* start equal 1 it means the text get inserted between actual grapheme 0 and 1
|
|
23948
|
+
* if style array is provided, it must be as the same length of text in graphemes
|
|
23949
|
+
* if end is provided and is bigger than start, old text is replaced.
|
|
23950
|
+
* start/end ar per grapheme position in _text array.
|
|
23951
|
+
*
|
|
23952
|
+
* @param {String} text text to insert
|
|
23953
|
+
* @param {Array} style array of style objects
|
|
23954
|
+
* @param {Number} start
|
|
23955
|
+
* @param {Number} end default to start + 1
|
|
23690
23956
|
*/
|
|
23691
23957
|
insertChars(text, style, start) {
|
|
23692
23958
|
let end = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : start;
|
|
@@ -23703,9 +23969,9 @@
|
|
|
23703
23969
|
this._removeExtraneousStyles();
|
|
23704
23970
|
}
|
|
23705
23971
|
|
|
23706
|
-
/**
|
|
23707
|
-
* Set the selectionStart and selectionEnd according to the new position of cursor
|
|
23708
|
-
* mimic the key - mouse navigation when shift is pressed.
|
|
23972
|
+
/**
|
|
23973
|
+
* Set the selectionStart and selectionEnd according to the new position of cursor
|
|
23974
|
+
* mimic the key - mouse navigation when shift is pressed.
|
|
23709
23975
|
*/
|
|
23710
23976
|
setSelectionStartEndWithShift(start, end, newSelection) {
|
|
23711
23977
|
if (newSelection <= start) {
|
|
@@ -24328,8 +24594,8 @@
|
|
|
24328
24594
|
}
|
|
24329
24595
|
}
|
|
24330
24596
|
|
|
24331
|
-
/**
|
|
24332
|
-
* `LEFT_CLICK === 0`
|
|
24597
|
+
/**
|
|
24598
|
+
* `LEFT_CLICK === 0`
|
|
24333
24599
|
*/
|
|
24334
24600
|
const notALeftClick = e => !!e.button;
|
|
24335
24601
|
class ITextClickBehavior extends ITextKeyBehavior {
|
|
@@ -24347,36 +24613,36 @@
|
|
|
24347
24613
|
super.initBehavior();
|
|
24348
24614
|
}
|
|
24349
24615
|
|
|
24350
|
-
/**
|
|
24351
|
-
* If this method returns true a mouse move operation over a text selection
|
|
24352
|
-
* will not prevent the native mouse event allowing the browser to start a drag operation.
|
|
24353
|
-
* shouldStartDragging can be read 'do not prevent default for mouse move event'
|
|
24354
|
-
* To prevent drag and drop between objects both shouldStartDragging and onDragStart should return false
|
|
24355
|
-
* @returns
|
|
24616
|
+
/**
|
|
24617
|
+
* If this method returns true a mouse move operation over a text selection
|
|
24618
|
+
* will not prevent the native mouse event allowing the browser to start a drag operation.
|
|
24619
|
+
* shouldStartDragging can be read 'do not prevent default for mouse move event'
|
|
24620
|
+
* To prevent drag and drop between objects both shouldStartDragging and onDragStart should return false
|
|
24621
|
+
* @returns
|
|
24356
24622
|
*/
|
|
24357
24623
|
shouldStartDragging() {
|
|
24358
24624
|
return this.draggableTextDelegate.isActive();
|
|
24359
24625
|
}
|
|
24360
24626
|
|
|
24361
|
-
/**
|
|
24362
|
-
* @public override this method to control whether instance should/shouldn't become a drag source,
|
|
24363
|
-
* @see also {@link DraggableTextDelegate#isActive}
|
|
24364
|
-
* To prevent drag and drop between objects both shouldStartDragging and onDragStart should return false
|
|
24365
|
-
* @returns {boolean} should handle event
|
|
24627
|
+
/**
|
|
24628
|
+
* @public override this method to control whether instance should/shouldn't become a drag source,
|
|
24629
|
+
* @see also {@link DraggableTextDelegate#isActive}
|
|
24630
|
+
* To prevent drag and drop between objects both shouldStartDragging and onDragStart should return false
|
|
24631
|
+
* @returns {boolean} should handle event
|
|
24366
24632
|
*/
|
|
24367
24633
|
onDragStart(e) {
|
|
24368
24634
|
return this.draggableTextDelegate.onDragStart(e);
|
|
24369
24635
|
}
|
|
24370
24636
|
|
|
24371
|
-
/**
|
|
24372
|
-
* @public override this method to control whether instance should/shouldn't become a drop target
|
|
24637
|
+
/**
|
|
24638
|
+
* @public override this method to control whether instance should/shouldn't become a drop target
|
|
24373
24639
|
*/
|
|
24374
24640
|
canDrop(e) {
|
|
24375
24641
|
return this.draggableTextDelegate.canDrop(e);
|
|
24376
24642
|
}
|
|
24377
24643
|
|
|
24378
|
-
/**
|
|
24379
|
-
* Default handler for double click, select a word or enter overlay editing
|
|
24644
|
+
/**
|
|
24645
|
+
* Default handler for double click, select a word or enter overlay editing
|
|
24380
24646
|
*/
|
|
24381
24647
|
doubleClickHandler(options) {
|
|
24382
24648
|
// Check if we should enter overlay editing mode
|
|
@@ -24393,8 +24659,8 @@
|
|
|
24393
24659
|
this.renderCursorOrSelection();
|
|
24394
24660
|
}
|
|
24395
24661
|
|
|
24396
|
-
/**
|
|
24397
|
-
* Default handler for triple click, select a line
|
|
24662
|
+
/**
|
|
24663
|
+
* Default handler for triple click, select a line
|
|
24398
24664
|
*/
|
|
24399
24665
|
tripleClickHandler(options) {
|
|
24400
24666
|
if (!this.isEditing) {
|
|
@@ -24404,13 +24670,13 @@
|
|
|
24404
24670
|
this.renderCursorOrSelection();
|
|
24405
24671
|
}
|
|
24406
24672
|
|
|
24407
|
-
/**
|
|
24408
|
-
* Default event handler for the basic functionalities needed on _mouseDown
|
|
24409
|
-
* can be overridden to do something different.
|
|
24410
|
-
* Scope of this implementation is: find the click position, set selectionStart
|
|
24411
|
-
* find selectionEnd, initialize the drawing of either cursor or selection area
|
|
24412
|
-
* initializing a mousedDown on a text area will cancel fabricjs knowledge of
|
|
24413
|
-
* current compositionMode. It will be set to false.
|
|
24673
|
+
/**
|
|
24674
|
+
* Default event handler for the basic functionalities needed on _mouseDown
|
|
24675
|
+
* can be overridden to do something different.
|
|
24676
|
+
* Scope of this implementation is: find the click position, set selectionStart
|
|
24677
|
+
* find selectionEnd, initialize the drawing of either cursor or selection area
|
|
24678
|
+
* initializing a mousedDown on a text area will cancel fabricjs knowledge of
|
|
24679
|
+
* current compositionMode. It will be set to false.
|
|
24414
24680
|
*/
|
|
24415
24681
|
_mouseDownHandler(_ref) {
|
|
24416
24682
|
let {
|
|
@@ -24438,9 +24704,9 @@
|
|
|
24438
24704
|
this.selected || (this.selected = alreadySelected || this.isEditing);
|
|
24439
24705
|
}
|
|
24440
24706
|
|
|
24441
|
-
/**
|
|
24442
|
-
* standard handler for mouse up, overridable
|
|
24443
|
-
* @private
|
|
24707
|
+
/**
|
|
24708
|
+
* standard handler for mouse up, overridable
|
|
24709
|
+
* @private
|
|
24444
24710
|
*/
|
|
24445
24711
|
mouseUpHandler(_ref2) {
|
|
24446
24712
|
let {
|
|
@@ -24471,9 +24737,9 @@
|
|
|
24471
24737
|
}
|
|
24472
24738
|
}
|
|
24473
24739
|
|
|
24474
|
-
/**
|
|
24475
|
-
* Changes cursor location in a text depending on passed pointer (x/y) object
|
|
24476
|
-
* @param {TPointerEvent} e Event object
|
|
24740
|
+
/**
|
|
24741
|
+
* Changes cursor location in a text depending on passed pointer (x/y) object
|
|
24742
|
+
* @param {TPointerEvent} e Event object
|
|
24477
24743
|
*/
|
|
24478
24744
|
setCursorByClick(e) {
|
|
24479
24745
|
const newSelection = this.getSelectionStartFromPointer(e),
|
|
@@ -24491,10 +24757,10 @@
|
|
|
24491
24757
|
}
|
|
24492
24758
|
}
|
|
24493
24759
|
|
|
24494
|
-
/**
|
|
24495
|
-
* Returns index of a character corresponding to where an object was clicked
|
|
24496
|
-
* @param {TPointerEvent} e Event object
|
|
24497
|
-
* @return {Number} Index of a character
|
|
24760
|
+
/**
|
|
24761
|
+
* Returns index of a character corresponding to where an object was clicked
|
|
24762
|
+
* @param {TPointerEvent} e Event object
|
|
24763
|
+
* @return {Number} Index of a character
|
|
24498
24764
|
*/
|
|
24499
24765
|
getSelectionStartFromPointer(e) {
|
|
24500
24766
|
const mouseOffset = this.canvas.getScenePoint(e).transform(invertTransform(this.calcTransformMatrix())).add(new Point(-this._getLeftOffset(), -this._getTopOffset()));
|
|
@@ -24540,15 +24806,15 @@
|
|
|
24540
24806
|
}
|
|
24541
24807
|
}
|
|
24542
24808
|
|
|
24543
|
-
/**
|
|
24544
|
-
* Hit Testing and Cursor Positioning System
|
|
24545
|
-
*
|
|
24546
|
-
* Maps pointer coordinates to text positions and provides cursor rectangles
|
|
24547
|
-
* for interactive text editing with grapheme-aware boundaries.
|
|
24809
|
+
/**
|
|
24810
|
+
* Hit Testing and Cursor Positioning System
|
|
24811
|
+
*
|
|
24812
|
+
* Maps pointer coordinates to text positions and provides cursor rectangles
|
|
24813
|
+
* for interactive text editing with grapheme-aware boundaries.
|
|
24548
24814
|
*/
|
|
24549
24815
|
|
|
24550
|
-
/**
|
|
24551
|
-
* Hit test a point against laid out text to find insertion position
|
|
24816
|
+
/**
|
|
24817
|
+
* Hit test a point against laid out text to find insertion position
|
|
24552
24818
|
*/
|
|
24553
24819
|
function hitTest(x, y, layout, options) {
|
|
24554
24820
|
if (layout.lines.length === 0) {
|
|
@@ -24592,8 +24858,8 @@
|
|
|
24592
24858
|
};
|
|
24593
24859
|
}
|
|
24594
24860
|
|
|
24595
|
-
/**
|
|
24596
|
-
* Get cursor rectangle for a given insertion index
|
|
24861
|
+
/**
|
|
24862
|
+
* Get cursor rectangle for a given insertion index
|
|
24597
24863
|
*/
|
|
24598
24864
|
function getCursorRect(insertionIndex, layout, options) {
|
|
24599
24865
|
if (layout.lines.length === 0) {
|
|
@@ -24640,8 +24906,8 @@
|
|
|
24640
24906
|
|
|
24641
24907
|
// Private helper functions
|
|
24642
24908
|
|
|
24643
|
-
/**
|
|
24644
|
-
* Find which line contains the given Y coordinate
|
|
24909
|
+
/**
|
|
24910
|
+
* Find which line contains the given Y coordinate
|
|
24645
24911
|
*/
|
|
24646
24912
|
function findLineAtY(y, lines) {
|
|
24647
24913
|
var _lines;
|
|
@@ -24664,8 +24930,8 @@
|
|
|
24664
24930
|
};
|
|
24665
24931
|
}
|
|
24666
24932
|
|
|
24667
|
-
/**
|
|
24668
|
-
* Find character position within a line at given X coordinate
|
|
24933
|
+
/**
|
|
24934
|
+
* Find character position within a line at given X coordinate
|
|
24669
24935
|
*/
|
|
24670
24936
|
function findCharAtX(x, line, options) {
|
|
24671
24937
|
if (line.bounds.length === 0) {
|
|
@@ -24771,8 +25037,8 @@
|
|
|
24771
25037
|
};
|
|
24772
25038
|
}
|
|
24773
25039
|
|
|
24774
|
-
/**
|
|
24775
|
-
* Calculate total insertion index from line and character indices
|
|
25040
|
+
/**
|
|
25041
|
+
* Calculate total insertion index from line and character indices
|
|
24776
25042
|
*/
|
|
24777
25043
|
function calculateInsertionIndex(lineIndex, graphemeIndex, layout) {
|
|
24778
25044
|
let insertionIndex = 0;
|
|
@@ -24791,8 +25057,8 @@
|
|
|
24791
25057
|
return insertionIndex;
|
|
24792
25058
|
}
|
|
24793
25059
|
|
|
24794
|
-
/**
|
|
24795
|
-
* Find line and grapheme position from insertion index
|
|
25060
|
+
/**
|
|
25061
|
+
* Find line and grapheme position from insertion index
|
|
24796
25062
|
*/
|
|
24797
25063
|
function findPositionFromIndex(insertionIndex, layout) {
|
|
24798
25064
|
let currentIndex = 0;
|
|
@@ -24834,8 +25100,8 @@
|
|
|
24834
25100
|
};
|
|
24835
25101
|
}
|
|
24836
25102
|
|
|
24837
|
-
/**
|
|
24838
|
-
* Calculate Y position of a line
|
|
25103
|
+
/**
|
|
25104
|
+
* Calculate Y position of a line
|
|
24839
25105
|
*/
|
|
24840
25106
|
function calculateLineY(lineIndex, layout, options) {
|
|
24841
25107
|
let y = 0;
|
|
@@ -24938,48 +25204,48 @@
|
|
|
24938
25204
|
|
|
24939
25205
|
// @TODO this is not complete
|
|
24940
25206
|
|
|
24941
|
-
/**
|
|
24942
|
-
* @fires changed
|
|
24943
|
-
* @fires selection:changed
|
|
24944
|
-
* @fires editing:entered
|
|
24945
|
-
* @fires editing:exited
|
|
24946
|
-
* @fires dragstart
|
|
24947
|
-
* @fires drag drag event firing on the drag source
|
|
24948
|
-
* @fires dragend
|
|
24949
|
-
* @fires copy
|
|
24950
|
-
* @fires cut
|
|
24951
|
-
* @fires paste
|
|
24952
|
-
*
|
|
24953
|
-
* #### Supported key combinations
|
|
24954
|
-
* ```
|
|
24955
|
-
* Move cursor: left, right, up, down
|
|
24956
|
-
* Select character: shift + left, shift + right
|
|
24957
|
-
* Select text vertically: shift + up, shift + down
|
|
24958
|
-
* Move cursor by word: alt + left, alt + right
|
|
24959
|
-
* Select words: shift + alt + left, shift + alt + right
|
|
24960
|
-
* Move cursor to line start/end: cmd + left, cmd + right or home, end
|
|
24961
|
-
* Select till start/end of line: cmd + shift + left, cmd + shift + right or shift + home, shift + end
|
|
24962
|
-
* Jump to start/end of text: cmd + up, cmd + down
|
|
24963
|
-
* Select till start/end of text: cmd + shift + up, cmd + shift + down or shift + pgUp, shift + pgDown
|
|
24964
|
-
* Delete character: backspace
|
|
24965
|
-
* Delete word: alt + backspace
|
|
24966
|
-
* Delete line: cmd + backspace
|
|
24967
|
-
* Forward delete: delete
|
|
24968
|
-
* Copy text: ctrl/cmd + c
|
|
24969
|
-
* Paste text: ctrl/cmd + v
|
|
24970
|
-
* Cut text: ctrl/cmd + x
|
|
24971
|
-
* Select entire text: ctrl/cmd + a
|
|
24972
|
-
* Quit editing tab or esc
|
|
24973
|
-
* ```
|
|
24974
|
-
*
|
|
24975
|
-
* #### Supported mouse/touch combination
|
|
24976
|
-
* ```
|
|
24977
|
-
* Position cursor: click/touch
|
|
24978
|
-
* Create selection: click/touch & drag
|
|
24979
|
-
* Create selection: click & shift + click
|
|
24980
|
-
* Select word: double click
|
|
24981
|
-
* Select line: triple click
|
|
24982
|
-
* ```
|
|
25207
|
+
/**
|
|
25208
|
+
* @fires changed
|
|
25209
|
+
* @fires selection:changed
|
|
25210
|
+
* @fires editing:entered
|
|
25211
|
+
* @fires editing:exited
|
|
25212
|
+
* @fires dragstart
|
|
25213
|
+
* @fires drag drag event firing on the drag source
|
|
25214
|
+
* @fires dragend
|
|
25215
|
+
* @fires copy
|
|
25216
|
+
* @fires cut
|
|
25217
|
+
* @fires paste
|
|
25218
|
+
*
|
|
25219
|
+
* #### Supported key combinations
|
|
25220
|
+
* ```
|
|
25221
|
+
* Move cursor: left, right, up, down
|
|
25222
|
+
* Select character: shift + left, shift + right
|
|
25223
|
+
* Select text vertically: shift + up, shift + down
|
|
25224
|
+
* Move cursor by word: alt + left, alt + right
|
|
25225
|
+
* Select words: shift + alt + left, shift + alt + right
|
|
25226
|
+
* Move cursor to line start/end: cmd + left, cmd + right or home, end
|
|
25227
|
+
* Select till start/end of line: cmd + shift + left, cmd + shift + right or shift + home, shift + end
|
|
25228
|
+
* Jump to start/end of text: cmd + up, cmd + down
|
|
25229
|
+
* Select till start/end of text: cmd + shift + up, cmd + shift + down or shift + pgUp, shift + pgDown
|
|
25230
|
+
* Delete character: backspace
|
|
25231
|
+
* Delete word: alt + backspace
|
|
25232
|
+
* Delete line: cmd + backspace
|
|
25233
|
+
* Forward delete: delete
|
|
25234
|
+
* Copy text: ctrl/cmd + c
|
|
25235
|
+
* Paste text: ctrl/cmd + v
|
|
25236
|
+
* Cut text: ctrl/cmd + x
|
|
25237
|
+
* Select entire text: ctrl/cmd + a
|
|
25238
|
+
* Quit editing tab or esc
|
|
25239
|
+
* ```
|
|
25240
|
+
*
|
|
25241
|
+
* #### Supported mouse/touch combination
|
|
25242
|
+
* ```
|
|
25243
|
+
* Position cursor: click/touch
|
|
25244
|
+
* Create selection: click/touch & drag
|
|
25245
|
+
* Create selection: click & shift + click
|
|
25246
|
+
* Select word: double click
|
|
25247
|
+
* Select line: triple click
|
|
25248
|
+
* ```
|
|
24983
25249
|
*/
|
|
24984
25250
|
class IText extends ITextClickBehavior {
|
|
24985
25251
|
static getDefaults() {
|
|
@@ -24994,10 +25260,10 @@
|
|
|
24994
25260
|
return type === 'itext' ? 'i-text' : type;
|
|
24995
25261
|
}
|
|
24996
25262
|
|
|
24997
|
-
/**
|
|
24998
|
-
* Constructor
|
|
24999
|
-
* @param {String} text Text string
|
|
25000
|
-
* @param {Object} [options] Options object
|
|
25263
|
+
/**
|
|
25264
|
+
* Constructor
|
|
25265
|
+
* @param {String} text Text string
|
|
25266
|
+
* @param {Object} [options] Options object
|
|
25001
25267
|
*/
|
|
25002
25268
|
constructor(text, options) {
|
|
25003
25269
|
super(text, {
|
|
@@ -25007,11 +25273,11 @@
|
|
|
25007
25273
|
this.initBehavior();
|
|
25008
25274
|
}
|
|
25009
25275
|
|
|
25010
|
-
/**
|
|
25011
|
-
* While editing handle differently
|
|
25012
|
-
* @private
|
|
25013
|
-
* @param {string} key
|
|
25014
|
-
* @param {*} value
|
|
25276
|
+
/**
|
|
25277
|
+
* While editing handle differently
|
|
25278
|
+
* @private
|
|
25279
|
+
* @param {string} key
|
|
25280
|
+
* @param {*} value
|
|
25015
25281
|
*/
|
|
25016
25282
|
_set(key, value) {
|
|
25017
25283
|
if (this.isEditing && this._savedProps && key in this._savedProps) {
|
|
@@ -25026,28 +25292,28 @@
|
|
|
25026
25292
|
return super._set(key, value);
|
|
25027
25293
|
}
|
|
25028
25294
|
|
|
25029
|
-
/**
|
|
25030
|
-
* Sets selection start (left boundary of a selection)
|
|
25031
|
-
* @param {Number} index Index to set selection start to
|
|
25295
|
+
/**
|
|
25296
|
+
* Sets selection start (left boundary of a selection)
|
|
25297
|
+
* @param {Number} index Index to set selection start to
|
|
25032
25298
|
*/
|
|
25033
25299
|
setSelectionStart(index) {
|
|
25034
25300
|
index = Math.max(index, 0);
|
|
25035
25301
|
this._updateAndFire('selectionStart', index);
|
|
25036
25302
|
}
|
|
25037
25303
|
|
|
25038
|
-
/**
|
|
25039
|
-
* Sets selection end (right boundary of a selection)
|
|
25040
|
-
* @param {Number} index Index to set selection end to
|
|
25304
|
+
/**
|
|
25305
|
+
* Sets selection end (right boundary of a selection)
|
|
25306
|
+
* @param {Number} index Index to set selection end to
|
|
25041
25307
|
*/
|
|
25042
25308
|
setSelectionEnd(index) {
|
|
25043
25309
|
index = Math.min(index, this.text.length);
|
|
25044
25310
|
this._updateAndFire('selectionEnd', index);
|
|
25045
25311
|
}
|
|
25046
25312
|
|
|
25047
|
-
/**
|
|
25048
|
-
* @private
|
|
25049
|
-
* @param {String} property 'selectionStart' or 'selectionEnd'
|
|
25050
|
-
* @param {Number} index new position of property
|
|
25313
|
+
/**
|
|
25314
|
+
* @private
|
|
25315
|
+
* @param {String} property 'selectionStart' or 'selectionEnd'
|
|
25316
|
+
* @param {Number} index new position of property
|
|
25051
25317
|
*/
|
|
25052
25318
|
_updateAndFire(property, index) {
|
|
25053
25319
|
if (this[property] !== index) {
|
|
@@ -25057,9 +25323,9 @@
|
|
|
25057
25323
|
this._updateTextarea();
|
|
25058
25324
|
}
|
|
25059
25325
|
|
|
25060
|
-
/**
|
|
25061
|
-
* Fires the even of selection changed
|
|
25062
|
-
* @private
|
|
25326
|
+
/**
|
|
25327
|
+
* Fires the even of selection changed
|
|
25328
|
+
* @private
|
|
25063
25329
|
*/
|
|
25064
25330
|
_fireSelectionChanged() {
|
|
25065
25331
|
this.fire('selection:changed');
|
|
@@ -25068,25 +25334,25 @@
|
|
|
25068
25334
|
});
|
|
25069
25335
|
}
|
|
25070
25336
|
|
|
25071
|
-
/**
|
|
25072
|
-
* Initialize text dimensions. Render all text on given context
|
|
25073
|
-
* or on a offscreen canvas to get the text width with measureText.
|
|
25074
|
-
* Updates this.width and this.height with the proper values.
|
|
25075
|
-
* Does not return dimensions.
|
|
25076
|
-
* @private
|
|
25337
|
+
/**
|
|
25338
|
+
* Initialize text dimensions. Render all text on given context
|
|
25339
|
+
* or on a offscreen canvas to get the text width with measureText.
|
|
25340
|
+
* Updates this.width and this.height with the proper values.
|
|
25341
|
+
* Does not return dimensions.
|
|
25342
|
+
* @private
|
|
25077
25343
|
*/
|
|
25078
25344
|
initDimensions() {
|
|
25079
25345
|
this.isEditing && this.initDelayedCursor();
|
|
25080
25346
|
super.initDimensions();
|
|
25081
25347
|
}
|
|
25082
25348
|
|
|
25083
|
-
/**
|
|
25084
|
-
* Gets style of a current selection/cursor (at the start position)
|
|
25085
|
-
* if startIndex or endIndex are not provided, selectionStart or selectionEnd will be used.
|
|
25086
|
-
* @param {Number} startIndex Start index to get styles at
|
|
25087
|
-
* @param {Number} endIndex End index to get styles at, if not specified selectionEnd or startIndex + 1
|
|
25088
|
-
* @param {Boolean} [complete] get full style or not
|
|
25089
|
-
* @return {Array} styles an array with one, zero or more Style objects
|
|
25349
|
+
/**
|
|
25350
|
+
* Gets style of a current selection/cursor (at the start position)
|
|
25351
|
+
* if startIndex or endIndex are not provided, selectionStart or selectionEnd will be used.
|
|
25352
|
+
* @param {Number} startIndex Start index to get styles at
|
|
25353
|
+
* @param {Number} endIndex End index to get styles at, if not specified selectionEnd or startIndex + 1
|
|
25354
|
+
* @param {Boolean} [complete] get full style or not
|
|
25355
|
+
* @return {Array} styles an array with one, zero or more Style objects
|
|
25090
25356
|
*/
|
|
25091
25357
|
getSelectionStyles() {
|
|
25092
25358
|
let startIndex = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.selectionStart || 0;
|
|
@@ -25095,11 +25361,11 @@
|
|
|
25095
25361
|
return super.getSelectionStyles(startIndex, endIndex, complete);
|
|
25096
25362
|
}
|
|
25097
25363
|
|
|
25098
|
-
/**
|
|
25099
|
-
* Sets style of a current selection, if no selection exist, do not set anything.
|
|
25100
|
-
* @param {Object} [styles] Styles object
|
|
25101
|
-
* @param {Number} [startIndex] Start index to get styles at
|
|
25102
|
-
* @param {Number} [endIndex] End index to get styles at, if not specified selectionEnd or startIndex + 1
|
|
25364
|
+
/**
|
|
25365
|
+
* Sets style of a current selection, if no selection exist, do not set anything.
|
|
25366
|
+
* @param {Object} [styles] Styles object
|
|
25367
|
+
* @param {Number} [startIndex] Start index to get styles at
|
|
25368
|
+
* @param {Number} [endIndex] End index to get styles at, if not specified selectionEnd or startIndex + 1
|
|
25103
25369
|
*/
|
|
25104
25370
|
setSelectionStyles(styles) {
|
|
25105
25371
|
let startIndex = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.selectionStart || 0;
|
|
@@ -25107,10 +25373,10 @@
|
|
|
25107
25373
|
return super.setSelectionStyles(styles, startIndex, endIndex);
|
|
25108
25374
|
}
|
|
25109
25375
|
|
|
25110
|
-
/**
|
|
25111
|
-
* Returns 2d representation (lineIndex and charIndex) of cursor (or selection start)
|
|
25112
|
-
* @param {Number} [selectionStart] Optional index. When not given, current selectionStart is used.
|
|
25113
|
-
* @param {Boolean} [skipWrapping] consider the location for unwrapped lines. useful to manage styles.
|
|
25376
|
+
/**
|
|
25377
|
+
* Returns 2d representation (lineIndex and charIndex) of cursor (or selection start)
|
|
25378
|
+
* @param {Number} [selectionStart] Optional index. When not given, current selectionStart is used.
|
|
25379
|
+
* @param {Boolean} [skipWrapping] consider the location for unwrapped lines. useful to manage styles.
|
|
25114
25380
|
*/
|
|
25115
25381
|
get2DCursorLocation() {
|
|
25116
25382
|
let selectionStart = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.selectionStart;
|
|
@@ -25118,9 +25384,9 @@
|
|
|
25118
25384
|
return super.get2DCursorLocation(selectionStart, skipWrapping);
|
|
25119
25385
|
}
|
|
25120
25386
|
|
|
25121
|
-
/**
|
|
25122
|
-
* @private
|
|
25123
|
-
* @param {CanvasRenderingContext2D} ctx Context to render on
|
|
25387
|
+
/**
|
|
25388
|
+
* @private
|
|
25389
|
+
* @param {CanvasRenderingContext2D} ctx Context to render on
|
|
25124
25390
|
*/
|
|
25125
25391
|
render(ctx) {
|
|
25126
25392
|
super.render(ctx);
|
|
@@ -25130,9 +25396,9 @@
|
|
|
25130
25396
|
this.renderCursorOrSelection();
|
|
25131
25397
|
}
|
|
25132
25398
|
|
|
25133
|
-
/**
|
|
25134
|
-
* @override block cursor/selection logic while rendering the exported canvas
|
|
25135
|
-
* @todo this workaround should be replaced with a more robust solution
|
|
25399
|
+
/**
|
|
25400
|
+
* @override block cursor/selection logic while rendering the exported canvas
|
|
25401
|
+
* @todo this workaround should be replaced with a more robust solution
|
|
25136
25402
|
*/
|
|
25137
25403
|
toCanvasElement(options) {
|
|
25138
25404
|
const isEditing = this.isEditing;
|
|
@@ -25142,9 +25408,9 @@
|
|
|
25142
25408
|
return canvas;
|
|
25143
25409
|
}
|
|
25144
25410
|
|
|
25145
|
-
/**
|
|
25146
|
-
* Renders cursor or selection (depending on what exists)
|
|
25147
|
-
* it does on the contextTop. If contextTop is not available, do nothing.
|
|
25411
|
+
/**
|
|
25412
|
+
* Renders cursor or selection (depending on what exists)
|
|
25413
|
+
* it does on the contextTop. If contextTop is not available, do nothing.
|
|
25148
25414
|
*/
|
|
25149
25415
|
renderCursorOrSelection() {
|
|
25150
25416
|
if (!this.isEditing || !this.canvas) {
|
|
@@ -25200,12 +25466,12 @@
|
|
|
25200
25466
|
ctx.restore();
|
|
25201
25467
|
}
|
|
25202
25468
|
|
|
25203
|
-
/**
|
|
25204
|
-
* Finds and returns an array of clip paths that are applied to the parent
|
|
25205
|
-
* group(s) of the current FabricObject instance. The object's hierarchy is
|
|
25206
|
-
* traversed upwards (from the current object towards the root of the canvas),
|
|
25207
|
-
* checking each parent object for the presence of a `clipPath` that is not
|
|
25208
|
-
* absolutely positioned.
|
|
25469
|
+
/**
|
|
25470
|
+
* Finds and returns an array of clip paths that are applied to the parent
|
|
25471
|
+
* group(s) of the current FabricObject instance. The object's hierarchy is
|
|
25472
|
+
* traversed upwards (from the current object towards the root of the canvas),
|
|
25473
|
+
* checking each parent object for the presence of a `clipPath` that is not
|
|
25474
|
+
* absolutely positioned.
|
|
25209
25475
|
*/
|
|
25210
25476
|
findAncestorsWithClipPath() {
|
|
25211
25477
|
const clipPathAncestors = [];
|
|
@@ -25220,13 +25486,13 @@
|
|
|
25220
25486
|
return clipPathAncestors;
|
|
25221
25487
|
}
|
|
25222
25488
|
|
|
25223
|
-
/**
|
|
25224
|
-
* Returns cursor boundaries (left, top, leftOffset, topOffset)
|
|
25225
|
-
* left/top are left/top of entire text box
|
|
25226
|
-
* leftOffset/topOffset are offset from that left/top point of a text box
|
|
25227
|
-
* @private
|
|
25228
|
-
* @param {number} [index] index from start
|
|
25229
|
-
* @param {boolean} [skipCaching]
|
|
25489
|
+
/**
|
|
25490
|
+
* Returns cursor boundaries (left, top, leftOffset, topOffset)
|
|
25491
|
+
* left/top are left/top of entire text box
|
|
25492
|
+
* leftOffset/topOffset are offset from that left/top point of a text box
|
|
25493
|
+
* @private
|
|
25494
|
+
* @param {number} [index] index from start
|
|
25495
|
+
* @param {boolean} [skipCaching]
|
|
25230
25496
|
*/
|
|
25231
25497
|
_getCursorBoundaries() {
|
|
25232
25498
|
let index = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.selectionStart;
|
|
@@ -25240,11 +25506,11 @@
|
|
|
25240
25506
|
return this._getCursorBoundariesOriginal(index, skipCaching);
|
|
25241
25507
|
}
|
|
25242
25508
|
|
|
25243
|
-
/**
|
|
25244
|
-
* Caches and returns cursor left/top offset relative to instance's center point
|
|
25245
|
-
* @private
|
|
25246
|
-
* @param {number} index index from start
|
|
25247
|
-
* @param {boolean} [skipCaching]
|
|
25509
|
+
/**
|
|
25510
|
+
* Caches and returns cursor left/top offset relative to instance's center point
|
|
25511
|
+
* @private
|
|
25512
|
+
* @param {number} index index from start
|
|
25513
|
+
* @param {boolean} [skipCaching]
|
|
25248
25514
|
*/
|
|
25249
25515
|
_getCursorBoundariesOffsets(index, skipCaching) {
|
|
25250
25516
|
if (skipCaching) {
|
|
@@ -25256,9 +25522,9 @@
|
|
|
25256
25522
|
return this.cursorOffsetCache = this.__getCursorBoundariesOffsets(index);
|
|
25257
25523
|
}
|
|
25258
25524
|
|
|
25259
|
-
/**
|
|
25260
|
-
* Enhanced cursor boundaries using advanced hit testing when available
|
|
25261
|
-
* @private
|
|
25525
|
+
/**
|
|
25526
|
+
* Enhanced cursor boundaries using advanced hit testing when available
|
|
25527
|
+
* @private
|
|
25262
25528
|
*/
|
|
25263
25529
|
_getCursorBoundariesAdvanced(index) {
|
|
25264
25530
|
if (!this.enableAdvancedLayout || !this._layoutTextAdvanced) {
|
|
@@ -25274,9 +25540,9 @@
|
|
|
25274
25540
|
};
|
|
25275
25541
|
}
|
|
25276
25542
|
|
|
25277
|
-
/**
|
|
25278
|
-
* Enhanced selection start from pointer using BiDi-aware hit testing
|
|
25279
|
-
* @override
|
|
25543
|
+
/**
|
|
25544
|
+
* Enhanced selection start from pointer using BiDi-aware hit testing
|
|
25545
|
+
* @override
|
|
25280
25546
|
*/
|
|
25281
25547
|
getSelectionStartFromPointer(e) {
|
|
25282
25548
|
if (!this.enableAdvancedLayout || !this._layoutTextAdvanced) {
|
|
@@ -25290,9 +25556,9 @@
|
|
|
25290
25556
|
return Math.min(hitResult.charIndex, this._text.length);
|
|
25291
25557
|
}
|
|
25292
25558
|
|
|
25293
|
-
/**
|
|
25294
|
-
* Original cursor boundaries implementation
|
|
25295
|
-
* @private
|
|
25559
|
+
/**
|
|
25560
|
+
* Original cursor boundaries implementation
|
|
25561
|
+
* @private
|
|
25296
25562
|
*/
|
|
25297
25563
|
_getCursorBoundariesOriginal(index, skipCaching) {
|
|
25298
25564
|
const left = this._getLeftOffset(),
|
|
@@ -25306,10 +25572,10 @@
|
|
|
25306
25572
|
};
|
|
25307
25573
|
}
|
|
25308
25574
|
|
|
25309
|
-
/**
|
|
25310
|
-
* Calculates cursor left/top offset relative to instance's center point
|
|
25311
|
-
* @private
|
|
25312
|
-
* @param {number} index index from start
|
|
25575
|
+
/**
|
|
25576
|
+
* Calculates cursor left/top offset relative to instance's center point
|
|
25577
|
+
* @private
|
|
25578
|
+
* @param {number} index index from start
|
|
25313
25579
|
*/
|
|
25314
25580
|
__getCursorBoundariesOffsets(index) {
|
|
25315
25581
|
let topOffset = 0,
|
|
@@ -25343,29 +25609,29 @@
|
|
|
25343
25609
|
return boundaries;
|
|
25344
25610
|
}
|
|
25345
25611
|
|
|
25346
|
-
/**
|
|
25347
|
-
* Renders cursor on context Top, outside the animation cycle, on request
|
|
25348
|
-
* Used for the drag/drop effect.
|
|
25349
|
-
* If contextTop is not available, do nothing.
|
|
25612
|
+
/**
|
|
25613
|
+
* Renders cursor on context Top, outside the animation cycle, on request
|
|
25614
|
+
* Used for the drag/drop effect.
|
|
25615
|
+
* If contextTop is not available, do nothing.
|
|
25350
25616
|
*/
|
|
25351
25617
|
renderCursorAt(selectionStart) {
|
|
25352
25618
|
this._renderCursor(this.canvas.contextTop, this._getCursorBoundaries(selectionStart, true), selectionStart);
|
|
25353
25619
|
}
|
|
25354
25620
|
|
|
25355
|
-
/**
|
|
25356
|
-
* Renders cursor
|
|
25357
|
-
* @param {Object} boundaries
|
|
25358
|
-
* @param {CanvasRenderingContext2D} ctx transformed context to draw on
|
|
25621
|
+
/**
|
|
25622
|
+
* Renders cursor
|
|
25623
|
+
* @param {Object} boundaries
|
|
25624
|
+
* @param {CanvasRenderingContext2D} ctx transformed context to draw on
|
|
25359
25625
|
*/
|
|
25360
25626
|
renderCursor(ctx, boundaries) {
|
|
25361
25627
|
this._renderCursor(ctx, boundaries, this.selectionStart);
|
|
25362
25628
|
}
|
|
25363
25629
|
|
|
25364
|
-
/**
|
|
25365
|
-
* Return the data needed to render the cursor for given selection start
|
|
25366
|
-
* The left,top are relative to the object, while width and height are prescaled
|
|
25367
|
-
* to look think with canvas zoom and object scaling,
|
|
25368
|
-
* so they depend on canvas and object scaling
|
|
25630
|
+
/**
|
|
25631
|
+
* Return the data needed to render the cursor for given selection start
|
|
25632
|
+
* The left,top are relative to the object, while width and height are prescaled
|
|
25633
|
+
* to look think with canvas zoom and object scaling,
|
|
25634
|
+
* so they depend on canvas and object scaling
|
|
25369
25635
|
*/
|
|
25370
25636
|
getCursorRenderingData() {
|
|
25371
25637
|
let selectionStart = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.selectionStart;
|
|
@@ -25388,9 +25654,9 @@
|
|
|
25388
25654
|
};
|
|
25389
25655
|
}
|
|
25390
25656
|
|
|
25391
|
-
/**
|
|
25392
|
-
* Render the cursor at the given selectionStart.
|
|
25393
|
-
* @param {CanvasRenderingContext2D} ctx transformed context to draw on
|
|
25657
|
+
/**
|
|
25658
|
+
* Render the cursor at the given selectionStart.
|
|
25659
|
+
* @param {CanvasRenderingContext2D} ctx transformed context to draw on
|
|
25394
25660
|
*/
|
|
25395
25661
|
_renderCursor(ctx, boundaries, selectionStart) {
|
|
25396
25662
|
const {
|
|
@@ -25406,10 +25672,10 @@
|
|
|
25406
25672
|
ctx.fillRect(left, top, width, height);
|
|
25407
25673
|
}
|
|
25408
25674
|
|
|
25409
|
-
/**
|
|
25410
|
-
* Renders text selection
|
|
25411
|
-
* @param {Object} boundaries Object with left/top/leftOffset/topOffset
|
|
25412
|
-
* @param {CanvasRenderingContext2D} ctx transformed context to draw on
|
|
25675
|
+
/**
|
|
25676
|
+
* Renders text selection
|
|
25677
|
+
* @param {Object} boundaries Object with left/top/leftOffset/topOffset
|
|
25678
|
+
* @param {CanvasRenderingContext2D} ctx transformed context to draw on
|
|
25413
25679
|
*/
|
|
25414
25680
|
renderSelection(ctx, boundaries) {
|
|
25415
25681
|
const selection = {
|
|
@@ -25419,8 +25685,8 @@
|
|
|
25419
25685
|
this._renderSelection(ctx, selection, boundaries);
|
|
25420
25686
|
}
|
|
25421
25687
|
|
|
25422
|
-
/**
|
|
25423
|
-
* Renders drag start text selection
|
|
25688
|
+
/**
|
|
25689
|
+
* Renders drag start text selection
|
|
25424
25690
|
*/
|
|
25425
25691
|
renderDragSourceEffect() {
|
|
25426
25692
|
const dragStartSelection = this.draggableTextDelegate.getDragStartSelection();
|
|
@@ -25431,12 +25697,12 @@
|
|
|
25431
25697
|
this.renderCursorAt(dragSelection);
|
|
25432
25698
|
}
|
|
25433
25699
|
|
|
25434
|
-
/**
|
|
25435
|
-
* Renders text selection
|
|
25436
|
-
* @private
|
|
25437
|
-
* @param {{ selectionStart: number, selectionEnd: number }} selection
|
|
25438
|
-
* @param {Object} boundaries Object with left/top/leftOffset/topOffset
|
|
25439
|
-
* @param {CanvasRenderingContext2D} ctx transformed context to draw on
|
|
25700
|
+
/**
|
|
25701
|
+
* Renders text selection
|
|
25702
|
+
* @private
|
|
25703
|
+
* @param {{ selectionStart: number, selectionEnd: number }} selection
|
|
25704
|
+
* @param {Object} boundaries Object with left/top/leftOffset/topOffset
|
|
25705
|
+
* @param {CanvasRenderingContext2D} ctx transformed context to draw on
|
|
25440
25706
|
*/
|
|
25441
25707
|
_renderSelection(ctx, selection, boundaries) {
|
|
25442
25708
|
const selectionStart = selection.selectionStart,
|
|
@@ -25498,34 +25764,34 @@
|
|
|
25498
25764
|
}
|
|
25499
25765
|
}
|
|
25500
25766
|
|
|
25501
|
-
/**
|
|
25502
|
-
* High level function to know the height of the cursor.
|
|
25503
|
-
* the currentChar is the one that precedes the cursor
|
|
25504
|
-
* Returns fontSize of char at the current cursor
|
|
25505
|
-
* Unused from the library, is for the end user
|
|
25506
|
-
* @return {Number} Character font size
|
|
25767
|
+
/**
|
|
25768
|
+
* High level function to know the height of the cursor.
|
|
25769
|
+
* the currentChar is the one that precedes the cursor
|
|
25770
|
+
* Returns fontSize of char at the current cursor
|
|
25771
|
+
* Unused from the library, is for the end user
|
|
25772
|
+
* @return {Number} Character font size
|
|
25507
25773
|
*/
|
|
25508
25774
|
getCurrentCharFontSize() {
|
|
25509
25775
|
const cp = this._getCurrentCharIndex();
|
|
25510
25776
|
return this.getValueOfPropertyAt(cp.l, cp.c, 'fontSize');
|
|
25511
25777
|
}
|
|
25512
25778
|
|
|
25513
|
-
/**
|
|
25514
|
-
* High level function to know the color of the cursor.
|
|
25515
|
-
* the currentChar is the one that precedes the cursor
|
|
25516
|
-
* Returns color (fill) of char at the current cursor
|
|
25517
|
-
* if the text object has a pattern or gradient for filler, it will return that.
|
|
25518
|
-
* Unused by the library, is for the end user
|
|
25519
|
-
* @return {String | TFiller} Character color (fill)
|
|
25779
|
+
/**
|
|
25780
|
+
* High level function to know the color of the cursor.
|
|
25781
|
+
* the currentChar is the one that precedes the cursor
|
|
25782
|
+
* Returns color (fill) of char at the current cursor
|
|
25783
|
+
* if the text object has a pattern or gradient for filler, it will return that.
|
|
25784
|
+
* Unused by the library, is for the end user
|
|
25785
|
+
* @return {String | TFiller} Character color (fill)
|
|
25520
25786
|
*/
|
|
25521
25787
|
getCurrentCharColor() {
|
|
25522
25788
|
const cp = this._getCurrentCharIndex();
|
|
25523
25789
|
return this.getValueOfPropertyAt(cp.l, cp.c, FILL);
|
|
25524
25790
|
}
|
|
25525
25791
|
|
|
25526
|
-
/**
|
|
25527
|
-
* Returns the cursor position for the getCurrent.. functions
|
|
25528
|
-
* @private
|
|
25792
|
+
/**
|
|
25793
|
+
* Returns the cursor position for the getCurrent.. functions
|
|
25794
|
+
* @private
|
|
25529
25795
|
*/
|
|
25530
25796
|
_getCurrentCharIndex() {
|
|
25531
25797
|
const cursorPosition = this.get2DCursorLocation(this.selectionStart, true),
|
|
@@ -25541,52 +25807,52 @@
|
|
|
25541
25807
|
super.dispose();
|
|
25542
25808
|
}
|
|
25543
25809
|
}
|
|
25544
|
-
/**
|
|
25545
|
-
* Index where text selection starts (or where cursor is when there is no selection)
|
|
25546
|
-
* @type Number
|
|
25810
|
+
/**
|
|
25811
|
+
* Index where text selection starts (or where cursor is when there is no selection)
|
|
25812
|
+
* @type Number
|
|
25547
25813
|
*/
|
|
25548
|
-
/**
|
|
25549
|
-
* Index where text selection ends
|
|
25550
|
-
* @type Number
|
|
25814
|
+
/**
|
|
25815
|
+
* Index where text selection ends
|
|
25816
|
+
* @type Number
|
|
25551
25817
|
*/
|
|
25552
|
-
/**
|
|
25553
|
-
* Color of text selection
|
|
25554
|
-
* @type String
|
|
25818
|
+
/**
|
|
25819
|
+
* Color of text selection
|
|
25820
|
+
* @type String
|
|
25555
25821
|
*/
|
|
25556
|
-
/**
|
|
25557
|
-
* Indicates whether text is in editing mode
|
|
25558
|
-
* @type Boolean
|
|
25822
|
+
/**
|
|
25823
|
+
* Indicates whether text is in editing mode
|
|
25824
|
+
* @type Boolean
|
|
25559
25825
|
*/
|
|
25560
|
-
/**
|
|
25561
|
-
* Indicates whether a text can be edited
|
|
25562
|
-
* @type Boolean
|
|
25826
|
+
/**
|
|
25827
|
+
* Indicates whether a text can be edited
|
|
25828
|
+
* @type Boolean
|
|
25563
25829
|
*/
|
|
25564
|
-
/**
|
|
25565
|
-
* Border color of text object while it's in editing mode
|
|
25566
|
-
* @type String
|
|
25830
|
+
/**
|
|
25831
|
+
* Border color of text object while it's in editing mode
|
|
25832
|
+
* @type String
|
|
25567
25833
|
*/
|
|
25568
|
-
/**
|
|
25569
|
-
* Width of cursor (in px)
|
|
25570
|
-
* @type Number
|
|
25834
|
+
/**
|
|
25835
|
+
* Width of cursor (in px)
|
|
25836
|
+
* @type Number
|
|
25571
25837
|
*/
|
|
25572
|
-
/**
|
|
25573
|
-
* Color of text cursor color in editing mode.
|
|
25574
|
-
* if not set (default) will take color from the text.
|
|
25575
|
-
* if set to a color value that fabric can understand, it will
|
|
25576
|
-
* be used instead of the color of the text at the current position.
|
|
25577
|
-
* @type String
|
|
25838
|
+
/**
|
|
25839
|
+
* Color of text cursor color in editing mode.
|
|
25840
|
+
* if not set (default) will take color from the text.
|
|
25841
|
+
* if set to a color value that fabric can understand, it will
|
|
25842
|
+
* be used instead of the color of the text at the current position.
|
|
25843
|
+
* @type String
|
|
25578
25844
|
*/
|
|
25579
|
-
/**
|
|
25580
|
-
* Delay between cursor blink (in ms)
|
|
25581
|
-
* @type Number
|
|
25845
|
+
/**
|
|
25846
|
+
* Delay between cursor blink (in ms)
|
|
25847
|
+
* @type Number
|
|
25582
25848
|
*/
|
|
25583
|
-
/**
|
|
25584
|
-
* Duration of cursor fade in (in ms)
|
|
25585
|
-
* @type Number
|
|
25849
|
+
/**
|
|
25850
|
+
* Duration of cursor fade in (in ms)
|
|
25851
|
+
* @type Number
|
|
25586
25852
|
*/
|
|
25587
|
-
/**
|
|
25588
|
-
* Indicates whether internal text char widths can be cached
|
|
25589
|
-
* @type Boolean
|
|
25853
|
+
/**
|
|
25854
|
+
* Indicates whether internal text char widths can be cached
|
|
25855
|
+
* @type Boolean
|
|
25590
25856
|
*/
|
|
25591
25857
|
_defineProperty(IText, "ownDefaults", iTextDefaultValues);
|
|
25592
25858
|
_defineProperty(IText, "type", 'IText');
|
|
@@ -25608,11 +25874,11 @@
|
|
|
25608
25874
|
|
|
25609
25875
|
// @TODO this is not complete
|
|
25610
25876
|
|
|
25611
|
-
/**
|
|
25612
|
-
* Textbox class, based on IText, allows the user to resize the text rectangle
|
|
25613
|
-
* and wraps lines automatically. Textboxes have their Y scaling locked, the
|
|
25614
|
-
* user can only change width. Height is adjusted automatically based on the
|
|
25615
|
-
* wrapping of lines.
|
|
25877
|
+
/**
|
|
25878
|
+
* Textbox class, based on IText, allows the user to resize the text rectangle
|
|
25879
|
+
* and wraps lines automatically. Textboxes have their Y scaling locked, the
|
|
25880
|
+
* user can only change width. Height is adjusted automatically based on the
|
|
25881
|
+
* wrapping of lines.
|
|
25616
25882
|
*/
|
|
25617
25883
|
class Textbox extends IText {
|
|
25618
25884
|
static getDefaults() {
|
|
@@ -25622,10 +25888,10 @@
|
|
|
25622
25888
|
};
|
|
25623
25889
|
}
|
|
25624
25890
|
|
|
25625
|
-
/**
|
|
25626
|
-
* Constructor
|
|
25627
|
-
* @param {String} text Text string
|
|
25628
|
-
* @param {Object} [options] Options object
|
|
25891
|
+
/**
|
|
25892
|
+
* Constructor
|
|
25893
|
+
* @param {String} text Text string
|
|
25894
|
+
* @param {Object} [options] Options object
|
|
25629
25895
|
*/
|
|
25630
25896
|
constructor(text, options) {
|
|
25631
25897
|
super(text, {
|
|
@@ -25635,10 +25901,10 @@
|
|
|
25635
25901
|
this.initializeEventListeners();
|
|
25636
25902
|
}
|
|
25637
25903
|
|
|
25638
|
-
/**
|
|
25639
|
-
* Creates the default control object.
|
|
25640
|
-
* If you prefer to have on instance of controls shared among all objects
|
|
25641
|
-
* make this function return an empty object and add controls to the ownDefaults object
|
|
25904
|
+
/**
|
|
25905
|
+
* Creates the default control object.
|
|
25906
|
+
* If you prefer to have on instance of controls shared among all objects
|
|
25907
|
+
* make this function return an empty object and add controls to the ownDefaults object
|
|
25642
25908
|
*/
|
|
25643
25909
|
static createControls() {
|
|
25644
25910
|
return {
|
|
@@ -25646,11 +25912,11 @@
|
|
|
25646
25912
|
};
|
|
25647
25913
|
}
|
|
25648
25914
|
|
|
25649
|
-
/**
|
|
25650
|
-
* Unlike superclass's version of this function, Textbox does not update
|
|
25651
|
-
* its width.
|
|
25652
|
-
* @private
|
|
25653
|
-
* @override
|
|
25915
|
+
/**
|
|
25916
|
+
* Unlike superclass's version of this function, Textbox does not update
|
|
25917
|
+
* its width.
|
|
25918
|
+
* @private
|
|
25919
|
+
* @override
|
|
25654
25920
|
*/
|
|
25655
25921
|
initDimensions() {
|
|
25656
25922
|
if (!this.initialized) {
|
|
@@ -25679,9 +25945,9 @@
|
|
|
25679
25945
|
this.height = this.calcTextHeight();
|
|
25680
25946
|
}
|
|
25681
25947
|
|
|
25682
|
-
/**
|
|
25683
|
-
* Advanced dimensions calculation using new layout engine
|
|
25684
|
-
* @private
|
|
25948
|
+
/**
|
|
25949
|
+
* Advanced dimensions calculation using new layout engine
|
|
25950
|
+
* @private
|
|
25685
25951
|
*/
|
|
25686
25952
|
initDimensionsAdvanced() {
|
|
25687
25953
|
if (!this.initialized) {
|
|
@@ -25736,9 +26002,9 @@
|
|
|
25736
26002
|
this.dirty = true;
|
|
25737
26003
|
}
|
|
25738
26004
|
|
|
25739
|
-
/**
|
|
25740
|
-
* Generate style map from new layout format
|
|
25741
|
-
* @private
|
|
26005
|
+
/**
|
|
26006
|
+
* Generate style map from new layout format
|
|
26007
|
+
* @private
|
|
25742
26008
|
*/
|
|
25743
26009
|
_generateStyleMapFromLayout(layout) {
|
|
25744
26010
|
const map = {};
|
|
@@ -25760,12 +26026,12 @@
|
|
|
25760
26026
|
return map;
|
|
25761
26027
|
}
|
|
25762
26028
|
|
|
25763
|
-
/**
|
|
25764
|
-
* Generate an object that translates the style object so that it is
|
|
25765
|
-
* broken up by visual lines (new lines and automatic wrapping).
|
|
25766
|
-
* The original text styles object is broken up by actual lines (new lines only),
|
|
25767
|
-
* which is only sufficient for Text / IText
|
|
25768
|
-
* @private
|
|
26029
|
+
/**
|
|
26030
|
+
* Generate an object that translates the style object so that it is
|
|
26031
|
+
* broken up by visual lines (new lines and automatic wrapping).
|
|
26032
|
+
* The original text styles object is broken up by actual lines (new lines only),
|
|
26033
|
+
* which is only sufficient for Text / IText
|
|
26034
|
+
* @private
|
|
25769
26035
|
*/
|
|
25770
26036
|
_generateStyleMap(textInfo) {
|
|
25771
26037
|
let realLineCount = 0,
|
|
@@ -25792,10 +26058,10 @@
|
|
|
25792
26058
|
return map;
|
|
25793
26059
|
}
|
|
25794
26060
|
|
|
25795
|
-
/**
|
|
25796
|
-
* Returns true if object has a style property or has it on a specified line
|
|
25797
|
-
* @param {Number} lineIndex
|
|
25798
|
-
* @return {Boolean}
|
|
26061
|
+
/**
|
|
26062
|
+
* Returns true if object has a style property or has it on a specified line
|
|
26063
|
+
* @param {Number} lineIndex
|
|
26064
|
+
* @return {Boolean}
|
|
25799
26065
|
*/
|
|
25800
26066
|
styleHas(property, lineIndex) {
|
|
25801
26067
|
if (this._styleMap && !this.isWrapping) {
|
|
@@ -25807,10 +26073,10 @@
|
|
|
25807
26073
|
return super.styleHas(property, lineIndex);
|
|
25808
26074
|
}
|
|
25809
26075
|
|
|
25810
|
-
/**
|
|
25811
|
-
* Returns true if object has no styling or no styling in a line
|
|
25812
|
-
* @param {Number} lineIndex , lineIndex is on wrapped lines.
|
|
25813
|
-
* @return {Boolean}
|
|
26076
|
+
/**
|
|
26077
|
+
* Returns true if object has no styling or no styling in a line
|
|
26078
|
+
* @param {Number} lineIndex , lineIndex is on wrapped lines.
|
|
26079
|
+
* @return {Boolean}
|
|
25814
26080
|
*/
|
|
25815
26081
|
isEmptyStyles(lineIndex) {
|
|
25816
26082
|
if (!this.styles) {
|
|
@@ -25847,11 +26113,11 @@
|
|
|
25847
26113
|
return true;
|
|
25848
26114
|
}
|
|
25849
26115
|
|
|
25850
|
-
/**
|
|
25851
|
-
* @protected
|
|
25852
|
-
* @param {Number} lineIndex
|
|
25853
|
-
* @param {Number} charIndex
|
|
25854
|
-
* @return {TextStyleDeclaration} a style object reference to the existing one or a new empty object when undefined
|
|
26116
|
+
/**
|
|
26117
|
+
* @protected
|
|
26118
|
+
* @param {Number} lineIndex
|
|
26119
|
+
* @param {Number} charIndex
|
|
26120
|
+
* @return {TextStyleDeclaration} a style object reference to the existing one or a new empty object when undefined
|
|
25855
26121
|
*/
|
|
25856
26122
|
_getStyleDeclaration(lineIndex, charIndex) {
|
|
25857
26123
|
if (this._styleMap && !this.isWrapping) {
|
|
@@ -25865,59 +26131,59 @@
|
|
|
25865
26131
|
return super._getStyleDeclaration(lineIndex, charIndex);
|
|
25866
26132
|
}
|
|
25867
26133
|
|
|
25868
|
-
/**
|
|
25869
|
-
* @param {Number} lineIndex
|
|
25870
|
-
* @param {Number} charIndex
|
|
25871
|
-
* @param {Object} style
|
|
25872
|
-
* @private
|
|
26134
|
+
/**
|
|
26135
|
+
* @param {Number} lineIndex
|
|
26136
|
+
* @param {Number} charIndex
|
|
26137
|
+
* @param {Object} style
|
|
26138
|
+
* @private
|
|
25873
26139
|
*/
|
|
25874
26140
|
_setStyleDeclaration(lineIndex, charIndex, style) {
|
|
25875
26141
|
const map = this._styleMap[lineIndex];
|
|
25876
26142
|
super._setStyleDeclaration(map.line, map.offset + charIndex, style);
|
|
25877
26143
|
}
|
|
25878
26144
|
|
|
25879
|
-
/**
|
|
25880
|
-
* @param {Number} lineIndex
|
|
25881
|
-
* @param {Number} charIndex
|
|
25882
|
-
* @private
|
|
26145
|
+
/**
|
|
26146
|
+
* @param {Number} lineIndex
|
|
26147
|
+
* @param {Number} charIndex
|
|
26148
|
+
* @private
|
|
25883
26149
|
*/
|
|
25884
26150
|
_deleteStyleDeclaration(lineIndex, charIndex) {
|
|
25885
26151
|
const map = this._styleMap[lineIndex];
|
|
25886
26152
|
super._deleteStyleDeclaration(map.line, map.offset + charIndex);
|
|
25887
26153
|
}
|
|
25888
26154
|
|
|
25889
|
-
/**
|
|
25890
|
-
* probably broken need a fix
|
|
25891
|
-
* Returns the real style line that correspond to the wrapped lineIndex line
|
|
25892
|
-
* Used just to verify if the line does exist or not.
|
|
25893
|
-
* @param {Number} lineIndex
|
|
25894
|
-
* @returns {Boolean} if the line exists or not
|
|
25895
|
-
* @private
|
|
26155
|
+
/**
|
|
26156
|
+
* probably broken need a fix
|
|
26157
|
+
* Returns the real style line that correspond to the wrapped lineIndex line
|
|
26158
|
+
* Used just to verify if the line does exist or not.
|
|
26159
|
+
* @param {Number} lineIndex
|
|
26160
|
+
* @returns {Boolean} if the line exists or not
|
|
26161
|
+
* @private
|
|
25896
26162
|
*/
|
|
25897
26163
|
_getLineStyle(lineIndex) {
|
|
25898
26164
|
const map = this._styleMap[lineIndex];
|
|
25899
26165
|
return !!this.styles[map.line];
|
|
25900
26166
|
}
|
|
25901
26167
|
|
|
25902
|
-
/**
|
|
25903
|
-
* Set the line style to an empty object so that is initialized
|
|
25904
|
-
* @param {Number} lineIndex
|
|
25905
|
-
* @param {Object} style
|
|
25906
|
-
* @private
|
|
26168
|
+
/**
|
|
26169
|
+
* Set the line style to an empty object so that is initialized
|
|
26170
|
+
* @param {Number} lineIndex
|
|
26171
|
+
* @param {Object} style
|
|
26172
|
+
* @private
|
|
25907
26173
|
*/
|
|
25908
26174
|
_setLineStyle(lineIndex) {
|
|
25909
26175
|
const map = this._styleMap[lineIndex];
|
|
25910
26176
|
super._setLineStyle(map.line);
|
|
25911
26177
|
}
|
|
25912
26178
|
|
|
25913
|
-
/**
|
|
25914
|
-
* Wraps text using the 'width' property of Textbox. First this function
|
|
25915
|
-
* splits text on newlines, so we preserve newlines entered by the user.
|
|
25916
|
-
* Then it wraps each line using the width of the Textbox by calling
|
|
25917
|
-
* _wrapLine().
|
|
25918
|
-
* @param {Array} lines The string array of text that is split into lines
|
|
25919
|
-
* @param {Number} desiredWidth width you want to wrap to
|
|
25920
|
-
* @returns {Array} Array of lines
|
|
26179
|
+
/**
|
|
26180
|
+
* Wraps text using the 'width' property of Textbox. First this function
|
|
26181
|
+
* splits text on newlines, so we preserve newlines entered by the user.
|
|
26182
|
+
* Then it wraps each line using the width of the Textbox by calling
|
|
26183
|
+
* _wrapLine().
|
|
26184
|
+
* @param {Array} lines The string array of text that is split into lines
|
|
26185
|
+
* @param {Number} desiredWidth width you want to wrap to
|
|
26186
|
+
* @returns {Array} Array of lines
|
|
25921
26187
|
*/
|
|
25922
26188
|
_wrapText(lines, desiredWidth) {
|
|
25923
26189
|
this.isWrapping = true;
|
|
@@ -25931,12 +26197,12 @@
|
|
|
25931
26197
|
return wrapped;
|
|
25932
26198
|
}
|
|
25933
26199
|
|
|
25934
|
-
/**
|
|
25935
|
-
* For each line of text terminated by an hard line stop,
|
|
25936
|
-
* measure each word width and extract the largest word from all.
|
|
25937
|
-
* The returned words here are the one that at the end will be rendered.
|
|
25938
|
-
* @param {string[]} lines the lines we need to measure
|
|
25939
|
-
*
|
|
26200
|
+
/**
|
|
26201
|
+
* For each line of text terminated by an hard line stop,
|
|
26202
|
+
* measure each word width and extract the largest word from all.
|
|
26203
|
+
* The returned words here are the one that at the end will be rendered.
|
|
26204
|
+
* @param {string[]} lines the lines we need to measure
|
|
26205
|
+
*
|
|
25940
26206
|
*/
|
|
25941
26207
|
getGraphemeDataForRender(lines) {
|
|
25942
26208
|
const splitByGrapheme = this.splitByGrapheme,
|
|
@@ -25969,17 +26235,17 @@
|
|
|
25969
26235
|
};
|
|
25970
26236
|
}
|
|
25971
26237
|
|
|
25972
|
-
/**
|
|
25973
|
-
* Helper function to measure a string of text, given its lineIndex and charIndex offset
|
|
25974
|
-
* It gets called when charBounds are not available yet.
|
|
25975
|
-
* Override if necessary
|
|
25976
|
-
* Use with {@link Textbox#wordSplit}
|
|
25977
|
-
*
|
|
25978
|
-
* @param {CanvasRenderingContext2D} ctx
|
|
25979
|
-
* @param {String} text
|
|
25980
|
-
* @param {number} lineIndex
|
|
25981
|
-
* @param {number} charOffset
|
|
25982
|
-
* @returns {number}
|
|
26238
|
+
/**
|
|
26239
|
+
* Helper function to measure a string of text, given its lineIndex and charIndex offset
|
|
26240
|
+
* It gets called when charBounds are not available yet.
|
|
26241
|
+
* Override if necessary
|
|
26242
|
+
* Use with {@link Textbox#wordSplit}
|
|
26243
|
+
*
|
|
26244
|
+
* @param {CanvasRenderingContext2D} ctx
|
|
26245
|
+
* @param {String} text
|
|
26246
|
+
* @param {number} lineIndex
|
|
26247
|
+
* @param {number} charOffset
|
|
26248
|
+
* @returns {number}
|
|
25983
26249
|
*/
|
|
25984
26250
|
_measureWord(word, lineIndex) {
|
|
25985
26251
|
let charOffset = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;
|
|
@@ -25994,26 +26260,26 @@
|
|
|
25994
26260
|
return width;
|
|
25995
26261
|
}
|
|
25996
26262
|
|
|
25997
|
-
/**
|
|
25998
|
-
* Override this method to customize word splitting
|
|
25999
|
-
* Use with {@link Textbox#_measureWord}
|
|
26000
|
-
* @param {string} value
|
|
26001
|
-
* @returns {string[]} array of words
|
|
26263
|
+
/**
|
|
26264
|
+
* Override this method to customize word splitting
|
|
26265
|
+
* Use with {@link Textbox#_measureWord}
|
|
26266
|
+
* @param {string} value
|
|
26267
|
+
* @returns {string[]} array of words
|
|
26002
26268
|
*/
|
|
26003
26269
|
wordSplit(value) {
|
|
26004
26270
|
return value.split(this._wordJoiners);
|
|
26005
26271
|
}
|
|
26006
26272
|
|
|
26007
|
-
/**
|
|
26008
|
-
* Wraps a line of text using the width of the Textbox as desiredWidth
|
|
26009
|
-
* and leveraging the known width o words from GraphemeData
|
|
26010
|
-
* @private
|
|
26011
|
-
* @param {Number} lineIndex
|
|
26012
|
-
* @param {Number} desiredWidth width you want to wrap the line to
|
|
26013
|
-
* @param {GraphemeData} graphemeData an object containing all the lines' words width.
|
|
26014
|
-
* @param {Number} reservedSpace space to remove from wrapping for custom functionalities
|
|
26015
|
-
* @returns {Array} Array of line(s) into which the given text is wrapped
|
|
26016
|
-
* to.
|
|
26273
|
+
/**
|
|
26274
|
+
* Wraps a line of text using the width of the Textbox as desiredWidth
|
|
26275
|
+
* and leveraging the known width o words from GraphemeData
|
|
26276
|
+
* @private
|
|
26277
|
+
* @param {Number} lineIndex
|
|
26278
|
+
* @param {Number} desiredWidth width you want to wrap the line to
|
|
26279
|
+
* @param {GraphemeData} graphemeData an object containing all the lines' words width.
|
|
26280
|
+
* @param {Number} reservedSpace space to remove from wrapping for custom functionalities
|
|
26281
|
+
* @returns {Array} Array of line(s) into which the given text is wrapped
|
|
26282
|
+
* to.
|
|
26017
26283
|
*/
|
|
26018
26284
|
_wrapLine(lineIndex, desiredWidth, _ref) {
|
|
26019
26285
|
let {
|
|
@@ -26071,11 +26337,11 @@
|
|
|
26071
26337
|
return graphemeLines;
|
|
26072
26338
|
}
|
|
26073
26339
|
|
|
26074
|
-
/**
|
|
26075
|
-
* Detect if the text line is ended with an hard break
|
|
26076
|
-
* text and itext do not have wrapping, return false
|
|
26077
|
-
* @param {Number} lineIndex text to split
|
|
26078
|
-
* @return {Boolean}
|
|
26340
|
+
/**
|
|
26341
|
+
* Detect if the text line is ended with an hard break
|
|
26342
|
+
* text and itext do not have wrapping, return false
|
|
26343
|
+
* @param {Number} lineIndex text to split
|
|
26344
|
+
* @return {Boolean}
|
|
26079
26345
|
*/
|
|
26080
26346
|
isEndOfWrapping(lineIndex) {
|
|
26081
26347
|
if (!this._styleMap[lineIndex + 1]) {
|
|
@@ -26089,12 +26355,12 @@
|
|
|
26089
26355
|
return false;
|
|
26090
26356
|
}
|
|
26091
26357
|
|
|
26092
|
-
/**
|
|
26093
|
-
* Detect if a line has a linebreak and so we need to account for it when moving
|
|
26094
|
-
* and counting style.
|
|
26095
|
-
* This is important only for splitByGrapheme at the end of wrapping.
|
|
26096
|
-
* If we are not wrapping the offset is always 1
|
|
26097
|
-
* @return Number
|
|
26358
|
+
/**
|
|
26359
|
+
* Detect if a line has a linebreak and so we need to account for it when moving
|
|
26360
|
+
* and counting style.
|
|
26361
|
+
* This is important only for splitByGrapheme at the end of wrapping.
|
|
26362
|
+
* If we are not wrapping the offset is always 1
|
|
26363
|
+
* @return Number
|
|
26098
26364
|
*/
|
|
26099
26365
|
missingNewlineOffset(lineIndex, skipWrapping) {
|
|
26100
26366
|
if (this.splitByGrapheme && !skipWrapping) {
|
|
@@ -26103,12 +26369,12 @@
|
|
|
26103
26369
|
return 1;
|
|
26104
26370
|
}
|
|
26105
26371
|
|
|
26106
|
-
/**
|
|
26107
|
-
* Gets lines of text to render in the Textbox. This function calculates
|
|
26108
|
-
* text wrapping on the fly every time it is called.
|
|
26109
|
-
* @param {String} text text to split
|
|
26110
|
-
* @returns {Array} Array of lines in the Textbox.
|
|
26111
|
-
* @override
|
|
26372
|
+
/**
|
|
26373
|
+
* Gets lines of text to render in the Textbox. This function calculates
|
|
26374
|
+
* text wrapping on the fly every time it is called.
|
|
26375
|
+
* @param {String} text text to split
|
|
26376
|
+
* @returns {Array} Array of lines in the Textbox.
|
|
26377
|
+
* @override
|
|
26112
26378
|
*/
|
|
26113
26379
|
_splitTextIntoLines(text) {
|
|
26114
26380
|
const newText = super._splitTextIntoLines(text),
|
|
@@ -26140,9 +26406,9 @@
|
|
|
26140
26406
|
}
|
|
26141
26407
|
}
|
|
26142
26408
|
|
|
26143
|
-
/**
|
|
26144
|
-
* Initialize event listeners for safety snap functionality
|
|
26145
|
-
* @private
|
|
26409
|
+
/**
|
|
26410
|
+
* Initialize event listeners for safety snap functionality
|
|
26411
|
+
* @private
|
|
26146
26412
|
*/
|
|
26147
26413
|
initializeEventListeners() {
|
|
26148
26414
|
var _this$canvas;
|
|
@@ -26185,12 +26451,12 @@
|
|
|
26185
26451
|
});
|
|
26186
26452
|
}
|
|
26187
26453
|
|
|
26188
|
-
/**
|
|
26189
|
-
* Safety snap to prevent glyph clipping after manual resize.
|
|
26190
|
-
* Similar to Polotno - checks if any glyphs are too close to edges
|
|
26191
|
-
* and automatically expands width if needed.
|
|
26192
|
-
* @private
|
|
26193
|
-
* @param resizeOrigin - Which side was used for resizing ('left' or 'right')
|
|
26454
|
+
/**
|
|
26455
|
+
* Safety snap to prevent glyph clipping after manual resize.
|
|
26456
|
+
* Similar to Polotno - checks if any glyphs are too close to edges
|
|
26457
|
+
* and automatically expands width if needed.
|
|
26458
|
+
* @private
|
|
26459
|
+
* @param resizeOrigin - Which side was used for resizing ('left' or 'right')
|
|
26194
26460
|
*/
|
|
26195
26461
|
safetySnapWidth(resizeOrigin) {
|
|
26196
26462
|
// For Textbox objects, we always want to check for clipping regardless of isWrapping flag
|
|
@@ -26257,31 +26523,31 @@
|
|
|
26257
26523
|
}
|
|
26258
26524
|
}
|
|
26259
26525
|
|
|
26260
|
-
/**
|
|
26261
|
-
* Returns object representation of an instance
|
|
26262
|
-
* @param {Array} [propertiesToInclude] Any properties that you might want to additionally include in the output
|
|
26263
|
-
* @return {Object} object representation of an instance
|
|
26526
|
+
/**
|
|
26527
|
+
* Returns object representation of an instance
|
|
26528
|
+
* @param {Array} [propertiesToInclude] Any properties that you might want to additionally include in the output
|
|
26529
|
+
* @return {Object} object representation of an instance
|
|
26264
26530
|
*/
|
|
26265
26531
|
toObject() {
|
|
26266
26532
|
let propertiesToInclude = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
|
|
26267
26533
|
return super.toObject(['minWidth', 'splitByGrapheme', ...propertiesToInclude]);
|
|
26268
26534
|
}
|
|
26269
26535
|
}
|
|
26270
|
-
/**
|
|
26271
|
-
* Minimum width of textbox, in pixels.
|
|
26272
|
-
* @type Number
|
|
26273
|
-
*/
|
|
26274
|
-
/**
|
|
26275
|
-
* Minimum calculated width of a textbox, in pixels.
|
|
26276
|
-
* fixed to 2 so that an empty textbox cannot go to 0
|
|
26277
|
-
* and is still selectable without text.
|
|
26278
|
-
* @type Number
|
|
26279
|
-
*/
|
|
26280
|
-
/**
|
|
26281
|
-
* Use this boolean property in order to split strings that have no white space concept.
|
|
26282
|
-
* this is a cheap way to help with chinese/japanese
|
|
26283
|
-
* @type Boolean
|
|
26284
|
-
* @since 2.6.0
|
|
26536
|
+
/**
|
|
26537
|
+
* Minimum width of textbox, in pixels.
|
|
26538
|
+
* @type Number
|
|
26539
|
+
*/
|
|
26540
|
+
/**
|
|
26541
|
+
* Minimum calculated width of a textbox, in pixels.
|
|
26542
|
+
* fixed to 2 so that an empty textbox cannot go to 0
|
|
26543
|
+
* and is still selectable without text.
|
|
26544
|
+
* @type Number
|
|
26545
|
+
*/
|
|
26546
|
+
/**
|
|
26547
|
+
* Use this boolean property in order to split strings that have no white space concept.
|
|
26548
|
+
* this is a cheap way to help with chinese/japanese
|
|
26549
|
+
* @type Boolean
|
|
26550
|
+
* @since 2.6.0
|
|
26285
26551
|
*/
|
|
26286
26552
|
_defineProperty(Textbox, "type", 'Textbox');
|
|
26287
26553
|
_defineProperty(Textbox, "textLayoutProperties", [...IText.textLayoutProperties, 'width']);
|