@postermywall/fabricjs-2 6.0.0-pmw-5 → 6.0.0-pmw-7

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.
Files changed (48) hide show
  1. package/dist/fabric.d.ts +2 -1
  2. package/dist/fabric.d.ts.map +1 -1
  3. package/dist/fabric.min.mjs +1 -1
  4. package/dist/fabric.mjs +1 -1
  5. package/dist/index.js +169 -16
  6. package/dist/index.js.map +1 -1
  7. package/dist/index.min.js +1 -1
  8. package/dist/index.min.js.map +1 -1
  9. package/dist/index.min.mjs +1 -1
  10. package/dist/index.min.mjs.map +1 -1
  11. package/dist/index.mjs +169 -16
  12. package/dist/index.mjs.map +1 -1
  13. package/dist/index.node.cjs +169 -16
  14. package/dist/index.node.cjs.map +1 -1
  15. package/dist/index.node.mjs +169 -16
  16. package/dist/index.node.mjs.map +1 -1
  17. package/dist/package.json.min.mjs +1 -1
  18. package/dist/package.json.mjs +1 -1
  19. package/dist/src/config.d.ts +1 -1
  20. package/dist/src/config.d.ts.map +1 -1
  21. package/dist/src/config.min.mjs +1 -1
  22. package/dist/src/config.min.mjs.map +1 -1
  23. package/dist/src/config.mjs +1 -1
  24. package/dist/src/config.mjs.map +1 -1
  25. package/dist/src/shapes/Menu.d.ts +1 -1
  26. package/dist/src/shapes/Menu.d.ts.map +1 -1
  27. package/dist/src/shapes/Menu.min.mjs +1 -1
  28. package/dist/src/shapes/Menu.min.mjs.map +1 -1
  29. package/dist/src/shapes/Menu.mjs +2 -2
  30. package/dist/src/shapes/Menu.mjs.map +1 -1
  31. package/dist/src/shapes/Text/Text.d.ts +39 -1
  32. package/dist/src/shapes/Text/Text.d.ts.map +1 -1
  33. package/dist/src/shapes/Text/Text.min.mjs +1 -1
  34. package/dist/src/shapes/Text/Text.min.mjs.map +1 -1
  35. package/dist/src/shapes/Text/Text.mjs +160 -10
  36. package/dist/src/shapes/Text/Text.mjs.map +1 -1
  37. package/dist/src/shapes/Text/constants.d.ts +3 -3
  38. package/dist/src/shapes/Text/constants.d.ts.map +1 -1
  39. package/dist/src/shapes/Text/constants.min.mjs +1 -1
  40. package/dist/src/shapes/Text/constants.min.mjs.map +1 -1
  41. package/dist/src/shapes/Text/constants.mjs +5 -2
  42. package/dist/src/shapes/Text/constants.mjs.map +1 -1
  43. package/fabric.ts +2 -1
  44. package/package.json +1 -1
  45. package/src/config.ts +1 -1
  46. package/src/shapes/Menu.ts +1 -1
  47. package/src/shapes/Text/Text.ts +220 -24
  48. package/src/shapes/Text/constants.ts +5 -0
package/dist/fabric.d.ts CHANGED
@@ -63,7 +63,7 @@ export { Polyline } from './src/shapes/Polyline';
63
63
  export { Polygon } from './src/shapes/Polygon';
64
64
  export { Tabs } from './src/shapes/Tabs';
65
65
  export { Table } from './src/shapes/Table';
66
- export { Menu } from './src/shapes/Menu';
66
+ export { CustomBorderTable } from './src/shapes/Menu';
67
67
  export type { GraphemeBBox, SerializedTextProps, TPathAlign, TPathSide, TextProps, } from './src/shapes/Text/Text';
68
68
  export { FabricText,
69
69
  /**
@@ -106,6 +106,7 @@ export * as util from './src/util';
106
106
  export { loadSVGFromString } from './src/parser/loadSVGFromString';
107
107
  export { loadSVGFromURL } from './src/parser/loadSVGFromURL';
108
108
  export { parseSVGDocument } from './src/parser/parseSVGDocument';
109
+ export type { SVGParsingOutput } from './src/parser/typedefs';
109
110
  export { parseAttributes } from './src/parser/parseAttributes';
110
111
  export { parseStyleAttribute } from './src/parser/parseStyleAttribute';
111
112
  export { parsePointsAttribute } from './src/parser/parsePointsAttribute';
@@ -1 +1 @@
1
- {"version":3,"file":"fabric.d.ts","sourceRoot":"","sources":["../fabric.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fabric.d.ts","sourceRoot":"","sources":["../fabric.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- export{getEnv,getFabricDocument,getFabricWindow,setEnv}from"./src/env/index.min.mjs";export{cache}from"./src/cache.min.mjs";export{iMatrix,VERSION as version}from"./src/constants.min.mjs";export{config}from"./src/config.min.mjs";export{classRegistry}from"./src/ClassRegistry.min.mjs";export{runningAnimations}from"./src/util/animation/AnimationRegistry.min.mjs";export{Observable}from"./src/Observable.min.mjs";export{StaticCanvas}from"./src/canvas/StaticCanvas.min.mjs";export{Canvas}from"./src/canvas/Canvas.min.mjs";export{CanvasDOMManager}from"./src/canvas/DOMManagers/CanvasDOMManager.min.mjs";export{StaticCanvasDOMManager}from"./src/canvas/DOMManagers/StaticCanvasDOMManager.min.mjs";export{Point}from"./src/Point.min.mjs";export{Intersection}from"./src/Intersection.min.mjs";export{Color}from"./src/color/Color.min.mjs";export{Gradient}from"./src/gradient/Gradient.min.mjs";export{Pattern}from"./src/Pattern/Pattern.min.mjs";export{Shadow}from"./src/Shadow.min.mjs";export{BaseBrush}from"./src/brushes/BaseBrush.min.mjs";export{PencilBrush}from"./src/brushes/PencilBrush.min.mjs";export{CircleBrush}from"./src/brushes/CircleBrush.min.mjs";export{SprayBrush}from"./src/brushes/SprayBrush.min.mjs";export{PatternBrush}from"./src/brushes/PatternBrush.min.mjs";export{FabricObject,FabricObject as Object}from"./src/shapes/Object/FabricObject.min.mjs";export{FabricObject as BaseFabricObject}from"./src/shapes/Object/Object.min.mjs";export{Line}from"./src/shapes/Line.min.mjs";export{Circle}from"./src/shapes/Circle.min.mjs";export{Triangle}from"./src/shapes/Triangle.min.mjs";export{Ellipse}from"./src/shapes/Ellipse.min.mjs";export{Rect}from"./src/shapes/Rect.min.mjs";export{Path}from"./src/shapes/Path.min.mjs";export{Polyline}from"./src/shapes/Polyline.min.mjs";export{Polygon}from"./src/shapes/Polygon.min.mjs";export{Tabs}from"./src/shapes/Tabs.min.mjs";export{Table}from"./src/shapes/Table.min.mjs";export{Menu}from"./src/shapes/Menu.min.mjs";export{FabricText,FabricText as Text}from"./src/shapes/Text/Text.min.mjs";export{IText}from"./src/shapes/IText/IText.min.mjs";export{Textbox}from"./src/shapes/Textbox.min.mjs";export{Group}from"./src/shapes/Group.min.mjs";export{LayoutManager}from"./src/LayoutManager/LayoutManager.min.mjs";export{ClipPathLayout}from"./src/LayoutManager/LayoutStrategies/ClipPathLayout.min.mjs";export{FitContentLayout}from"./src/LayoutManager/LayoutStrategies/FitContentLayout.min.mjs";export{FixedLayout}from"./src/LayoutManager/LayoutStrategies/FixedLayout.min.mjs";export{LayoutStrategy}from"./src/LayoutManager/LayoutStrategies/LayoutStrategy.min.mjs";export{ActiveSelection}from"./src/shapes/ActiveSelection.min.mjs";export{FabricImage,FabricImage as Image}from"./src/shapes/Image.min.mjs";export{createCollectionMixin}from"./src/Collection.min.mjs";import*as r from"./src/util/index.min.mjs";export{r as util};export{loadSVGFromString}from"./src/parser/loadSVGFromString.min.mjs";export{loadSVGFromURL}from"./src/parser/loadSVGFromURL.min.mjs";export{parseSVGDocument}from"./src/parser/parseSVGDocument.min.mjs";export{parseAttributes}from"./src/parser/parseAttributes.min.mjs";export{parseStyleAttribute}from"./src/parser/parseStyleAttribute.min.mjs";export{parsePointsAttribute}from"./src/parser/parsePointsAttribute.min.mjs";export{parseTransformAttribute}from"./src/parser/parseTransformAttribute.min.mjs";export{getCSSRules}from"./src/parser/getCSSRules.min.mjs";export{parseFontDeclaration}from"./src/parser/parseFontDeclaration.min.mjs";export{Control}from"./src/controls/Control.min.mjs";import*as s from"./src/controls/index.min.mjs";export{s as controlsUtils};import*as e from"./src/filters/filters.min.mjs";export{e as filters};export{getFilterBackend,initFilterBackend,setFilterBackend}from"./src/filters/FilterBackend.min.mjs";export{Canvas2dFilterBackend}from"./src/filters/Canvas2dFilterBackend.min.mjs";export{WebGLFilterBackend}from"./src/filters/WebGLFilterBackend.min.mjs";export{isPutImageFaster,isWebGLPipelineState}from"./src/filters/utils.min.mjs";
1
+ export{getEnv,getFabricDocument,getFabricWindow,setEnv}from"./src/env/index.min.mjs";export{cache}from"./src/cache.min.mjs";export{iMatrix,VERSION as version}from"./src/constants.min.mjs";export{config}from"./src/config.min.mjs";export{classRegistry}from"./src/ClassRegistry.min.mjs";export{runningAnimations}from"./src/util/animation/AnimationRegistry.min.mjs";export{Observable}from"./src/Observable.min.mjs";export{StaticCanvas}from"./src/canvas/StaticCanvas.min.mjs";export{Canvas}from"./src/canvas/Canvas.min.mjs";export{CanvasDOMManager}from"./src/canvas/DOMManagers/CanvasDOMManager.min.mjs";export{StaticCanvasDOMManager}from"./src/canvas/DOMManagers/StaticCanvasDOMManager.min.mjs";export{Point}from"./src/Point.min.mjs";export{Intersection}from"./src/Intersection.min.mjs";export{Color}from"./src/color/Color.min.mjs";export{Gradient}from"./src/gradient/Gradient.min.mjs";export{Pattern}from"./src/Pattern/Pattern.min.mjs";export{Shadow}from"./src/Shadow.min.mjs";export{BaseBrush}from"./src/brushes/BaseBrush.min.mjs";export{PencilBrush}from"./src/brushes/PencilBrush.min.mjs";export{CircleBrush}from"./src/brushes/CircleBrush.min.mjs";export{SprayBrush}from"./src/brushes/SprayBrush.min.mjs";export{PatternBrush}from"./src/brushes/PatternBrush.min.mjs";export{FabricObject,FabricObject as Object}from"./src/shapes/Object/FabricObject.min.mjs";export{FabricObject as BaseFabricObject}from"./src/shapes/Object/Object.min.mjs";export{Line}from"./src/shapes/Line.min.mjs";export{Circle}from"./src/shapes/Circle.min.mjs";export{Triangle}from"./src/shapes/Triangle.min.mjs";export{Ellipse}from"./src/shapes/Ellipse.min.mjs";export{Rect}from"./src/shapes/Rect.min.mjs";export{Path}from"./src/shapes/Path.min.mjs";export{Polyline}from"./src/shapes/Polyline.min.mjs";export{Polygon}from"./src/shapes/Polygon.min.mjs";export{Tabs}from"./src/shapes/Tabs.min.mjs";export{Table}from"./src/shapes/Table.min.mjs";export{CustomBorderTable}from"./src/shapes/Menu.min.mjs";export{FabricText,FabricText as Text}from"./src/shapes/Text/Text.min.mjs";export{IText}from"./src/shapes/IText/IText.min.mjs";export{Textbox}from"./src/shapes/Textbox.min.mjs";export{Group}from"./src/shapes/Group.min.mjs";export{LayoutManager}from"./src/LayoutManager/LayoutManager.min.mjs";export{ClipPathLayout}from"./src/LayoutManager/LayoutStrategies/ClipPathLayout.min.mjs";export{FitContentLayout}from"./src/LayoutManager/LayoutStrategies/FitContentLayout.min.mjs";export{FixedLayout}from"./src/LayoutManager/LayoutStrategies/FixedLayout.min.mjs";export{LayoutStrategy}from"./src/LayoutManager/LayoutStrategies/LayoutStrategy.min.mjs";export{ActiveSelection}from"./src/shapes/ActiveSelection.min.mjs";export{FabricImage,FabricImage as Image}from"./src/shapes/Image.min.mjs";export{createCollectionMixin}from"./src/Collection.min.mjs";import*as r from"./src/util/index.min.mjs";export{r as util};export{loadSVGFromString}from"./src/parser/loadSVGFromString.min.mjs";export{loadSVGFromURL}from"./src/parser/loadSVGFromURL.min.mjs";export{parseSVGDocument}from"./src/parser/parseSVGDocument.min.mjs";export{parseAttributes}from"./src/parser/parseAttributes.min.mjs";export{parseStyleAttribute}from"./src/parser/parseStyleAttribute.min.mjs";export{parsePointsAttribute}from"./src/parser/parsePointsAttribute.min.mjs";export{parseTransformAttribute}from"./src/parser/parseTransformAttribute.min.mjs";export{getCSSRules}from"./src/parser/getCSSRules.min.mjs";export{parseFontDeclaration}from"./src/parser/parseFontDeclaration.min.mjs";export{Control}from"./src/controls/Control.min.mjs";import*as s from"./src/controls/index.min.mjs";export{s as controlsUtils};import*as e from"./src/filters/filters.min.mjs";export{e as filters};export{getFilterBackend,initFilterBackend,setFilterBackend}from"./src/filters/FilterBackend.min.mjs";export{Canvas2dFilterBackend}from"./src/filters/Canvas2dFilterBackend.min.mjs";export{WebGLFilterBackend}from"./src/filters/WebGLFilterBackend.min.mjs";export{isPutImageFaster,isWebGLPipelineState}from"./src/filters/utils.min.mjs";
2
2
  //# sourceMappingURL=fabric.min.mjs.map
package/dist/fabric.mjs CHANGED
@@ -32,7 +32,7 @@ export { Polyline } from './src/shapes/Polyline.mjs';
32
32
  export { Polygon } from './src/shapes/Polygon.mjs';
33
33
  export { Tabs } from './src/shapes/Tabs.mjs';
34
34
  export { Table } from './src/shapes/Table.mjs';
35
- export { Menu } from './src/shapes/Menu.mjs';
35
+ export { CustomBorderTable } from './src/shapes/Menu.mjs';
36
36
  export { FabricText, FabricText as Text } from './src/shapes/Text/Text.mjs';
37
37
  export { IText } from './src/shapes/IText/IText.mjs';
38
38
  export { Textbox } from './src/shapes/Textbox.mjs';
package/dist/index.js CHANGED
@@ -141,7 +141,7 @@
141
141
  * *PMW* added variable to mark when canvas is being two-finger panned.
142
142
  * @type Boolean
143
143
  */
144
- _defineProperty(this, "isCanvasTwoFingerPanning", void 0);
144
+ _defineProperty(this, "isCanvasTwoFingerPanning", false);
145
145
  /**
146
146
  * Pixel limit for cache canvases width or height. IE fixes the maximum at 5000
147
147
  * @since 1.7.14
@@ -440,7 +440,7 @@
440
440
  }
441
441
  const cache = new Cache();
442
442
 
443
- var version = "6.0.0-pmw-5";
443
+ var version = "6.0.0-pmw-7";
444
444
 
445
445
  // use this syntax so babel plugin see this import here
446
446
  const VERSION = version;
@@ -18718,7 +18718,7 @@
18718
18718
  classRegistry.setClass(Table, 'table');
18719
18719
 
18720
18720
  //*PMW* class addded for menu
18721
- class Menu extends Table {
18721
+ class CustomBorderTable extends Table {
18722
18722
  /**
18723
18723
  * Renders vertical borders for table Style Menu Layouts
18724
18724
  * @param {CanvasRenderingContext2D} ctx context to render on
@@ -18753,7 +18753,7 @@
18753
18753
  }
18754
18754
 
18755
18755
  const fontProperties = ['fontSize', 'fontWeight', 'fontFamily', 'fontStyle'];
18756
- const textDecorationProperties = ['underline', 'overline', 'linethrough'];
18756
+ const textDecorationProperties = ['underline', 'overline', 'linethrough', 'squigglyline'];
18757
18757
  const textLayoutProperties = [...fontProperties, 'lineHeight', 'text', 'charSpacing', 'textAlign', 'styles', 'path', 'pathStartOffset', 'pathSide', 'pathAlign'];
18758
18758
  const additionalProps = [...textLayoutProperties, ...textDecorationProperties, 'textBackgroundColor', 'direction'];
18759
18759
  const styleProperties = [...fontProperties, ...textDecorationProperties, 'stroke', 'strokeWidth', 'fill', 'deltaY', 'textBackgroundColor'];
@@ -18772,6 +18772,8 @@
18772
18772
  underline: false,
18773
18773
  overline: false,
18774
18774
  linethrough: false,
18775
+ squigglyline: false,
18776
+ squigglylineColor: '',
18775
18777
  textAlign: LEFT,
18776
18778
  fontStyle: 'normal',
18777
18779
  lineHeight: 1.16,
@@ -18799,7 +18801,8 @@
18799
18801
  offsets: {
18800
18802
  underline: 0.1,
18801
18803
  linethrough: -0.315,
18802
- overline: -0.88
18804
+ overline: -0.88,
18805
+ squigglyline: 0.1
18803
18806
  },
18804
18807
  _fontSizeMult: 1.13,
18805
18808
  charSpacing: 0,
@@ -19508,6 +19511,7 @@
19508
19511
  this._renderText(ctx);
19509
19512
  this._renderTextDecoration(ctx, 'overline');
19510
19513
  this._renderTextDecoration(ctx, 'linethrough');
19514
+ this._renderTextDecoration(ctx, 'squigglyline'); // *PMW*
19511
19515
  }
19512
19516
 
19513
19517
  /**
@@ -19875,6 +19879,10 @@
19875
19879
  for (let i = 0, len = this._textLines.length; i < len; i++) {
19876
19880
  lineHeight = this.getHeightOfLine(i);
19877
19881
  height += i === len - 1 ? lineHeight / this.lineHeight : lineHeight;
19882
+ // //*PMW* commenting out the code that prevent text box from applying line height on the last line. This caused line height to not work in table and menus
19883
+ // height += lineHeight;//(i === len - 1 ? lineHeight / this.lineHeight : lineHeight);
19884
+ // *PMW* preventing height to be smaller than selector size.
19885
+ height += i === len - 1 && this.lineHeight < 1 ? lineHeight / this.lineHeight : lineHeight;
19878
19886
  }
19879
19887
  return height;
19880
19888
  }
@@ -20263,10 +20271,11 @@
20263
20271
  return width;
20264
20272
  }
20265
20273
  _getWidthOfCharSpacing() {
20266
- if (this.charSpacing !== 0) {
20267
- return this.fontSize * this.charSpacing / 1000;
20268
- }
20269
- return 0;
20274
+ //*PMW* change char spacing to be applied the same on every size
20275
+ // if (this.charSpacing !== 0) {
20276
+ // return this.fontSize * this.charSpacing / 1000;
20277
+ // }
20278
+ return this.charSpacing;
20270
20279
  }
20271
20280
 
20272
20281
  /**
@@ -20332,11 +20341,18 @@
20332
20341
  if (this.direction === 'rtl') {
20333
20342
  drawStart = this.width - drawStart - boxWidth;
20334
20343
  }
20335
- if (lastDecoration && lastFill) {
20336
- // bug? verify lastFill is a valid fill here.
20337
- ctx.fillStyle = lastFill;
20338
- ctx.fillRect(drawStart, top + offsetY * size + dy, boxWidth, this.fontSize / 15);
20339
- }
20344
+ // *PMW*
20345
+ const opts = {
20346
+ type: type,
20347
+ boxWidth: boxWidth,
20348
+ decoration: lastDecoration,
20349
+ fill: lastFill,
20350
+ x: drawStart,
20351
+ y: top + offsetY * size + dy,
20352
+ w: boxWidth,
20353
+ h: this.fontSize / 15
20354
+ };
20355
+ this._renderTextLineDecoration(ctx, opts);
20340
20356
  boxStart = charBox.left;
20341
20357
  boxWidth = charBox.width;
20342
20358
  lastDecoration = currentDecoration;
@@ -20352,13 +20368,148 @@
20352
20368
  drawStart = this.width - drawStart - boxWidth;
20353
20369
  }
20354
20370
  ctx.fillStyle = currentFill;
20355
- currentDecoration && currentFill && ctx.fillRect(drawStart, top + offsetY * size + dy, boxWidth - charSpacing, this.fontSize / 15);
20371
+ // *PMW*
20372
+ const opts = {
20373
+ type: type,
20374
+ boxWidth: boxWidth,
20375
+ decoration: currentDecoration,
20376
+ fill: currentFill,
20377
+ x: drawStart,
20378
+ y: top + offsetY * size + dy,
20379
+ w: boxWidth - charSpacing,
20380
+ h: this.fontSize / 15
20381
+ };
20382
+ this._renderTextLineDecoration(ctx, opts);
20356
20383
  topOffset += heightOfLine;
20357
20384
  }
20385
+
20358
20386
  // if there is text background color no
20359
20387
  // other shadows should be casted
20388
+ // *PMW* need shadow to be applied on text with styles as well,
20389
+ // this._removeShadow(ctx);
20390
+ }
20391
+
20392
+ /**
20393
+ * *PMW*
20394
+ * @private
20395
+ * @param {CanvasRenderingContext2D} ctx Context to render on
20396
+ * @param {Object} opts
20397
+ */
20398
+ _renderTextLineDecoration(ctx, opts) {
20399
+ if (opts.type === 'squigglyline') {
20400
+ const polyPoints = [],
20401
+ scaleX = 0.35,
20402
+ scaleY = 0.45,
20403
+ funct = function (x) {
20404
+ const g = x % 6;
20405
+ if (g <= 3) {
20406
+ return g * 5;
20407
+ }
20408
+ return (6 - g) * 5;
20409
+ };
20410
+ ctx.fillStyle = this.squigglylineColor ? this.squigglylineColor : opts.fill;
20411
+ for (let x = 0; x < opts.boxWidth; x += 0.5) {
20412
+ polyPoints.push({
20413
+ x: x - 10,
20414
+ y: funct(x * scaleX) * scaleY
20415
+ });
20416
+ }
20417
+ for (let j = 0; j < polyPoints.length; j++) {
20418
+ opts.decoration && opts.fill && ctx.fillRect(opts.x + polyPoints[j].x + 8, opts.y + polyPoints[j].y, 2, 2);
20419
+ }
20420
+ } else {
20421
+ // *PMW* use first color of gradient instead of last fill for text styles (underline, linethrough),
20422
+ // Issue is fixed on updated method obj.set('textDecoration', 'underline') can use that one once
20423
+ // it has support for multiple styles at a time and selection styles
20424
+ if (opts.fill && typeof opts.fill !== 'string' && opts.fill.colorStops && opts.fill.colorStops.length) {
20425
+ ctx.fillStyle = opts.fill.colorStops[0].color;
20426
+ } else if (opts.fill && typeof opts.fill !== 'string' && opts.fill.source) {
20427
+ //Use pattern for underline, linethrough on text mask
20428
+ const pattern = ctx.createPattern(opts.fill.source, 'repeat');
20429
+ if (pattern) {
20430
+ ctx.fillStyle = pattern;
20431
+ }
20432
+ }
20433
+ // *PMW*
20434
+ opts.decoration && opts.fill && ctx.fillRect(opts.x, opts.y, opts.w, opts.h);
20435
+ }
20436
+ }
20437
+
20438
+ /**
20439
+ * *PMW*
20440
+ * Draws a background for the object big as its untrasformed dimensions
20441
+ * @private
20442
+ * @param {CanvasRenderingContext2D} ctx Context to render on
20443
+ */
20444
+ _renderBackground(ctx) {
20445
+ if (!this.backgroundColor) {
20446
+ return;
20447
+ }
20448
+ const dim = this._getNonTransformedDimensions();
20449
+ let scaleX = this.scaleX,
20450
+ scaleY = this.scaleY;
20451
+ ctx.fillStyle = this.backgroundColor;
20452
+ if (this.group) {
20453
+ scaleX *= this.group.scaleX;
20454
+ scaleY *= this.group.scaleY;
20455
+ }
20456
+ ctx.fillRect(-dim.x / 2 - this.padding / scaleX, -dim.y / 2 - this.padding / scaleY, dim.x + this.padding / scaleX * 2, dim.y + this.padding / scaleY * 2);
20457
+ // if there is background color no other shadows
20458
+ // should be casted
20360
20459
  this._removeShadow(ctx);
20361
20460
  }
20461
+ getCharOffset(position) {
20462
+ let topOffset = 0,
20463
+ leftOffset = 0;
20464
+ const cursorPosition = this.get2DCursorLocation(position),
20465
+ charIndex = cursorPosition.charIndex,
20466
+ lineIndex = cursorPosition.lineIndex;
20467
+ for (let i = 0; i < lineIndex; i++) {
20468
+ topOffset += this.getHeightOfLine(i);
20469
+ }
20470
+ const lineLeftOffset = this._getLineLeftOffset(lineIndex);
20471
+ const bound = this.__charBounds[lineIndex][charIndex];
20472
+ bound && (leftOffset = bound.left);
20473
+ if (this.charSpacing !== 0 && charIndex === this._textLines[lineIndex].length) {
20474
+ leftOffset -= this._getWidthOfCharSpacing();
20475
+ }
20476
+ return {
20477
+ x: lineLeftOffset + (leftOffset > 0 ? leftOffset : 0),
20478
+ y: topOffset
20479
+ };
20480
+ }
20481
+
20482
+ /**
20483
+ * *PMW*
20484
+ * Find new selection index representing start of current word according to current selection index
20485
+ * @param {Number} startFrom Current selection index
20486
+ * @return {Number} selection start index
20487
+ */
20488
+ findSelectedWordLeft(startFrom) {
20489
+ let offset = 0,
20490
+ index = startFrom - 1;
20491
+ while (/[^\n -&(-/:-@[-`{-~0-9]/.test(this._text[index]) && index > -1) {
20492
+ offset++;
20493
+ index--;
20494
+ }
20495
+ return startFrom - offset;
20496
+ }
20497
+
20498
+ /**
20499
+ * *PMW*
20500
+ * Find new selection index representing end of current word according to current selection index
20501
+ * @param {Number} startFrom Current selection index
20502
+ * @return {Number} selection end index
20503
+ */
20504
+ findSelectedWordRight(startFrom) {
20505
+ let offset = 0,
20506
+ index = startFrom;
20507
+ while (/[^\n -&(-/:-@[-`{-~0-9]/.test(this._text[index]) && index < this._text.length) {
20508
+ offset++;
20509
+ index++;
20510
+ }
20511
+ return startFrom + offset;
20512
+ }
20362
20513
 
20363
20514
  /**
20364
20515
  * return font declaration string for canvas context
@@ -20510,6 +20661,8 @@
20510
20661
  underline: textDecoration.includes('underline'),
20511
20662
  overline: textDecoration.includes('overline'),
20512
20663
  linethrough: textDecoration.includes('line-through'),
20664
+ /*PMW*/
20665
+ squigglyline: textDecoration.includes('squiggly-line'),
20513
20666
  // we initialize this as 0
20514
20667
  strokeWidth: 0,
20515
20668
  fontSize
@@ -28250,6 +28403,7 @@
28250
28403
  exports.ClipPathLayout = ClipPathLayout;
28251
28404
  exports.Color = Color;
28252
28405
  exports.Control = Control;
28406
+ exports.CustomBorderTable = CustomBorderTable;
28253
28407
  exports.Ellipse = Ellipse;
28254
28408
  exports.FabricImage = FabricImage;
28255
28409
  exports.FabricObject = FabricObject;
@@ -28264,7 +28418,6 @@
28264
28418
  exports.LayoutManager = LayoutManager;
28265
28419
  exports.LayoutStrategy = LayoutStrategy;
28266
28420
  exports.Line = Line;
28267
- exports.Menu = Menu;
28268
28421
  exports.Object = FabricObject;
28269
28422
  exports.Observable = Observable;
28270
28423
  exports.Path = Path;