@nasser-sw/fabric 7.0.1-beta11 → 7.0.1-beta13
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/.playwright-mcp/after-justify-applied.png +0 -0
- package/.playwright-mcp/after-justify-click.png +0 -0
- package/.playwright-mcp/initial-state.png +0 -0
- package/.playwright-mcp/justify-fixed-final.png +0 -0
- package/.prettierignore +0 -0
- package/.prettierrc +0 -0
- package/0 +0 -0
- package/45.6875Textbox.ts +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 → konva-master}/CHANGELOG.md +2 -1
- package/debug/{konva → konva-master}/LICENSE +0 -0
- package/debug/{konva → konva-master}/README.md +7 -3
- package/debug/{konva → konva-master}/gulpfile.mjs +0 -0
- package/debug/{konva → konva-master}/package.json +1 -1
- package/debug/{konva → konva-master}/release.sh +1 -4
- package/debug/{konva → konva-master}/resources/doc-includes/ContainerParams.txt +0 -0
- package/debug/{konva → konva-master}/resources/doc-includes/NodeParams.txt +0 -0
- package/debug/{konva → konva-master}/resources/doc-includes/ShapeParams.txt +0 -0
- package/debug/{konva → konva-master}/resources/jsdoc.conf.json +0 -0
- package/debug/{konva → konva-master}/rollup.config.mjs +0 -0
- package/debug/{konva → konva-master}/src/Animation.ts +0 -0
- package/debug/{konva → konva-master}/src/BezierFunctions.ts +0 -0
- package/debug/{konva → konva-master}/src/Canvas.ts +37 -0
- package/debug/{konva → konva-master}/src/Container.ts +0 -0
- package/debug/{konva → konva-master}/src/Context.ts +0 -0
- package/debug/{konva → konva-master}/src/Core.ts +0 -0
- package/debug/{konva → konva-master}/src/DragAndDrop.ts +0 -0
- package/debug/{konva → konva-master}/src/Factory.ts +0 -0
- package/debug/{konva → konva-master}/src/FastLayer.ts +0 -0
- package/debug/{konva → konva-master}/src/Global.ts +0 -0
- package/debug/{konva → konva-master}/src/Group.ts +0 -0
- package/debug/{konva → konva-master}/src/Layer.ts +0 -0
- package/debug/{konva → konva-master}/src/Node.ts +0 -0
- package/debug/{konva → konva-master}/src/PointerEvents.ts +0 -0
- package/debug/{konva → konva-master}/src/Shape.ts +0 -0
- package/debug/{konva → konva-master}/src/Stage.ts +0 -0
- package/debug/{konva → konva-master}/src/Tween.ts +0 -0
- package/debug/{konva → konva-master}/src/Util.ts +0 -0
- package/debug/{konva → konva-master}/src/Validators.ts +0 -0
- package/debug/{konva → konva-master}/src/_CoreInternals.ts +0 -0
- package/debug/{konva → konva-master}/src/_FullInternals.ts +0 -0
- package/debug/{konva → konva-master}/src/canvas-backend.ts +0 -0
- package/debug/{konva → konva-master}/src/filters/Blur.ts +0 -0
- package/debug/{konva → konva-master}/src/filters/Brighten.ts +0 -0
- package/debug/{konva → konva-master}/src/filters/Brightness.ts +0 -0
- package/debug/{konva → konva-master}/src/filters/Contrast.ts +0 -0
- package/debug/{konva → konva-master}/src/filters/Emboss.ts +0 -0
- package/debug/{konva → konva-master}/src/filters/Enhance.ts +0 -0
- package/debug/{konva → konva-master}/src/filters/Grayscale.ts +0 -0
- package/debug/{konva → konva-master}/src/filters/HSL.ts +0 -0
- package/debug/{konva → konva-master}/src/filters/HSV.ts +0 -0
- package/debug/{konva → konva-master}/src/filters/Invert.ts +0 -0
- package/debug/{konva → konva-master}/src/filters/Kaleidoscope.ts +0 -0
- package/debug/{konva → konva-master}/src/filters/Mask.ts +0 -0
- package/debug/{konva → konva-master}/src/filters/Noise.ts +0 -0
- package/debug/{konva → konva-master}/src/filters/Pixelate.ts +0 -0
- package/debug/{konva → konva-master}/src/filters/Posterize.ts +0 -0
- package/debug/{konva → konva-master}/src/filters/RGB.ts +0 -0
- package/debug/{konva → konva-master}/src/filters/RGBA.ts +0 -0
- package/debug/{konva → konva-master}/src/filters/Sepia.ts +0 -0
- package/debug/{konva → konva-master}/src/filters/Solarize.ts +0 -0
- package/debug/{konva → konva-master}/src/filters/Threshold.ts +0 -0
- package/debug/{konva → konva-master}/src/index.ts +0 -0
- package/debug/{konva → konva-master}/src/shapes/Arc.ts +0 -0
- package/debug/{konva → konva-master}/src/shapes/Arrow.ts +0 -0
- package/debug/{konva → konva-master}/src/shapes/Circle.ts +0 -0
- package/debug/{konva → konva-master}/src/shapes/Ellipse.ts +0 -0
- package/debug/{konva → konva-master}/src/shapes/Image.ts +0 -0
- package/debug/{konva → konva-master}/src/shapes/Label.ts +0 -0
- package/debug/{konva → konva-master}/src/shapes/Line.ts +0 -0
- package/debug/{konva → konva-master}/src/shapes/Path.ts +0 -0
- package/debug/{konva → konva-master}/src/shapes/Rect.ts +0 -0
- package/debug/{konva → konva-master}/src/shapes/RegularPolygon.ts +0 -0
- package/debug/{konva → konva-master}/src/shapes/Ring.ts +0 -0
- package/debug/{konva → konva-master}/src/shapes/Sprite.ts +0 -0
- package/debug/{konva → konva-master}/src/shapes/Star.ts +0 -0
- package/debug/{konva → konva-master}/src/shapes/Text.ts +2 -2
- package/debug/{konva → konva-master}/src/shapes/TextPath.ts +0 -0
- package/debug/{konva → konva-master}/src/shapes/Transformer.ts +0 -0
- package/debug/{konva → konva-master}/src/shapes/Wedge.ts +0 -0
- package/debug/{konva → konva-master}/src/skia-backend.ts +0 -0
- package/debug/{konva → konva-master}/src/types.ts +0 -0
- package/debug/{konva → konva-master}/tsconfig.json +0 -0
- package/debug/{konva → konva-master}/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 +747 -679
- 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 +747 -679
- package/dist/index.mjs.map +1 -1
- package/dist/index.node.cjs +747 -679
- 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 +747 -679
- 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 +1 -1
- package/dist/src/shapes/IText/ITextKeyBehavior.mjs +115 -115
- package/dist/src/shapes/IText/ITextKeyBehavior.mjs.map +1 -1
- 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 +0 -0
- package/dist/src/shapes/Polyline.d.ts.map +0 -0
- package/dist/src/shapes/Polyline.min.mjs +0 -0
- package/dist/src/shapes/Polyline.min.mjs.map +0 -0
- package/dist/src/shapes/Polyline.mjs +0 -0
- package/dist/src/shapes/Polyline.mjs.map +0 -0
- 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 +1 -1
- package/dist/src/shapes/Text/Text.min.mjs +1 -1
- package/dist/src/shapes/Text/Text.min.mjs.map +1 -1
- package/dist/src/shapes/Text/Text.mjs +5 -1
- 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 +1 -1
- package/dist/src/shapes/Text/constants.d.ts.map +1 -1
- package/dist/src/shapes/Text/constants.min.mjs +1 -1
- package/dist/src/shapes/Text/constants.min.mjs.map +1 -1
- package/dist/src/shapes/Text/constants.mjs +1 -1
- 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 +1 -1
- package/dist/src/shapes/Textbox.min.mjs +1 -1
- package/dist/src/shapes/Textbox.min.mjs.map +1 -1
- package/dist/src/shapes/Textbox.mjs +77 -13
- package/dist/src/shapes/Textbox.mjs.map +1 -1
- package/dist/src/shapes/Triangle.d.ts +0 -0
- package/dist/src/shapes/Triangle.d.ts.map +0 -0
- package/dist/src/shapes/Triangle.min.mjs +0 -0
- package/dist/src/shapes/Triangle.min.mjs.map +0 -0
- package/dist/src/shapes/Triangle.mjs +0 -0
- package/dist/src/shapes/Triangle.mjs.map +0 -0
- 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/examples/arabicTextExample.d.ts +60 -0
- package/dist/src/text/examples/arabicTextExample.d.ts.map +1 -0
- 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 +30 -30
- 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/scriptUtils.d.ts +142 -0
- package/dist/src/text/scriptUtils.d.ts.map +1 -0
- package/dist/src/text/scriptUtils.min.mjs +2 -0
- package/dist/src/text/scriptUtils.min.mjs.map +1 -0
- package/dist/src/text/scriptUtils.mjs +212 -0
- package/dist/src/text/scriptUtils.mjs.map +1 -0
- 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 +0 -0
- package/dist/src/util/misc/cornerRadius.d.ts.map +0 -0
- package/dist/src/util/misc/cornerRadius.min.mjs +0 -0
- package/dist/src/util/misc/cornerRadius.min.mjs.map +0 -0
- package/dist/src/util/misc/cornerRadius.mjs +0 -0
- package/dist/src/util/misc/cornerRadius.mjs.map +0 -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/CustomLine.d.ts +10 -0
- package/dist-extensions/src/shapes/CustomLine.d.ts.map +1 -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 +0 -0
- package/dist-extensions/src/shapes/Polyline.d.ts.map +0 -0
- 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 +1 -1
- 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 +1 -1
- package/dist-extensions/src/shapes/Text/constants.d.ts.map +1 -1
- package/dist-extensions/src/shapes/Textbox.d.ts +0 -0
- package/dist-extensions/src/shapes/Textbox.d.ts.map +1 -1
- package/dist-extensions/src/shapes/Triangle.d.ts +0 -0
- package/dist-extensions/src/shapes/Triangle.d.ts.map +0 -0
- 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/scriptUtils.d.ts +142 -0
- package/dist-extensions/src/text/scriptUtils.d.ts.map +1 -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 +0 -0
- package/dist-extensions/src/util/misc/cornerRadius.d.ts.map +0 -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 +0 -0
- package/docs/konva-text-behavior-spec.md +0 -0
- package/docs/text-engine-design.md +0 -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 +3552 -0
- package/fabric-test2.html +647 -0
- package/fabric.ts +182 -182
- package/fonts/STV Bold.ttf +0 -0
- package/fonts/STV Light.ttf +0 -0
- package/fonts/STV Regular.ttf +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/rtl-debug.html +745 -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 +1187 -1187
- package/src/shapes/IText/ITextClickBehavior.ts +254 -254
- package/src/shapes/IText/ITextKeyBehavior.test.ts +0 -0
- package/src/shapes/IText/ITextKeyBehavior.ts +732 -732
- 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 +0 -0
- 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 +5 -1
- 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 +135 -134
- package/src/shapes/Textbox.spec.ts +0 -0
- package/src/shapes/Textbox.ts +74 -5
- package/src/shapes/Triangle.spec.ts +0 -0
- package/src/shapes/Triangle.ts +0 -0
- 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 +626 -626
- package/src/text/overlayEditor.ts +1047 -1047
- 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 +0 -0
- package/src/util/misc/cornerRadius.ts +0 -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.mjs
CHANGED
|
@@ -354,7 +354,7 @@ class Cache {
|
|
|
354
354
|
}
|
|
355
355
|
const cache = new Cache();
|
|
356
356
|
|
|
357
|
-
var version = "7.0.1-
|
|
357
|
+
var version = "7.0.1-beta12";
|
|
358
358
|
|
|
359
359
|
// use this syntax so babel plugin see this import here
|
|
360
360
|
const VERSION = version;
|
|
@@ -4801,7 +4801,7 @@ const TEXT_DECORATION_THICKNESS = 'textDecorationThickness';
|
|
|
4801
4801
|
const fontProperties = ['fontSize', 'fontWeight', 'fontFamily', 'fontStyle'];
|
|
4802
4802
|
const textDecorationProperties = ['underline', 'overline', 'linethrough'];
|
|
4803
4803
|
const textLayoutProperties = [...fontProperties, 'lineHeight', 'text', 'charSpacing', 'textAlign', 'styles', 'path', 'pathStartOffset', 'pathSide', 'pathAlign', 'wrap', 'ellipsis', 'letterSpacing', 'enableAdvancedLayout', 'verticalAlign'];
|
|
4804
|
-
const additionalProps = [...textLayoutProperties, ...textDecorationProperties, 'textBackgroundColor', 'direction', TEXT_DECORATION_THICKNESS];
|
|
4804
|
+
const additionalProps = [...textLayoutProperties, ...textDecorationProperties, 'textBackgroundColor', 'direction', TEXT_DECORATION_THICKNESS, 'useOverlayEditing'];
|
|
4805
4805
|
const styleProperties = [...fontProperties, ...textDecorationProperties, STROKE, 'strokeWidth', FILL, 'deltaY', 'textBackgroundColor', TEXT_DECORATION_THICKNESS];
|
|
4806
4806
|
|
|
4807
4807
|
// @TODO: Many things here are configuration related and shouldn't be on the class nor prototype
|
|
@@ -19183,8 +19183,8 @@ _defineProperty(StyledText, "_styleProperties", styleProperties);
|
|
|
19183
19183
|
// Global measurement context - reused for performance
|
|
19184
19184
|
let measurementContext = null;
|
|
19185
19185
|
|
|
19186
|
-
/**
|
|
19187
|
-
* Get or create the shared measurement context
|
|
19186
|
+
/**
|
|
19187
|
+
* Get or create the shared measurement context
|
|
19188
19188
|
*/
|
|
19189
19189
|
function getMeasurementContext() {
|
|
19190
19190
|
if (!measurementContext) {
|
|
@@ -19197,8 +19197,8 @@ function getMeasurementContext() {
|
|
|
19197
19197
|
return measurementContext;
|
|
19198
19198
|
}
|
|
19199
19199
|
|
|
19200
|
-
/**
|
|
19201
|
-
* Measure a single grapheme
|
|
19200
|
+
/**
|
|
19201
|
+
* Measure a single grapheme
|
|
19202
19202
|
*/
|
|
19203
19203
|
function measureGrapheme(grapheme, options, ctx) {
|
|
19204
19204
|
// Check cache first
|
|
@@ -19231,8 +19231,8 @@ function measureGrapheme(grapheme, options, ctx) {
|
|
|
19231
19231
|
return measurement;
|
|
19232
19232
|
}
|
|
19233
19233
|
|
|
19234
|
-
/**
|
|
19235
|
-
* Measure a grapheme with kerning relative to previous character
|
|
19234
|
+
/**
|
|
19235
|
+
* Measure a grapheme with kerning relative to previous character
|
|
19236
19236
|
*/
|
|
19237
19237
|
function measureGraphemeWithKerning(grapheme, previousGrapheme, options, ctx) {
|
|
19238
19238
|
// Get individual measurement
|
|
@@ -19273,9 +19273,9 @@ function measureGraphemeWithKerning(grapheme, previousGrapheme, options, ctx) {
|
|
|
19273
19273
|
};
|
|
19274
19274
|
}
|
|
19275
19275
|
|
|
19276
|
-
/**
|
|
19277
|
-
* Get a representative character for font metrics measurement
|
|
19278
|
-
* Uses canvas to test which scripts the font actually supports
|
|
19276
|
+
/**
|
|
19277
|
+
* Get a representative character for font metrics measurement
|
|
19278
|
+
* Uses canvas to test which scripts the font actually supports
|
|
19279
19279
|
*/
|
|
19280
19280
|
function getRepresentativeCharacter(fontFamily) {
|
|
19281
19281
|
const context = getMeasurementContext();
|
|
@@ -19364,8 +19364,8 @@ function getRepresentativeCharacter(fontFamily) {
|
|
|
19364
19364
|
return 'M';
|
|
19365
19365
|
}
|
|
19366
19366
|
|
|
19367
|
-
/**
|
|
19368
|
-
* Get font metrics for layout calculations
|
|
19367
|
+
/**
|
|
19368
|
+
* Get font metrics for layout calculations
|
|
19369
19369
|
*/
|
|
19370
19370
|
function getFontMetrics(options) {
|
|
19371
19371
|
var _metrics$fontBounding, _metrics$fontBounding2, _metrics$actualBoundi, _metrics$actualBoundi2;
|
|
@@ -19401,8 +19401,8 @@ function getFontMetrics(options) {
|
|
|
19401
19401
|
return result;
|
|
19402
19402
|
}
|
|
19403
19403
|
|
|
19404
|
-
/**
|
|
19405
|
-
* Apply font styling to canvas context
|
|
19404
|
+
/**
|
|
19405
|
+
* Apply font styling to canvas context
|
|
19406
19406
|
*/
|
|
19407
19407
|
function applyFontStyle(ctx, options) {
|
|
19408
19408
|
const fontDeclaration = getFontDeclaration(options);
|
|
@@ -19419,8 +19419,8 @@ function applyFontStyle(ctx, options) {
|
|
|
19419
19419
|
ctx.textBaseline = 'alphabetic';
|
|
19420
19420
|
}
|
|
19421
19421
|
|
|
19422
|
-
/**
|
|
19423
|
-
* Generate font declaration string
|
|
19422
|
+
/**
|
|
19423
|
+
* Generate font declaration string
|
|
19424
19424
|
*/
|
|
19425
19425
|
function getFontDeclaration(options) {
|
|
19426
19426
|
const {
|
|
@@ -19439,8 +19439,8 @@ function getFontDeclaration(options) {
|
|
|
19439
19439
|
return `${fontStyle} ${fontWeight} ${fontSize}px ${normalizedFamily}`;
|
|
19440
19440
|
}
|
|
19441
19441
|
|
|
19442
|
-
/**
|
|
19443
|
-
* LRU Cache implementation for measurements
|
|
19442
|
+
/**
|
|
19443
|
+
* LRU Cache implementation for measurements
|
|
19444
19444
|
*/
|
|
19445
19445
|
class LRUCache {
|
|
19446
19446
|
constructor() {
|
|
@@ -19502,8 +19502,8 @@ class LRUCache {
|
|
|
19502
19502
|
}
|
|
19503
19503
|
}
|
|
19504
19504
|
|
|
19505
|
-
/**
|
|
19506
|
-
* Advanced measurement cache with font-aware keys
|
|
19505
|
+
/**
|
|
19506
|
+
* Advanced measurement cache with font-aware keys
|
|
19507
19507
|
*/
|
|
19508
19508
|
class MeasurementCache {
|
|
19509
19509
|
constructor() {
|
|
@@ -19530,8 +19530,8 @@ class MeasurementCache {
|
|
|
19530
19530
|
}
|
|
19531
19531
|
}
|
|
19532
19532
|
|
|
19533
|
-
/**
|
|
19534
|
-
* Kerning cache for character pairs
|
|
19533
|
+
/**
|
|
19534
|
+
* Kerning cache for character pairs
|
|
19535
19535
|
*/
|
|
19536
19536
|
class KerningCache {
|
|
19537
19537
|
constructor() {
|
|
@@ -19559,8 +19559,8 @@ class KerningCache {
|
|
|
19559
19559
|
}
|
|
19560
19560
|
}
|
|
19561
19561
|
|
|
19562
|
-
/**
|
|
19563
|
-
* Font metrics cache
|
|
19562
|
+
/**
|
|
19563
|
+
* Font metrics cache
|
|
19564
19564
|
*/
|
|
19565
19565
|
class FontMetricsCache {
|
|
19566
19566
|
constructor() {
|
|
@@ -19595,8 +19595,8 @@ if (typeof document !== 'undefined' && 'fonts' in document) {
|
|
|
19595
19595
|
});
|
|
19596
19596
|
}
|
|
19597
19597
|
|
|
19598
|
-
/**
|
|
19599
|
-
* Clear all measurement caches
|
|
19598
|
+
/**
|
|
19599
|
+
* Clear all measurement caches
|
|
19600
19600
|
*/
|
|
19601
19601
|
function clearAllCaches() {
|
|
19602
19602
|
measurementCache.clear();
|
|
@@ -19604,9 +19604,9 @@ function clearAllCaches() {
|
|
|
19604
19604
|
fontMetricsCache.clear();
|
|
19605
19605
|
}
|
|
19606
19606
|
|
|
19607
|
-
/**
|
|
19608
|
-
* Detect if a font lacks English glyph support
|
|
19609
|
-
* These fonts should use browser-native measurement instead of Fabric's character-by-character measurement
|
|
19607
|
+
/**
|
|
19608
|
+
* Detect if a font lacks English glyph support
|
|
19609
|
+
* These fonts should use browser-native measurement instead of Fabric's character-by-character measurement
|
|
19610
19610
|
*/
|
|
19611
19611
|
function fontLacksEnglishGlyphs(fontFamily) {
|
|
19612
19612
|
if (typeof document === 'undefined') return false;
|
|
@@ -19650,8 +19650,8 @@ function fontLacksEnglishGlyphs(fontFamily) {
|
|
|
19650
19650
|
// Cache for font glyph detection results
|
|
19651
19651
|
const fontGlyphCache = new Map();
|
|
19652
19652
|
|
|
19653
|
-
/**
|
|
19654
|
-
* Cached version of font glyph detection
|
|
19653
|
+
/**
|
|
19654
|
+
* Cached version of font glyph detection
|
|
19655
19655
|
*/
|
|
19656
19656
|
function fontLacksEnglishGlyphsCached(fontFamily) {
|
|
19657
19657
|
if (fontGlyphCache.has(fontFamily)) {
|
|
@@ -19662,17 +19662,17 @@ function fontLacksEnglishGlyphsCached(fontFamily) {
|
|
|
19662
19662
|
return result;
|
|
19663
19663
|
}
|
|
19664
19664
|
|
|
19665
|
-
/**
|
|
19666
|
-
* Unicode and Internationalization Support
|
|
19667
|
-
*
|
|
19668
|
-
* Enhanced Unicode handling for complex scripts, RTL/LTR text,
|
|
19669
|
-
* and grapheme cluster boundary detection.
|
|
19665
|
+
/**
|
|
19666
|
+
* Unicode and Internationalization Support
|
|
19667
|
+
*
|
|
19668
|
+
* Enhanced Unicode handling for complex scripts, RTL/LTR text,
|
|
19669
|
+
* and grapheme cluster boundary detection.
|
|
19670
19670
|
*/
|
|
19671
19671
|
|
|
19672
19672
|
|
|
19673
|
-
/**
|
|
19674
|
-
* Enhanced grapheme segmentation using Intl.Segmenter when available
|
|
19675
|
-
* with fallback to existing graphemeSplit implementation
|
|
19673
|
+
/**
|
|
19674
|
+
* Enhanced grapheme segmentation using Intl.Segmenter when available
|
|
19675
|
+
* with fallback to existing graphemeSplit implementation
|
|
19676
19676
|
*/
|
|
19677
19677
|
function segmentGraphemes(text) {
|
|
19678
19678
|
// Use native Intl.Segmenter if available
|
|
@@ -19692,15 +19692,15 @@ function segmentGraphemes(text) {
|
|
|
19692
19692
|
return graphemeSplit(text);
|
|
19693
19693
|
}
|
|
19694
19694
|
|
|
19695
|
-
/**
|
|
19696
|
-
* Ellipsis Text Truncation System
|
|
19697
|
-
*
|
|
19698
|
-
* Implements text truncation with ellipsis when content exceeds bounds,
|
|
19699
|
-
* using binary search for optimal truncation points.
|
|
19695
|
+
/**
|
|
19696
|
+
* Ellipsis Text Truncation System
|
|
19697
|
+
*
|
|
19698
|
+
* Implements text truncation with ellipsis when content exceeds bounds,
|
|
19699
|
+
* using binary search for optimal truncation points.
|
|
19700
19700
|
*/
|
|
19701
19701
|
|
|
19702
|
-
/**
|
|
19703
|
-
* Apply ellipsis truncation to text based on width/height constraints
|
|
19702
|
+
/**
|
|
19703
|
+
* Apply ellipsis truncation to text based on width/height constraints
|
|
19704
19704
|
*/
|
|
19705
19705
|
function applyEllipsis(text, options) {
|
|
19706
19706
|
const {
|
|
@@ -19770,8 +19770,8 @@ function applyEllipsis(text, options) {
|
|
|
19770
19770
|
};
|
|
19771
19771
|
}
|
|
19772
19772
|
|
|
19773
|
-
/**
|
|
19774
|
-
* Truncate text based on width constraint using binary search
|
|
19773
|
+
/**
|
|
19774
|
+
* Truncate text based on width constraint using binary search
|
|
19775
19775
|
*/
|
|
19776
19776
|
function truncateByWidth(text, maxWidth, ellipsisChar, ellipsisWidth, measureFn) {
|
|
19777
19777
|
const graphemes = segmentGraphemes(text);
|
|
@@ -19821,8 +19821,8 @@ function truncateByWidth(text, maxWidth, ellipsisChar, ellipsisWidth, measureFn)
|
|
|
19821
19821
|
};
|
|
19822
19822
|
}
|
|
19823
19823
|
|
|
19824
|
-
/**
|
|
19825
|
-
* Truncate text based on height constraint
|
|
19824
|
+
/**
|
|
19825
|
+
* Truncate text based on height constraint
|
|
19826
19826
|
*/
|
|
19827
19827
|
function truncateByHeight(text, maxHeight, ellipsisChar, measureFn) {
|
|
19828
19828
|
var _measureFn;
|
|
@@ -19870,19 +19870,19 @@ function truncateByHeight(text, maxHeight, ellipsisChar, measureFn) {
|
|
|
19870
19870
|
return truncateByWidth(lines[0], firstLineWidth, ellipsisChar, 0, measureFn);
|
|
19871
19871
|
}
|
|
19872
19872
|
|
|
19873
|
-
/**
|
|
19874
|
-
* Core Text Layout Engine
|
|
19875
|
-
*
|
|
19876
|
-
* Implements Konva-compatible text layout with support for:
|
|
19877
|
-
* - Multiple wrap modes (word/char/none)
|
|
19878
|
-
* - Ellipsis truncation
|
|
19879
|
-
* - Justify alignment with proper space distribution
|
|
19880
|
-
* - RTL/LTR text direction
|
|
19881
|
-
* - Advanced grapheme handling
|
|
19873
|
+
/**
|
|
19874
|
+
* Core Text Layout Engine
|
|
19875
|
+
*
|
|
19876
|
+
* Implements Konva-compatible text layout with support for:
|
|
19877
|
+
* - Multiple wrap modes (word/char/none)
|
|
19878
|
+
* - Ellipsis truncation
|
|
19879
|
+
* - Justify alignment with proper space distribution
|
|
19880
|
+
* - RTL/LTR text direction
|
|
19881
|
+
* - Advanced grapheme handling
|
|
19882
19882
|
*/
|
|
19883
19883
|
|
|
19884
|
-
/**
|
|
19885
|
-
* Main text layout function - converts text and options into positioned layout
|
|
19884
|
+
/**
|
|
19885
|
+
* Main text layout function - converts text and options into positioned layout
|
|
19886
19886
|
*/
|
|
19887
19887
|
function layoutText(options) {
|
|
19888
19888
|
var _ellipsisResult;
|
|
@@ -20001,8 +20001,8 @@ function layoutText(options) {
|
|
|
20001
20001
|
};
|
|
20002
20002
|
}
|
|
20003
20003
|
|
|
20004
|
-
/**
|
|
20005
|
-
* Layout a single paragraph with wrapping
|
|
20004
|
+
/**
|
|
20005
|
+
* Layout a single paragraph with wrapping
|
|
20006
20006
|
*/
|
|
20007
20007
|
function layoutParagraph(text, options) {
|
|
20008
20008
|
const {
|
|
@@ -20037,8 +20037,8 @@ function layoutParagraph(text, options) {
|
|
|
20037
20037
|
return layoutLines;
|
|
20038
20038
|
}
|
|
20039
20039
|
|
|
20040
|
-
/**
|
|
20041
|
-
* Layout a single line of text (no wrapping)
|
|
20040
|
+
/**
|
|
20041
|
+
* Layout a single line of text (no wrapping)
|
|
20042
20042
|
*/
|
|
20043
20043
|
function layoutSingleLine(text, options) {
|
|
20044
20044
|
let textOffset = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;
|
|
@@ -20108,8 +20108,8 @@ function layoutSingleLine(text, options) {
|
|
|
20108
20108
|
};
|
|
20109
20109
|
}
|
|
20110
20110
|
|
|
20111
|
-
/**
|
|
20112
|
-
* Word-based wrapping algorithm
|
|
20111
|
+
/**
|
|
20112
|
+
* Word-based wrapping algorithm
|
|
20113
20113
|
*/
|
|
20114
20114
|
function wrapByWords(text, maxWidth, options) {
|
|
20115
20115
|
const lines = [];
|
|
@@ -20142,8 +20142,8 @@ function wrapByWords(text, maxWidth, options) {
|
|
|
20142
20142
|
return lines.length > 0 ? lines : [''];
|
|
20143
20143
|
}
|
|
20144
20144
|
|
|
20145
|
-
/**
|
|
20146
|
-
* Character-based wrapping algorithm
|
|
20145
|
+
/**
|
|
20146
|
+
* Character-based wrapping algorithm
|
|
20147
20147
|
*/
|
|
20148
20148
|
function wrapByCharacters(text, maxWidth, options) {
|
|
20149
20149
|
const lines = [];
|
|
@@ -20165,8 +20165,8 @@ function wrapByCharacters(text, maxWidth, options) {
|
|
|
20165
20165
|
return lines.length > 0 ? lines : [''];
|
|
20166
20166
|
}
|
|
20167
20167
|
|
|
20168
|
-
/**
|
|
20169
|
-
* Apply text alignment to lines
|
|
20168
|
+
/**
|
|
20169
|
+
* Apply text alignment to lines
|
|
20170
20170
|
*/
|
|
20171
20171
|
function applyAlignment(lines, align, containerWidth, options) {
|
|
20172
20172
|
return lines.map(line => {
|
|
@@ -20200,8 +20200,8 @@ function applyAlignment(lines, align, containerWidth, options) {
|
|
|
20200
20200
|
});
|
|
20201
20201
|
}
|
|
20202
20202
|
|
|
20203
|
-
/**
|
|
20204
|
-
* Apply justify alignment by expanding spaces
|
|
20203
|
+
/**
|
|
20204
|
+
* Apply justify alignment by expanding spaces
|
|
20205
20205
|
*/
|
|
20206
20206
|
function applyJustification(line, containerWidth, options) {
|
|
20207
20207
|
const spaces = line.graphemes.filter(g => /\s/.test(g)).length;
|
|
@@ -20224,8 +20224,8 @@ function applyJustification(line, containerWidth, options) {
|
|
|
20224
20224
|
return line;
|
|
20225
20225
|
}
|
|
20226
20226
|
|
|
20227
|
-
/**
|
|
20228
|
-
* Calculate vertical alignment offset
|
|
20227
|
+
/**
|
|
20228
|
+
* Calculate vertical alignment offset
|
|
20229
20229
|
*/
|
|
20230
20230
|
function calculateVerticalOffset(contentHeight, containerHeight, align) {
|
|
20231
20231
|
switch (align) {
|
|
@@ -20239,8 +20239,8 @@ function calculateVerticalOffset(contentHeight, containerHeight, align) {
|
|
|
20239
20239
|
}
|
|
20240
20240
|
}
|
|
20241
20241
|
|
|
20242
|
-
/**
|
|
20243
|
-
* Handle height overflow with ellipsis
|
|
20242
|
+
/**
|
|
20243
|
+
* Handle height overflow with ellipsis
|
|
20244
20244
|
*/
|
|
20245
20245
|
function handleHeightOverflow(existingLines, overflowLine, remainingHeight, options) {
|
|
20246
20246
|
// If ellipsis is enabled, try to fit part of the overflow line
|
|
@@ -20269,8 +20269,8 @@ function handleHeightOverflow(existingLines, overflowLine, remainingHeight, opti
|
|
|
20269
20269
|
};
|
|
20270
20270
|
}
|
|
20271
20271
|
|
|
20272
|
-
/**
|
|
20273
|
-
* Create empty line for empty paragraphs
|
|
20272
|
+
/**
|
|
20273
|
+
* Create empty line for empty paragraphs
|
|
20274
20274
|
*/
|
|
20275
20275
|
function createEmptyLine(options) {
|
|
20276
20276
|
const height = options.fontSize * options.lineHeight;
|
|
@@ -20286,8 +20286,8 @@ function createEmptyLine(options) {
|
|
|
20286
20286
|
};
|
|
20287
20287
|
}
|
|
20288
20288
|
|
|
20289
|
-
/**
|
|
20290
|
-
* Measure width of a line of text
|
|
20289
|
+
/**
|
|
20290
|
+
* Measure width of a line of text
|
|
20291
20291
|
*/
|
|
20292
20292
|
function measureLineWidth(text, options) {
|
|
20293
20293
|
const graphemes = segmentGraphemes(text);
|
|
@@ -20304,8 +20304,8 @@ function measureLineWidth(text, options) {
|
|
|
20304
20304
|
return width;
|
|
20305
20305
|
}
|
|
20306
20306
|
|
|
20307
|
-
/**
|
|
20308
|
-
* Convert layout options to measurement options
|
|
20307
|
+
/**
|
|
20308
|
+
* Convert layout options to measurement options
|
|
20309
20309
|
*/
|
|
20310
20310
|
function createMeasurementOptions(options) {
|
|
20311
20311
|
return {
|
|
@@ -20548,15 +20548,15 @@ class TextSVGExportMixin extends FabricObjectSVGExportMixin {
|
|
|
20548
20548
|
}
|
|
20549
20549
|
}
|
|
20550
20550
|
|
|
20551
|
-
/**
|
|
20552
|
-
* Browser Line Break Extraction
|
|
20553
|
-
*
|
|
20554
|
-
* Captures exact line breaks as rendered by the browser to ensure
|
|
20555
|
-
* pixel-perfect consistency between DOM editing and canvas rendering.
|
|
20551
|
+
/**
|
|
20552
|
+
* Browser Line Break Extraction
|
|
20553
|
+
*
|
|
20554
|
+
* Captures exact line breaks as rendered by the browser to ensure
|
|
20555
|
+
* pixel-perfect consistency between DOM editing and canvas rendering.
|
|
20556
20556
|
*/
|
|
20557
20557
|
|
|
20558
|
-
/**
|
|
20559
|
-
* Segment text into graphemes safely using Intl.Segmenter or fallback
|
|
20558
|
+
/**
|
|
20559
|
+
* Segment text into graphemes safely using Intl.Segmenter or fallback
|
|
20560
20560
|
*/
|
|
20561
20561
|
function segmentIntoGraphemes(text) {
|
|
20562
20562
|
if (typeof Intl !== 'undefined' && Intl.Segmenter) {
|
|
@@ -20570,9 +20570,9 @@ function segmentIntoGraphemes(text) {
|
|
|
20570
20570
|
return Array.from(text);
|
|
20571
20571
|
}
|
|
20572
20572
|
|
|
20573
|
-
/**
|
|
20574
|
-
* Extract line break information from a textarea by creating a mirror element
|
|
20575
|
-
* with identical computed styles and measuring grapheme positions.
|
|
20573
|
+
/**
|
|
20574
|
+
* Extract line break information from a textarea by creating a mirror element
|
|
20575
|
+
* with identical computed styles and measuring grapheme positions.
|
|
20576
20576
|
*/
|
|
20577
20577
|
function extractLinesFromDOM(textarea) {
|
|
20578
20578
|
const text = textarea.value;
|
|
@@ -20667,16 +20667,16 @@ function extractLinesFromDOM(textarea) {
|
|
|
20667
20667
|
}
|
|
20668
20668
|
}
|
|
20669
20669
|
|
|
20670
|
-
/**
|
|
20671
|
-
* Create a hash of layout-affecting properties to detect when browser lines are still valid
|
|
20670
|
+
/**
|
|
20671
|
+
* Create a hash of layout-affecting properties to detect when browser lines are still valid
|
|
20672
20672
|
*/
|
|
20673
20673
|
function createLayoutHash(target) {
|
|
20674
20674
|
const properties = [target.text, target.width, target.height, target.fontFamily, target.fontSize, target.fontWeight, target.fontStyle, target.lineHeight, target.charSpacing, target.textAlign, target.direction];
|
|
20675
20675
|
return properties.map(p => String(p)).join('|');
|
|
20676
20676
|
}
|
|
20677
20677
|
|
|
20678
|
-
/**
|
|
20679
|
-
* Check if stored browser lines are still valid for the current target state
|
|
20678
|
+
/**
|
|
20679
|
+
* Check if stored browser lines are still valid for the current target state
|
|
20680
20680
|
*/
|
|
20681
20681
|
function areBrowserLinesValid(target, storedHash) {
|
|
20682
20682
|
if (!storedHash || !target.__lastBrowserLines) {
|
|
@@ -20686,24 +20686,24 @@ function areBrowserLinesValid(target, storedHash) {
|
|
|
20686
20686
|
return currentHash === storedHash;
|
|
20687
20687
|
}
|
|
20688
20688
|
|
|
20689
|
-
/**
|
|
20690
|
-
* Store browser lines on a target object with validity hash
|
|
20689
|
+
/**
|
|
20690
|
+
* Store browser lines on a target object with validity hash
|
|
20691
20691
|
*/
|
|
20692
20692
|
function storeBrowserLines(target, lines, layoutHash) {
|
|
20693
20693
|
target.__lastBrowserLines = lines;
|
|
20694
20694
|
target.__lastBrowserLinesHash = createLayoutHash(target);
|
|
20695
20695
|
}
|
|
20696
20696
|
|
|
20697
|
-
/**
|
|
20698
|
-
* Clear stored browser lines from a target object
|
|
20697
|
+
/**
|
|
20698
|
+
* Clear stored browser lines from a target object
|
|
20699
20699
|
*/
|
|
20700
20700
|
function clearBrowserLines(target) {
|
|
20701
20701
|
delete target.__lastBrowserLines;
|
|
20702
20702
|
delete target.__lastBrowserLinesHash;
|
|
20703
20703
|
}
|
|
20704
20704
|
|
|
20705
|
-
/**
|
|
20706
|
-
* Get stored browser lines if they're still valid
|
|
20705
|
+
/**
|
|
20706
|
+
* Get stored browser lines if they're still valid
|
|
20707
20707
|
*/
|
|
20708
20708
|
function getBrowserLines(target) {
|
|
20709
20709
|
const lines = target.__lastBrowserLines;
|
|
@@ -20895,7 +20895,7 @@ class FabricText extends StyledText {
|
|
|
20895
20895
|
let diffSpace, currentLineWidth, numberOfSpaces, accumulatedSpace, line, charBound, spaces;
|
|
20896
20896
|
const isRtl = this.direction === 'rtl';
|
|
20897
20897
|
for (let i = 0, len = this._textLines.length; i < len; i++) {
|
|
20898
|
-
if (!this.textAlign.includes('justify')
|
|
20898
|
+
if (!this.textAlign.includes('justify') || i === len - 1 || this.isEndOfWrapping(i)) {
|
|
20899
20899
|
continue;
|
|
20900
20900
|
}
|
|
20901
20901
|
accumulatedSpace = 0;
|
|
@@ -22379,6 +22379,10 @@ class FabricText extends StyledText {
|
|
|
22379
22379
|
textObject._usingBrowserWrapping = true;
|
|
22380
22380
|
console.log(`🔤 STV font: Forcing browser wrapping flag during JSON load`);
|
|
22381
22381
|
|
|
22382
|
+
// Enable overlay editing for STV fonts to use native browser text handling
|
|
22383
|
+
textObject.useOverlayEditing = true;
|
|
22384
|
+
console.log(`🔤 STV font: Enabling overlay editing during JSON load`);
|
|
22385
|
+
|
|
22382
22386
|
// Multiple initialization attempts for STV fonts
|
|
22383
22387
|
const reinitWithDelay = attempt => {
|
|
22384
22388
|
if (textObject.forceTextReinitialization) {
|
|
@@ -22832,8 +22836,8 @@ class OverlayEditor {
|
|
|
22832
22836
|
// We don't need to save/restore them here as it would conflict with IText's restoration
|
|
22833
22837
|
}
|
|
22834
22838
|
|
|
22835
|
-
/**
|
|
22836
|
-
* Get the container element for the overlay (parent of upperCanvasEl)
|
|
22839
|
+
/**
|
|
22840
|
+
* Get the container element for the overlay (parent of upperCanvasEl)
|
|
22837
22841
|
*/
|
|
22838
22842
|
getCanvasContainer() {
|
|
22839
22843
|
const upperCanvas = this.canvas.upperCanvasEl;
|
|
@@ -22847,8 +22851,8 @@ class OverlayEditor {
|
|
|
22847
22851
|
return container;
|
|
22848
22852
|
}
|
|
22849
22853
|
|
|
22850
|
-
/**
|
|
22851
|
-
* Create the overlay DOM structure
|
|
22854
|
+
/**
|
|
22855
|
+
* Create the overlay DOM structure
|
|
22852
22856
|
*/
|
|
22853
22857
|
createOverlayDOM() {
|
|
22854
22858
|
// Host div for positioning and overflow control
|
|
@@ -22903,8 +22907,8 @@ class OverlayEditor {
|
|
|
22903
22907
|
document.body.appendChild(this.hostDiv);
|
|
22904
22908
|
}
|
|
22905
22909
|
|
|
22906
|
-
/**
|
|
22907
|
-
* Attach all event listeners
|
|
22910
|
+
/**
|
|
22911
|
+
* Attach all event listeners
|
|
22908
22912
|
*/
|
|
22909
22913
|
attachEventListeners() {
|
|
22910
22914
|
// Textarea events
|
|
@@ -22924,8 +22928,8 @@ class OverlayEditor {
|
|
|
22924
22928
|
this.setupViewportChangeDetection();
|
|
22925
22929
|
}
|
|
22926
22930
|
|
|
22927
|
-
/**
|
|
22928
|
-
* Remove all event listeners
|
|
22931
|
+
/**
|
|
22932
|
+
* Remove all event listeners
|
|
22929
22933
|
*/
|
|
22930
22934
|
removeEventListeners() {
|
|
22931
22935
|
this.textarea.removeEventListener('input', this.boundHandlers.onInput);
|
|
@@ -22942,16 +22946,16 @@ class OverlayEditor {
|
|
|
22942
22946
|
this.restoreViewportChangeDetection();
|
|
22943
22947
|
}
|
|
22944
22948
|
|
|
22945
|
-
/**
|
|
22946
|
-
* Simple method to refresh positioning when canvas changes
|
|
22949
|
+
/**
|
|
22950
|
+
* Simple method to refresh positioning when canvas changes
|
|
22947
22951
|
*/
|
|
22948
22952
|
updatePosition() {
|
|
22949
22953
|
this.applyOverlayStyle();
|
|
22950
22954
|
}
|
|
22951
22955
|
|
|
22952
|
-
/**
|
|
22953
|
-
* Update the Fabric object bounds to match current textarea size
|
|
22954
|
-
* This ensures Fabric.js selection controls follow the growing textbox
|
|
22956
|
+
/**
|
|
22957
|
+
* Update the Fabric object bounds to match current textarea size
|
|
22958
|
+
* This ensures Fabric.js selection controls follow the growing textbox
|
|
22955
22959
|
*/
|
|
22956
22960
|
updateObjectBounds() {
|
|
22957
22961
|
if (this.isDestroyed) return;
|
|
@@ -22985,15 +22989,15 @@ class OverlayEditor {
|
|
|
22985
22989
|
}
|
|
22986
22990
|
}
|
|
22987
22991
|
|
|
22988
|
-
/**
|
|
22989
|
-
* Convert Fabric charSpacing (1/1000 em) to CSS letter-spacing (px)
|
|
22992
|
+
/**
|
|
22993
|
+
* Convert Fabric charSpacing (1/1000 em) to CSS letter-spacing (px)
|
|
22990
22994
|
*/
|
|
22991
22995
|
letterSpacingPx(charSpacing, fontSize) {
|
|
22992
22996
|
return charSpacing / 1000 * fontSize;
|
|
22993
22997
|
}
|
|
22994
22998
|
|
|
22995
|
-
/**
|
|
22996
|
-
* Detect text direction using first strong directional character
|
|
22999
|
+
/**
|
|
23000
|
+
* Detect text direction using first strong directional character
|
|
22997
23001
|
*/
|
|
22998
23002
|
firstStrongDir(text) {
|
|
22999
23003
|
// Hebrew: \u0590-\u05FF, Arabic: \u0600-\u06FF, \u0750-\u077F, \uFB50-\uFDFF, \uFE70-\uFEFF
|
|
@@ -23230,8 +23234,8 @@ class OverlayEditor {
|
|
|
23230
23234
|
// Initial bounds are set correctly by Fabric.js - don't force update here
|
|
23231
23235
|
}
|
|
23232
23236
|
|
|
23233
|
-
/**
|
|
23234
|
-
* Debug method to compare textarea and canvas object bounding boxes
|
|
23237
|
+
/**
|
|
23238
|
+
* Debug method to compare textarea and canvas object bounding boxes
|
|
23235
23239
|
*/
|
|
23236
23240
|
debugBoundingBoxComparison() {
|
|
23237
23241
|
const target = this.target;
|
|
@@ -23301,8 +23305,8 @@ class OverlayEditor {
|
|
|
23301
23305
|
console.log('━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━');
|
|
23302
23306
|
}
|
|
23303
23307
|
|
|
23304
|
-
/**
|
|
23305
|
-
* Debug method to compare text wrapping between textarea and Fabric text object
|
|
23308
|
+
/**
|
|
23309
|
+
* Debug method to compare text wrapping between textarea and Fabric text object
|
|
23306
23310
|
*/
|
|
23307
23311
|
debugTextWrapping() {
|
|
23308
23312
|
const target = this.target;
|
|
@@ -23387,8 +23391,8 @@ class OverlayEditor {
|
|
|
23387
23391
|
console.log('━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━');
|
|
23388
23392
|
}
|
|
23389
23393
|
|
|
23390
|
-
/**
|
|
23391
|
-
* Focus the textarea and position cursor at end
|
|
23394
|
+
/**
|
|
23395
|
+
* Focus the textarea and position cursor at end
|
|
23392
23396
|
*/
|
|
23393
23397
|
focusTextarea() {
|
|
23394
23398
|
// For overlay editing, we want to keep the object in "selection mode" not "editing mode"
|
|
@@ -23428,8 +23432,8 @@ class OverlayEditor {
|
|
|
23428
23432
|
this.canvas.requestRenderAll();
|
|
23429
23433
|
}
|
|
23430
23434
|
|
|
23431
|
-
/**
|
|
23432
|
-
* Refresh overlay positioning and styling
|
|
23435
|
+
/**
|
|
23436
|
+
* Refresh overlay positioning and styling
|
|
23433
23437
|
*/
|
|
23434
23438
|
refresh() {
|
|
23435
23439
|
if (this.isDestroyed) return;
|
|
@@ -23437,8 +23441,8 @@ class OverlayEditor {
|
|
|
23437
23441
|
// Don't update object bounds on every refresh - only when textarea actually resizes
|
|
23438
23442
|
}
|
|
23439
23443
|
|
|
23440
|
-
/**
|
|
23441
|
-
* Destroy the overlay editor
|
|
23444
|
+
/**
|
|
23445
|
+
* Destroy the overlay editor
|
|
23442
23446
|
*/
|
|
23443
23447
|
destroy() {
|
|
23444
23448
|
let commit = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
|
|
@@ -23606,8 +23610,8 @@ class OverlayEditor {
|
|
|
23606
23610
|
}
|
|
23607
23611
|
}
|
|
23608
23612
|
|
|
23609
|
-
/**
|
|
23610
|
-
* Setup detection for viewport changes (zoom/pan)
|
|
23613
|
+
/**
|
|
23614
|
+
* Setup detection for viewport changes (zoom/pan)
|
|
23611
23615
|
*/
|
|
23612
23616
|
setupViewportChangeDetection() {
|
|
23613
23617
|
// Store original methods
|
|
@@ -23636,8 +23640,8 @@ class OverlayEditor {
|
|
|
23636
23640
|
};
|
|
23637
23641
|
}
|
|
23638
23642
|
|
|
23639
|
-
/**
|
|
23640
|
-
* Restore original viewport methods
|
|
23643
|
+
/**
|
|
23644
|
+
* Restore original viewport methods
|
|
23641
23645
|
*/
|
|
23642
23646
|
restoreViewportChangeDetection() {
|
|
23643
23647
|
if (this.canvas.__originalSetZoom) {
|
|
@@ -23652,8 +23656,8 @@ class OverlayEditor {
|
|
|
23652
23656
|
}
|
|
23653
23657
|
}
|
|
23654
23658
|
|
|
23655
|
-
/**
|
|
23656
|
-
* Enter overlay text editing mode for a text object
|
|
23659
|
+
/**
|
|
23660
|
+
* Enter overlay text editing mode for a text object
|
|
23657
23661
|
*/
|
|
23658
23662
|
function enterTextOverlayEdit(canvas, target, options) {
|
|
23659
23663
|
// If already in overlay editing, destroy existing editor first
|
|
@@ -23677,35 +23681,35 @@ function enterTextOverlayEdit(canvas, target, options) {
|
|
|
23677
23681
|
return editor;
|
|
23678
23682
|
}
|
|
23679
23683
|
|
|
23680
|
-
/**
|
|
23681
|
-
* extend this regex to support non english languages
|
|
23682
|
-
*
|
|
23683
|
-
* - ` ` Matches a SPACE character (char code 32).
|
|
23684
|
-
* - `\n` Matches a LINE FEED character (char code 10).
|
|
23685
|
-
* - `.` Matches a "." character (char code 46).
|
|
23686
|
-
* - `,` Matches a "," character (char code 44).
|
|
23687
|
-
* - `;` Matches a ";" character (char code 59).
|
|
23688
|
-
* - `!` Matches a "!" character (char code 33).
|
|
23689
|
-
* - `\?` Matches a "?" character (char code 63).
|
|
23690
|
-
* - `\-` Matches a "-" character (char code 45).
|
|
23684
|
+
/**
|
|
23685
|
+
* extend this regex to support non english languages
|
|
23686
|
+
*
|
|
23687
|
+
* - ` ` Matches a SPACE character (char code 32).
|
|
23688
|
+
* - `\n` Matches a LINE FEED character (char code 10).
|
|
23689
|
+
* - `.` Matches a "." character (char code 46).
|
|
23690
|
+
* - `,` Matches a "," character (char code 44).
|
|
23691
|
+
* - `;` Matches a ";" character (char code 59).
|
|
23692
|
+
* - `!` Matches a "!" character (char code 33).
|
|
23693
|
+
* - `\?` Matches a "?" character (char code 63).
|
|
23694
|
+
* - `\-` Matches a "-" character (char code 45).
|
|
23691
23695
|
*/
|
|
23692
23696
|
// eslint-disable-next-line no-useless-escape
|
|
23693
23697
|
const reNonWord = /[ \n\.,;!\?\-]/;
|
|
23694
23698
|
class ITextBehavior extends FabricText {
|
|
23695
23699
|
constructor() {
|
|
23696
23700
|
super(...arguments);
|
|
23697
|
-
/**
|
|
23698
|
-
* Helps determining when the text is in composition, so that the cursor
|
|
23699
|
-
* rendering is altered.
|
|
23701
|
+
/**
|
|
23702
|
+
* Helps determining when the text is in composition, so that the cursor
|
|
23703
|
+
* rendering is altered.
|
|
23700
23704
|
*/
|
|
23701
23705
|
_defineProperty(this, "_currentCursorOpacity", 1);
|
|
23702
23706
|
}
|
|
23703
|
-
/**
|
|
23704
|
-
* Keeps track if the IText object was selected before the actual click.
|
|
23705
|
-
* This because we want to delay enter editing by a click.
|
|
23707
|
+
/**
|
|
23708
|
+
* Keeps track if the IText object was selected before the actual click.
|
|
23709
|
+
* This because we want to delay enter editing by a click.
|
|
23706
23710
|
*/
|
|
23707
|
-
/**
|
|
23708
|
-
* Initializes all the interactive behavior of IText
|
|
23711
|
+
/**
|
|
23712
|
+
* Initializes all the interactive behavior of IText
|
|
23709
23713
|
*/
|
|
23710
23714
|
initBehavior() {
|
|
23711
23715
|
this._tick = this._tick.bind(this);
|
|
@@ -23718,8 +23722,8 @@ class ITextBehavior extends FabricText {
|
|
|
23718
23722
|
return super.onDeselect(options);
|
|
23719
23723
|
}
|
|
23720
23724
|
|
|
23721
|
-
/**
|
|
23722
|
-
* @private
|
|
23725
|
+
/**
|
|
23726
|
+
* @private
|
|
23723
23727
|
*/
|
|
23724
23728
|
_animateCursor(_ref) {
|
|
23725
23729
|
let {
|
|
@@ -23744,8 +23748,8 @@ class ITextBehavior extends FabricText {
|
|
|
23744
23748
|
});
|
|
23745
23749
|
}
|
|
23746
23750
|
|
|
23747
|
-
/**
|
|
23748
|
-
* changes the cursor from visible to invisible
|
|
23751
|
+
/**
|
|
23752
|
+
* changes the cursor from visible to invisible
|
|
23749
23753
|
*/
|
|
23750
23754
|
_tick(delay) {
|
|
23751
23755
|
this._currentTickState = this._animateCursor({
|
|
@@ -23756,8 +23760,8 @@ class ITextBehavior extends FabricText {
|
|
|
23756
23760
|
});
|
|
23757
23761
|
}
|
|
23758
23762
|
|
|
23759
|
-
/**
|
|
23760
|
-
* Changes the cursor from invisible to visible
|
|
23763
|
+
/**
|
|
23764
|
+
* Changes the cursor from invisible to visible
|
|
23761
23765
|
*/
|
|
23762
23766
|
_onTickComplete() {
|
|
23763
23767
|
var _this$_currentTickCom;
|
|
@@ -23769,16 +23773,16 @@ class ITextBehavior extends FabricText {
|
|
|
23769
23773
|
});
|
|
23770
23774
|
}
|
|
23771
23775
|
|
|
23772
|
-
/**
|
|
23773
|
-
* Initializes delayed cursor
|
|
23776
|
+
/**
|
|
23777
|
+
* Initializes delayed cursor
|
|
23774
23778
|
*/
|
|
23775
23779
|
initDelayedCursor(restart) {
|
|
23776
23780
|
this.abortCursorAnimation();
|
|
23777
23781
|
this._tick(restart ? 0 : this.cursorDelay);
|
|
23778
23782
|
}
|
|
23779
23783
|
|
|
23780
|
-
/**
|
|
23781
|
-
* Aborts cursor animation, clears all timeouts and clear textarea context if necessary
|
|
23784
|
+
/**
|
|
23785
|
+
* Aborts cursor animation, clears all timeouts and clear textarea context if necessary
|
|
23782
23786
|
*/
|
|
23783
23787
|
abortCursorAnimation() {
|
|
23784
23788
|
let shouldClear = false;
|
|
@@ -23796,9 +23800,9 @@ class ITextBehavior extends FabricText {
|
|
|
23796
23800
|
}
|
|
23797
23801
|
}
|
|
23798
23802
|
|
|
23799
|
-
/**
|
|
23800
|
-
* Restart tue cursor animation if either is in complete state ( between animations )
|
|
23801
|
-
* or if it never started before
|
|
23803
|
+
/**
|
|
23804
|
+
* Restart tue cursor animation if either is in complete state ( between animations )
|
|
23805
|
+
* or if it never started before
|
|
23802
23806
|
*/
|
|
23803
23807
|
restartCursorIfNeeded() {
|
|
23804
23808
|
if ([this._currentTickState, this._currentTickCompleteState].some(cursorAnimation => !cursorAnimation || cursorAnimation.isDone())) {
|
|
@@ -23806,8 +23810,8 @@ class ITextBehavior extends FabricText {
|
|
|
23806
23810
|
}
|
|
23807
23811
|
}
|
|
23808
23812
|
|
|
23809
|
-
/**
|
|
23810
|
-
* Selects entire text
|
|
23813
|
+
/**
|
|
23814
|
+
* Selects entire text
|
|
23811
23815
|
*/
|
|
23812
23816
|
selectAll() {
|
|
23813
23817
|
this.selectionStart = 0;
|
|
@@ -23817,26 +23821,26 @@ class ITextBehavior extends FabricText {
|
|
|
23817
23821
|
return this;
|
|
23818
23822
|
}
|
|
23819
23823
|
|
|
23820
|
-
/**
|
|
23821
|
-
* Selects entire text and updates the visual state
|
|
23824
|
+
/**
|
|
23825
|
+
* Selects entire text and updates the visual state
|
|
23822
23826
|
*/
|
|
23823
23827
|
cmdAll() {
|
|
23824
23828
|
this.selectAll();
|
|
23825
23829
|
this.renderCursorOrSelection();
|
|
23826
23830
|
}
|
|
23827
23831
|
|
|
23828
|
-
/**
|
|
23829
|
-
* Returns selected text
|
|
23830
|
-
* @return {String}
|
|
23832
|
+
/**
|
|
23833
|
+
* Returns selected text
|
|
23834
|
+
* @return {String}
|
|
23831
23835
|
*/
|
|
23832
23836
|
getSelectedText() {
|
|
23833
23837
|
return this._text.slice(this.selectionStart, this.selectionEnd).join('');
|
|
23834
23838
|
}
|
|
23835
23839
|
|
|
23836
|
-
/**
|
|
23837
|
-
* Find new selection index representing start of current word according to current selection index
|
|
23838
|
-
* @param {Number} startFrom Current selection index
|
|
23839
|
-
* @return {Number} New selection index
|
|
23840
|
+
/**
|
|
23841
|
+
* Find new selection index representing start of current word according to current selection index
|
|
23842
|
+
* @param {Number} startFrom Current selection index
|
|
23843
|
+
* @return {Number} New selection index
|
|
23840
23844
|
*/
|
|
23841
23845
|
findWordBoundaryLeft(startFrom) {
|
|
23842
23846
|
let offset = 0,
|
|
@@ -23856,10 +23860,10 @@ class ITextBehavior extends FabricText {
|
|
|
23856
23860
|
return startFrom - offset;
|
|
23857
23861
|
}
|
|
23858
23862
|
|
|
23859
|
-
/**
|
|
23860
|
-
* Find new selection index representing end of current word according to current selection index
|
|
23861
|
-
* @param {Number} startFrom Current selection index
|
|
23862
|
-
* @return {Number} New selection index
|
|
23863
|
+
/**
|
|
23864
|
+
* Find new selection index representing end of current word according to current selection index
|
|
23865
|
+
* @param {Number} startFrom Current selection index
|
|
23866
|
+
* @return {Number} New selection index
|
|
23863
23867
|
*/
|
|
23864
23868
|
findWordBoundaryRight(startFrom) {
|
|
23865
23869
|
let offset = 0,
|
|
@@ -23879,10 +23883,10 @@ class ITextBehavior extends FabricText {
|
|
|
23879
23883
|
return startFrom + offset;
|
|
23880
23884
|
}
|
|
23881
23885
|
|
|
23882
|
-
/**
|
|
23883
|
-
* Find new selection index representing start of current line according to current selection index
|
|
23884
|
-
* @param {Number} startFrom Current selection index
|
|
23885
|
-
* @return {Number} New selection index
|
|
23886
|
+
/**
|
|
23887
|
+
* Find new selection index representing start of current line according to current selection index
|
|
23888
|
+
* @param {Number} startFrom Current selection index
|
|
23889
|
+
* @return {Number} New selection index
|
|
23886
23890
|
*/
|
|
23887
23891
|
findLineBoundaryLeft(startFrom) {
|
|
23888
23892
|
let offset = 0,
|
|
@@ -23894,10 +23898,10 @@ class ITextBehavior extends FabricText {
|
|
|
23894
23898
|
return startFrom - offset;
|
|
23895
23899
|
}
|
|
23896
23900
|
|
|
23897
|
-
/**
|
|
23898
|
-
* Find new selection index representing end of current line according to current selection index
|
|
23899
|
-
* @param {Number} startFrom Current selection index
|
|
23900
|
-
* @return {Number} New selection index
|
|
23901
|
+
/**
|
|
23902
|
+
* Find new selection index representing end of current line according to current selection index
|
|
23903
|
+
* @param {Number} startFrom Current selection index
|
|
23904
|
+
* @return {Number} New selection index
|
|
23901
23905
|
*/
|
|
23902
23906
|
findLineBoundaryRight(startFrom) {
|
|
23903
23907
|
let offset = 0,
|
|
@@ -23909,11 +23913,11 @@ class ITextBehavior extends FabricText {
|
|
|
23909
23913
|
return startFrom + offset;
|
|
23910
23914
|
}
|
|
23911
23915
|
|
|
23912
|
-
/**
|
|
23913
|
-
* Finds index corresponding to beginning or end of a word
|
|
23914
|
-
* @param {Number} selectionStart Index of a character
|
|
23915
|
-
* @param {Number} direction 1 or -1
|
|
23916
|
-
* @return {Number} Index of the beginning or end of a word
|
|
23916
|
+
/**
|
|
23917
|
+
* Finds index corresponding to beginning or end of a word
|
|
23918
|
+
* @param {Number} selectionStart Index of a character
|
|
23919
|
+
* @param {Number} direction 1 or -1
|
|
23920
|
+
* @return {Number} Index of the beginning or end of a word
|
|
23917
23921
|
*/
|
|
23918
23922
|
searchWordBoundary(selectionStart, direction) {
|
|
23919
23923
|
const text = this._text;
|
|
@@ -23931,9 +23935,9 @@ class ITextBehavior extends FabricText {
|
|
|
23931
23935
|
return index;
|
|
23932
23936
|
}
|
|
23933
23937
|
|
|
23934
|
-
/**
|
|
23935
|
-
* Selects the word that contains the char at index selectionStart
|
|
23936
|
-
* @param {Number} selectionStart Index of a character
|
|
23938
|
+
/**
|
|
23939
|
+
* Selects the word that contains the char at index selectionStart
|
|
23940
|
+
* @param {Number} selectionStart Index of a character
|
|
23937
23941
|
*/
|
|
23938
23942
|
selectWord(selectionStart) {
|
|
23939
23943
|
selectionStart = selectionStart !== null && selectionStart !== void 0 ? selectionStart : this.selectionStart;
|
|
@@ -23949,9 +23953,9 @@ class ITextBehavior extends FabricText {
|
|
|
23949
23953
|
this.renderCursorOrSelection();
|
|
23950
23954
|
}
|
|
23951
23955
|
|
|
23952
|
-
/**
|
|
23953
|
-
* Selects the line that contains selectionStart
|
|
23954
|
-
* @param {Number} selectionStart Index of a character
|
|
23956
|
+
/**
|
|
23957
|
+
* Selects the line that contains selectionStart
|
|
23958
|
+
* @param {Number} selectionStart Index of a character
|
|
23955
23959
|
*/
|
|
23956
23960
|
selectLine(selectionStart) {
|
|
23957
23961
|
selectionStart = selectionStart !== null && selectionStart !== void 0 ? selectionStart : this.selectionStart;
|
|
@@ -23963,8 +23967,8 @@ class ITextBehavior extends FabricText {
|
|
|
23963
23967
|
this._updateTextarea();
|
|
23964
23968
|
}
|
|
23965
23969
|
|
|
23966
|
-
/**
|
|
23967
|
-
* Enters editing state
|
|
23970
|
+
/**
|
|
23971
|
+
* Enters editing state
|
|
23968
23972
|
*/
|
|
23969
23973
|
enterEditing(e) {
|
|
23970
23974
|
if (this.isEditing || !this.editable) {
|
|
@@ -23984,8 +23988,8 @@ class ITextBehavior extends FabricText {
|
|
|
23984
23988
|
}
|
|
23985
23989
|
}
|
|
23986
23990
|
|
|
23987
|
-
/**
|
|
23988
|
-
* runs the actual logic that enter from editing state, see {@link enterEditing}
|
|
23991
|
+
/**
|
|
23992
|
+
* runs the actual logic that enter from editing state, see {@link enterEditing}
|
|
23989
23993
|
*/
|
|
23990
23994
|
enterEditingImpl() {
|
|
23991
23995
|
if (this.canvas) {
|
|
@@ -24009,8 +24013,8 @@ class ITextBehavior extends FabricText {
|
|
|
24009
24013
|
}
|
|
24010
24014
|
}
|
|
24011
24015
|
|
|
24012
|
-
/**
|
|
24013
|
-
* Enter overlay editing mode using DOM textarea overlay
|
|
24016
|
+
/**
|
|
24017
|
+
* Enter overlay editing mode using DOM textarea overlay
|
|
24014
24018
|
*/
|
|
24015
24019
|
enterOverlayEditing() {
|
|
24016
24020
|
this._saveEditingProps();
|
|
@@ -24031,8 +24035,8 @@ class ITextBehavior extends FabricText {
|
|
|
24031
24035
|
});
|
|
24032
24036
|
}
|
|
24033
24037
|
|
|
24034
|
-
/**
|
|
24035
|
-
* Commit overlay editing changes
|
|
24038
|
+
/**
|
|
24039
|
+
* Commit overlay editing changes
|
|
24036
24040
|
*/
|
|
24037
24041
|
commitOverlayEdit(text) {
|
|
24038
24042
|
const overlayEditor = this.__overlayEditor;
|
|
@@ -24056,8 +24060,8 @@ class ITextBehavior extends FabricText {
|
|
|
24056
24060
|
this.canvas && this.canvas.requestRenderAll();
|
|
24057
24061
|
}
|
|
24058
24062
|
|
|
24059
|
-
/**
|
|
24060
|
-
* Cancel overlay editing without changes
|
|
24063
|
+
/**
|
|
24064
|
+
* Cancel overlay editing without changes
|
|
24061
24065
|
*/
|
|
24062
24066
|
cancelOverlayEdit() {
|
|
24063
24067
|
// Restore original text
|
|
@@ -24065,8 +24069,8 @@ class ITextBehavior extends FabricText {
|
|
|
24065
24069
|
this.exitEditing();
|
|
24066
24070
|
}
|
|
24067
24071
|
|
|
24068
|
-
/**
|
|
24069
|
-
* called by {@link Canvas#textEditingManager}
|
|
24072
|
+
/**
|
|
24073
|
+
* called by {@link Canvas#textEditingManager}
|
|
24070
24074
|
*/
|
|
24071
24075
|
updateSelectionOnMouseMove(e) {
|
|
24072
24076
|
if (this.getActiveControl()) {
|
|
@@ -24094,8 +24098,8 @@ class ITextBehavior extends FabricText {
|
|
|
24094
24098
|
}
|
|
24095
24099
|
}
|
|
24096
24100
|
|
|
24097
|
-
/**
|
|
24098
|
-
* @private
|
|
24101
|
+
/**
|
|
24102
|
+
* @private
|
|
24099
24103
|
*/
|
|
24100
24104
|
_setEditingProps() {
|
|
24101
24105
|
this.hoverCursor = 'text';
|
|
@@ -24107,8 +24111,8 @@ class ITextBehavior extends FabricText {
|
|
|
24107
24111
|
this.lockMovementX = this.lockMovementY = true;
|
|
24108
24112
|
}
|
|
24109
24113
|
|
|
24110
|
-
/**
|
|
24111
|
-
* convert from textarea to grapheme indexes
|
|
24114
|
+
/**
|
|
24115
|
+
* convert from textarea to grapheme indexes
|
|
24112
24116
|
*/
|
|
24113
24117
|
fromStringToGraphemeSelection(start, end, text) {
|
|
24114
24118
|
const smallerTextStart = text.slice(0, start),
|
|
@@ -24127,8 +24131,8 @@ class ITextBehavior extends FabricText {
|
|
|
24127
24131
|
};
|
|
24128
24132
|
}
|
|
24129
24133
|
|
|
24130
|
-
/**
|
|
24131
|
-
* convert from fabric to textarea values
|
|
24134
|
+
/**
|
|
24135
|
+
* convert from fabric to textarea values
|
|
24132
24136
|
*/
|
|
24133
24137
|
fromGraphemeToStringSelection(start, end, graphemes) {
|
|
24134
24138
|
const smallerTextStart = graphemes.slice(0, start),
|
|
@@ -24147,8 +24151,8 @@ class ITextBehavior extends FabricText {
|
|
|
24147
24151
|
};
|
|
24148
24152
|
}
|
|
24149
24153
|
|
|
24150
|
-
/**
|
|
24151
|
-
* @private
|
|
24154
|
+
/**
|
|
24155
|
+
* @private
|
|
24152
24156
|
*/
|
|
24153
24157
|
_updateTextarea() {
|
|
24154
24158
|
console.log('🔤 _updateTextarea called with fabric text:', this.text);
|
|
@@ -24173,8 +24177,8 @@ class ITextBehavior extends FabricText {
|
|
|
24173
24177
|
this.updateTextareaPosition();
|
|
24174
24178
|
}
|
|
24175
24179
|
|
|
24176
|
-
/**
|
|
24177
|
-
* @private
|
|
24180
|
+
/**
|
|
24181
|
+
* @private
|
|
24178
24182
|
*/
|
|
24179
24183
|
updateFromTextArea() {
|
|
24180
24184
|
if (!this.hiddenTextarea) {
|
|
@@ -24194,8 +24198,8 @@ class ITextBehavior extends FabricText {
|
|
|
24194
24198
|
this.updateTextareaPosition();
|
|
24195
24199
|
}
|
|
24196
24200
|
|
|
24197
|
-
/**
|
|
24198
|
-
* @private
|
|
24201
|
+
/**
|
|
24202
|
+
* @private
|
|
24199
24203
|
*/
|
|
24200
24204
|
updateTextareaPosition() {
|
|
24201
24205
|
if (this.selectionStart === this.selectionEnd) {
|
|
@@ -24205,9 +24209,9 @@ class ITextBehavior extends FabricText {
|
|
|
24205
24209
|
}
|
|
24206
24210
|
}
|
|
24207
24211
|
|
|
24208
|
-
/**
|
|
24209
|
-
* @private
|
|
24210
|
-
* @return {Object} style contains style for hiddenTextarea
|
|
24212
|
+
/**
|
|
24213
|
+
* @private
|
|
24214
|
+
* @return {Object} style contains style for hiddenTextarea
|
|
24211
24215
|
*/
|
|
24212
24216
|
_calcTextareaPosition() {
|
|
24213
24217
|
if (!this.canvas) {
|
|
@@ -24254,8 +24258,8 @@ class ITextBehavior extends FabricText {
|
|
|
24254
24258
|
};
|
|
24255
24259
|
}
|
|
24256
24260
|
|
|
24257
|
-
/**
|
|
24258
|
-
* @private
|
|
24261
|
+
/**
|
|
24262
|
+
* @private
|
|
24259
24263
|
*/
|
|
24260
24264
|
_saveEditingProps() {
|
|
24261
24265
|
this._savedProps = {
|
|
@@ -24272,8 +24276,8 @@ class ITextBehavior extends FabricText {
|
|
|
24272
24276
|
};
|
|
24273
24277
|
}
|
|
24274
24278
|
|
|
24275
|
-
/**
|
|
24276
|
-
* @private
|
|
24279
|
+
/**
|
|
24280
|
+
* @private
|
|
24277
24281
|
*/
|
|
24278
24282
|
_restoreEditingProps() {
|
|
24279
24283
|
if (!this._savedProps) {
|
|
@@ -24293,9 +24297,9 @@ class ITextBehavior extends FabricText {
|
|
|
24293
24297
|
delete this._savedProps;
|
|
24294
24298
|
}
|
|
24295
24299
|
|
|
24296
|
-
/**
|
|
24297
|
-
* runs the actual logic that exits from editing state, see {@link exitEditing}
|
|
24298
|
-
* But it does not fire events
|
|
24300
|
+
/**
|
|
24301
|
+
* runs the actual logic that exits from editing state, see {@link exitEditing}
|
|
24302
|
+
* But it does not fire events
|
|
24299
24303
|
*/
|
|
24300
24304
|
exitEditingImpl() {
|
|
24301
24305
|
const hiddenTextarea = this.hiddenTextarea;
|
|
@@ -24316,8 +24320,8 @@ class ITextBehavior extends FabricText {
|
|
|
24316
24320
|
}
|
|
24317
24321
|
}
|
|
24318
24322
|
|
|
24319
|
-
/**
|
|
24320
|
-
* Exits from editing state and fires relevant events
|
|
24323
|
+
/**
|
|
24324
|
+
* Exits from editing state and fires relevant events
|
|
24321
24325
|
*/
|
|
24322
24326
|
exitEditing() {
|
|
24323
24327
|
const isTextChanged = this._textBeforeEdit !== this.text;
|
|
@@ -24336,8 +24340,8 @@ class ITextBehavior extends FabricText {
|
|
|
24336
24340
|
return this;
|
|
24337
24341
|
}
|
|
24338
24342
|
|
|
24339
|
-
/**
|
|
24340
|
-
* @private
|
|
24343
|
+
/**
|
|
24344
|
+
* @private
|
|
24341
24345
|
*/
|
|
24342
24346
|
_removeExtraneousStyles() {
|
|
24343
24347
|
for (const prop in this.styles) {
|
|
@@ -24347,10 +24351,10 @@ class ITextBehavior extends FabricText {
|
|
|
24347
24351
|
}
|
|
24348
24352
|
}
|
|
24349
24353
|
|
|
24350
|
-
/**
|
|
24351
|
-
* remove and reflow a style block from start to end.
|
|
24352
|
-
* @param {Number} start linear start position for removal (included in removal)
|
|
24353
|
-
* @param {Number} end linear end position for removal ( excluded from removal )
|
|
24354
|
+
/**
|
|
24355
|
+
* remove and reflow a style block from start to end.
|
|
24356
|
+
* @param {Number} start linear start position for removal (included in removal)
|
|
24357
|
+
* @param {Number} end linear end position for removal ( excluded from removal )
|
|
24354
24358
|
*/
|
|
24355
24359
|
removeStyleFromTo(start, end) {
|
|
24356
24360
|
const {
|
|
@@ -24403,10 +24407,10 @@ class ITextBehavior extends FabricText {
|
|
|
24403
24407
|
}
|
|
24404
24408
|
}
|
|
24405
24409
|
|
|
24406
|
-
/**
|
|
24407
|
-
* Shifts line styles up or down
|
|
24408
|
-
* @param {Number} lineIndex Index of a line
|
|
24409
|
-
* @param {Number} offset Can any number?
|
|
24410
|
+
/**
|
|
24411
|
+
* Shifts line styles up or down
|
|
24412
|
+
* @param {Number} lineIndex Index of a line
|
|
24413
|
+
* @param {Number} offset Can any number?
|
|
24410
24414
|
*/
|
|
24411
24415
|
shiftLineStyles(lineIndex, offset) {
|
|
24412
24416
|
const clonedStyles = Object.assign({}, this.styles);
|
|
@@ -24421,15 +24425,15 @@ class ITextBehavior extends FabricText {
|
|
|
24421
24425
|
}
|
|
24422
24426
|
}
|
|
24423
24427
|
|
|
24424
|
-
/**
|
|
24425
|
-
* Handle insertion of more consecutive style lines for when one or more
|
|
24426
|
-
* newlines gets added to the text. Since current style needs to be shifted
|
|
24427
|
-
* first we shift the current style of the number lines needed, then we add
|
|
24428
|
-
* new lines from the last to the first.
|
|
24429
|
-
* @param {Number} lineIndex Index of a line
|
|
24430
|
-
* @param {Number} charIndex Index of a char
|
|
24431
|
-
* @param {Number} qty number of lines to add
|
|
24432
|
-
* @param {Array} copiedStyle Array of objects styles
|
|
24428
|
+
/**
|
|
24429
|
+
* Handle insertion of more consecutive style lines for when one or more
|
|
24430
|
+
* newlines gets added to the text. Since current style needs to be shifted
|
|
24431
|
+
* first we shift the current style of the number lines needed, then we add
|
|
24432
|
+
* new lines from the last to the first.
|
|
24433
|
+
* @param {Number} lineIndex Index of a line
|
|
24434
|
+
* @param {Number} charIndex Index of a char
|
|
24435
|
+
* @param {Number} qty number of lines to add
|
|
24436
|
+
* @param {Array} copiedStyle Array of objects styles
|
|
24433
24437
|
*/
|
|
24434
24438
|
insertNewlineStyleObject(lineIndex, charIndex, qty, copiedStyle) {
|
|
24435
24439
|
const newLineStyles = {};
|
|
@@ -24489,12 +24493,12 @@ class ITextBehavior extends FabricText {
|
|
|
24489
24493
|
this._forceClearCache = true;
|
|
24490
24494
|
}
|
|
24491
24495
|
|
|
24492
|
-
/**
|
|
24493
|
-
* Inserts style object for a given line/char index
|
|
24494
|
-
* @param {Number} lineIndex Index of a line
|
|
24495
|
-
* @param {Number} charIndex Index of a char
|
|
24496
|
-
* @param {Number} quantity number Style object to insert, if given
|
|
24497
|
-
* @param {Array} copiedStyle array of style objects
|
|
24496
|
+
/**
|
|
24497
|
+
* Inserts style object for a given line/char index
|
|
24498
|
+
* @param {Number} lineIndex Index of a line
|
|
24499
|
+
* @param {Number} charIndex Index of a char
|
|
24500
|
+
* @param {Number} quantity number Style object to insert, if given
|
|
24501
|
+
* @param {Array} copiedStyle array of style objects
|
|
24498
24502
|
*/
|
|
24499
24503
|
insertCharStyleObject(lineIndex, charIndex, quantity, copiedStyle) {
|
|
24500
24504
|
if (!this.styles) {
|
|
@@ -24543,11 +24547,11 @@ class ITextBehavior extends FabricText {
|
|
|
24543
24547
|
}
|
|
24544
24548
|
}
|
|
24545
24549
|
|
|
24546
|
-
/**
|
|
24547
|
-
* Inserts style object(s)
|
|
24548
|
-
* @param {Array} insertedText Characters at the location where style is inserted
|
|
24549
|
-
* @param {Number} start cursor index for inserting style
|
|
24550
|
-
* @param {Array} [copiedStyle] array of style objects to insert.
|
|
24550
|
+
/**
|
|
24551
|
+
* Inserts style object(s)
|
|
24552
|
+
* @param {Array} insertedText Characters at the location where style is inserted
|
|
24553
|
+
* @param {Number} start cursor index for inserting style
|
|
24554
|
+
* @param {Array} [copiedStyle] array of style objects to insert.
|
|
24551
24555
|
*/
|
|
24552
24556
|
insertNewStyleBlock(insertedText, start, copiedStyle) {
|
|
24553
24557
|
const cursorLoc = this.get2DCursorLocation(start, true),
|
|
@@ -24588,12 +24592,12 @@ class ITextBehavior extends FabricText {
|
|
|
24588
24592
|
}
|
|
24589
24593
|
}
|
|
24590
24594
|
|
|
24591
|
-
/**
|
|
24592
|
-
* Removes characters from start/end
|
|
24593
|
-
* start/end ar per grapheme position in _text array.
|
|
24594
|
-
*
|
|
24595
|
-
* @param {Number} start
|
|
24596
|
-
* @param {Number} end default to start + 1
|
|
24595
|
+
/**
|
|
24596
|
+
* Removes characters from start/end
|
|
24597
|
+
* start/end ar per grapheme position in _text array.
|
|
24598
|
+
*
|
|
24599
|
+
* @param {Number} start
|
|
24600
|
+
* @param {Number} end default to start + 1
|
|
24597
24601
|
*/
|
|
24598
24602
|
removeChars(start) {
|
|
24599
24603
|
let end = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : start + 1;
|
|
@@ -24606,17 +24610,17 @@ class ITextBehavior extends FabricText {
|
|
|
24606
24610
|
this._removeExtraneousStyles();
|
|
24607
24611
|
}
|
|
24608
24612
|
|
|
24609
|
-
/**
|
|
24610
|
-
* insert characters at start position, before start position.
|
|
24611
|
-
* start equal 1 it means the text get inserted between actual grapheme 0 and 1
|
|
24612
|
-
* if style array is provided, it must be as the same length of text in graphemes
|
|
24613
|
-
* if end is provided and is bigger than start, old text is replaced.
|
|
24614
|
-
* start/end ar per grapheme position in _text array.
|
|
24615
|
-
*
|
|
24616
|
-
* @param {String} text text to insert
|
|
24617
|
-
* @param {Array} style array of style objects
|
|
24618
|
-
* @param {Number} start
|
|
24619
|
-
* @param {Number} end default to start + 1
|
|
24613
|
+
/**
|
|
24614
|
+
* insert characters at start position, before start position.
|
|
24615
|
+
* start equal 1 it means the text get inserted between actual grapheme 0 and 1
|
|
24616
|
+
* if style array is provided, it must be as the same length of text in graphemes
|
|
24617
|
+
* if end is provided and is bigger than start, old text is replaced.
|
|
24618
|
+
* start/end ar per grapheme position in _text array.
|
|
24619
|
+
*
|
|
24620
|
+
* @param {String} text text to insert
|
|
24621
|
+
* @param {Array} style array of style objects
|
|
24622
|
+
* @param {Number} start
|
|
24623
|
+
* @param {Number} end default to start + 1
|
|
24620
24624
|
*/
|
|
24621
24625
|
insertChars(text, style, start) {
|
|
24622
24626
|
let end = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : start;
|
|
@@ -24633,9 +24637,9 @@ class ITextBehavior extends FabricText {
|
|
|
24633
24637
|
this._removeExtraneousStyles();
|
|
24634
24638
|
}
|
|
24635
24639
|
|
|
24636
|
-
/**
|
|
24637
|
-
* Set the selectionStart and selectionEnd according to the new position of cursor
|
|
24638
|
-
* mimic the key - mouse navigation when shift is pressed.
|
|
24640
|
+
/**
|
|
24641
|
+
* Set the selectionStart and selectionEnd according to the new position of cursor
|
|
24642
|
+
* mimic the key - mouse navigation when shift is pressed.
|
|
24639
24643
|
*/
|
|
24640
24644
|
setSelectionStartEndWithShift(start, end, newSelection) {
|
|
24641
24645
|
if (newSelection <= start) {
|
|
@@ -24666,36 +24670,36 @@ class ITextBehavior extends FabricText {
|
|
|
24666
24670
|
}
|
|
24667
24671
|
|
|
24668
24672
|
class ITextKeyBehavior extends ITextBehavior {
|
|
24669
|
-
/**
|
|
24670
|
-
* For functionalities on keyDown
|
|
24671
|
-
* Map a special key to a function of the instance/prototype
|
|
24672
|
-
* If you need different behavior for ESC or TAB or arrows, you have to change
|
|
24673
|
-
* this map setting the name of a function that you build on the IText or
|
|
24674
|
-
* your prototype.
|
|
24675
|
-
* the map change will affect all Instances unless you need for only some text Instances
|
|
24676
|
-
* in that case you have to clone this object and assign your Instance.
|
|
24677
|
-
* this.keysMap = Object.assign({}, this.keysMap);
|
|
24678
|
-
* The function must be in IText.prototype.myFunction And will receive event as args[0]
|
|
24673
|
+
/**
|
|
24674
|
+
* For functionalities on keyDown
|
|
24675
|
+
* Map a special key to a function of the instance/prototype
|
|
24676
|
+
* If you need different behavior for ESC or TAB or arrows, you have to change
|
|
24677
|
+
* this map setting the name of a function that you build on the IText or
|
|
24678
|
+
* your prototype.
|
|
24679
|
+
* the map change will affect all Instances unless you need for only some text Instances
|
|
24680
|
+
* in that case you have to clone this object and assign your Instance.
|
|
24681
|
+
* this.keysMap = Object.assign({}, this.keysMap);
|
|
24682
|
+
* The function must be in IText.prototype.myFunction And will receive event as args[0]
|
|
24679
24683
|
*/
|
|
24680
24684
|
|
|
24681
|
-
/**
|
|
24682
|
-
* For functionalities on keyUp + ctrl || cmd
|
|
24685
|
+
/**
|
|
24686
|
+
* For functionalities on keyUp + ctrl || cmd
|
|
24683
24687
|
*/
|
|
24684
24688
|
|
|
24685
|
-
/**
|
|
24686
|
-
* For functionalities on keyDown + ctrl || cmd
|
|
24689
|
+
/**
|
|
24690
|
+
* For functionalities on keyDown + ctrl || cmd
|
|
24687
24691
|
*/
|
|
24688
24692
|
|
|
24689
|
-
/**
|
|
24690
|
-
* DOM container to append the hiddenTextarea.
|
|
24691
|
-
* An alternative to attaching to the document.body.
|
|
24692
|
-
* Useful to reduce laggish redraw of the full document.body tree and
|
|
24693
|
-
* also with modals event capturing that won't let the textarea take focus.
|
|
24694
|
-
* @type HTMLElement
|
|
24693
|
+
/**
|
|
24694
|
+
* DOM container to append the hiddenTextarea.
|
|
24695
|
+
* An alternative to attaching to the document.body.
|
|
24696
|
+
* Useful to reduce laggish redraw of the full document.body tree and
|
|
24697
|
+
* also with modals event capturing that won't let the textarea take focus.
|
|
24698
|
+
* @type HTMLElement
|
|
24695
24699
|
*/
|
|
24696
24700
|
|
|
24697
|
-
/**
|
|
24698
|
-
* Initializes hidden textarea (needed to bring up keyboard in iOS)
|
|
24701
|
+
/**
|
|
24702
|
+
* Initializes hidden textarea (needed to bring up keyboard in iOS)
|
|
24699
24703
|
*/
|
|
24700
24704
|
initHiddenTextarea() {
|
|
24701
24705
|
const doc = this.canvas && getDocumentFromElement(this.canvas.getElement()) || getFabricDocument();
|
|
@@ -24738,17 +24742,17 @@ class ITextKeyBehavior extends ITextBehavior {
|
|
|
24738
24742
|
this.hiddenTextarea = textarea;
|
|
24739
24743
|
}
|
|
24740
24744
|
|
|
24741
|
-
/**
|
|
24742
|
-
* Override this method to customize cursor behavior on textbox blur
|
|
24745
|
+
/**
|
|
24746
|
+
* Override this method to customize cursor behavior on textbox blur
|
|
24743
24747
|
*/
|
|
24744
24748
|
blur() {
|
|
24745
24749
|
this.abortCursorAnimation();
|
|
24746
24750
|
}
|
|
24747
24751
|
|
|
24748
|
-
/**
|
|
24749
|
-
* Handles keydown event
|
|
24750
|
-
* only used for arrows and combination of modifier keys.
|
|
24751
|
-
* @param {KeyboardEvent} e Event object
|
|
24752
|
+
/**
|
|
24753
|
+
* Handles keydown event
|
|
24754
|
+
* only used for arrows and combination of modifier keys.
|
|
24755
|
+
* @param {KeyboardEvent} e Event object
|
|
24752
24756
|
*/
|
|
24753
24757
|
onKeyDown(e) {
|
|
24754
24758
|
if (!this.isEditing) {
|
|
@@ -24774,11 +24778,11 @@ class ITextKeyBehavior extends ITextBehavior {
|
|
|
24774
24778
|
}
|
|
24775
24779
|
}
|
|
24776
24780
|
|
|
24777
|
-
/**
|
|
24778
|
-
* Handles keyup event
|
|
24779
|
-
* We handle KeyUp because ie11 and edge have difficulties copy/pasting
|
|
24780
|
-
* if a copy/cut event fired, keyup is dismissed
|
|
24781
|
-
* @param {KeyboardEvent} e Event object
|
|
24781
|
+
/**
|
|
24782
|
+
* Handles keyup event
|
|
24783
|
+
* We handle KeyUp because ie11 and edge have difficulties copy/pasting
|
|
24784
|
+
* if a copy/cut event fired, keyup is dismissed
|
|
24785
|
+
* @param {KeyboardEvent} e Event object
|
|
24782
24786
|
*/
|
|
24783
24787
|
onKeyUp(e) {
|
|
24784
24788
|
if (!this.isEditing || this._copyDone || this.inCompositionMode) {
|
|
@@ -24795,9 +24799,9 @@ class ITextKeyBehavior extends ITextBehavior {
|
|
|
24795
24799
|
this.canvas && this.canvas.requestRenderAll();
|
|
24796
24800
|
}
|
|
24797
24801
|
|
|
24798
|
-
/**
|
|
24799
|
-
* Handles onInput event
|
|
24800
|
-
* @param {Event} e Event object
|
|
24802
|
+
/**
|
|
24803
|
+
* Handles onInput event
|
|
24804
|
+
* @param {Event} e Event object
|
|
24801
24805
|
*/
|
|
24802
24806
|
onInput(e) {
|
|
24803
24807
|
const fromPaste = this.fromPaste;
|
|
@@ -24934,15 +24938,15 @@ class ITextKeyBehavior extends ITextBehavior {
|
|
|
24934
24938
|
updateAndFire();
|
|
24935
24939
|
}
|
|
24936
24940
|
|
|
24937
|
-
/**
|
|
24938
|
-
* Composition start
|
|
24941
|
+
/**
|
|
24942
|
+
* Composition start
|
|
24939
24943
|
*/
|
|
24940
24944
|
onCompositionStart() {
|
|
24941
24945
|
this.inCompositionMode = true;
|
|
24942
24946
|
}
|
|
24943
24947
|
|
|
24944
|
-
/**
|
|
24945
|
-
* Composition end
|
|
24948
|
+
/**
|
|
24949
|
+
* Composition end
|
|
24946
24950
|
*/
|
|
24947
24951
|
onCompositionEnd() {
|
|
24948
24952
|
this.inCompositionMode = false;
|
|
@@ -24960,8 +24964,8 @@ class ITextKeyBehavior extends ITextBehavior {
|
|
|
24960
24964
|
this.updateTextareaPosition();
|
|
24961
24965
|
}
|
|
24962
24966
|
|
|
24963
|
-
/**
|
|
24964
|
-
* Copies selected text
|
|
24967
|
+
/**
|
|
24968
|
+
* Copies selected text
|
|
24965
24969
|
*/
|
|
24966
24970
|
copy() {
|
|
24967
24971
|
if (this.selectionStart === this.selectionEnd) {
|
|
@@ -24980,19 +24984,19 @@ class ITextKeyBehavior extends ITextBehavior {
|
|
|
24980
24984
|
this._copyDone = true;
|
|
24981
24985
|
}
|
|
24982
24986
|
|
|
24983
|
-
/**
|
|
24984
|
-
* Pastes text
|
|
24987
|
+
/**
|
|
24988
|
+
* Pastes text
|
|
24985
24989
|
*/
|
|
24986
24990
|
paste() {
|
|
24987
24991
|
this.fromPaste = true;
|
|
24988
24992
|
}
|
|
24989
24993
|
|
|
24990
|
-
/**
|
|
24991
|
-
* Finds the width in pixels before the cursor on the same line
|
|
24992
|
-
* @private
|
|
24993
|
-
* @param {Number} lineIndex
|
|
24994
|
-
* @param {Number} charIndex
|
|
24995
|
-
* @return {Number} widthBeforeCursor width before cursor
|
|
24994
|
+
/**
|
|
24995
|
+
* Finds the width in pixels before the cursor on the same line
|
|
24996
|
+
* @private
|
|
24997
|
+
* @param {Number} lineIndex
|
|
24998
|
+
* @param {Number} charIndex
|
|
24999
|
+
* @return {Number} widthBeforeCursor width before cursor
|
|
24996
25000
|
*/
|
|
24997
25001
|
_getWidthBeforeCursor(lineIndex, charIndex) {
|
|
24998
25002
|
let widthBeforeCursor = this._getLineLeftOffset(lineIndex),
|
|
@@ -25004,11 +25008,11 @@ class ITextKeyBehavior extends ITextBehavior {
|
|
|
25004
25008
|
return widthBeforeCursor;
|
|
25005
25009
|
}
|
|
25006
25010
|
|
|
25007
|
-
/**
|
|
25008
|
-
* Gets start offset of a selection
|
|
25009
|
-
* @param {KeyboardEvent} e Event object
|
|
25010
|
-
* @param {Boolean} isRight
|
|
25011
|
-
* @return {Number}
|
|
25011
|
+
/**
|
|
25012
|
+
* Gets start offset of a selection
|
|
25013
|
+
* @param {KeyboardEvent} e Event object
|
|
25014
|
+
* @param {Boolean} isRight
|
|
25015
|
+
* @return {Number}
|
|
25012
25016
|
*/
|
|
25013
25017
|
getDownCursorOffset(e, isRight) {
|
|
25014
25018
|
const selectionProp = this._getSelectionForOffset(e, isRight),
|
|
@@ -25026,12 +25030,12 @@ class ITextKeyBehavior extends ITextBehavior {
|
|
|
25026
25030
|
return textAfterCursor.length + indexOnOtherLine + 1 + this.missingNewlineOffset(lineIndex);
|
|
25027
25031
|
}
|
|
25028
25032
|
|
|
25029
|
-
/**
|
|
25030
|
-
* private
|
|
25031
|
-
* Helps finding if the offset should be counted from Start or End
|
|
25032
|
-
* @param {KeyboardEvent} e Event object
|
|
25033
|
-
* @param {Boolean} isRight
|
|
25034
|
-
* @return {Number}
|
|
25033
|
+
/**
|
|
25034
|
+
* private
|
|
25035
|
+
* Helps finding if the offset should be counted from Start or End
|
|
25036
|
+
* @param {KeyboardEvent} e Event object
|
|
25037
|
+
* @param {Boolean} isRight
|
|
25038
|
+
* @return {Number}
|
|
25035
25039
|
*/
|
|
25036
25040
|
_getSelectionForOffset(e, isRight) {
|
|
25037
25041
|
if (e.shiftKey && this.selectionStart !== this.selectionEnd && isRight) {
|
|
@@ -25041,10 +25045,10 @@ class ITextKeyBehavior extends ITextBehavior {
|
|
|
25041
25045
|
}
|
|
25042
25046
|
}
|
|
25043
25047
|
|
|
25044
|
-
/**
|
|
25045
|
-
* @param {KeyboardEvent} e Event object
|
|
25046
|
-
* @param {Boolean} isRight
|
|
25047
|
-
* @return {Number}
|
|
25048
|
+
/**
|
|
25049
|
+
* @param {KeyboardEvent} e Event object
|
|
25050
|
+
* @param {Boolean} isRight
|
|
25051
|
+
* @return {Number}
|
|
25048
25052
|
*/
|
|
25049
25053
|
getUpCursorOffset(e, isRight) {
|
|
25050
25054
|
const selectionProp = this._getSelectionForOffset(e, isRight),
|
|
@@ -25063,9 +25067,9 @@ class ITextKeyBehavior extends ITextBehavior {
|
|
|
25063
25067
|
return -this._textLines[lineIndex - 1].length + indexOnOtherLine - textBeforeCursor.length + (1 - missingNewlineOffset);
|
|
25064
25068
|
}
|
|
25065
25069
|
|
|
25066
|
-
/**
|
|
25067
|
-
* for a given width it founds the matching character.
|
|
25068
|
-
* @private
|
|
25070
|
+
/**
|
|
25071
|
+
* for a given width it founds the matching character.
|
|
25072
|
+
* @private
|
|
25069
25073
|
*/
|
|
25070
25074
|
_getIndexOnLine(lineIndex, width) {
|
|
25071
25075
|
const line = this._textLines[lineIndex],
|
|
@@ -25095,9 +25099,9 @@ class ITextKeyBehavior extends ITextBehavior {
|
|
|
25095
25099
|
return indexOnLine;
|
|
25096
25100
|
}
|
|
25097
25101
|
|
|
25098
|
-
/**
|
|
25099
|
-
* Moves cursor down
|
|
25100
|
-
* @param {KeyboardEvent} e Event object
|
|
25102
|
+
/**
|
|
25103
|
+
* Moves cursor down
|
|
25104
|
+
* @param {KeyboardEvent} e Event object
|
|
25101
25105
|
*/
|
|
25102
25106
|
moveCursorDown(e) {
|
|
25103
25107
|
if (this.selectionStart >= this._text.length && this.selectionEnd >= this._text.length) {
|
|
@@ -25106,9 +25110,9 @@ class ITextKeyBehavior extends ITextBehavior {
|
|
|
25106
25110
|
this._moveCursorUpOrDown('Down', e);
|
|
25107
25111
|
}
|
|
25108
25112
|
|
|
25109
|
-
/**
|
|
25110
|
-
* Moves cursor up
|
|
25111
|
-
* @param {KeyboardEvent} e Event object
|
|
25113
|
+
/**
|
|
25114
|
+
* Moves cursor up
|
|
25115
|
+
* @param {KeyboardEvent} e Event object
|
|
25112
25116
|
*/
|
|
25113
25117
|
moveCursorUp(e) {
|
|
25114
25118
|
if (this.selectionStart === 0 && this.selectionEnd === 0) {
|
|
@@ -25117,10 +25121,10 @@ class ITextKeyBehavior extends ITextBehavior {
|
|
|
25117
25121
|
this._moveCursorUpOrDown('Up', e);
|
|
25118
25122
|
}
|
|
25119
25123
|
|
|
25120
|
-
/**
|
|
25121
|
-
* Moves cursor up or down, fires the events
|
|
25122
|
-
* @param {String} direction 'Up' or 'Down'
|
|
25123
|
-
* @param {KeyboardEvent} e Event object
|
|
25124
|
+
/**
|
|
25125
|
+
* Moves cursor up or down, fires the events
|
|
25126
|
+
* @param {String} direction 'Up' or 'Down'
|
|
25127
|
+
* @param {KeyboardEvent} e Event object
|
|
25124
25128
|
*/
|
|
25125
25129
|
_moveCursorUpOrDown(direction, e) {
|
|
25126
25130
|
const offset = this[`get${direction}CursorOffset`](e, this._selectionDirection === RIGHT);
|
|
@@ -25142,9 +25146,9 @@ class ITextKeyBehavior extends ITextBehavior {
|
|
|
25142
25146
|
}
|
|
25143
25147
|
}
|
|
25144
25148
|
|
|
25145
|
-
/**
|
|
25146
|
-
* Moves cursor with shift
|
|
25147
|
-
* @param {Number} offset
|
|
25149
|
+
/**
|
|
25150
|
+
* Moves cursor with shift
|
|
25151
|
+
* @param {Number} offset
|
|
25148
25152
|
*/
|
|
25149
25153
|
moveCursorWithShift(offset) {
|
|
25150
25154
|
const newSelection = this._selectionDirection === LEFT ? this.selectionStart + offset : this.selectionEnd + offset;
|
|
@@ -25152,9 +25156,9 @@ class ITextKeyBehavior extends ITextBehavior {
|
|
|
25152
25156
|
return offset !== 0;
|
|
25153
25157
|
}
|
|
25154
25158
|
|
|
25155
|
-
/**
|
|
25156
|
-
* Moves cursor up without shift
|
|
25157
|
-
* @param {Number} offset
|
|
25159
|
+
/**
|
|
25160
|
+
* Moves cursor up without shift
|
|
25161
|
+
* @param {Number} offset
|
|
25158
25162
|
*/
|
|
25159
25163
|
moveCursorWithoutShift(offset) {
|
|
25160
25164
|
if (offset < 0) {
|
|
@@ -25167,9 +25171,9 @@ class ITextKeyBehavior extends ITextBehavior {
|
|
|
25167
25171
|
return offset !== 0;
|
|
25168
25172
|
}
|
|
25169
25173
|
|
|
25170
|
-
/**
|
|
25171
|
-
* Moves cursor left
|
|
25172
|
-
* @param {KeyboardEvent} e Event object
|
|
25174
|
+
/**
|
|
25175
|
+
* Moves cursor left
|
|
25176
|
+
* @param {KeyboardEvent} e Event object
|
|
25173
25177
|
*/
|
|
25174
25178
|
moveCursorLeft(e) {
|
|
25175
25179
|
if (this.selectionStart === 0 && this.selectionEnd === 0) {
|
|
@@ -25178,11 +25182,11 @@ class ITextKeyBehavior extends ITextBehavior {
|
|
|
25178
25182
|
this._moveCursorLeftOrRight('Left', e);
|
|
25179
25183
|
}
|
|
25180
25184
|
|
|
25181
|
-
/**
|
|
25182
|
-
* @private
|
|
25183
|
-
* @return {Boolean} true if a change happened
|
|
25184
|
-
*
|
|
25185
|
-
* @todo refactor not to use method name composition
|
|
25185
|
+
/**
|
|
25186
|
+
* @private
|
|
25187
|
+
* @return {Boolean} true if a change happened
|
|
25188
|
+
*
|
|
25189
|
+
* @todo refactor not to use method name composition
|
|
25186
25190
|
*/
|
|
25187
25191
|
_move(e, prop, direction) {
|
|
25188
25192
|
let newValue;
|
|
@@ -25201,23 +25205,23 @@ class ITextKeyBehavior extends ITextBehavior {
|
|
|
25201
25205
|
return false;
|
|
25202
25206
|
}
|
|
25203
25207
|
|
|
25204
|
-
/**
|
|
25205
|
-
* @private
|
|
25208
|
+
/**
|
|
25209
|
+
* @private
|
|
25206
25210
|
*/
|
|
25207
25211
|
_moveLeft(e, prop) {
|
|
25208
25212
|
return this._move(e, prop, 'Left');
|
|
25209
25213
|
}
|
|
25210
25214
|
|
|
25211
|
-
/**
|
|
25212
|
-
* @private
|
|
25215
|
+
/**
|
|
25216
|
+
* @private
|
|
25213
25217
|
*/
|
|
25214
25218
|
_moveRight(e, prop) {
|
|
25215
25219
|
return this._move(e, prop, 'Right');
|
|
25216
25220
|
}
|
|
25217
25221
|
|
|
25218
|
-
/**
|
|
25219
|
-
* Moves cursor left without keeping selection
|
|
25220
|
-
* @param {KeyboardEvent} e
|
|
25222
|
+
/**
|
|
25223
|
+
* Moves cursor left without keeping selection
|
|
25224
|
+
* @param {KeyboardEvent} e
|
|
25221
25225
|
*/
|
|
25222
25226
|
moveCursorLeftWithoutShift(e) {
|
|
25223
25227
|
let change = true;
|
|
@@ -25232,9 +25236,9 @@ class ITextKeyBehavior extends ITextBehavior {
|
|
|
25232
25236
|
return change;
|
|
25233
25237
|
}
|
|
25234
25238
|
|
|
25235
|
-
/**
|
|
25236
|
-
* Moves cursor left while keeping selection
|
|
25237
|
-
* @param {KeyboardEvent} e
|
|
25239
|
+
/**
|
|
25240
|
+
* Moves cursor left while keeping selection
|
|
25241
|
+
* @param {KeyboardEvent} e
|
|
25238
25242
|
*/
|
|
25239
25243
|
moveCursorLeftWithShift(e) {
|
|
25240
25244
|
if (this._selectionDirection === RIGHT && this.selectionStart !== this.selectionEnd) {
|
|
@@ -25245,9 +25249,9 @@ class ITextKeyBehavior extends ITextBehavior {
|
|
|
25245
25249
|
}
|
|
25246
25250
|
}
|
|
25247
25251
|
|
|
25248
|
-
/**
|
|
25249
|
-
* Moves cursor right
|
|
25250
|
-
* @param {KeyboardEvent} e Event object
|
|
25252
|
+
/**
|
|
25253
|
+
* Moves cursor right
|
|
25254
|
+
* @param {KeyboardEvent} e Event object
|
|
25251
25255
|
*/
|
|
25252
25256
|
moveCursorRight(e) {
|
|
25253
25257
|
if (this.selectionStart >= this._text.length && this.selectionEnd >= this._text.length) {
|
|
@@ -25256,10 +25260,10 @@ class ITextKeyBehavior extends ITextBehavior {
|
|
|
25256
25260
|
this._moveCursorLeftOrRight('Right', e);
|
|
25257
25261
|
}
|
|
25258
25262
|
|
|
25259
|
-
/**
|
|
25260
|
-
* Moves cursor right or Left, fires event
|
|
25261
|
-
* @param {String} direction 'Left', 'Right'
|
|
25262
|
-
* @param {KeyboardEvent} e Event object
|
|
25263
|
+
/**
|
|
25264
|
+
* Moves cursor right or Left, fires event
|
|
25265
|
+
* @param {String} direction 'Left', 'Right'
|
|
25266
|
+
* @param {KeyboardEvent} e Event object
|
|
25263
25267
|
*/
|
|
25264
25268
|
_moveCursorLeftOrRight(direction, e) {
|
|
25265
25269
|
const actionName = `moveCursor${direction}${e.shiftKey ? 'WithShift' : 'WithoutShift'}`;
|
|
@@ -25274,9 +25278,9 @@ class ITextKeyBehavior extends ITextBehavior {
|
|
|
25274
25278
|
}
|
|
25275
25279
|
}
|
|
25276
25280
|
|
|
25277
|
-
/**
|
|
25278
|
-
* Moves cursor right while keeping selection
|
|
25279
|
-
* @param {KeyboardEvent} e
|
|
25281
|
+
/**
|
|
25282
|
+
* Moves cursor right while keeping selection
|
|
25283
|
+
* @param {KeyboardEvent} e
|
|
25280
25284
|
*/
|
|
25281
25285
|
moveCursorRightWithShift(e) {
|
|
25282
25286
|
if (this._selectionDirection === LEFT && this.selectionStart !== this.selectionEnd) {
|
|
@@ -25287,9 +25291,9 @@ class ITextKeyBehavior extends ITextBehavior {
|
|
|
25287
25291
|
}
|
|
25288
25292
|
}
|
|
25289
25293
|
|
|
25290
|
-
/**
|
|
25291
|
-
* Moves cursor right without keeping selection
|
|
25292
|
-
* @param {KeyboardEvent} e Event object
|
|
25294
|
+
/**
|
|
25295
|
+
* Moves cursor right without keeping selection
|
|
25296
|
+
* @param {KeyboardEvent} e Event object
|
|
25293
25297
|
*/
|
|
25294
25298
|
moveCursorRightWithoutShift(e) {
|
|
25295
25299
|
let changed = true;
|
|
@@ -25304,8 +25308,8 @@ class ITextKeyBehavior extends ITextBehavior {
|
|
|
25304
25308
|
}
|
|
25305
25309
|
}
|
|
25306
25310
|
|
|
25307
|
-
/**
|
|
25308
|
-
* `LEFT_CLICK === 0`
|
|
25311
|
+
/**
|
|
25312
|
+
* `LEFT_CLICK === 0`
|
|
25309
25313
|
*/
|
|
25310
25314
|
const notALeftClick = e => !!e.button;
|
|
25311
25315
|
class ITextClickBehavior extends ITextKeyBehavior {
|
|
@@ -25323,36 +25327,36 @@ class ITextClickBehavior extends ITextKeyBehavior {
|
|
|
25323
25327
|
super.initBehavior();
|
|
25324
25328
|
}
|
|
25325
25329
|
|
|
25326
|
-
/**
|
|
25327
|
-
* If this method returns true a mouse move operation over a text selection
|
|
25328
|
-
* will not prevent the native mouse event allowing the browser to start a drag operation.
|
|
25329
|
-
* shouldStartDragging can be read 'do not prevent default for mouse move event'
|
|
25330
|
-
* To prevent drag and drop between objects both shouldStartDragging and onDragStart should return false
|
|
25331
|
-
* @returns
|
|
25330
|
+
/**
|
|
25331
|
+
* If this method returns true a mouse move operation over a text selection
|
|
25332
|
+
* will not prevent the native mouse event allowing the browser to start a drag operation.
|
|
25333
|
+
* shouldStartDragging can be read 'do not prevent default for mouse move event'
|
|
25334
|
+
* To prevent drag and drop between objects both shouldStartDragging and onDragStart should return false
|
|
25335
|
+
* @returns
|
|
25332
25336
|
*/
|
|
25333
25337
|
shouldStartDragging() {
|
|
25334
25338
|
return this.draggableTextDelegate.isActive();
|
|
25335
25339
|
}
|
|
25336
25340
|
|
|
25337
|
-
/**
|
|
25338
|
-
* @public override this method to control whether instance should/shouldn't become a drag source,
|
|
25339
|
-
* @see also {@link DraggableTextDelegate#isActive}
|
|
25340
|
-
* To prevent drag and drop between objects both shouldStartDragging and onDragStart should return false
|
|
25341
|
-
* @returns {boolean} should handle event
|
|
25341
|
+
/**
|
|
25342
|
+
* @public override this method to control whether instance should/shouldn't become a drag source,
|
|
25343
|
+
* @see also {@link DraggableTextDelegate#isActive}
|
|
25344
|
+
* To prevent drag and drop between objects both shouldStartDragging and onDragStart should return false
|
|
25345
|
+
* @returns {boolean} should handle event
|
|
25342
25346
|
*/
|
|
25343
25347
|
onDragStart(e) {
|
|
25344
25348
|
return this.draggableTextDelegate.onDragStart(e);
|
|
25345
25349
|
}
|
|
25346
25350
|
|
|
25347
|
-
/**
|
|
25348
|
-
* @public override this method to control whether instance should/shouldn't become a drop target
|
|
25351
|
+
/**
|
|
25352
|
+
* @public override this method to control whether instance should/shouldn't become a drop target
|
|
25349
25353
|
*/
|
|
25350
25354
|
canDrop(e) {
|
|
25351
25355
|
return this.draggableTextDelegate.canDrop(e);
|
|
25352
25356
|
}
|
|
25353
25357
|
|
|
25354
|
-
/**
|
|
25355
|
-
* Default handler for double click, select a word or enter overlay editing
|
|
25358
|
+
/**
|
|
25359
|
+
* Default handler for double click, select a word or enter overlay editing
|
|
25356
25360
|
*/
|
|
25357
25361
|
doubleClickHandler(options) {
|
|
25358
25362
|
// Check if we should enter overlay editing mode
|
|
@@ -25369,8 +25373,8 @@ class ITextClickBehavior extends ITextKeyBehavior {
|
|
|
25369
25373
|
this.renderCursorOrSelection();
|
|
25370
25374
|
}
|
|
25371
25375
|
|
|
25372
|
-
/**
|
|
25373
|
-
* Default handler for triple click, select a line
|
|
25376
|
+
/**
|
|
25377
|
+
* Default handler for triple click, select a line
|
|
25374
25378
|
*/
|
|
25375
25379
|
tripleClickHandler(options) {
|
|
25376
25380
|
if (!this.isEditing) {
|
|
@@ -25380,13 +25384,13 @@ class ITextClickBehavior extends ITextKeyBehavior {
|
|
|
25380
25384
|
this.renderCursorOrSelection();
|
|
25381
25385
|
}
|
|
25382
25386
|
|
|
25383
|
-
/**
|
|
25384
|
-
* Default event handler for the basic functionalities needed on _mouseDown
|
|
25385
|
-
* can be overridden to do something different.
|
|
25386
|
-
* Scope of this implementation is: find the click position, set selectionStart
|
|
25387
|
-
* find selectionEnd, initialize the drawing of either cursor or selection area
|
|
25388
|
-
* initializing a mousedDown on a text area will cancel fabricjs knowledge of
|
|
25389
|
-
* current compositionMode. It will be set to false.
|
|
25387
|
+
/**
|
|
25388
|
+
* Default event handler for the basic functionalities needed on _mouseDown
|
|
25389
|
+
* can be overridden to do something different.
|
|
25390
|
+
* Scope of this implementation is: find the click position, set selectionStart
|
|
25391
|
+
* find selectionEnd, initialize the drawing of either cursor or selection area
|
|
25392
|
+
* initializing a mousedDown on a text area will cancel fabricjs knowledge of
|
|
25393
|
+
* current compositionMode. It will be set to false.
|
|
25390
25394
|
*/
|
|
25391
25395
|
_mouseDownHandler(_ref) {
|
|
25392
25396
|
let {
|
|
@@ -25414,9 +25418,9 @@ class ITextClickBehavior extends ITextKeyBehavior {
|
|
|
25414
25418
|
this.selected || (this.selected = alreadySelected || this.isEditing);
|
|
25415
25419
|
}
|
|
25416
25420
|
|
|
25417
|
-
/**
|
|
25418
|
-
* standard handler for mouse up, overridable
|
|
25419
|
-
* @private
|
|
25421
|
+
/**
|
|
25422
|
+
* standard handler for mouse up, overridable
|
|
25423
|
+
* @private
|
|
25420
25424
|
*/
|
|
25421
25425
|
mouseUpHandler(_ref2) {
|
|
25422
25426
|
let {
|
|
@@ -25447,9 +25451,9 @@ class ITextClickBehavior extends ITextKeyBehavior {
|
|
|
25447
25451
|
}
|
|
25448
25452
|
}
|
|
25449
25453
|
|
|
25450
|
-
/**
|
|
25451
|
-
* Changes cursor location in a text depending on passed pointer (x/y) object
|
|
25452
|
-
* @param {TPointerEvent} e Event object
|
|
25454
|
+
/**
|
|
25455
|
+
* Changes cursor location in a text depending on passed pointer (x/y) object
|
|
25456
|
+
* @param {TPointerEvent} e Event object
|
|
25453
25457
|
*/
|
|
25454
25458
|
setCursorByClick(e) {
|
|
25455
25459
|
const newSelection = this.getSelectionStartFromPointer(e),
|
|
@@ -25467,10 +25471,10 @@ class ITextClickBehavior extends ITextKeyBehavior {
|
|
|
25467
25471
|
}
|
|
25468
25472
|
}
|
|
25469
25473
|
|
|
25470
|
-
/**
|
|
25471
|
-
* Returns index of a character corresponding to where an object was clicked
|
|
25472
|
-
* @param {TPointerEvent} e Event object
|
|
25473
|
-
* @return {Number} Index of a character
|
|
25474
|
+
/**
|
|
25475
|
+
* Returns index of a character corresponding to where an object was clicked
|
|
25476
|
+
* @param {TPointerEvent} e Event object
|
|
25477
|
+
* @return {Number} Index of a character
|
|
25474
25478
|
*/
|
|
25475
25479
|
getSelectionStartFromPointer(e) {
|
|
25476
25480
|
const mouseOffset = this.canvas.getScenePoint(e).transform(invertTransform(this.calcTransformMatrix())).add(new Point(-this._getLeftOffset(), -this._getTopOffset()));
|
|
@@ -25516,15 +25520,15 @@ class ITextClickBehavior extends ITextKeyBehavior {
|
|
|
25516
25520
|
}
|
|
25517
25521
|
}
|
|
25518
25522
|
|
|
25519
|
-
/**
|
|
25520
|
-
* Hit Testing and Cursor Positioning System
|
|
25521
|
-
*
|
|
25522
|
-
* Maps pointer coordinates to text positions and provides cursor rectangles
|
|
25523
|
-
* for interactive text editing with grapheme-aware boundaries.
|
|
25523
|
+
/**
|
|
25524
|
+
* Hit Testing and Cursor Positioning System
|
|
25525
|
+
*
|
|
25526
|
+
* Maps pointer coordinates to text positions and provides cursor rectangles
|
|
25527
|
+
* for interactive text editing with grapheme-aware boundaries.
|
|
25524
25528
|
*/
|
|
25525
25529
|
|
|
25526
|
-
/**
|
|
25527
|
-
* Hit test a point against laid out text to find insertion position
|
|
25530
|
+
/**
|
|
25531
|
+
* Hit test a point against laid out text to find insertion position
|
|
25528
25532
|
*/
|
|
25529
25533
|
function hitTest(x, y, layout, options) {
|
|
25530
25534
|
if (layout.lines.length === 0) {
|
|
@@ -25568,8 +25572,8 @@ function hitTest(x, y, layout, options) {
|
|
|
25568
25572
|
};
|
|
25569
25573
|
}
|
|
25570
25574
|
|
|
25571
|
-
/**
|
|
25572
|
-
* Get cursor rectangle for a given insertion index
|
|
25575
|
+
/**
|
|
25576
|
+
* Get cursor rectangle for a given insertion index
|
|
25573
25577
|
*/
|
|
25574
25578
|
function getCursorRect(insertionIndex, layout, options) {
|
|
25575
25579
|
if (layout.lines.length === 0) {
|
|
@@ -25616,8 +25620,8 @@ function getCursorRect(insertionIndex, layout, options) {
|
|
|
25616
25620
|
|
|
25617
25621
|
// Private helper functions
|
|
25618
25622
|
|
|
25619
|
-
/**
|
|
25620
|
-
* Find which line contains the given Y coordinate
|
|
25623
|
+
/**
|
|
25624
|
+
* Find which line contains the given Y coordinate
|
|
25621
25625
|
*/
|
|
25622
25626
|
function findLineAtY(y, lines) {
|
|
25623
25627
|
var _lines;
|
|
@@ -25640,8 +25644,8 @@ function findLineAtY(y, lines) {
|
|
|
25640
25644
|
};
|
|
25641
25645
|
}
|
|
25642
25646
|
|
|
25643
|
-
/**
|
|
25644
|
-
* Find character position within a line at given X coordinate
|
|
25647
|
+
/**
|
|
25648
|
+
* Find character position within a line at given X coordinate
|
|
25645
25649
|
*/
|
|
25646
25650
|
function findCharAtX(x, line, options) {
|
|
25647
25651
|
if (line.bounds.length === 0) {
|
|
@@ -25747,8 +25751,8 @@ function findCharAtX(x, line, options) {
|
|
|
25747
25751
|
};
|
|
25748
25752
|
}
|
|
25749
25753
|
|
|
25750
|
-
/**
|
|
25751
|
-
* Calculate total insertion index from line and character indices
|
|
25754
|
+
/**
|
|
25755
|
+
* Calculate total insertion index from line and character indices
|
|
25752
25756
|
*/
|
|
25753
25757
|
function calculateInsertionIndex(lineIndex, graphemeIndex, layout) {
|
|
25754
25758
|
let insertionIndex = 0;
|
|
@@ -25767,8 +25771,8 @@ function calculateInsertionIndex(lineIndex, graphemeIndex, layout) {
|
|
|
25767
25771
|
return insertionIndex;
|
|
25768
25772
|
}
|
|
25769
25773
|
|
|
25770
|
-
/**
|
|
25771
|
-
* Find line and grapheme position from insertion index
|
|
25774
|
+
/**
|
|
25775
|
+
* Find line and grapheme position from insertion index
|
|
25772
25776
|
*/
|
|
25773
25777
|
function findPositionFromIndex(insertionIndex, layout) {
|
|
25774
25778
|
let currentIndex = 0;
|
|
@@ -25810,8 +25814,8 @@ function findPositionFromIndex(insertionIndex, layout) {
|
|
|
25810
25814
|
};
|
|
25811
25815
|
}
|
|
25812
25816
|
|
|
25813
|
-
/**
|
|
25814
|
-
* Calculate Y position of a line
|
|
25817
|
+
/**
|
|
25818
|
+
* Calculate Y position of a line
|
|
25815
25819
|
*/
|
|
25816
25820
|
function calculateLineY(lineIndex, layout, options) {
|
|
25817
25821
|
let y = 0;
|
|
@@ -25914,48 +25918,48 @@ const iTextDefaultValues = {
|
|
|
25914
25918
|
|
|
25915
25919
|
// @TODO this is not complete
|
|
25916
25920
|
|
|
25917
|
-
/**
|
|
25918
|
-
* @fires changed
|
|
25919
|
-
* @fires selection:changed
|
|
25920
|
-
* @fires editing:entered
|
|
25921
|
-
* @fires editing:exited
|
|
25922
|
-
* @fires dragstart
|
|
25923
|
-
* @fires drag drag event firing on the drag source
|
|
25924
|
-
* @fires dragend
|
|
25925
|
-
* @fires copy
|
|
25926
|
-
* @fires cut
|
|
25927
|
-
* @fires paste
|
|
25928
|
-
*
|
|
25929
|
-
* #### Supported key combinations
|
|
25930
|
-
* ```
|
|
25931
|
-
* Move cursor: left, right, up, down
|
|
25932
|
-
* Select character: shift + left, shift + right
|
|
25933
|
-
* Select text vertically: shift + up, shift + down
|
|
25934
|
-
* Move cursor by word: alt + left, alt + right
|
|
25935
|
-
* Select words: shift + alt + left, shift + alt + right
|
|
25936
|
-
* Move cursor to line start/end: cmd + left, cmd + right or home, end
|
|
25937
|
-
* Select till start/end of line: cmd + shift + left, cmd + shift + right or shift + home, shift + end
|
|
25938
|
-
* Jump to start/end of text: cmd + up, cmd + down
|
|
25939
|
-
* Select till start/end of text: cmd + shift + up, cmd + shift + down or shift + pgUp, shift + pgDown
|
|
25940
|
-
* Delete character: backspace
|
|
25941
|
-
* Delete word: alt + backspace
|
|
25942
|
-
* Delete line: cmd + backspace
|
|
25943
|
-
* Forward delete: delete
|
|
25944
|
-
* Copy text: ctrl/cmd + c
|
|
25945
|
-
* Paste text: ctrl/cmd + v
|
|
25946
|
-
* Cut text: ctrl/cmd + x
|
|
25947
|
-
* Select entire text: ctrl/cmd + a
|
|
25948
|
-
* Quit editing tab or esc
|
|
25949
|
-
* ```
|
|
25950
|
-
*
|
|
25951
|
-
* #### Supported mouse/touch combination
|
|
25952
|
-
* ```
|
|
25953
|
-
* Position cursor: click/touch
|
|
25954
|
-
* Create selection: click/touch & drag
|
|
25955
|
-
* Create selection: click & shift + click
|
|
25956
|
-
* Select word: double click
|
|
25957
|
-
* Select line: triple click
|
|
25958
|
-
* ```
|
|
25921
|
+
/**
|
|
25922
|
+
* @fires changed
|
|
25923
|
+
* @fires selection:changed
|
|
25924
|
+
* @fires editing:entered
|
|
25925
|
+
* @fires editing:exited
|
|
25926
|
+
* @fires dragstart
|
|
25927
|
+
* @fires drag drag event firing on the drag source
|
|
25928
|
+
* @fires dragend
|
|
25929
|
+
* @fires copy
|
|
25930
|
+
* @fires cut
|
|
25931
|
+
* @fires paste
|
|
25932
|
+
*
|
|
25933
|
+
* #### Supported key combinations
|
|
25934
|
+
* ```
|
|
25935
|
+
* Move cursor: left, right, up, down
|
|
25936
|
+
* Select character: shift + left, shift + right
|
|
25937
|
+
* Select text vertically: shift + up, shift + down
|
|
25938
|
+
* Move cursor by word: alt + left, alt + right
|
|
25939
|
+
* Select words: shift + alt + left, shift + alt + right
|
|
25940
|
+
* Move cursor to line start/end: cmd + left, cmd + right or home, end
|
|
25941
|
+
* Select till start/end of line: cmd + shift + left, cmd + shift + right or shift + home, shift + end
|
|
25942
|
+
* Jump to start/end of text: cmd + up, cmd + down
|
|
25943
|
+
* Select till start/end of text: cmd + shift + up, cmd + shift + down or shift + pgUp, shift + pgDown
|
|
25944
|
+
* Delete character: backspace
|
|
25945
|
+
* Delete word: alt + backspace
|
|
25946
|
+
* Delete line: cmd + backspace
|
|
25947
|
+
* Forward delete: delete
|
|
25948
|
+
* Copy text: ctrl/cmd + c
|
|
25949
|
+
* Paste text: ctrl/cmd + v
|
|
25950
|
+
* Cut text: ctrl/cmd + x
|
|
25951
|
+
* Select entire text: ctrl/cmd + a
|
|
25952
|
+
* Quit editing tab or esc
|
|
25953
|
+
* ```
|
|
25954
|
+
*
|
|
25955
|
+
* #### Supported mouse/touch combination
|
|
25956
|
+
* ```
|
|
25957
|
+
* Position cursor: click/touch
|
|
25958
|
+
* Create selection: click/touch & drag
|
|
25959
|
+
* Create selection: click & shift + click
|
|
25960
|
+
* Select word: double click
|
|
25961
|
+
* Select line: triple click
|
|
25962
|
+
* ```
|
|
25959
25963
|
*/
|
|
25960
25964
|
class IText extends ITextClickBehavior {
|
|
25961
25965
|
static getDefaults() {
|
|
@@ -25970,10 +25974,10 @@ class IText extends ITextClickBehavior {
|
|
|
25970
25974
|
return type === 'itext' ? 'i-text' : type;
|
|
25971
25975
|
}
|
|
25972
25976
|
|
|
25973
|
-
/**
|
|
25974
|
-
* Constructor
|
|
25975
|
-
* @param {String} text Text string
|
|
25976
|
-
* @param {Object} [options] Options object
|
|
25977
|
+
/**
|
|
25978
|
+
* Constructor
|
|
25979
|
+
* @param {String} text Text string
|
|
25980
|
+
* @param {Object} [options] Options object
|
|
25977
25981
|
*/
|
|
25978
25982
|
constructor(text, options) {
|
|
25979
25983
|
super(text, {
|
|
@@ -25983,11 +25987,11 @@ class IText extends ITextClickBehavior {
|
|
|
25983
25987
|
this.initBehavior();
|
|
25984
25988
|
}
|
|
25985
25989
|
|
|
25986
|
-
/**
|
|
25987
|
-
* While editing handle differently
|
|
25988
|
-
* @private
|
|
25989
|
-
* @param {string} key
|
|
25990
|
-
* @param {*} value
|
|
25990
|
+
/**
|
|
25991
|
+
* While editing handle differently
|
|
25992
|
+
* @private
|
|
25993
|
+
* @param {string} key
|
|
25994
|
+
* @param {*} value
|
|
25991
25995
|
*/
|
|
25992
25996
|
_set(key, value) {
|
|
25993
25997
|
if (this.isEditing && this._savedProps && key in this._savedProps) {
|
|
@@ -26002,28 +26006,28 @@ class IText extends ITextClickBehavior {
|
|
|
26002
26006
|
return super._set(key, value);
|
|
26003
26007
|
}
|
|
26004
26008
|
|
|
26005
|
-
/**
|
|
26006
|
-
* Sets selection start (left boundary of a selection)
|
|
26007
|
-
* @param {Number} index Index to set selection start to
|
|
26009
|
+
/**
|
|
26010
|
+
* Sets selection start (left boundary of a selection)
|
|
26011
|
+
* @param {Number} index Index to set selection start to
|
|
26008
26012
|
*/
|
|
26009
26013
|
setSelectionStart(index) {
|
|
26010
26014
|
index = Math.max(index, 0);
|
|
26011
26015
|
this._updateAndFire('selectionStart', index);
|
|
26012
26016
|
}
|
|
26013
26017
|
|
|
26014
|
-
/**
|
|
26015
|
-
* Sets selection end (right boundary of a selection)
|
|
26016
|
-
* @param {Number} index Index to set selection end to
|
|
26018
|
+
/**
|
|
26019
|
+
* Sets selection end (right boundary of a selection)
|
|
26020
|
+
* @param {Number} index Index to set selection end to
|
|
26017
26021
|
*/
|
|
26018
26022
|
setSelectionEnd(index) {
|
|
26019
26023
|
index = Math.min(index, this.text.length);
|
|
26020
26024
|
this._updateAndFire('selectionEnd', index);
|
|
26021
26025
|
}
|
|
26022
26026
|
|
|
26023
|
-
/**
|
|
26024
|
-
* @private
|
|
26025
|
-
* @param {String} property 'selectionStart' or 'selectionEnd'
|
|
26026
|
-
* @param {Number} index new position of property
|
|
26027
|
+
/**
|
|
26028
|
+
* @private
|
|
26029
|
+
* @param {String} property 'selectionStart' or 'selectionEnd'
|
|
26030
|
+
* @param {Number} index new position of property
|
|
26027
26031
|
*/
|
|
26028
26032
|
_updateAndFire(property, index) {
|
|
26029
26033
|
if (this[property] !== index) {
|
|
@@ -26033,9 +26037,9 @@ class IText extends ITextClickBehavior {
|
|
|
26033
26037
|
this._updateTextarea();
|
|
26034
26038
|
}
|
|
26035
26039
|
|
|
26036
|
-
/**
|
|
26037
|
-
* Fires the even of selection changed
|
|
26038
|
-
* @private
|
|
26040
|
+
/**
|
|
26041
|
+
* Fires the even of selection changed
|
|
26042
|
+
* @private
|
|
26039
26043
|
*/
|
|
26040
26044
|
_fireSelectionChanged() {
|
|
26041
26045
|
this.fire('selection:changed');
|
|
@@ -26044,25 +26048,25 @@ class IText extends ITextClickBehavior {
|
|
|
26044
26048
|
});
|
|
26045
26049
|
}
|
|
26046
26050
|
|
|
26047
|
-
/**
|
|
26048
|
-
* Initialize text dimensions. Render all text on given context
|
|
26049
|
-
* or on a offscreen canvas to get the text width with measureText.
|
|
26050
|
-
* Updates this.width and this.height with the proper values.
|
|
26051
|
-
* Does not return dimensions.
|
|
26052
|
-
* @private
|
|
26051
|
+
/**
|
|
26052
|
+
* Initialize text dimensions. Render all text on given context
|
|
26053
|
+
* or on a offscreen canvas to get the text width with measureText.
|
|
26054
|
+
* Updates this.width and this.height with the proper values.
|
|
26055
|
+
* Does not return dimensions.
|
|
26056
|
+
* @private
|
|
26053
26057
|
*/
|
|
26054
26058
|
initDimensions() {
|
|
26055
26059
|
this.isEditing && this.initDelayedCursor();
|
|
26056
26060
|
super.initDimensions();
|
|
26057
26061
|
}
|
|
26058
26062
|
|
|
26059
|
-
/**
|
|
26060
|
-
* Gets style of a current selection/cursor (at the start position)
|
|
26061
|
-
* if startIndex or endIndex are not provided, selectionStart or selectionEnd will be used.
|
|
26062
|
-
* @param {Number} startIndex Start index to get styles at
|
|
26063
|
-
* @param {Number} endIndex End index to get styles at, if not specified selectionEnd or startIndex + 1
|
|
26064
|
-
* @param {Boolean} [complete] get full style or not
|
|
26065
|
-
* @return {Array} styles an array with one, zero or more Style objects
|
|
26063
|
+
/**
|
|
26064
|
+
* Gets style of a current selection/cursor (at the start position)
|
|
26065
|
+
* if startIndex or endIndex are not provided, selectionStart or selectionEnd will be used.
|
|
26066
|
+
* @param {Number} startIndex Start index to get styles at
|
|
26067
|
+
* @param {Number} endIndex End index to get styles at, if not specified selectionEnd or startIndex + 1
|
|
26068
|
+
* @param {Boolean} [complete] get full style or not
|
|
26069
|
+
* @return {Array} styles an array with one, zero or more Style objects
|
|
26066
26070
|
*/
|
|
26067
26071
|
getSelectionStyles() {
|
|
26068
26072
|
let startIndex = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.selectionStart || 0;
|
|
@@ -26071,11 +26075,11 @@ class IText extends ITextClickBehavior {
|
|
|
26071
26075
|
return super.getSelectionStyles(startIndex, endIndex, complete);
|
|
26072
26076
|
}
|
|
26073
26077
|
|
|
26074
|
-
/**
|
|
26075
|
-
* Sets style of a current selection, if no selection exist, do not set anything.
|
|
26076
|
-
* @param {Object} [styles] Styles object
|
|
26077
|
-
* @param {Number} [startIndex] Start index to get styles at
|
|
26078
|
-
* @param {Number} [endIndex] End index to get styles at, if not specified selectionEnd or startIndex + 1
|
|
26078
|
+
/**
|
|
26079
|
+
* Sets style of a current selection, if no selection exist, do not set anything.
|
|
26080
|
+
* @param {Object} [styles] Styles object
|
|
26081
|
+
* @param {Number} [startIndex] Start index to get styles at
|
|
26082
|
+
* @param {Number} [endIndex] End index to get styles at, if not specified selectionEnd or startIndex + 1
|
|
26079
26083
|
*/
|
|
26080
26084
|
setSelectionStyles(styles) {
|
|
26081
26085
|
let startIndex = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.selectionStart || 0;
|
|
@@ -26083,10 +26087,10 @@ class IText extends ITextClickBehavior {
|
|
|
26083
26087
|
return super.setSelectionStyles(styles, startIndex, endIndex);
|
|
26084
26088
|
}
|
|
26085
26089
|
|
|
26086
|
-
/**
|
|
26087
|
-
* Returns 2d representation (lineIndex and charIndex) of cursor (or selection start)
|
|
26088
|
-
* @param {Number} [selectionStart] Optional index. When not given, current selectionStart is used.
|
|
26089
|
-
* @param {Boolean} [skipWrapping] consider the location for unwrapped lines. useful to manage styles.
|
|
26090
|
+
/**
|
|
26091
|
+
* Returns 2d representation (lineIndex and charIndex) of cursor (or selection start)
|
|
26092
|
+
* @param {Number} [selectionStart] Optional index. When not given, current selectionStart is used.
|
|
26093
|
+
* @param {Boolean} [skipWrapping] consider the location for unwrapped lines. useful to manage styles.
|
|
26090
26094
|
*/
|
|
26091
26095
|
get2DCursorLocation() {
|
|
26092
26096
|
let selectionStart = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.selectionStart;
|
|
@@ -26094,9 +26098,9 @@ class IText extends ITextClickBehavior {
|
|
|
26094
26098
|
return super.get2DCursorLocation(selectionStart, skipWrapping);
|
|
26095
26099
|
}
|
|
26096
26100
|
|
|
26097
|
-
/**
|
|
26098
|
-
* @private
|
|
26099
|
-
* @param {CanvasRenderingContext2D} ctx Context to render on
|
|
26101
|
+
/**
|
|
26102
|
+
* @private
|
|
26103
|
+
* @param {CanvasRenderingContext2D} ctx Context to render on
|
|
26100
26104
|
*/
|
|
26101
26105
|
render(ctx) {
|
|
26102
26106
|
super.render(ctx);
|
|
@@ -26106,9 +26110,9 @@ class IText extends ITextClickBehavior {
|
|
|
26106
26110
|
this.renderCursorOrSelection();
|
|
26107
26111
|
}
|
|
26108
26112
|
|
|
26109
|
-
/**
|
|
26110
|
-
* @override block cursor/selection logic while rendering the exported canvas
|
|
26111
|
-
* @todo this workaround should be replaced with a more robust solution
|
|
26113
|
+
/**
|
|
26114
|
+
* @override block cursor/selection logic while rendering the exported canvas
|
|
26115
|
+
* @todo this workaround should be replaced with a more robust solution
|
|
26112
26116
|
*/
|
|
26113
26117
|
toCanvasElement(options) {
|
|
26114
26118
|
const isEditing = this.isEditing;
|
|
@@ -26118,9 +26122,9 @@ class IText extends ITextClickBehavior {
|
|
|
26118
26122
|
return canvas;
|
|
26119
26123
|
}
|
|
26120
26124
|
|
|
26121
|
-
/**
|
|
26122
|
-
* Renders cursor or selection (depending on what exists)
|
|
26123
|
-
* it does on the contextTop. If contextTop is not available, do nothing.
|
|
26125
|
+
/**
|
|
26126
|
+
* Renders cursor or selection (depending on what exists)
|
|
26127
|
+
* it does on the contextTop. If contextTop is not available, do nothing.
|
|
26124
26128
|
*/
|
|
26125
26129
|
renderCursorOrSelection() {
|
|
26126
26130
|
if (!this.isEditing || !this.canvas) {
|
|
@@ -26176,12 +26180,12 @@ class IText extends ITextClickBehavior {
|
|
|
26176
26180
|
ctx.restore();
|
|
26177
26181
|
}
|
|
26178
26182
|
|
|
26179
|
-
/**
|
|
26180
|
-
* Finds and returns an array of clip paths that are applied to the parent
|
|
26181
|
-
* group(s) of the current FabricObject instance. The object's hierarchy is
|
|
26182
|
-
* traversed upwards (from the current object towards the root of the canvas),
|
|
26183
|
-
* checking each parent object for the presence of a `clipPath` that is not
|
|
26184
|
-
* absolutely positioned.
|
|
26183
|
+
/**
|
|
26184
|
+
* Finds and returns an array of clip paths that are applied to the parent
|
|
26185
|
+
* group(s) of the current FabricObject instance. The object's hierarchy is
|
|
26186
|
+
* traversed upwards (from the current object towards the root of the canvas),
|
|
26187
|
+
* checking each parent object for the presence of a `clipPath` that is not
|
|
26188
|
+
* absolutely positioned.
|
|
26185
26189
|
*/
|
|
26186
26190
|
findAncestorsWithClipPath() {
|
|
26187
26191
|
const clipPathAncestors = [];
|
|
@@ -26196,13 +26200,13 @@ class IText extends ITextClickBehavior {
|
|
|
26196
26200
|
return clipPathAncestors;
|
|
26197
26201
|
}
|
|
26198
26202
|
|
|
26199
|
-
/**
|
|
26200
|
-
* Returns cursor boundaries (left, top, leftOffset, topOffset)
|
|
26201
|
-
* left/top are left/top of entire text box
|
|
26202
|
-
* leftOffset/topOffset are offset from that left/top point of a text box
|
|
26203
|
-
* @private
|
|
26204
|
-
* @param {number} [index] index from start
|
|
26205
|
-
* @param {boolean} [skipCaching]
|
|
26203
|
+
/**
|
|
26204
|
+
* Returns cursor boundaries (left, top, leftOffset, topOffset)
|
|
26205
|
+
* left/top are left/top of entire text box
|
|
26206
|
+
* leftOffset/topOffset are offset from that left/top point of a text box
|
|
26207
|
+
* @private
|
|
26208
|
+
* @param {number} [index] index from start
|
|
26209
|
+
* @param {boolean} [skipCaching]
|
|
26206
26210
|
*/
|
|
26207
26211
|
_getCursorBoundaries() {
|
|
26208
26212
|
let index = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.selectionStart;
|
|
@@ -26216,11 +26220,11 @@ class IText extends ITextClickBehavior {
|
|
|
26216
26220
|
return this._getCursorBoundariesOriginal(index, skipCaching);
|
|
26217
26221
|
}
|
|
26218
26222
|
|
|
26219
|
-
/**
|
|
26220
|
-
* Caches and returns cursor left/top offset relative to instance's center point
|
|
26221
|
-
* @private
|
|
26222
|
-
* @param {number} index index from start
|
|
26223
|
-
* @param {boolean} [skipCaching]
|
|
26223
|
+
/**
|
|
26224
|
+
* Caches and returns cursor left/top offset relative to instance's center point
|
|
26225
|
+
* @private
|
|
26226
|
+
* @param {number} index index from start
|
|
26227
|
+
* @param {boolean} [skipCaching]
|
|
26224
26228
|
*/
|
|
26225
26229
|
_getCursorBoundariesOffsets(index, skipCaching) {
|
|
26226
26230
|
if (skipCaching) {
|
|
@@ -26232,9 +26236,9 @@ class IText extends ITextClickBehavior {
|
|
|
26232
26236
|
return this.cursorOffsetCache = this.__getCursorBoundariesOffsets(index);
|
|
26233
26237
|
}
|
|
26234
26238
|
|
|
26235
|
-
/**
|
|
26236
|
-
* Enhanced cursor boundaries using advanced hit testing when available
|
|
26237
|
-
* @private
|
|
26239
|
+
/**
|
|
26240
|
+
* Enhanced cursor boundaries using advanced hit testing when available
|
|
26241
|
+
* @private
|
|
26238
26242
|
*/
|
|
26239
26243
|
_getCursorBoundariesAdvanced(index) {
|
|
26240
26244
|
if (!this.enableAdvancedLayout || !this._layoutTextAdvanced) {
|
|
@@ -26250,9 +26254,9 @@ class IText extends ITextClickBehavior {
|
|
|
26250
26254
|
};
|
|
26251
26255
|
}
|
|
26252
26256
|
|
|
26253
|
-
/**
|
|
26254
|
-
* Enhanced selection start from pointer using BiDi-aware hit testing
|
|
26255
|
-
* @override
|
|
26257
|
+
/**
|
|
26258
|
+
* Enhanced selection start from pointer using BiDi-aware hit testing
|
|
26259
|
+
* @override
|
|
26256
26260
|
*/
|
|
26257
26261
|
getSelectionStartFromPointer(e) {
|
|
26258
26262
|
if (!this.enableAdvancedLayout || !this._layoutTextAdvanced) {
|
|
@@ -26266,9 +26270,9 @@ class IText extends ITextClickBehavior {
|
|
|
26266
26270
|
return Math.min(hitResult.charIndex, this._text.length);
|
|
26267
26271
|
}
|
|
26268
26272
|
|
|
26269
|
-
/**
|
|
26270
|
-
* Original cursor boundaries implementation
|
|
26271
|
-
* @private
|
|
26273
|
+
/**
|
|
26274
|
+
* Original cursor boundaries implementation
|
|
26275
|
+
* @private
|
|
26272
26276
|
*/
|
|
26273
26277
|
_getCursorBoundariesOriginal(index, skipCaching) {
|
|
26274
26278
|
const left = this._getLeftOffset(),
|
|
@@ -26282,10 +26286,10 @@ class IText extends ITextClickBehavior {
|
|
|
26282
26286
|
};
|
|
26283
26287
|
}
|
|
26284
26288
|
|
|
26285
|
-
/**
|
|
26286
|
-
* Calculates cursor left/top offset relative to instance's center point
|
|
26287
|
-
* @private
|
|
26288
|
-
* @param {number} index index from start
|
|
26289
|
+
/**
|
|
26290
|
+
* Calculates cursor left/top offset relative to instance's center point
|
|
26291
|
+
* @private
|
|
26292
|
+
* @param {number} index index from start
|
|
26289
26293
|
*/
|
|
26290
26294
|
__getCursorBoundariesOffsets(index) {
|
|
26291
26295
|
let topOffset = 0,
|
|
@@ -26319,29 +26323,29 @@ class IText extends ITextClickBehavior {
|
|
|
26319
26323
|
return boundaries;
|
|
26320
26324
|
}
|
|
26321
26325
|
|
|
26322
|
-
/**
|
|
26323
|
-
* Renders cursor on context Top, outside the animation cycle, on request
|
|
26324
|
-
* Used for the drag/drop effect.
|
|
26325
|
-
* If contextTop is not available, do nothing.
|
|
26326
|
+
/**
|
|
26327
|
+
* Renders cursor on context Top, outside the animation cycle, on request
|
|
26328
|
+
* Used for the drag/drop effect.
|
|
26329
|
+
* If contextTop is not available, do nothing.
|
|
26326
26330
|
*/
|
|
26327
26331
|
renderCursorAt(selectionStart) {
|
|
26328
26332
|
this._renderCursor(this.canvas.contextTop, this._getCursorBoundaries(selectionStart, true), selectionStart);
|
|
26329
26333
|
}
|
|
26330
26334
|
|
|
26331
|
-
/**
|
|
26332
|
-
* Renders cursor
|
|
26333
|
-
* @param {Object} boundaries
|
|
26334
|
-
* @param {CanvasRenderingContext2D} ctx transformed context to draw on
|
|
26335
|
+
/**
|
|
26336
|
+
* Renders cursor
|
|
26337
|
+
* @param {Object} boundaries
|
|
26338
|
+
* @param {CanvasRenderingContext2D} ctx transformed context to draw on
|
|
26335
26339
|
*/
|
|
26336
26340
|
renderCursor(ctx, boundaries) {
|
|
26337
26341
|
this._renderCursor(ctx, boundaries, this.selectionStart);
|
|
26338
26342
|
}
|
|
26339
26343
|
|
|
26340
|
-
/**
|
|
26341
|
-
* Return the data needed to render the cursor for given selection start
|
|
26342
|
-
* The left,top are relative to the object, while width and height are prescaled
|
|
26343
|
-
* to look think with canvas zoom and object scaling,
|
|
26344
|
-
* so they depend on canvas and object scaling
|
|
26344
|
+
/**
|
|
26345
|
+
* Return the data needed to render the cursor for given selection start
|
|
26346
|
+
* The left,top are relative to the object, while width and height are prescaled
|
|
26347
|
+
* to look think with canvas zoom and object scaling,
|
|
26348
|
+
* so they depend on canvas and object scaling
|
|
26345
26349
|
*/
|
|
26346
26350
|
getCursorRenderingData() {
|
|
26347
26351
|
let selectionStart = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.selectionStart;
|
|
@@ -26364,9 +26368,9 @@ class IText extends ITextClickBehavior {
|
|
|
26364
26368
|
};
|
|
26365
26369
|
}
|
|
26366
26370
|
|
|
26367
|
-
/**
|
|
26368
|
-
* Render the cursor at the given selectionStart.
|
|
26369
|
-
* @param {CanvasRenderingContext2D} ctx transformed context to draw on
|
|
26371
|
+
/**
|
|
26372
|
+
* Render the cursor at the given selectionStart.
|
|
26373
|
+
* @param {CanvasRenderingContext2D} ctx transformed context to draw on
|
|
26370
26374
|
*/
|
|
26371
26375
|
_renderCursor(ctx, boundaries, selectionStart) {
|
|
26372
26376
|
const {
|
|
@@ -26382,10 +26386,10 @@ class IText extends ITextClickBehavior {
|
|
|
26382
26386
|
ctx.fillRect(left, top, width, height);
|
|
26383
26387
|
}
|
|
26384
26388
|
|
|
26385
|
-
/**
|
|
26386
|
-
* Renders text selection
|
|
26387
|
-
* @param {Object} boundaries Object with left/top/leftOffset/topOffset
|
|
26388
|
-
* @param {CanvasRenderingContext2D} ctx transformed context to draw on
|
|
26389
|
+
/**
|
|
26390
|
+
* Renders text selection
|
|
26391
|
+
* @param {Object} boundaries Object with left/top/leftOffset/topOffset
|
|
26392
|
+
* @param {CanvasRenderingContext2D} ctx transformed context to draw on
|
|
26389
26393
|
*/
|
|
26390
26394
|
renderSelection(ctx, boundaries) {
|
|
26391
26395
|
const selection = {
|
|
@@ -26395,8 +26399,8 @@ class IText extends ITextClickBehavior {
|
|
|
26395
26399
|
this._renderSelection(ctx, selection, boundaries);
|
|
26396
26400
|
}
|
|
26397
26401
|
|
|
26398
|
-
/**
|
|
26399
|
-
* Renders drag start text selection
|
|
26402
|
+
/**
|
|
26403
|
+
* Renders drag start text selection
|
|
26400
26404
|
*/
|
|
26401
26405
|
renderDragSourceEffect() {
|
|
26402
26406
|
const dragStartSelection = this.draggableTextDelegate.getDragStartSelection();
|
|
@@ -26407,12 +26411,12 @@ class IText extends ITextClickBehavior {
|
|
|
26407
26411
|
this.renderCursorAt(dragSelection);
|
|
26408
26412
|
}
|
|
26409
26413
|
|
|
26410
|
-
/**
|
|
26411
|
-
* Renders text selection
|
|
26412
|
-
* @private
|
|
26413
|
-
* @param {{ selectionStart: number, selectionEnd: number }} selection
|
|
26414
|
-
* @param {Object} boundaries Object with left/top/leftOffset/topOffset
|
|
26415
|
-
* @param {CanvasRenderingContext2D} ctx transformed context to draw on
|
|
26414
|
+
/**
|
|
26415
|
+
* Renders text selection
|
|
26416
|
+
* @private
|
|
26417
|
+
* @param {{ selectionStart: number, selectionEnd: number }} selection
|
|
26418
|
+
* @param {Object} boundaries Object with left/top/leftOffset/topOffset
|
|
26419
|
+
* @param {CanvasRenderingContext2D} ctx transformed context to draw on
|
|
26416
26420
|
*/
|
|
26417
26421
|
_renderSelection(ctx, selection, boundaries) {
|
|
26418
26422
|
const selectionStart = selection.selectionStart,
|
|
@@ -26474,34 +26478,34 @@ class IText extends ITextClickBehavior {
|
|
|
26474
26478
|
}
|
|
26475
26479
|
}
|
|
26476
26480
|
|
|
26477
|
-
/**
|
|
26478
|
-
* High level function to know the height of the cursor.
|
|
26479
|
-
* the currentChar is the one that precedes the cursor
|
|
26480
|
-
* Returns fontSize of char at the current cursor
|
|
26481
|
-
* Unused from the library, is for the end user
|
|
26482
|
-
* @return {Number} Character font size
|
|
26481
|
+
/**
|
|
26482
|
+
* High level function to know the height of the cursor.
|
|
26483
|
+
* the currentChar is the one that precedes the cursor
|
|
26484
|
+
* Returns fontSize of char at the current cursor
|
|
26485
|
+
* Unused from the library, is for the end user
|
|
26486
|
+
* @return {Number} Character font size
|
|
26483
26487
|
*/
|
|
26484
26488
|
getCurrentCharFontSize() {
|
|
26485
26489
|
const cp = this._getCurrentCharIndex();
|
|
26486
26490
|
return this.getValueOfPropertyAt(cp.l, cp.c, 'fontSize');
|
|
26487
26491
|
}
|
|
26488
26492
|
|
|
26489
|
-
/**
|
|
26490
|
-
* High level function to know the color of the cursor.
|
|
26491
|
-
* the currentChar is the one that precedes the cursor
|
|
26492
|
-
* Returns color (fill) of char at the current cursor
|
|
26493
|
-
* if the text object has a pattern or gradient for filler, it will return that.
|
|
26494
|
-
* Unused by the library, is for the end user
|
|
26495
|
-
* @return {String | TFiller} Character color (fill)
|
|
26493
|
+
/**
|
|
26494
|
+
* High level function to know the color of the cursor.
|
|
26495
|
+
* the currentChar is the one that precedes the cursor
|
|
26496
|
+
* Returns color (fill) of char at the current cursor
|
|
26497
|
+
* if the text object has a pattern or gradient for filler, it will return that.
|
|
26498
|
+
* Unused by the library, is for the end user
|
|
26499
|
+
* @return {String | TFiller} Character color (fill)
|
|
26496
26500
|
*/
|
|
26497
26501
|
getCurrentCharColor() {
|
|
26498
26502
|
const cp = this._getCurrentCharIndex();
|
|
26499
26503
|
return this.getValueOfPropertyAt(cp.l, cp.c, FILL);
|
|
26500
26504
|
}
|
|
26501
26505
|
|
|
26502
|
-
/**
|
|
26503
|
-
* Returns the cursor position for the getCurrent.. functions
|
|
26504
|
-
* @private
|
|
26506
|
+
/**
|
|
26507
|
+
* Returns the cursor position for the getCurrent.. functions
|
|
26508
|
+
* @private
|
|
26505
26509
|
*/
|
|
26506
26510
|
_getCurrentCharIndex() {
|
|
26507
26511
|
const cursorPosition = this.get2DCursorLocation(this.selectionStart, true),
|
|
@@ -26517,52 +26521,52 @@ class IText extends ITextClickBehavior {
|
|
|
26517
26521
|
super.dispose();
|
|
26518
26522
|
}
|
|
26519
26523
|
}
|
|
26520
|
-
/**
|
|
26521
|
-
* Index where text selection starts (or where cursor is when there is no selection)
|
|
26522
|
-
* @type Number
|
|
26524
|
+
/**
|
|
26525
|
+
* Index where text selection starts (or where cursor is when there is no selection)
|
|
26526
|
+
* @type Number
|
|
26523
26527
|
*/
|
|
26524
|
-
/**
|
|
26525
|
-
* Index where text selection ends
|
|
26526
|
-
* @type Number
|
|
26528
|
+
/**
|
|
26529
|
+
* Index where text selection ends
|
|
26530
|
+
* @type Number
|
|
26527
26531
|
*/
|
|
26528
|
-
/**
|
|
26529
|
-
* Color of text selection
|
|
26530
|
-
* @type String
|
|
26532
|
+
/**
|
|
26533
|
+
* Color of text selection
|
|
26534
|
+
* @type String
|
|
26531
26535
|
*/
|
|
26532
|
-
/**
|
|
26533
|
-
* Indicates whether text is in editing mode
|
|
26534
|
-
* @type Boolean
|
|
26536
|
+
/**
|
|
26537
|
+
* Indicates whether text is in editing mode
|
|
26538
|
+
* @type Boolean
|
|
26535
26539
|
*/
|
|
26536
|
-
/**
|
|
26537
|
-
* Indicates whether a text can be edited
|
|
26538
|
-
* @type Boolean
|
|
26540
|
+
/**
|
|
26541
|
+
* Indicates whether a text can be edited
|
|
26542
|
+
* @type Boolean
|
|
26539
26543
|
*/
|
|
26540
|
-
/**
|
|
26541
|
-
* Border color of text object while it's in editing mode
|
|
26542
|
-
* @type String
|
|
26544
|
+
/**
|
|
26545
|
+
* Border color of text object while it's in editing mode
|
|
26546
|
+
* @type String
|
|
26543
26547
|
*/
|
|
26544
|
-
/**
|
|
26545
|
-
* Width of cursor (in px)
|
|
26546
|
-
* @type Number
|
|
26548
|
+
/**
|
|
26549
|
+
* Width of cursor (in px)
|
|
26550
|
+
* @type Number
|
|
26547
26551
|
*/
|
|
26548
|
-
/**
|
|
26549
|
-
* Color of text cursor color in editing mode.
|
|
26550
|
-
* if not set (default) will take color from the text.
|
|
26551
|
-
* if set to a color value that fabric can understand, it will
|
|
26552
|
-
* be used instead of the color of the text at the current position.
|
|
26553
|
-
* @type String
|
|
26552
|
+
/**
|
|
26553
|
+
* Color of text cursor color in editing mode.
|
|
26554
|
+
* if not set (default) will take color from the text.
|
|
26555
|
+
* if set to a color value that fabric can understand, it will
|
|
26556
|
+
* be used instead of the color of the text at the current position.
|
|
26557
|
+
* @type String
|
|
26554
26558
|
*/
|
|
26555
|
-
/**
|
|
26556
|
-
* Delay between cursor blink (in ms)
|
|
26557
|
-
* @type Number
|
|
26559
|
+
/**
|
|
26560
|
+
* Delay between cursor blink (in ms)
|
|
26561
|
+
* @type Number
|
|
26558
26562
|
*/
|
|
26559
|
-
/**
|
|
26560
|
-
* Duration of cursor fade in (in ms)
|
|
26561
|
-
* @type Number
|
|
26563
|
+
/**
|
|
26564
|
+
* Duration of cursor fade in (in ms)
|
|
26565
|
+
* @type Number
|
|
26562
26566
|
*/
|
|
26563
|
-
/**
|
|
26564
|
-
* Indicates whether internal text char widths can be cached
|
|
26565
|
-
* @type Boolean
|
|
26567
|
+
/**
|
|
26568
|
+
* Indicates whether internal text char widths can be cached
|
|
26569
|
+
* @type Boolean
|
|
26566
26570
|
*/
|
|
26567
26571
|
_defineProperty(IText, "ownDefaults", iTextDefaultValues);
|
|
26568
26572
|
_defineProperty(IText, "type", 'IText');
|
|
@@ -26694,6 +26698,7 @@ class Textbox extends IText {
|
|
|
26694
26698
|
if (this._usingBrowserWrapping) {
|
|
26695
26699
|
this._browserWrapInitialized = true;
|
|
26696
26700
|
}
|
|
26701
|
+
this.calcTextWidth();
|
|
26697
26702
|
if (this.textAlign.includes(JUSTIFY)) {
|
|
26698
26703
|
// For browser wrapping fonts, apply browser-calculated justify spaces
|
|
26699
26704
|
if (this._usingBrowserWrapping) {
|
|
@@ -26768,6 +26773,33 @@ class Textbox extends IText {
|
|
|
26768
26773
|
} else {
|
|
26769
26774
|
this.height = this.calcTextHeight();
|
|
26770
26775
|
}
|
|
26776
|
+
|
|
26777
|
+
// Double-check that justify was applied by checking space widths
|
|
26778
|
+
if (this.textAlign.includes('justify') && this.__charBounds) {
|
|
26779
|
+
setTimeout(() => {
|
|
26780
|
+
// Verify justify was applied by checking if space widths vary
|
|
26781
|
+
let hasVariableSpaces = false;
|
|
26782
|
+
this.__charBounds.forEach((lineBounds, i) => {
|
|
26783
|
+
if (lineBounds && this._textLines && this._textLines[i]) {
|
|
26784
|
+
const spaces = lineBounds.filter((bound, j) => /\s/.test(this._textLines[i][j]));
|
|
26785
|
+
if (spaces.length > 1) {
|
|
26786
|
+
const firstSpaceWidth = spaces[0].width;
|
|
26787
|
+
hasVariableSpaces = spaces.some(space => Math.abs(space.width - firstSpaceWidth) > 0.1);
|
|
26788
|
+
}
|
|
26789
|
+
}
|
|
26790
|
+
});
|
|
26791
|
+
if (!hasVariableSpaces && this.__charBounds.length > 0) {
|
|
26792
|
+
console.warn(' ⚠️ Justify spaces still uniform - forcing enlargeSpaces again');
|
|
26793
|
+
if (this.enlargeSpaces) {
|
|
26794
|
+
var _this$canvas3;
|
|
26795
|
+
this.enlargeSpaces();
|
|
26796
|
+
(_this$canvas3 = this.canvas) === null || _this$canvas3 === void 0 || _this$canvas3.requestRenderAll();
|
|
26797
|
+
}
|
|
26798
|
+
} else {
|
|
26799
|
+
console.log(' ✅ Justify spaces properly expanded');
|
|
26800
|
+
}
|
|
26801
|
+
}, 10);
|
|
26802
|
+
}
|
|
26771
26803
|
}
|
|
26772
26804
|
|
|
26773
26805
|
/**
|
|
@@ -26786,13 +26818,13 @@ class Textbox extends IText {
|
|
|
26786
26818
|
this._fontJustifyScheduled = true;
|
|
26787
26819
|
const fontSpec = `${this.fontSize}px ${this.fontFamily}`;
|
|
26788
26820
|
document.fonts.load(fontSpec).then(() => {
|
|
26789
|
-
var _this$
|
|
26821
|
+
var _this$canvas4;
|
|
26790
26822
|
this._fontJustifyScheduled = false;
|
|
26791
26823
|
console.log('🔧 Textbox: Font loaded, applying justify alignment');
|
|
26792
26824
|
|
|
26793
26825
|
// Re-run initDimensions to ensure proper justify calculation
|
|
26794
26826
|
this.initDimensions();
|
|
26795
|
-
(_this$
|
|
26827
|
+
(_this$canvas4 = this.canvas) === null || _this$canvas4 === void 0 || _this$canvas4.requestRenderAll();
|
|
26796
26828
|
}).catch(() => {
|
|
26797
26829
|
this._fontJustifyScheduled = false;
|
|
26798
26830
|
console.warn('⚠️ Textbox: Font loading failed, justify may be incorrect');
|
|
@@ -27490,17 +27522,53 @@ class Textbox extends IText {
|
|
|
27490
27522
|
const lineBounds = this.__charBounds[lineIndex];
|
|
27491
27523
|
const lineSpaceWidths = spaceWidths[lineIndex];
|
|
27492
27524
|
let spaceIndex = 0;
|
|
27525
|
+
let accumulatedSpace = 0;
|
|
27526
|
+
const isRtl = this.direction === 'rtl';
|
|
27527
|
+
const spaceDiffs = [];
|
|
27528
|
+
|
|
27529
|
+
// First, calculate the difference for each space
|
|
27493
27530
|
for (let charIndex = 0; charIndex < line.length; charIndex++) {
|
|
27494
27531
|
if (/\s/.test(line[charIndex]) && spaceIndex < lineSpaceWidths.length) {
|
|
27495
|
-
const
|
|
27496
|
-
if (
|
|
27497
|
-
|
|
27498
|
-
lineBounds[charIndex].width = expandedWidth;
|
|
27499
|
-
console.log(`🔤 Line ${lineIndex} space ${spaceIndex}: ${oldWidth.toFixed(1)}px -> ${expandedWidth.toFixed(1)}px`);
|
|
27532
|
+
const charBound = lineBounds[charIndex];
|
|
27533
|
+
if (charBound) {
|
|
27534
|
+
spaceDiffs.push(lineSpaceWidths[spaceIndex] - charBound.width);
|
|
27500
27535
|
}
|
|
27501
27536
|
spaceIndex++;
|
|
27502
27537
|
}
|
|
27503
27538
|
}
|
|
27539
|
+
spaceIndex = 0;
|
|
27540
|
+
let remainingDiff = spaceDiffs.reduce((a, b) => a + b, 0);
|
|
27541
|
+
for (let charIndex = 0; charIndex < line.length; charIndex++) {
|
|
27542
|
+
const charBound = lineBounds[charIndex];
|
|
27543
|
+
if (!charBound) continue;
|
|
27544
|
+
if (isRtl) {
|
|
27545
|
+
charBound.left += remainingDiff;
|
|
27546
|
+
} else {
|
|
27547
|
+
charBound.left += accumulatedSpace;
|
|
27548
|
+
}
|
|
27549
|
+
if (/\s/.test(line[charIndex]) && spaceIndex < spaceDiffs.length) {
|
|
27550
|
+
const diff = spaceDiffs[spaceIndex];
|
|
27551
|
+
const oldWidth = charBound.width;
|
|
27552
|
+
charBound.width += diff;
|
|
27553
|
+
charBound.kernedWidth += diff;
|
|
27554
|
+
console.log(`🔤 Line ${lineIndex} space ${spaceIndex}: ${oldWidth.toFixed(1)}px -> ${charBound.width.toFixed(1)}px`);
|
|
27555
|
+
if (isRtl) {
|
|
27556
|
+
remainingDiff -= diff;
|
|
27557
|
+
} else {
|
|
27558
|
+
accumulatedSpace += diff;
|
|
27559
|
+
}
|
|
27560
|
+
spaceIndex++;
|
|
27561
|
+
}
|
|
27562
|
+
}
|
|
27563
|
+
// also need to update the last charBound
|
|
27564
|
+
const lastBound = lineBounds[line.length];
|
|
27565
|
+
if (lastBound) {
|
|
27566
|
+
if (isRtl) {
|
|
27567
|
+
lastBound.left += remainingDiff;
|
|
27568
|
+
} else {
|
|
27569
|
+
lastBound.left += accumulatedSpace;
|
|
27570
|
+
}
|
|
27571
|
+
}
|
|
27504
27572
|
});
|
|
27505
27573
|
}
|
|
27506
27574
|
|
|
@@ -27543,7 +27611,7 @@ class Textbox extends IText {
|
|
|
27543
27611
|
* @private
|
|
27544
27612
|
*/
|
|
27545
27613
|
initializeEventListeners() {
|
|
27546
|
-
var _this$
|
|
27614
|
+
var _this$canvas5;
|
|
27547
27615
|
// Track which side is being used for resize to handle position compensation
|
|
27548
27616
|
let resizeOrigin = null;
|
|
27549
27617
|
|
|
@@ -27574,7 +27642,7 @@ class Textbox extends IText {
|
|
|
27574
27642
|
});
|
|
27575
27643
|
|
|
27576
27644
|
// Also listen to canvas-level modified event as backup
|
|
27577
|
-
(_this$
|
|
27645
|
+
(_this$canvas5 = this.canvas) === null || _this$canvas5 === void 0 || _this$canvas5.on('object:modified', e => {
|
|
27578
27646
|
if (e.target === this) {
|
|
27579
27647
|
const currentResizeOrigin = resizeOrigin; // Capture the value before reset
|
|
27580
27648
|
setTimeout(() => this.safetySnapWidth(currentResizeOrigin), 10);
|
|
@@ -27618,7 +27686,7 @@ class Textbox extends IText {
|
|
|
27618
27686
|
const safetyThreshold = 2; // px - very subtle trigger
|
|
27619
27687
|
|
|
27620
27688
|
if (maxRequiredWidth > this.width - safetyThreshold) {
|
|
27621
|
-
var _this$
|
|
27689
|
+
var _this$canvas6;
|
|
27622
27690
|
// Set width to exactly what's needed + minimal safety margin
|
|
27623
27691
|
const newWidth = maxRequiredWidth + 1; // Add just 1px safety margin
|
|
27624
27692
|
|
|
@@ -27651,7 +27719,7 @@ class Textbox extends IText {
|
|
|
27651
27719
|
this.__overlayEditor.refresh();
|
|
27652
27720
|
}, 0);
|
|
27653
27721
|
}
|
|
27654
|
-
(_this$
|
|
27722
|
+
(_this$canvas6 = this.canvas) === null || _this$canvas6 === void 0 || _this$canvas6.requestRenderAll();
|
|
27655
27723
|
}
|
|
27656
27724
|
}
|
|
27657
27725
|
|
|
@@ -27702,7 +27770,7 @@ class Textbox extends IText {
|
|
|
27702
27770
|
// Double-check that justify was applied by checking space widths
|
|
27703
27771
|
if (this.textAlign.includes('justify') && this.__charBounds) {
|
|
27704
27772
|
setTimeout(() => {
|
|
27705
|
-
var _this$
|
|
27773
|
+
var _this$canvas7;
|
|
27706
27774
|
// Verify justify was applied by checking if space widths vary
|
|
27707
27775
|
let hasVariableSpaces = false;
|
|
27708
27776
|
this.__charBounds.forEach((lineBounds, i) => {
|
|
@@ -27731,7 +27799,7 @@ class Textbox extends IText {
|
|
|
27731
27799
|
this.height = this.calcTextHeight();
|
|
27732
27800
|
console.log(`🔧 JUSTIFY: Used calcTextHeight: ${this.height}px`);
|
|
27733
27801
|
}
|
|
27734
|
-
(_this$
|
|
27802
|
+
(_this$canvas7 = this.canvas) === null || _this$canvas7 === void 0 || _this$canvas7.requestRenderAll();
|
|
27735
27803
|
}, 10);
|
|
27736
27804
|
}
|
|
27737
27805
|
}
|